2016-04-02 8 views

Antwort

1

Hat die Bestellung eine Bedeutung? (Ich gehe davon aus nicht) würde ich so beginnen:

1) Jedes Atom hat eine eindeutige Nummer ID: 1, 2, 3 2)

2) Jedes Molekül hat eine eindeutige ID, diese ID ist gemacht mit Atome IDs richtig sortiert (1-2-3, 6-88-55-44-66, etc ...)

3) Shop-Kombinationen in einer Liste/Dictionnary (Add())

4) Jedes Mal, wenn der Spieler ein Atom in die Box fügt, alle Atome in der Box holen, ihre IDs sortieren und kombinieren, um die Kombinations-ID zu erhalten.

5) Überprüfen Sie, ob Ihre Kombination ID gibt es in Ihrer Liste/Dictionnary (ContainsKey())

Wenn Sie C# vertraut sind, nur für ihn gehen und versuchen, das ist einfach. Schau dir die Wörterbücher an.

Bearbeiten - Für mehrere Kombinationen: Dies ist ein bisschen komplexer.

Beim Abwurf Atom in der Box =>

  • Wenn keine Kollision, Ihr Atom in einem neuen Moleküle hinzuzufügen.
  • Wenn Kollision, fügen Sie Ihre Atom in kollidierte Atom des Moleküls
  • Wenn es mehrere Kollisionen und Ihr Atom ist nun eine Brücke zwischen den bestehenden Molekül ... Sie könnten zum Beispiel einen Weg finden, um ein Molekül in ein anderes zu konvertieren. Oder du kannst alles explodieren lassen.
+0

Vielen Dank! – BelgianWizard

+0

Das passiert nur, wenn die Atome kollidieren, nicht wenn sie nur in der Box sind. Wie könnte ich Schritt 4) bearbeiten und mit Kollisionen verwenden? So können Sie tatsächlich 10 Moleküle in einer Box herstellen und alle erhalten basierend auf ihrer Kombinations-ID unterschiedliche Ergebnisse. – BelgianWizard

+0

Vielen Dank! Es hat funktioniert, es ist unglaublich! – BelgianWizard