diff --git a/arma/client/addons/actor/XEH_postInitClient.sqf b/arma/client/addons/actor/XEH_postInitClient.sqf index 483c48c..d60aacf 100644 --- a/arma/client/addons/actor/XEH_postInitClient.sqf +++ b/arma/client/addons/actor/XEH_postInitClient.sqf @@ -25,6 +25,24 @@ player addEventHandler ["Respawn", { if (isNil QGVAR(ActorRepository)) then { call FUNC(initRepository); }; +GVAR(resetMedicalSpectator) = { + player switchMove ""; + player playMoveNow ""; + + ["Terminate"] call BFUNC(EGSpectator); + + private _spectatorDisplay = findDisplay 60492; + if !(isNull _spectatorDisplay) then { _spectatorDisplay closeDisplay 1; }; + if !(isNull player) then { + player switchCamera "INTERNAL"; + player enableSimulation true; + }; + + cameraEffectEnableHUD true; + showCinemaBorder false; + disableUserInput false; +}; + [QGVAR(initActor), { GVAR(ActorRepository) call ["init", []]; }] call CFUNC(addEventHandler); @@ -40,14 +58,15 @@ if (isNil QGVAR(ActorRepository)) then { call FUNC(initRepository); }; player setDir _medSpawnDir; player switchMove "Acts_LyingWounded_loop"; - ["Initialize", [player, [], false, true, true, true, true, true, false, false]] call BFUNC(EGSpectator); - - [SRPC(economy,onHealed), [player]] call CFUNC(serverEvent); + [] spawn { + ["Initialize", [player, [], false, true, true, true, true, true, false, false]] call BFUNC(EGSpectator); + uiSleep 5; + [SRPC(economy,onHealed), [player]] call CFUNC(serverEvent); + }; }] call CFUNC(addEventHandler); [QGVAR(onActorHealed), { - player switchMove ""; - ["Terminate"] call BFUNC(EGSpectator); + call GVAR(resetMedicalSpectator); }] call CFUNC(addEventHandler); [QGVAR(responseInitActor), {