Zitat von
McDonalds
momment xD also wir nehmen jetz mal an mein fahrzeugname ist "Fahrzeug1" und der name vom auslöser ist "Auslöser1", was muss ich jetzt schreiben um im Fahrzeug1 die aktion im menü "Aktiviere Auslöser" haben will?
this addAktion ["aktiviere Auslöser", ......?
Entschuldige
Heute sehr im Zeitdruck.
Also addAction (mit c!) fügt immer dem Onjekt ,das an 1. Stelle steht, einen Aktioneintrag hinzu. Da du willst, dass der Fahrer das im Fahrzeug kann, sollte man hier sicherheitshalber das Fahrzeug als Ziel wählen, das geht genausogut wie der Spieler selbst, also zunächst:
Code:
if (player in (crew Fahrzeug1)) then
{
Fahrzeug1 addAction ["Auslöser aktivieren!", "meinSkript.sqf"];
};
Damit hast du dem Fahrzeug ein Aktionmenüeintrag zugewiesen. Problem ist nur, dass du das so mit dem if-Befehl nur in einem Skript nutzen kannst. Daher musst du erstmal uns sagen, wie du den Aktionmenüeintrag anbringen willst. Du kannst z.B: nur die Zeile
Fahrzeug1 addAction ["Auslöser aktivieren!", "meinSkript.sqf"];
in die Init-Zeile schreiben, dann hat das Fahrzeug aber von Anfang an diesen Befehl. Möchtest du, dass es nur geht, wenn der Spieler einsteigt, musst du das entweder über ein Skript lösen, das z.B. zu Missionsbeginn gestartet wird oder über einen Auslöser:
Auslöser auf 0,0 und alles egal, in die Bedingungszeile:
Code:
player in (crew Fahrzeug1)
(also komplett ohne this, einfach das this des Auslösers löschen und ersetzen)
In die Aktivierungszeile
Code:
ID1 = Fahrzeug1 addAction ["Auslöser aktivieren!", "meinSkript.sqf"];
In die Deaktivierungszeile
Code:
Fahrzeug1 removeAction ID1;
Damit hättest du schonmal den Eintrag und der verschwindet, sobald der Spieler wieder aussteigt.
Ab jetzt spielt sich der Rest im Skript ab, dass durch das Aktionmenü aufgerufen wird, in meinem obigen Beispiel also meinSkript.sqf
Den Rest können dir dann andere machen. Hoffe jetzt keinen Fehler mit crew gemacht zu haben.