Zusammenstoß programmieren

Übersicht BlitzBasic Allgemein

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

 

x.Force

BeitragFr, Mai 14, 2004 22:46
Antworten mit Zitat
Benutzer-Profile anzeigen
schreib einfach mal Waitkey() rein und schau ob es anhält :-/

AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT

Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.-
 

jacky

BeitragFr, Mai 14, 2004 22:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Rolling Eyes
schreib doch einfach mal:

If ImagesOverlap (haus, MouseX(), MouseY(), kol, 200, 200)
Then Print "KOLLISION!!"

und schau was passiert.
Aller Anfang ist schwer!!!

Tom

BeitragFr, Mai 14, 2004 22:50
Antworten mit Zitat
Benutzer-Profile anzeigen
@x.force: es hält an!
aber wenn ich z.B. einen mario-clon machen will, kann ich ja net das ganze programm wegen waitkey anhalten.
@jacky: dann schreibt er mir kollision. aber die beiden objekte überschneiden sich trotzdem!
AthlonXP 2800+ ~ 2.0Ghz ; Radeon9800pro ATLANTIS (Sapphire) ; 512mb DDR RAM (333mhz) ; Creative Soundblaster Audigy2 ZS ;
BlitzPlus (B+)

Mein Allgemein-FORUM : http://www.tom-forum.de.tc

Meine Mini-Page : www.tom.kohop.de
 

jacky

BeitragFr, Mai 14, 2004 22:52
Antworten mit Zitat
Benutzer-Profile anzeigen
dann schreibst du

While Not Keydown(1)

(die Hauptschleife)

Wend
Aller Anfang ist schwer!!!

Tom

BeitragFr, Mai 14, 2004 22:55
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab das dann so:

Code: [AUSKLAPPEN]
Graphics 640,480,16,2
haus=LoadImage("haus.bmp")
kol=LoadImage("kol.bmp")
kolX=MouseX()
kolY=MouseY()
.s
If KeyDown(1)=1 Then End
Cls
DrawImage haus,MouseX(),MouseY()
DrawImage kol,200,200
Flip
If ImagesOverlap (haus,MouseX(),MouseY(),kol,200,200)
While Not KeyDown(1)
Goto s
Wend
EndIf
Goto s
AthlonXP 2800+ ~ 2.0Ghz ; Radeon9800pro ATLANTIS (Sapphire) ; 512mb DDR RAM (333mhz) ; Creative Soundblaster Audigy2 ZS ;
BlitzPlus (B+)

Mein Allgemein-FORUM : http://www.tom-forum.de.tc

Meine Mini-Page : www.tom.kohop.de
 

x.Force

BeitragFr, Mai 14, 2004 23:01
Antworten mit Zitat
Benutzer-Profile anzeigen
es war ja nur ein beispiel, bei einem Marioklon wenn er z.b gegen einen gegner läuft

... Then Leben=Leben-1:RestartLevel()

musst halt den Level wieder von vorne beginnen

Und vergess Goto wieder schnell^^

AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT

Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.-
 

x.Force

BeitragFr, Mai 14, 2004 23:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Graphics 640,480,16,2

haus=LoadImage("haus.bmp")
kol=LoadImage("kol.bmp")


While Not KeyDown(1) ;Alles in die Hauptschleife
Cls
DrawImage haus,MouseX(),MouseY()
DrawImage kol,200,200
If ImagesOverlap (haus,MouseX(),MouseY(),kol,200,200) Then Leben=Leben-1
End If
Flip
Wend


Sry wegen doppelpost

AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT

Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.-

Tom

BeitragFr, Mai 14, 2004 23:10
Antworten mit Zitat
Benutzer-Profile anzeigen
mag sein das mit dem sterben.
aber wenn mario z.B. vor einer wand steht, dann sollte er darüberjumpen.
aber wenn er das nich tut und da gegen rennt, dann ähh... rennt er gegen die wand! UND DAS MEINE ICH DAMIT: KOLLISION
AthlonXP 2800+ ~ 2.0Ghz ; Radeon9800pro ATLANTIS (Sapphire) ; 512mb DDR RAM (333mhz) ; Creative Soundblaster Audigy2 ZS ;
BlitzPlus (B+)

Mein Allgemein-FORUM : http://www.tom-forum.de.tc

Meine Mini-Page : www.tom.kohop.de
 

x.Force

BeitragFr, Mai 14, 2004 23:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Gut dann denk doch mal nach immer wenn er dagegen läuft bleibt seine Position gleich das heisst PositionX=PositionX

so kann er nicht mehr weiterrennen

AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT

Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.-

Kabelbinder

Sieger des WM-Contest 2006

BeitragFr, Mai 14, 2004 23:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich weis nicht, ob ich das verstanden habe, (könnte an dem heutigen Stress liegen Rolling Eyes ) aber meinst du das so, dass die Objekte Miteinander Kollidieren?
Wenn ja, hab ich was für dich:

Mit der Maus kannst du das eine Quadrat bewegen, das andere bewegt sich von alleine, wenn du die zum zusammenstoß bringst, prallt das eine ab.

Code: [AUSKLAPPEN]
Graphics 640,480

xricht = 3
yricht = 1
xcor = 320
ycor = 240

Repeat
x = MouseX()
y = MouseY()

If xcor >= 640 Then
xcor = 639
xricht = -3
EndIf
If xcor <= 0 Then
xcor = 0
xricht = 3
EndIf

If ycor >= 480 Then
ycor = 479
yricht = -2
EndIf
If ycor <= 0 Then
ycor = 1
yricht = 2
EndIf

If RectsOverlap(x,y,20,1,xcor,ycor,20,20) Then yricht = -2
If RectsOverlap(x,y,1,20,xcor,ycor,20,20) Then xricht = -3
If RectsOverlap(x+19,y,1,20,xcor,ycor,20,20) Then xricht = 3
If RectsOverlap(x,y+19,20,1,xcor,ycor,20,20) Then yricht = 2

xcor = xcor + xricht
ycor = ycor + yricht
Rect x,y,20,20,1
Rect xcor,ycor,20,20,1
Delay 5
Cls
Until KeyHit(1)
End
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

Tom

BeitragFr, Mai 21, 2004 10:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok,
dann bedanke ich mich für eure Hilfe!
Very Happy
AthlonXP 2800+ ~ 2.0Ghz ; Radeon9800pro ATLANTIS (Sapphire) ; 512mb DDR RAM (333mhz) ; Creative Soundblaster Audigy2 ZS ;
BlitzPlus (B+)

Mein Allgemein-FORUM : http://www.tom-forum.de.tc

Meine Mini-Page : www.tom.kohop.de

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group