GLBasic forum

Other languages => GLBasic - de => Topic started by: Worebu on 2023-Apr-15

Title: Zählwerk oder ähnlich
Post by: Worebu on 2023-Apr-15
Hallo Leute,

wie bekomme ich das hin ,das mir Sachen verzögert angezeigt werden. Ein Zählwerk z.B.: das die Punkte hochzählt. Wenn ich eine FOR/NEXT Schleife mache rauscht der da nur so durch und zeigt mit das Ende der Schleife an. Ich möchte aber jeden einzelnen "Punkt" sehen den ich bekommen habe (z.B.: Sonderspiele beim Daddeln, oder Bonus zusammen fassung in einem Spiel, oder einen Countdown.

Hat jemand eine Idee oder Lösung? Hab schon mit SLEEP gebastelt, bringt aber nichts.
Title: Re: Zählwerk oder ähnlich
Post by: Schranz0r on 2023-Apr-16
Hi, einen Timer, wenn der kleiner ist als 0, dann den nächsten Frame die Zahl updaten mit dem gewünschten Wert.
So simpel ist das :)
Title: Re: Zählwerk oder ähnlich
Post by: D2O on 2023-Apr-16
Schranz0r war etwas schneller.

Ja, ein Timer wäre hier auch meine Wahl.

Hier mal ganz rudimentär:

Laufzeit 10 sec (10000 millisecs)
ESC beendet
Linke Maustaste resetet.

Das ganz könnte man als Methode in einen Type setzen.

Bin schon etwas draußen aus GLB, aber FOREACH müsste hier noch ein Thema sein.

Gruß,
Fabbio

Code (glbasic) Select
// --------------------------------- //
// Project: Timer
// Start: Sunday, April 16, 2023
// IDE Version: 16.793


// SETCURRENTDIR("Media") // go to media files
ALLOWESCAPE TRUE


LOCAL fps_time% = 0,fps_temp% = 0
LOCAL frametime% = 10000 // millisecs

SETSCREEN 800,600,0

LOCAL dip1% = TRUE, dip2% = TRUE

//--------------------------------------------------------------
WHILE TRUE
fps_time = GETTIMERALL()
IF (fps_time-fps_temp)> 1000 AND frametime > 0

frametime = frametime - 1000
fps_temp = fps_time

ENDIF






IF frametime = 0   THEN dip1 = FALSE


IF dip1 = TRUE
DRAWRECT  100,100,100,100,RGB(0x00, 0x80, 0x00)
PRINT frametime/1000,110,110

ENDIF

IF MOUSEAXIS(3) 
frametime = 10000
dip1 = TRUE
ENDIF


PRINT getfps()+" FPS",10,10
PRINT "left mousebutton reset", 10,40


SHOWSCREEN
WEND
//-------------------------------------------------------------




FUNCTION getfps:

STATIC fps_time%,fps_counter%,fps%,fps_temp%
fps_time = GETTIMERALL()
fps_counter = fps_counter + 1
IF (fps_time-fps_temp)>1000
fps_temp = fps_time
fps = fps_counter
fps_counter = 0
ENDIF

RETURN fps
ENDFUNCTION
Title: Re: Zählwerk oder ähnlich
Post by: Worebu on 2023-Jun-13
Spät, aber ich probier es mal aus. Vielleicht bekomme ich was hin. Dank Euch.