zwei Type-Bilder: Kollisionsabfrage
Übersicht
BlitzBasic
Beginners-Corner|
|
juse4proBetreff: zwei Type-Bilder: Kollisionsabfrage |
Antworten mit Zitat |
|---|---|---|
|
Hi,
ich bin ein ziemlicher Anfänger in Sachen BLITZ-BASIC hab da mal ne Frage: Wenn ich zwei Bilder(Schüsse und Gegner) in einer function nach der Kollision abfrage sagt der Debugger mir das ein bestimmtes Objekt nicht exstiert. habe folgenen Programmcode verwendet: Type Tshot Field x,y Field speed Field image End Type Type Ttarget Field x,y Field dir Field image End Type Function update_drone(target.Ttarget,shot.Tshot) DrawImage target\image,target\x-scroll_x,target\y-scroll_y,target\dir IfImagesOverlap(shot\image,shot\x-sroll_x,shot\y-scroll_y,target\image,target\x-scroll_x,target\y-scroll_y) Delete shot Delete target EndIf End Function Function update_shot(shot.Tshot) DrawImage shot\image,shot\x-sx,shot\y-sy,shot\dir If shot\dir=0 Then shot\y=shot\y-shot\speed;player_wea_speed If shot\dir=1 Then shot\x=shot\x+shot\speed;player_wea_speed If shot\dir=2 Then shot\x=shot\x-shot\speed;player_wea_speed If shot\dir=3 Then shot\y=shot\y+shot\speed;player_wea_speed End Function While Not Keyhit(1) For shot.Tshot=Each Tshot update_shot( shot ) Next For target.Ttarget=Each Ttarget update_drone(target,shot) Next Flip Cls Wend Kann mir jemand helfen MFG: mortus |
||
| Portfolio |LinkedIn |XING | ||
|
|
Tankbuster |
Antworten mit Zitat |
|---|---|---|
|
Falls das der ganze Code sein soll:
Ich würde erstmal sagen, dass bei shot nicht angegeben wurde "Field dir" |
||
|
Twitter
Download Jewel Snake! Windows|Android |
||
|
|
juse4proBetreff: ne |
Antworten mit Zitat |
|---|---|---|
| das ist nartürlich nicht der ganze Quelltext... | ||
| Portfolio |LinkedIn |XING | ||
|
|
RallimenSieger des 30-EUR-Wettbewerbs |
Antworten mit Zitat |
|---|---|---|
|
Das Problem liegt in dieser Schleife
Code: [AUSKLAPPEN] For target.Ttarget=Each Ttarget
update_drone(target,shot) Next Mal angenommen die Function Update_drone löscht die beiden Objeckte, dann sind beide = NULL. Durch die Schleife weist target auf das nächste Objekt, aber Shot ist immer noch = null und das Programm stürzt ab! eine schnelle Lösung wäre es wenn du es vorher abfragst! Code: [AUSKLAPPEN] For target.Ttarget=Each Ttarget
If shot = null then exit update_drone(target,shot) Next |
||
|
[BB2D | BB3D | BB+]
|
||
|
|
juse4proBetreff: gut |
Antworten mit Zitat |
|---|---|---|
|
thx, functionniert jetzt!!!! |
||
| Portfolio |LinkedIn |XING | ||
Übersicht
BlitzBasic
Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group
