Snake unterbrechen?
Übersicht

WatteBetreff: Snake unterbrechen? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Moin,
Ich wollte für ein Snake-Spiel eine Musikauswahl anlegen... Klappt auch alles ganz gut, also bevor das Snake-Programm startet, fragt er ab welches Lied man den hören will und spielt dieses dann auch ab. Aber, wie bekomm ich es hin, das Snake-Prgramm zu "pausieren" (Durch Tastendruck, z.B. "P"), eine weitere If-Konstruktion ein zubauen (welches Lied man als nächstes hören will), und dann weiter laufen zu lassen? mfg Watte |
||
ZiggyBetreff: Pause-Funktion |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich weiss nicht ob es eine vernünftige Lösung ist, aber ich habe das so realisiert:
Erst mal habe ich mehrere Spiel-Zustände (gamemode) Wenn dieser Wechselt dann werden verschiedene Funktionen aufgerufen: Code: [AUSKLAPPEN] If gamemode = 0 Then menu() If gamemode = 1 Then startgame() If gamemode = 2 Then options() If gamemode = 3 Then Exit If gamemode = 4 Then pause() Wenn ich jetzt im Spiel die Taste [P] drücke wechselt der Spiel-zustand auf 4, und die Funktion Pause wird ausgerufen. Code: [AUSKLAPPEN] If KeyHit(25) Then gamemode = 4 Jetzt kannst du mit der Funktion pause() machen was du willst, wenn du wieder zum Spiel zurück willst fragst du die selbe oder eine andere Taste ab und wechselst den gamemode wieder auf 1 zurück. Das Spiel wird in der Zeit angehalten. |
||
"Es gibt 10 Arten von Menschen: Diejenigen die Binär verstehen, und jene die es nicht verstehen."
"Irren ist menschlich, gut dass ich ein Gott bin... xD" letzte Informatik-Note : 1 ... 96% richtig, Thema: C++ switch/case |
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde diesen Gamemode Teil mit select case machen, anstatt mit if. Case imho ist übersichtlicher und man hat weniger Schreibarbeit.
Code: [AUSKLAPPEN] Select gamestatus Case 1 menu() Case 2 spiel() Case 3 dies() Case 4 unddas() End Select Die Spielfunktion mit der Pause könntest Du so gestalten: Code: [AUSKLAPPEN] Function spiel() If Not pause Then Steuerungabfrage() Spielerbewegen() Else Text 100,100,"PAUSE" Musikauswahl() End Spielfeldzeichnen() End Function Wenn die Bedingung Pause nicht erfüllt ist kann man Steuern und die Schlange wird bewegt. Bei einer Pause wird dies deaktiviert, dafür wird "PAUSE" angezeigt und die Musikauswahl aufgerufen. Das Spielfeld wird immer gezeichnet und die Spielerposition und all das muss nicht zwischengespeichert werden. |
||
Play Satyr! |
Watte |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok danke erstmal. Ich probiers mal aus | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group