Einzelnen Beitrag anzeigen
Alt 26.07.2008, 13:23   #5 (permalink)
Vienna
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Zitat von S4mmy Beitrag anzeigen

Erstell eine Sqs und nenn sie zb. start. Dann schreibst du in den Spieler in die Init-Zeile this exec "start.sqs".
In die start.sqs schreibst du:
_id = player addAction ["Los jetzt","los.sqs"]

und wenn du dann die los.sqs startest
schreibst du am anfang des Scripts:

~1
removeAction _id

und dann lässt du ne Zeile frei und schreibst das eigentliche Script dadrunter.
Ich denke das klappt so könnt aber sein, dass das Script nicht weiß was mit _id gemeint ist. Muss du dann ausprobieren

Gruß S4mmy

So geht das nicht! Eine lokale Variable (hier _id) ist in einem anderen Skript nicht sichtbar.

Das Skript, welches mit der Aktion gestartet wird, erhält als Parameter das aufrufende Objekt und die die ID der aufrufenden Aktion.

Wenn gewünscht, wird aus dem Objekt (Spieler oder Gegenstand) die aufrufende Aktion dann so entfernt:

(_this select 0) removeAction (_this select 2);

Sieh dir das Beispiel im Anhang an.

-
Angehängte Dateien
Dateityp: zip Einmaliger_Aktionsaufruf.zip (1,4 KB, 38x aufgerufen)
Vienna ist offline   Mit Zitat antworten