Zählwerk oder ähnlich

Previous topic - Next topic

Worebu

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.
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD

Schranz0r

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 :)
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

D2O

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
I7 2600K; 8 GB RAM ; Win10 Pro x64 | NVidia GTX 750 TI 2048MB ; Realtec OnBoard Sound;
Lenovo ThinkPad T400: XP Pro
GLB Premium-immer Aktuell

Worebu

Spät, aber ich probier es mal aus. Vielleicht bekomme ich was hin. Dank Euch.
Intel I5 9600 - RTX 4070, WaKü, 32GB RAM, 1x 512gb + 1x 1Gb NVRAM,  1x4TB + 1x1TB HD