Programm logisch aufteilen, aber wie?

Anfängerfragen zum Programmieren mit PureBasic.
neuling
Beiträge: 26
Registriert: 18.10.2007 16:25

Programm logisch aufteilen, aber wie?

Beitrag von neuling »

Hallo ihr lieben,

ich habe ein kleines Game geschrieben (mein erstes) was eigentlich nur zum Lernen gedacht war.

Die wichtigsten dinge spielen sich eigentlich nur in einer Großen Hauptschleife im Vollbildmodus ab :

repeat

<zig befehle>

until keyboardpushed(.....) or ......

So, ich möchte aber, sobald die Schleife verlassen wird wegen GameOver etc. es noch weitergeht, also ich möchte den Bildschirm löschen und den Punktestand anzeigen und eine Pause von 10sek einbauen, danach soll der Vollbildmodus und Programm beendet werden.

Aber irgendwie klappt das nicht in dieser art:

Code: Alles auswählen

until .... ende der Schleife und des Hauptprogramms
clearscreen(0) soll den Bildschirm mit den Spielegrafiken löschen...
startdrawing....
drawmode...
drawingtext ...... irgendwo auf dem Bildschirm sollen dann die Pnkt etc
stopdrawing       stehen
delay(10000)
end
aber ich bekomme weder den Bildschirm gelöscht noch den Text mit den Daten wie Punktestand etc.....

Was tun?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

die buffer flippen, nachdem du was reingemalt hast...


professioneller wäre allerdings, eine einzige hauptschleife zu haben, die immer clearet und flipt,
aber die eine fallunterscheidung drin hat, ob titel, menü, score oder spielablauf angezeigt wird.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
neuling
Beiträge: 26
Registriert: 18.10.2007 16:25

Beitrag von neuling »

Hallo,

ja, meine Hauptschleife hat am ende FlipBuffers() und ClearScreen() drinn.
Aber wie meinst du das mit "alles in einer Schleife"? Wie soll das gehen?
Ich kenne eigentlich nur "Ereigniss-Programmieren", aber wie soll ich mehre unterschiedliche dinge in einer Schleife unterbringen?
Hast du mal ein kleines einfaches Beispiel?
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

Er meint damit z.B.

Code: Alles auswählen

ClearScreen(0)
; Sonstiges
Select mode$
   Case "Game"
      ; Hier das Game
   Case "Score"
      ; Hier die Score
EndSelect
FlipBuffers()
Mal so nen kleinen Prototyp :wink:

Gruss
PMTheQuick :)
Antworten