BlitzPlus Kollisionsabfrage

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

H4rtter

Betreff: BlitzPlus Kollisionsabfrage

BeitragMo, Feb 01, 2010 18:54
Antworten mit Zitat
Benutzer-Profile anzeigen
hey @ all
ich versuch zur zeit ein jump n run in blitzplus zu programmieren und komm einfach nicht weiter, selbst nach stundenlangem durchforsten von tutorials und hilfen...
mein spieler soll auf der wiese drüber laufen wenn eine kollision mit der wiese passiert,was auch geht, wenn ich aber von der seite auf die wiese spring kann ich hineinlaufen, was ja nicht passieren sollte.
wäre nett wenn jemand ein tipp oder so hat,danke
hier mein code:

Graphics 800,600,0,1
SetBuffer BackBuffer()
y = 250
x = 300
xw = 200
yw = 350

bild = LoadImage("Epic_fail_guy.bmp")
wiese = LoadImage("tile_wiese.bmp")
wieseh = LoadImage("tile_wiese_.bmp")

Repeat
Cls
DrawImage wiese,xw,yw
DrawImage wiese,xw + 300,yw
DrawImage wiese,xw + 105,yw+100
DrawImage wieseh,xw-130,yw+19
DrawImage bild,x,y

If ImagesCollide(bild, x, y, ramen, wiese, xw, yw, ramen) Then
Text 100,100,("Kollision")
If KeyDown(203) Then x=x-1
If KeyDown(205) Then x=x+1
If KeyDown(200) Then y=y-150
ElseIf ImagesCollide(bild, x, y, ramen, wiese, xw + 300, yw, ramen) Then
Text 100,110,("Kollision")
If KeyDown(203) Then x=x-1
If KeyDown(205) Then x=x+1
If KeyDown(200) Then y=y-150
ElseIf ImagesCollide(bild, x, y, ramen, wiese, xw + 105, yw + 100, ramen) Then
Text 100,120,("Kollision")
If KeyDown(203) Then x=x-1
If KeyDown(205) Then x=x+1
If KeyDown(200) Then y=y-150
ElseIf ImagesCollide(bild, x, y, ramen, wieseh, xw - 130, yw + 19, ramen) Then
Text 100,130,("Kollision")
If KeyDown(205) Then x=x+1
If KeyDown(200) Then y=y-150
Else
If KeyDown(203) Then x=x-1
If KeyDown(205) Then x=x+1
y=y+2
EndIf
Flip
Until KeyDown(1)
End

Thunder

BeitragMo, Feb 01, 2010 22:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Du solltest einfach die Y-Koordinate des Spielers bei jeder Kollision mit der Wiese auf die Höhe der Wiese setzen. Dazu kannst du, wenn deine Wiese unterschiedliche Höhen hat, ein Array( Dim ) verwenden in dem du zu jeder X-Koordinate die passende Y-Koordinate speicherst.

Ein paar Tipps:

Benutze die Code-Tags um deine Codes( im Forum )
[ code ] Print "Hallo Welt" [ / code ]

(... ohne die Leerzeichen)

und rücke deinen Code ein. Wenn deine Projekte groß werden, wirst du es bereuen, es nicht
getan zu haben. Smile
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit
 

H4rtter

BeitragMo, Feb 01, 2010 22:27
Antworten mit Zitat
Benutzer-Profile anzeigen
oha danke für die schnelle hilfe Surprised

ja der code war eig. eingerückt, aber i.wie hats nich geklappt beim einfügen

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group