Zitat von
S4mmy
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.
-