Moin,
erstmal viele Wege führen nach Rom bzw zu dein Problem. Du kannst den Würfel jedes mal selber zeichnen, oder 12 Bilder reinladen oder eine ImageList nehmen, oder oder oder... Such dir das aus, was du aktuell selber bewerkstelligen kannst.
Außerdem wirst du nebenbei per Definition nie eine 1 mit zwei Würfeln würfeln können, solange beide einen Wert von 1 bis 6 annehmen können.
Und dann: Was meinst du mit Formeln? Ich kann bei deiner Spielidee nie eine Formel erkennen. Ich selber würde einfach – sofern ich noch keine Erfahrung mit Delphi hätte – 12 Bilder auf das Formular gepackt mit jeweils zwei Bildern für die Werte 1 – 6. Alle stellst du jetzt auf unsichtbar (also markieren und bei
visible den Wert auf
false setzen).
Dann machst du irgendwie einen Button (ich habe mir die Spielidee nicht komplett durchgelesen) und wenn man auf den Button klickt, dann bestimmst du zwei Zufallszahlen für die einzelnen Würfel und guckst je nachdem welche Zahl gewürfel wurde setzt du das entsprechende Bild auf Sichtbar.
Also in Pseudocode:
Code:
würfel1 := Zufallszahl(1 – 6);
würfel2 := Zufallszahl(1 – 6);
AlleBilder.sichtbar := falsch;
wenn würfel1:
1: Würfel1_1.sichtbar := wahr;
2: Würfel1_2.sichtbar := wahr;
[…]
wenn würfel2:
1: Würfel2_1.sichtbar := wahr;
2: Würfel2_2.sichtbar := wahr;
[…]
Damit hast du dann zwei Würfelergebnisse und kannst dann überlegen was du damit machst. Also wenn die Summe ≤ 6 ist, dann zeigst du eine Meldung an (→
Dialogs.ShowMessage) und so weiter.
Die Umsetzung ist nicht perfekt und einige würden das noch nicht mal gut nennen, weil es halt Verbesserungsmöglichkeiten gibt. Zum Beispiel gibt für einen Würfel nur 6 verschiedene Zustände aber du hast insgesamt 12 verschiedene Bilder → man könnte nur ein Bild für jeden Zustand nehmen und die beiden TImages die das Ergebnis anzeigen, holen sich das Bild aus den 6 verschieden Zustandsbildern. Aber das ist schon ein stückchen komplizierter.
MfG
Fabian
PS: Macht es ihn doch nicht so kompliziert. Das kann man nachher immer noch machen. Und man merkt ja, dass er noch ein relativer Neuling ist.