Eyecandy 2.0

Updated animations for revive
This commit is contained in:
happydayz 2016-01-17 02:22:00 +11:00
parent b658616004
commit d7cbc9c6fc

View File

@ -3,10 +3,21 @@ Enigma_RevivePlyr.sqf
[_ZEN_] Enigma (Happydayz) [_ZEN_] Enigma (Happydayz)
*/ */
private["_target","_targetname","_updatestats"]; private["_defibangle","_defibpos","_bodypos","_action","_timer","_Anims","_target","_targetname","_bodypos1","_bodypos2","_bodypos3","_updatestats","_healPlace","_target","_animstate","_primaryw","_posh","_posi","_dy","_dx","_dir"];
_target = _this select 0; _target = _this select 0;
_targetname = name _target; _targetname = name _target;
_bodypos1 = [0.75,0.15,0];
_bodypos2 = [-0.75,0.1,0];
_bodypos3 = [0,0.08,0];
_healPlace = "_bodypos1";
_action = "medicStartRightSide";
_bodypos = _bodypos1;
_animstate = animationState _target;
_primaryw = primaryWeapon player;
_timer = 6;
_Anims = ["ainvpknlmstpsnonwrfldnon_ainvpknlmstpsnonwrfldnon_medic","ainvpknlmstpsnonwrfldnon_medic","ainvpknlmstpsnonwrfldr_medic0s","ainvpknlmstpsnonwrfldnon_medic0s","ainvpknlmstpsnonwrfldr_medic0","ainvpknlmstpsnonwrfldnon_medic0","ainvpknlmstpsnonwrfldr_medic1","ainvpknlmstpsnonwrfldnon_medic1","ainvpknlmstpsnonwrfldr_medic2","ainvpknlmstpsnonwrfldnon_medic2","ainvpknlmstpsnonwrfldr_medic3","ainvpknlmstpsnonwrfldnon_medic3","ainvpknlmstpsnonwrfldr_medic4","ainvpknlmstpsnonwrfldnon_medic4","ainvpknlmstpsnonwrfldr_medic5","ainvpknlmstpsnonwrfldnon_medic5"];
_defibpos = [0.4,0.9,0];
_defibangle = 30;
if !(isPlayer _target) exitWith {systemChat Format ["Theres no pulse..."]}; if !(isPlayer _target) exitWith {systemChat Format ["Theres no pulse..."]};
@ -14,22 +25,67 @@ if (_target getVariable "EnigmaRevivePermitted") then {
if (magazines player find "Exile_Item_Defibrillator" >= 0) then { if (magazines player find "Exile_Item_Defibrillator" >= 0) then {
if ((player distance (_target modelToWorld _bodypos2))<((_target modelToWorld _bodypos1) distance player)) then {
_healPlace = "_bodypos2";
_action = "medicStart";
_bodypos = _bodypos2;
_defibpos = [0,0.9,0];
_defibangle = 180;
};
player attachTo [_target, _bodypos];
_posh = player modelToWorld [0,0,0];
_posi = _target modelToWorld _bodypos3;
_dy = (_posh select 1) - (_posi select 1);
_dx = (_posh select 0) - (_posi select 0);
_dir = getDir player;
player setDir (270 - (_dy atan2 _dx) - direction _target);
sleep 0.001;
player removeMagazine "Exile_Item_Defibrillator"; player removeMagazine "Exile_Item_Defibrillator";
_position = player modelToWorld [0.7,0.7,0]; _position = _target modelToWorld _defibpos;
_lootHolder = createVehicle ["LootWeaponHolder", _position, [], 0, "CAN_COLLIDE"]; _lootHolder = createVehicle ["LootWeaponHolder", _position, [], 0, "CAN_COLLIDE"];
_lootHolder setPosATL _position; _lootHolder setPosATL _position;
_lootHolder addItemCargoGlobal ["Exile_Item_Defibrillator",1]; _lootHolder addItemCargoGlobal ["Exile_Item_Defibrillator",1];
_lootHolder setDir ((getDir player) + 120); _lootHolder setDir ((getDir _target) + _defibangle);
if (_primaryw == "") then {
_target switchMove "AinjPpneMstpSnonWrflDnon"; _target switchMove "AinjPpneMstpSnonWrflDnon";
sleep 0.2; sleep 0.2;
player playMove "AinvPknlMstpSlayWrflDnon_medic"; player playMove "AinvPknlMstpSlayWrflDnon_medic";
sleep 6;
} else {
if (currentWeapon player != _primaryw) then {
player selectWeapon _primaryw;
sleep 2;
};
player playActionNow _action;
_timer = 15;
waitUntil { animationState player in _Anims };
};
sleep _timer;
detach player;
if (_primaryw == "") then {
player switchmove ""; player switchmove "";
} else {
player switchAction "medicStart";
player playActionNow "medicStop";
};
if (_target getVariable["REVIVE", true]) then { if (_target getVariable["REVIVE", true]) then {
_target setVariable["antidupe", -1, true]; //targetted player inventory is now locked out from accessing! _target setVariable["antidupe", -1, true];
ENIGMA_revivePlayer = [_target,player,1]; ENIGMA_revivePlayer = [_target,player,1];
publicVariableServer "ENIGMA_revivePlayer"; publicVariableServer "ENIGMA_revivePlayer";
} else { } else {
systemChat Format ["RIP %1! They suffered a fatal injury!",_targetname]; systemChat Format ["RIP %1! They suffered a fatal injury!",_targetname];
}; };