Ohne Sperre geht es auch z.B. mit einem EventHandler im Panzer.
Wenn man den Code (so wie er da steht) in die Initialisierungszeile eines Panzers kopiert, dann kann ein Spieler mit Namen
Soldat1 nur der Schütze im Panzer sein. Egal wo er einsteigt oder im Panzer umsteigt.
Die Routine kann in ein Skript verlegt, verfeinert werden und natürlich auch für den Fahrer und Kommandanten ausgelegt sein.
Code:
this addEventHandler
[
"Getin",
{
if (_this select 2 == Soldat1) then
{
_this spawn
{
private ["_v","_u"];
_v = _this select 0;
_u = _this select 2;
while {_u != vehicle _u} do
{
if (gunner _v != _u) then
{
titleCut ["", "BLACK FADED"];
_u action ["eject", _v];
sleep 1;
_u moveInGunner _v;
titleCut ["", "BLACK IN", 1]
};
sleep 0.1
}
}
}
}
]
Der Spieler verbleibt natürlich im Panzer und merkt durch das Abblenden nichts vom Umsetzen.