Klar, du kannst folgenden Code mal ausprobieren.
Es handelt sich um eine modifizierte Version des Codebeispiels aus dem Handbuch.
Dort funktioniert auch die if-Abfrage der Knoten-Skills, die du einbauen wolltest.

Und ich muss mich verbessern: ent_waypoint muss nicht mit ent_nodepos, sondern mit ent_getnode ausgetauscht werden. Die Function ent_nodepos wird zwar vom Beispielcode im Handbuch benutzt, existiert aber offenbar gar nicht..

Für folgenden Code musst du dir noch einen zusätzlichen Entityskill startklar machen (_node), in dem die Nummer des aktuellen Knotens gespeichert wird.
Code:
 function follow_path
{
// weise Entity dem nächsten Pfad zu
result = path_scan(me,my.x,my.pan,vector(360,180,1000));
if (result == 0) { return; } // kein Pfad gefunden

var angle[3];

// finde den ersten Wegpunkt
my._node = 1;
path_getnode(my,my._node, my._TARGET_X, NULL);

while (my) {

// finde die Richtung
result = vec_to_angle(angle,vec_diff(temp,my._TARGET_X,my.x));

if (result < 25) { // Knoten erreicht

// Skills von erreichten Knoten erhalten
path_getnode(my,my._node, my._TARGET_X, path_skills);

if (path_skills[0] == 12) {
beep;
}

// nächster Knoten
my._node = path_nextnode(my,my._node,1);
path_getnode(my,my._node, my._TARGET_X, NULL); // Koordinaten des Knotens erhalten
}

// zu Knoten drehen & bewegen
vec_set(my.pan, angle);
vec_set(temp, vector(6*time_step,0,0));
vec_rotate(temp, angle.pan);
vec_add(my.x, temp);

wait(1);
}
}