warum keine collision?
Übersicht

![]() |
mas93Betreff: warum keine collision? |
![]() Antworten mit Zitat ![]() |
---|---|---|
If ImagesCollide(spieler, x, y, 0, person1,22, 88, 0) Then Print"hallo"
Hi,was stimmt hier nicht??? nach langem versuchen gibt es immer noch keine Kollision?! |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
gibt es 2 bildreferenzen mit den namen spieler und person1? | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
WAS MEINST DU DAMIT? | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das spieler und person1 jeweils ein Bild darstellen, dass du zeichnest etc. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Er meint ob du die Bilder geladen hast:
ql:loadimage |
||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab die Bilder geladen und es sind 2 einzelne bilder | ||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kommt eine Fehlermeldung, wenn ja welche? | ||
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
es kommt keine Fehlermeldung.
Das Erste Bild geht einfach unter das 2. Hir der code: AppTitle "Imperial Quests I Nakobiin" SetBuffer BackBuffer() Graphics 1280, 1024,16,1 x=615 y=970 ;laden karte=LoadImage("Bilder/s.bmp") spieler=LoadImage("Bilder/Mann Süd Drachen .bmp") strich=LoadImage("Bilder/strich.bmp") cover=LoadImage("Bilder/Cover.bmp") laufen = LoadSound("Sounds/laufen.wav") rennen=LoadSound("Sounds/rennen.wav") button1=LoadImage("Bilder/button1.bmp") menü=LoadImage("Bilder/amenü.bmp") button2=LoadImage("Bilder/button2.bmp") button3=LoadImage("Bilder/button3.bmp") maus=LoadImage("Bilder/maus.bmp") person1=LoadImage("Bilder/Mann Süd Stahl.bmp") PlayMusic ("Sounds/start.wav") Color 80, 100, 200 Print"Dieses Spiel ist hergestellt und erfunden von" Print" Lu-Pa-Jama06" Print"Tastatur besetzung" Print"Bewegen ------> Pfeiltasten" Print"Schlagen ------> E" Print"Sprinen ------> F" Print"Beutel öffnen -> Tab" Print"Weiter mit Enter" WaitKey Cls MaskImage maus,0,0,255 Repeat DrawImage menü,0,0 DrawImage button1,204,306 DrawImage button2,207,352 DrawImage button3,207,404 DrawImage maus,MouseX(),MouseY() Flip Cls If ImagesCollide(maus, x, y, 0, button1, 204, 306, 0) Then End If ImagesCollide(maus, x, y, 0, button2, 207, 352, 0) Then End If ImagesCollide(maus, x, y, 0, button3, 207, 404, 0) Then End Until MouseHit(1) ;MASK MaskImage spieler,0,0,255 MaskImage person1,0,0,255 ;laufen Repeat If KeyDown(200) Then y=y-1 ;Oben If KeyDown(208) Then y=y+1 ;Unten If KeyDown(203) Then x=x-1 ;Links If KeyDown(205) Then x=x+1 ;Rechts If KeyDown(72)Then y=y-5 ;Oben If KeyDown(76) Then y=y+5;Unten If KeyDown(75) Then x=x-5 ;Links If KeyDown(77) Then x=x+5 ;Rechts Cls ;collisionen If ImagesCollide(spieler, x, y, 0, strich, 84, 90, 0) Then End If ImagesCollide(spieler, x, y, 0, strich, 287, 89, 0) Then End If ImagesCollide(spieler, x, y, 0, strich, 489, 89, 0) Then End If ImagesCollide(spieler, x, y, 0, person1,22, 88, 0) Then DrawImage karte, 0, 0 DrawImage strich,84,90 DrawImage spieler, x, y DrawImage strich,287,89 DrawImage strich,489,89 DrawImage person1,22,88 Flip Repeat If KeyDown(72) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(rennen) EndIf Until Not KeyHit(72) Repeat If KeyDown(75) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(rennen) EndIf Until Not KeyHit(75) Repeat If KeyDown(76) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(rennen) EndIf Until Not KeyHit(76) Repeat If KeyDown(77) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(rennen) EndIf Until Not KeyHit(77) Repeat If KeyDown(205) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(laufen) EndIf Until Not KeyHit(205) Repeat If KeyDown(203) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(laufen) EndIf Until Not KeyHit(203) Repeat If KeyDown(208) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(laufen) EndIf Until Not KeyHit(208) Repeat If KeyDown(200) Then If ChannelPlaying(channel) = 0 Then channel = PlaySound(laufen) EndIf Until Not KeyHit(200) ;Bis ESC gedrückt Until KeyHit(1) End |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei mir klappt der Code nicht:
Code: [AUSKLAPPEN] If ImagesCollide(spieler, x, y, 0, person1,22, 88, 0) Then
Hier öffnest du etwas dass nicht mehr geschlossen wird Benutze Code-Tags für dein Code. |
||
- Zuletzt bearbeitet von Christoph am Fr, Jul 21, 2006 21:05, insgesamt einmal bearbeitet
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Da Fallen mir 2 Dinge auf:
1. Wo endet das IF, welches hier das Problem ist? So wie ich das sehe nirgends ... 2. Die Repeat - until innerhalb der Hauptschleife sind so eigentlich falsch. Was du dort bräuchtest sind "state variablen" die du setzt wenn du den sound startest und die sagen welcher sound gerade läuft. so wie das dort aktuell ist, führt das über kurz oder lang garantiert zu problemen. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
mas93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
If ImagesCollide(spieler, x, y, 0, person1,22, 88, 0) Then Print "hallo"
so sollte das heißen.Geht aber trotzdem nicht!! |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ist spieler überhaupt je an der Position, so das es kollidieren könnte?
Ach ja, du hast net eventuell ne Geforce mit älterem treiber oder? |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Rone |
![]() Antworten mit Zitat ![]() |
---|---|---|
aaaargh...
Dein Code ist ja der ober Horrer! ![]() Das sollte eigendlich alle Fragen diesbezüglich beantworten ![]() Code: [AUSKLAPPEN] Graphics 640,480,16
SetBuffer BackBuffer() ;##################################################### ;Grafiken erstellen Global gfxBox=CreateImage(50,50) Global gfxCircle=CreateImage(50,50) SetBuffer ImageBuffer(gfxBox) Color 0,0,255 Rect 10,10,30,30,1 SetBuffer ImageBuffer(gfxCircle) Color 255,0,0 Oval 10,10,30,30,1 SetBuffer BackBuffer() ;##################################################### Global boxX=Rnd(50,610) Global boxY=Rnd(50,430) Global x=100,y=100 Repeat Cls Steuerung() checkColli() DrawScreen() Flip Until KeyHit(1) EndGraphics End ;##################################################### Function Steuerung() Local move=0 If KeyDown(200) Then y=y-5 move=1 ElseIf KeyDown(208) Then y=y+5 EndIf If KeyDown(203) Then x=x-5 ElseIf KeyDown(205) Then x=x+5 EndIf If move Then ;If ChannelPlaying(channel) = 0 Then channel = PlaySound(rennen) Else ;If ChannelPlaying(channel) Then StopChannel(channel) EndIf End Function ;##################################################### Function checkColli() If ImagesCollide(gfxCircle,x,y,0,gfxBox,boxX,boxY,0) Then Text 10,10,"Collision" EndIf End Function ;##################################################### Function DrawScreen() DrawImage gfxBox,boxX,boxY DrawImage gfxCircle,x,y End Function ;##################################################### Und zum zweiten mal: Guck mal in die Onlinehilfe !!! Dann würde ein solches Code-Chaos garnicht erst entstehen... mfg Rone |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Ist spieler überhaupt je an der Position, so das es kollidieren könnte?
Ja. Schau: Code: [AUSKLAPPEN] If ImagesCollide(spieler, x, y, 0, person1,22, 88, 0) Then Print"hallo"
DrawImage spieler, x, y DrawImage person1,22,88 Es müsste an etwas anderem liegen... ![]() |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das Thema liegt inzwischen ja schon 3? mal vor: https://www.blitzforum.de/foru...hp?t=18969 ![]() Sein problem ist das viele geflippe und gelösche ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group