< Zurück

02.12.2012 22:48:00 • Categories: Monkey X, 2D Game SDK / Framework, Multiplatform • Tags: Monkey

Monkey: drawing a starfield

Import mojo
Global stars:Starfield,mx:Float,my:Float

Function Main()     stars = New Starfield() End Function

Class TStar     Field x:Float,y:Float,z:Float     Method Init()         x=Rnd(-100,100)         y=Rnd(-100,100)         z=Rnd(-100,100)     End Method

    Method Update()         z-=1         x+=mx         y+=my         If z<=-100 z+=200         If x<=-100 x+=200         If y<=-100 y+=200         If x>= 100 x-=200         If y>= 100 y-=200     End Method

    Method Draw()         Local i:Int=z+121         Local px:Int=x450/(z+151)         Local py:Int=y350/(z+151)         SetColor 255-i,255-i,255-i         DrawRect 320+px,240+py,1,1     End Method End Class

Class Starfield Extends App     Field star:TStar[1024]     Method OnCreate()         SetUpdateRate 50         For Local t:Int=0 To star.Length-1             star[t]=New TStar             star[t].Init         Next     End Method

    Method OnUpdate()         mx=(MouseX()-320)/50         my=(MouseY()-240)/50         For Local t:Int=0 To star.Length-1             star[t].Update         Next     End Method

    Method OnRender()         Cls 0,0,0         For Local t:Int=0 To star.Length-1             star[t].Draw         Next     End Method End Class


< Zurück | ^ nach oben