Hi!
Am Anfang stand der Titelbildschirm:
Vorerst einfach nur
LOADSPRITE "titel.bmp", 0
SPRITE 0, 0, 0
SHOWSCREEN
KEYWAIT
Danach kam das 1. Level:
WHILE TRUE
y = y + 10
IF y > 255 THEN y = 0
// Hintergrund
FOR b = -1 TO 2
FOR a = 0 TO 2
SPRITE 0, 0 + (a * 256), y + (b * 256)
NEXT
NEXT
SPRITE 1, posx, 400
// Schusstimer
scht = scht + GT
IF KEY(57) = 1 AND scht > (0.25 / 1)
Shoot(posx, 400)
scht = 0
ENDIF
IF KEY(203) = 1 THEN posx = posx - 5
IF KEY(205) = 1 THEN posx = posx + 5
IF posx <= 0 THEN posx = 0
IF posx >= 600 THEN posx = 600
//GAME_TIMER
//GT=(GETTIMERALL()-Old_Timer)/1000 //Durch Tausend für die Sekunden
//Old_Timer=GETTIMERALL()
GT = GETTIMER() / 1000
level()
MoveShots()
treffer()
showShots()
SHOWSCREEN
WEND
Problem ist noch immer, daß ich den Timer nicht so hinbekomme, daß er mir so läuft, daß er mir mit dem Leveltimer bei 0 beginnt, wenn er das Level aufruft. Ich bekomme es einfach nicht hin!!!
Bitte Hilfe!
GLG
W.
Mach mal:
LOADSPRITE "titel.bmp", 0
SPRITE 0, 0, 0
SHOWSCREEN
KEYWAIT
SHOWSCREEN // Das hier!!
Sonst ist dein erster GETTIMER() ein riesiger Wert - weil ja zwischen den SHOWSCREENs ein KEYWAIT war.
Funktioniert nicht! Leider...
Wenn ich 10 sek. warte und eine Taste drücke, zeigt mir der Timer 10,9238745982 an und geht dann rauf und die Raumschiffe überlappen sich gegenseitig!!!
Eine Frage:
Wie übernehme ich einen FIXEN Wert? Und zwar meine ich das so:
timer1 = timer1 + GETTIMER()
Dann irgendwann möchte ich den Wert von timer1 vollständig übernehmen und folgendermaßen weitermachen:
timer2 = timer2 + GETTIMER() - timer1
Problem an der Sache ist, daß es so nicht funktioniert, denn selbst wenn timer2 in einer eigenen Schleife ist, so übernimmt timer1 noch immer den selben Wert und er zeigt mir immer 0 an.
Bitte HILFE!