Countdown

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Oetzicool

Betreff: Countdown

BeitragMo, Mai 16, 2005 9:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey ich hab da so ein Problem mit nem Countdown...! Wie lang das Programm läuft des krieg ich hin, aber jetzt will ich das Wenn der Spieler z.b. die Leertaste drückt, dass dann ein Countdown erscheint z.b. 30 sec und in den 30 sekunden ne Funktion aufgerufen wird und wenn die 30 Sekunden vorbei sind, wieder beendet wird. Am besten wäre natürlich, ein Countdown der Rückwärts läuft! Danke schonmal! Cu Oetzicool Very Happy

Firstdeathmaker

BeitragMo, Mai 16, 2005 9:37
Antworten mit Zitat
Benutzer-Profile anzeigen
So in der Art?



BlitzBasic: [AUSKLAPPEN]

Repeat
If KeyHit(deinecountdowntaste)
countdowntime=MilliSecs()+3000
EndIf

If countdowntime<=MilliSecs() Then
;deine funktion die aufgerufen werden soll
EndIf

Forever
www.illusion-games.de
Space War 3 | Space Race | Galaxy on Fire | Razoon
Gewinner des BCC #57 User posted image
 

Oetzicool

BeitragMo, Mai 16, 2005 9:48
Antworten mit Zitat
Benutzer-Profile anzeigen
das hab ich versucht aber des funktioniert irgendwie nicht...des stoppt mein komplettes Programm!
 

Timo

BeitragMo, Mai 16, 2005 9:56
Antworten mit Zitat
Benutzer-Profile anzeigen
also wenn du schon eine schleife hast, dann darfst du die repeat-schleife nicht mitübernehmen, sonst bleibt es in der tat stehen (also es wird nichts mehr angezeigt, weil er in der Schleife bleibt) Wink
das war nur ein Beispiel, wie es gehen könnte. Smile
 

Oetzicool

BeitragMo, Mai 16, 2005 10:03
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie könnte ich dann sowas anders machen?
 

Timo

BeitragMo, Mai 16, 2005 10:10
Antworten mit Zitat
Benutzer-Profile anzeigen
nein nein, also mit schleife ist schon richtig, aber es darf nur eine schleife sein. die repeat-forever-schleife wird nie verlassen; würdest du sie so übernehmen würde nichts mehr passieren, wenn du sie in deinen code einbauen würdest.
aber sie war ja auch nur als Beispiel gedacht. Du müsstest eigentlich eine Schleife in deinem Code schon haben (muss nicht repeat sein, kann auch while-wend oder so sein..)
Übernehm halt den code oben ohne das repeat und das forever und platziere es in deiner schleife. Nur noch "deinecountdowntaste" durch die taste ersetzen, die du haben möchtest (--> Scancodes; Onlinehilfe Wink )

EDIT: und wenn's immer noch nicht geht, kannst du ja deinen Quellcode posten Smile
 

D²O

BeitragMo, Mai 16, 2005 10:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Nicht schön, aber funktioniert Wink


BlitzBasic: [AUSKLAPPEN]
Graphics 640,480,16,2
SetBuffer BackBuffer ()

Global schalter = False
Global timer,temp ,counter = 30
x = 0
y = 100
speed = 1
While Not KeyHit(1)

timer = MilliSecs ()

If KeyHit (57) ;Leertaste
schalter = True
EndIf

If schalter = True Then mycount()

Rect x,y,20,20
x = x + speed
If x > 620 Then speed = -1
If x < 0 Then speed = 1

Text 10,10,counter

Flip
Cls
Wend
End


Function mycount()

If (timer-temp)>= 1000
counter = counter -1
temp = timer

EndIf

If counter < 0
schalter = False
counter = 30
EndIf



End Function
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;
 

Oetzicool

BeitragMo, Mai 16, 2005 11:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok vielen Dank habe die Lösung genommen funktioniert spitze! Danke nochmal! Cu Oetzicool

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group