Lokalen INstanzen wird nichts zugewiesen.

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

M0rgenstern

Betreff: Lokalen INstanzen wird nichts zugewiesen.

BeitragDo, Apr 22, 2010 20:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey Leute.

Ich hab grade ein Problem mit den Klassen in BMax.
UNdzwar geht es um meine Waypoints.
Ich will dem Gegner am Anfang einen Waypoint zuweisen und zwischendurch immerwieder.

Nur mal was das ganze soll.

Aber mein Problem liegt hier:

BlitzMax: [AUSKLAPPEN]
Local iSmallest:Int
Local iFirst:Int = 0
Local NewGoal:TWaypoint = New TWaypoint

For Local Wayp:TWaypoint = EachIn TWaypoint.TLAllWaypoints

Local wx:Int, wy:Int
wx = Wayp.ix * itilesize - pscrollx
wy = Wayp.iy * itilesize - pscrolly

If iFirst = 0 Then
iSmallest = Pythagoras(wx, wy, En.fx, En.fy)
iFirst = 1
ElseIf iFirst = 1 Then
If (Pythagoras(wx, wy, En.fx, En.fy) < iSmallest) Then
iSmallest = Pythagoras(wx, wy, En.fx, En.fy)
NewGoal = Wayp
EndIf
EndIf
Next

En.twGoal = NewGoal
En.twOldGoal = NewGoal

DebugLog NewGoal.id

NewGoal.Destroy()


ich habe die lokale Variable NewGoal.
Und ich suche den Waypoint, der am nächsten zu dem Gegner liegt (das da ist aus dem Konstruktor der Gegner kopiert).
Der Debuglog den ihr da seht zeigt immer 0 an, was nicht sein kann, denn die ID eines jeden Waypoints ist > 0.
Also wird auch kein Waypoint übergeben, was auch an dem Verhalten der Gegner zu sehen ist:
Die fliegen einfach stur die gleiche Richtung, ohne sich jemals zu drehen o.ä.

Nur leider weiß ich nicht was ich falsch gemacht habe.
Programmabstürze habe ich inzwischen durch die Zeile oben: BlitzMax: [AUSKLAPPEN]
Local NewGoal:TWaypoint = New TWaypoint

beseitigen können, also habe das New eingefügt.

Kann mir vielleicht jemand helfen?
Ich verzweifle hier gleich.

Lg, M0rgenstern

Thunder

BeitragDo, Apr 22, 2010 21:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn der erste Waypoint der ist, der dem Spieler am nächsten ist, so wird er nicht als NewGoal markiert und wenn andere weiter weg sind, bleibt NewGoal==NULL.
Das wäre meine Erklärung.

mfg Thunder
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

M0rgenstern

BeitragDo, Apr 22, 2010 21:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Joho.
Genau das wars.

Vielen Dank.

lg, M0rgenstern

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group