Code archives/3D Graphics - Misc/Graphical GameTimer
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
A simple Gametimer using Quads | |||||
; Graphical GameTimer Example ; --------------------------- ; by t3K|Mac ; load timer.bmp from here: ; www.the3kings.de/test/timer.bmp Graphics3D 800,600,16,1 SetBuffer BackBuffer() camera=CreateCamera() light=CreateLight() timer_texture=LoadAnimTexture("timer.bmp",1+2+16+32,16,16,0,11) If Not timer_texture Then RuntimeError("timer.bmp is missing!") timer_pivot=CreatePivot() tim1=CreateQuad(timer_pivot) ScaleEntity tim1,.1,.1,.1 EntityFX tim1,1 tim2=CopyEntity(tim1,timer_pivot) tim3=CopyEntity(tim1,timer_pivot) tim4=CopyEntity(tim1,timer_pivot) tim5=CopyEntity(tim1,timer_pivot) PositionEntity tim1,-.35,0,3 PositionEntity tim2,-.15,0,3 PositionEntity tim3,0,0,3 PositionEntity tim4,.12,0,3 PositionEntity tim5,.32,0,3 EntityTexture tim3,timer_texture,10 ; ":" texturize PositionEntity timer_pivot,0,0,0 timer_duration=75 ; timer duration in secs start_time=MilliSecs() While Not KeyDown( 1 ) Cls Gosub UpdateGameTimer RenderWorld ;VWait Flip False Wend End .UpdateGameTimer t=timer_duration-((MilliSecs()-start_time)/1000) If t>=0 If t<>old_t Then ; update timerquads duration$=Str (t/60.0) pos=Instr(duration$,".") min$=Left$(duration$,pos-1) sek=Float(Mid$(duration$,pos,10))*60 timer$=Right$("0"+min$,2)+Right$("0"+sek,2) old_t=t EntityTexture tim1,timer_texture,Int(Mid$(timer$,1,1)) EntityTexture tim2,timer_texture,Int(Mid$(timer$,2,1)) EntityTexture tim4,timer_texture,Int(Mid$(timer$,3,1)) EntityTexture tim5,timer_texture,Int(Mid$(timer$,4,1)) EndIf Else Text 400,300,"Timer has expired!",True,True : Flip : WaitKey : End EndIf Return Function CreateQuad(parent=0) m=CreateMesh() s=CreateSurface(m) AddVertex s,-1,+1,-1,0,0 AddVertex s,+1,+1,-1,1,0 AddVertex s,+1,-1,-1,1,1 AddVertex s,-1,-1,-1,0,1 AddTriangle s,0,1,2 AddTriangle s,0,2,3 ;FlipMesh m If parent>0 EntityParent m,parent EndIf Return m End Function |
Comments
None.
Code Archives Forum