kollison Probleme (=_=)

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

ssj-goku

Betreff: kollison Probleme (=_=)

BeitragMi, Aug 18, 2004 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi das ist schon jetzt mein zweiter thread über Kollisionen im Bereich 2D und ich blick da nicht durch endweder spinnt mein blitzbasix oder ich mach etwas falsch Evil or Very Mad

hier ist der code:
Code: [AUSKLAPPEN]

Graphics 640,480,16,2
SetBuffer BackBuffer()
;;;;;;;;;;;;;;;;;;;;;;
Global tileset = LoadAnimImage("tiles.bmp",32,32,0,8)
Global char = LoadImage("char.bmp")
Global px = 7
Global py = 10
Global move = 5
;;;;;;;;;;;;;;;;;;;;;;
Dim map(32,32)
;;;;;;;;;;;;;;;;;;;;;;
;0= rasen
;1= boden
;2= strasse
;3= niedriges wasser
;4= tiefes wasser
;5= bäume
;6= blummen
;7= wand
;8= mauer
;;;;;;;;;;;;;;;;;;;;;;MAP=32*32
Data 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5
Data 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5
;;;;;;;;;;;;;;;;;;;;;;
For x = 1 To 32
For y = 1 To 32
Read map(x,y)
Next
Next
;;;;;;;;;;;;;;;;;;;;;;

Repeat
 
Cls
If KeyDown(1) Then End
;;;;;;;;;;;;;;;;;;;;;;

For x = 1 To 32
For y = 1 To 32

DrawBlock tileset,x * 32-scrollx,y * 32-scrolly,map(x,y)

Next
Next
;;;;;;;;;;;;;;;;;;;;;;
If KeyDown(208) Then
If map(px,py+1) < 4 Then
py = py +1
move = 5
scrolly = scrolly +32
EndIf
EndIf
;
If KeyDown(200) Then
If map(px,py-1) < 4 Then
py = py -1
move = 5
scrolly = scrolly -32
EndIf
EndIf
;
If KeyDown(203) Then
If map(px,py-1) < 4 Then
px = px -1
move = 5
scrollx = scrollx -32
EndIf
EndIf
;
If KeyDown(205) Then
If map(ps,py+1) < 4 Then
px = px +1
move = 5
scrollx = scrollx +32
EndIf
EndIf
;;;;;;;;;;;;;;;;;;;;;;
If move = 5 Then x = px*32 : y = py*32 : DrawImage char, x-scrollx,y-scrolly : Delay 50

Flip
Forever


Das Problem :Die figuer also der Char kollediert nur unten und oben an dem Rand links und rechts geht er durch und dann kommt ein array fehler also was habe ich falsch gemacht


thx schon mal im voraus

ps:ich weis ich nerve aber ich will das Problem loswerden vielleicht haben es ja auch welche (hoffe für sie nicht)


ssj-goku

Holzchopf

Meisterpacker

BeitragMi, Aug 18, 2004 19:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

If KeyDown(203) Then
If map(px,py-1) < 4 Then
px = px -1
move = 5
scrollx = scrollx -32
EndIf
EndIf
;
If KeyDown(205) Then
If map(ps,py+1) < 4 Then
px = px +1
move = 5
scrollx = scrollx +32
EndIf
EndIf


du prüfst die falschen Koordinaten Confused
Sei mal ehrlich; Hättest du das nicht selber rausgefunden? ich meine, so ne Unmenge an Code ist das ja nicht - und ich hab' jetzt den Code nur so überflogen und dabei ist mir schon ein Fehler aufefallen - und du blickst da schon nichtmehr durch Confused
Also ich glaub nicht, dass du dich auch nur eine müde Minute mit dem Problem auseinander gesetzt hast.

Schäm dich
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

ssj-goku

BeitragMi, Aug 18, 2004 19:46
Antworten mit Zitat
Benutzer-Profile anzeigen
gössten dank an dich, mit dem code habe ich mich beschäftigt aber manchmal ist man zu dumm um den dümmsten fehler zu finden Embarassed also nochmal einen grossen danke an dich Razz

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group