Hab vor wenigen Wochen mit dem Programmieren eines Spiels begonnen. Es handelt sich um eine Art Breakball/Pong und funktioniert auch soweit ganz gut, jedoch gibt es da noch 2 Probleme:
Problem 1:
Ich brauche einen Zähler, der bei 10 anfängt und für jeden verlorenen Ball um 1 verringert wird. Das Problem ist, dass 10 lediglich der Startwert ist und keine Konstante sein soll, entweder er bleibt immer auf 10 oder er springt zwischen 9 und 10 hin und her.
Problem 2:
Wenn der Ball am Paddle vorbeifliegt soll eine neue Runde beginnen, dabei darf aber nicht das ganze Programm resettet werden, stattdessen soll lediglich kurz unterbrochen werden und der Ball soll wieder ins Feld kommen.
Allzu kompliziert darf/kann die Lösung ja nicht sein, da wir ja nicht allzu komplex arbeiten, das Spiel funktioniert über ein begrenztes Panel und einem beweglichen Image als Ball und einem Shape als Paddle, welches per Maus gesteuert wird.
Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge
Hi!
Das klingt ja nach zwei ganz speziellen "Problemen", die aber bestimmt lösbar sind. Allerdings müsste man dazu etwas mehr über das bisher realisierte Programm wissen. Kannst du uns zumindest schreiben, welche Klassen du verwendest bzw. abgeleitet hast und wie die bisherige Spiellogig funktioniert?
Du musst ja (wenn ich das richtig verstehe) in Delphi ein Timerelement verwenden, damit die Spieleelemente gezeichnet werden und die Mausabfrage erfolgt. Zudem wird es einen Start-Button geben müssen, mit dem das Spiel beginnt. Die Methoden dahinter sind interessant, weil dein erstes Problem natürlich erfordert, dass der Zähler einmal initialisiert wird (z.B. wenn der Button "Neues Spiel" geklinkt wird und dnan rückzählt, wenn der ball aus dem Bildbereich läuft.
Bis dann
Andreas