Hallo liebe Community,

ich bin mir nicht sicher ob ich einen Bug gefunden habe oder aber es einfach nur einen dicken Logikfehler habe im Code. Und zwar möchte ich mit diesem Code das eine Entity einem mit WED gesetzten Pfad folgt. Hier ist der Code:

Code:
VECTOR Temp_var;
var AIReichweite;

action GegnerAI()
{
	while(!player){wait(1);} //warte bis Spieler da ist!
	
	my.skill4 = 1; //Aktueller Wegpunkt!
	path_set(my, "path_000");
	path_getnode(my,my.skill4,Temp_var,NULL);
	
	while(1)
	{
		my.skill3 = c_trace(my.x,Temp_var, IGNORE_ME | USE_POLYGON);
		AIReichweite = my.skill3; //Globale Variable um zu sehen ob die Reichweitenmessung funktioniert!
		
		if(my.skill3 > 30) //skill3 = Reichweite bis zum nächsten Wegpunkt!
		{
			path_getnode(my,my.skill4,Temp_var,NULL);
			vec_sub(Temp_var, my.x);
			vec_to_angle(my.pan,Temp_var);
			
			c_move(my, vector(3*time_step,0,0), nullvector, GLIDE);
		}
		else
		{
			my.skill4 += 1; //Wenn Wegpunkt erreicht, setze nächsten!
		}
		wait(1);
	}
	return;
}



Ich warte erstmal mit der AI bis der Spieler im Level erstellt worden ist. Dann setz ich mit Skill4 den anzupeilenden Wegpunkt. Mit Path_Set setze ich die AI auf eine Route von WED und sage mit Path_Getnode das ich die erste Position von der Node in dem vordefinierten Vector gespeichert haben will. Per C_Trace möchte ich dann prüfen wie weit die AI vom Wegpunkt entfernt ist damit ich damit bestimmen kann ab welcher Entfernung auf den nächsten Wegpunkt umgesprungen wird. Das ist meine Theorie und in der Praxis sollte das auch funktionieren. Ich habe jedoch die Feststellung gemacht das sich die AI keinen Meter bewegt. Der Tracewert ist "0"! Lasse ich jedoch eine Temporäre Entity an der Nodeposition erscheinen und lasse diese antracen, dann funktioniert die Reichweitenmessung. Warum ist das so? Ist das ein Bug oder mache ich wie gesagt einen Fehler? Immerhin denke ich das in Temp_var ja die Position von der ersten Node gespeichert ist und das antracebar sein sollte. Ich arbeite derzeit wieder mit der A7. Wenn da jemand eine Lösung weiss oder was ich halt falsch mach, bitte gebt mir einen Ratschlag bzw. Tip.


MfG

Meerkat Laru


http://www.gpi-studios.com

OS: Windows 7 Home Premium (64 Bit Version)
AMD Athlon 64 X2 Dual Core Processor 5200+
6gb DDR 2 - RAM
NVIDIA GeForce GTX 460
GameStudio Version A8 Commercial