if imagescollide

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

mas93

Betreff: if imagescollide

BeitragFr, Jul 21, 2006 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
hab ein problem mit collide.WAs hab ich flsch gemacht?????


Code: [AUSKLAPPEN]
AppTitle "Imperial Quests I Nakobiin"
SetBuffer BackBuffer()

Graphics 1280, 1024,16,1

;laden
karte=LoadImage("Bilder/s.bmp")
spieler=LoadImage("Bilder/Mann Süd Drachen .bmp")
strich=LoadImage("Bilder/a.bmp")
cover=LoadImage("Bilder/Cover.bmp")
laufen = LoadSound("Sounds/laufen.wav")
rennen=LoadSound("Sounds/rennen.wav")
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


;MASK
MaskImage spieler,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
;HIER STIMMT WAS NICHT!!!!!!!
If ImagesCollide(spieler, x1, y1, frame1, strich, x2, y2, frame2) Then DrawImage cover,222,222



DrawImage karte, 0, 0
DrawImage strich,680,412
DrawImage spieler, x, y
   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)

Until KeyHit(1)   ;Bis ESC gedrückt


End


~EDIT:~ Codetags eingefügt. Benutze sie bitte selbstständig.
MfG BladeRunner

BladeRunner

Moderator

BeitragFr, Jul 21, 2006 14:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Zu Deinem Code:
Arrow Vermeide Print. Benutze Text stattdessen.
Arrow Du hast oben eine Funktionierende Tastenabfrage. Der untere Teil mit den ganzen Repeats ist vollkommen überflüssig und auch sinnfrei.
Arrow Du prüfst auf x1 und x2 etc aber hast im Code nur x definiert. Frame1 und frame2 gibt es aquch nicht. Die Parameter der Befehle sind zum ersetzen durch eigene Variablen gedacht. Also nicht nur abschreiben, sondern anpassen Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group