path_create(ENTITY*
entity, var nodes, var edges)
Erzeugt einen Actor-Pfad mit der angegebenen Zahl von Knoten und Kanten, und verbindet die angegebene Entity mit dem Pfad.
Parameter:
entity - Entity Pointer.
nodes - Zahl der Pfad-Knoten (Wegpunkte).
edges - Zahl der Pfad-Kanten (Verbindungslinien).
Rückgabewert:
0 wenn der Pfad nicht erzeugt werden konnte, andernfalls nonzero.
Speed:
Langsam
Modifiziert:
entity - wird mit dem Pfad verbunden.
Remarks:
- Actor-Pfade (nicht mit Ordner-Pfaden zu verwechseln) sind Graphen aus Wegpunkten (Knoten), die durch Linien (Kanten) verbunden sind. Pfade können per WED im Level editiert oder mit dieser Funktion erstellt werden. Mit einem Pfad verbundene Entities können entlang des Pfads mit der path_splineFunktion bewegt werden.
-
Die Kanten sind defaultmäßig so verbunden, dass die erste Kante von Knoten 1 zu Knoten 2 führt, die nächste von Knoten 2 bis 3 und so weiter. Alle Knoten sind per default auf die Position (0,0,0) gesetzt. Verwenden Sie die path_setnode und path_setedge Funktionen zum Setzen von Positionen und weiteren Eigenschaften der Knoten und Kanten.
- Die maximale Anzahl der Pfade kann vor dem Level-Laden durch die max_paths Variable gesetzt werden (default = 100). Die gesamte maximale Anzahl von Knoten und Kanten ist 100 * max_paths. Wenn zuviele Pfade, Knoten oder Kanten erstellt werden, liefert path_create 0 zurück.
Example:
// create a path from 4 points, and let a sphere follow it
void main()
{
max_paths = 1;
level_load(0);
me = ent_create(SPHERE_MDL,NULL,NULL);
vec_scale(my.scale_x,5);
vec_set(my.blue,vector(0,255,255));
my.flags |= LIGHT;
path_create(me,4,4);
path_setnode(me,1,vector(500,250,-100),NULL);
path_setnode(me,2,vector(500,-250,-100),NULL);
path_setnode(me,3,vector(1000,-250,100),NULL);
path_setnode(me,4,vector(1000,250,100),NULL);
var distance = 0;
while(1){
path_spline(me,my.x,distance += 20*time_step);
wait(1);
}
}
See also:
path_scan,
path_next, path_setnode, path_setedge, path_spline
► Aktuelle
Version Online