Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private ["_hasKnife","_qty","_item","_text","_string","_type","_started","_finished","_animState","_isMedic","_hasHarvested","_hasKnifeBlunt","_humanity"];
- if(DZE_ActionInProgress) exitWith { cutText [(localize "str_epoch_player_31") , "PLAIN DOWN"]; };
- DZE_ActionInProgress = true;
- player removeAction s_player_butcher;
- s_player_butcher = 1;
- _item = _this select 3;
- _hasKnife = "ItemKnife" in items player;
- _hasKnifeBlunt = "ItemKnifeBlunt" in items player;
- _type = typeOf _item;
- _hasHarvested = _item getVariable["meatHarvested",false];
- //_config = configFile >> "CfgSurvival" >> "Meat" >> _type;
- if ((_hasKnife or _hasKnifeBlunt) and !_hasHarvested) then {
- //Get Animal Type
- //_loop = true;
- //_isListed = isClass (_config);
- _text = getText (configFile >> "CfgVehicles" >> _type >> "displayName");
- [1,1] call dayz_HungerThirst;
- // force animation
- player playActionNow "Medic";
- // Alert zombies
- [player,50,true,(getPosATL player)] spawn player_alertZombies;
- r_interrupt = false;
- _animState = animationState player;
- r_doLoop = true;
- _started = false;
- _finished = false;
- while {r_doLoop} do {
- _animState = animationState player;
- _isMedic = ["medic",_animState] call fnc_inString;
- if (_isMedic) then {
- _started = true;
- };
- if (_started and !_isMedic) then {
- r_doLoop = false;
- _finished = true;
- };
- if (r_interrupt) then {
- r_doLoop = false;
- };
- sleep 0.1;
- };
- r_doLoop = false;
- if (!_finished) exitWith {
- r_interrupt = false;
- if (vehicle player == player) then {
- [objNull, player, rSwitchMove,""] call RE;
- player playActionNow "stop";
- };
- cutText [(localize "str_epoch_player_30") , "PLAIN DOWN"];
- //_abort = true;
- };
- _hasHarvested = _item getVariable["meatHarvested",false];
- if(_finished and !_hasHarvested) then {
- _item setVariable["meatHarvested",true,true];
- // Play sound since we finished
- [player,"gut",0,false,10] call dayz_zombieSpeak;
- _qty = 1;
- if (local _item) then {
- [_item,_qty] spawn local_gutObjectZ;
- } else {
- //Leave this as PV instead of PVS/PVC - Skaronator
- //Also not sure if we need this
- PVDZE_plr_GutBodyZ = [_item,_qty];
- publicVariable "PVDZE_plr_GutBodyZ";
- };
- // Reduce humanity for gutting zeds
- _humanity = player getVariable["humanity",0];
- _humanity = _humanity - 10;
- player setVariable["humanity",_humanity,true];
- _string = format["Successfully Gutted Zombie",_text,_qty];
- cutText [_string, "PLAIN DOWN"];
- };
- };
- s_player_butcher = -1;
- DZE_ActionInProgress = false;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement