Ich hatte nun einen etwas anderen Ansatz, der zwar leider auch nicht geht, aber vielleicht erkennt ja jemand schnell den Fehler.

Ich dachte mir, wenn ich schon nicht den Vektor des Nodes heraus lesen kann, könnte ich ja das Objekt an jeden Knoten setzen und dann seine Position speichern. Die Differenz wird mit der ursprünglichen Position abgeglichen und am Ende wird der Knoten mit dem kürzesten Abstand zugewiesen.

Hier der entsprechende Code:

Code:
var sumnodes = 0;		// Summe aller Knoten
var node = 1;			// Nummer des verwendeten Knotens
VECTOR locVecNode, nodevec, myvec;
vec_set(nodevec, vector(0,0,0));
vec_set(myvec, vector(0,0,0));

if (_pathName)
{
	vec_set(myvec, _ent.x);
	sumnodes = path_set(_ent, _pathName);
	
	int i;
	var distance, distance2, temp;
	
	// Refferenzpunkt zu 1
	
	path_setnode(my,node,NULL, NULL);
	vec_set(nodevec, _ent.x);
	
	distance = vec_dist(myvec, nodevec);
	
	for (i = 0; i < sumnodes; i++)
	{
		path_setnode(my,i,NULL, NULL);
		vec_set(nodevec, _ent.x);
		distance2 = vec_dist(myvec, nodevec);
		
		if (distance2 < distance)
		{
			node = i;	
		}
		
	}
	
	path_setnode(my,node,NULL, NULL);
	
}


Last edited by Yamm; 11/13/14 07:49.