Kann mir jmd verraten wie ich das anpasse an meine Grafik ?...
BlitzBasic: [AUSKLAPPEN] [EINKLAPPEN] ResX = 810 ResY = 610 Graphics ResX,ResY,32,2 SetBuffer BackBuffer() SeedRnd MilliSecs()
Global mapx,mapy,id Global spielstart = False Global counter
head_x = 79 head_y = 59
Const Nord = 1 Const Ost = 2 Const Sued = 3 Const West = 4 Richtung = Ost
Type TTeil Field x Field y End Type
For i=0 To 4 Teil.TTeil = New TTeil Teil\x = head_x - 4 + i Teil\y = head_y Next Nahrung_x = Rand(0,31) Nahrung_y = Rand(0,23)
Bild = LoadImage("media/map/map.png") Playbtn = LoadImage("media/button/play.png") Playbtnover = LoadImage("media/button/play_over.png")
Snakekopflinks = LoadImage("media/snake/left/snake_left_head.png") Snakekopfrechts = LoadImage("media/snake/right/snake_right_head.png") Snakekopfoben = LoadImage("media/snake/up/snake_up_head.png") Snakekopfunten = LoadImage("media/snake/down/snake_down_head.png")
Snakebodylinks = LoadImage("media/snake/left/snake_left_body.png") Snakebodyrechts = LoadImage("media/snake/right/snake_right_body.png") Snakebodyoben = LoadImage("media/snake/up/snake_up_body.png") Snakebodyunten = LoadImage("media/snake/down/snake_down_body.png")
food = LoadImage("media/food/food_apple.png")
MaskImage playbtn, 255,255,255 MaskImage playbtnover, 255,255,255
MaskImage Snakekopflinks,255,0,255 MaskImage Snakekopfrechts,255,0,255 MaskImage Snakekopfoben,255,0,255 MaskImage Snakekopfunten,255,0,255 MaskImage Snakebodylinks,255,0,255 MaskImage Snakebodyrechts,255,0,255 MaskImage Snakebodyoben,255,0,255 MaskImage Snakebodyunten,255,0,255 MaskImage food,255,0,255
mapx = ResX - 10 mapy = ResY - 10 mausbreite = 1 maushoehe = 1
While Not KeyDown(1) If spielstart = False Then Cls DrawImage Bild, 0,0 DrawImage Food,275,200 DrawImage Snakekopfrechts,250,200 DrawImage Snakebodyrechts,225,200 DrawImage Snakebodyrechts,200,200 If(RectsOverlap(MouseX(), MouseY(), 1, 1, 300, 180, ImageWidth(playbtn),ImageHeight(playbtn)))Then DrawImage Playbtnover,300,180 If MouseHit(1) Then spielstart = True EndIf Else DrawImage Playbtn,300,180 EndIf EndIf If spielstart = True Then Cls DrawImage Bild, 0,0 If KeyHit(200) Then If Richtung <> Sued Then Richtung = Nord EndIf EndIf
If KeyHit(205) Then If Richtung <> West Then Richtung = Ost EndIf EndIf
If KeyHit(208) Then If Richtung <> Nord Then Richtung = Sued EndIf EndIf
If KeyHit(203) Then If Richtung <> Ost Richtung = West EndIf EndIf If MilliSecs() - letztebewegung > 50 Then letztebewegung = MilliSecs() head_x = head_x - (Richtung=West) + (Richtung=Ost) head_y = head_y - (Richtung=Nord) + (Richtung=Sued) If head_x < 20 Then head_x = 79 If head_x > 79 Then head_x = 20 If head_y < 20 Then head_y = 59 If head_y > 59 Then head_y = 20
If head_x = Nahrung_x And head_y = Nahrung_y Then Nahrung_x = Rand(20,79) : Nahrung_y = Rand(20,59) gegessen = 1 Punkte = Punkte + 1 Else gegessen = 0 EndIf
Teil.TTeil = New TTeil Teil\x = head_x Teil\y = head_y
If gegessen = 0 Then Delete First TTeil EndIf
EndIf
For Teil.TTeil = Each TTeil Color 127,127,127 Rect Teil\x*10,Teil\y*10,10,10,1
Next
Color 255,255,255 Rect head_x*10,head_y*10,10,10,1
Color 255,255,0 Rect Nahrung_x*10,Nahrung_y*10,10,10,1 Color 255,255,255 Text 0,0,"Punkte: "+Punkte Text 20,400,MouseX()+"|"+MouseY()
Flip EndIf Flip
Wend End
Habe das jetzt schon nach meinen wünschen optimiert .... aber der fail ist das er die map falsch zeichnet.... also wenn ich nach rechts mit der snake gehe ... verschwindet sie perfekt ... aber taucht am falschen punkt auf ... ca. mittig der map. , wenn ich das gleiche nach unten mache passiert das gleiche nur auf dem y wert.... Mein fenster ist 810x610 groß ... das eigentliche Spielfeld soll 800x600 sein ...
wäre nett wenn mir da jemand helfen könnte.
|