; von hectic, 12.8.2005 im blitzforum
Graphics 640,480,16,2
SetBuffer BackBuffer()
xp#=40 ; X-Position
yp#=40 ; Y-Position
yg#=0 ; Y-Geschwindigkeit
While Not KeyHit(1)
Color 64,64,64 ; Spiel(Feld/Plattform) Farbe
Rect 0,0,20,480,1 ; Spielfeldbegrenzung linker Balken
Rect 619,0,20,480,1 ; Spielfeldbegrenzung rechter Balken
Rect 20,459,600,20,1 ; Spielfeldbegrenzung unterer Balken
Rect 299,200,320,20,1 ; Plattform rechts
Rect 20,330,200,20,1 ; Plattform links
For q=460 To 480:Line 200,q,620,q-40:Next ; Schräge Plattform
If KeyDown(203) Then xp=xp-2 ; Spieler nach links Verschieben
If KeyDown(205) Then xp=xp+2 ; Spieler nach rechts Verschieben
If KeyDown(57) And ReadPixel(xp,yp+13)<>-16777216 Then yg=-6
; Spieler Springen lassen wenn Boden unter den Füssen
yg=yg+0.1 ; Eine Gravitation damit der Spieler auch Richtung Boden beschleunigt wenn
; er sich in der Luft aufhält
yp=yp+yg ; Position wird von der Geschwindigkeit beeinflusst, wird benötigt
; für weichere Bewegungen
If Not ReadPixel(xp-1,yp+5)=-16777216 Then xp=xp+2
If Not ReadPixel(xp+11,yp+5)=-16777216 Then xp=xp-2
If Not ReadPixel(xp+5,yp-1)=-16777216 Then yp=yp-yg:yg=-yg/4
If Not ReadPixel(xp,yp+11)=-16777216 Then yp=yp-yg:yg=-yg/4:yp=yp-0.5
Color 255,255,255 ; Spielerfarbe weiß
Rect xp,yp,10,10,1 ; Spielerkörper zeichnen
Flip
Cls
Wend
End
|