Files
DayZ-Epoch/dayz_code/actions/gather_meat.sqf
vbawol dd20524793 1.0.0.2 pre test
+ [FIXED] Can now refuel and siphon while swimming again. Must stay at
same position for 6 seconds.
+ [FIXED] Refuel sound now only plays when an actual refuel/siphon takes
place.
+ [FIXED] Check fuel levels again just before refuel or siphon actions.
+ [FIXED] Player Zombies can now no longer pickup "Take %" objects.
+ [FIXED] Dogs now correctly consume any available raw meat.
+ [FIXED] Machete now spawns correctly, it was missing
WeaponHolder_ItemMachete config.
+ [UPDATED] Updated batttleye scripts.
+ [CHANGED] Gutting zombies and animals now double checks for
"meatHarvested" after animation and before action.
+ [CHANGED] Survivor2_DZ was not in the list of AllPlayers.
+ [CHANGED] Lowered alert radius when gutting zombies to 50m instead of
100m.
+ [CHANGED] Moved all clothes to cfgloots to reduce spawn chances as we
add more. (clothes, militaryclothes, specialclothes)
+ [CHANGED] HMMWV URAL and UAZ road debris now has its own military loot
tables that include sandbags.
+ [CHANGED] New vehicle spawns now have a new damage system using a
random percent between min and max variables. Defaults:
(DynamicVehicleDamageLow = 0; DynamicVehicleDamageHigh = 100;)
+ [CHANGED] Animal count was too low was 5 now 8. Can be overridden with
dayz_maxAnimals set inside mission init.sqf.
+ [ADDED] Taming dogs now has a 50% chance to fail and consume meat,
Chance to tame without failure increases with number of days alive
(dayz_skilllevel).
+ [ADDED] Added spawnMarkerCount variable override to use more spawn
marker locations. (default=4)
+ [ADDED] Added medic animation requirement for gutting zombies and
animals so you can now walk away to cancel gutting process.
+ [ADDED] Added old bandit skin back in as Skin_Bandit2_DZ as a drop on
Residential.
+ [ADDED] New vehicle spawns now have a chance to spawn 0-3 loot
randomly from all cfgloots.
+ [ADDED] Added new desert themed domed camping tent (ItemTentDomed)
that holds 75 mags, 12 weapons, and 7 backpacks - thanks to vRNemesis
for model and texture.
+ [ADDED] Added server side ability to enabled taming dogs and can be
enabled by setting dayz_tameDogs = true; within mission init.sqf.
(default: false)
+ [ADDED] Added parachute spawning players as a server side option
enable server side with the variable dayz_paraSpawn = true; within
mission init.sqf. (default: false)
+ [ADDED] Randomly spawning (like helicopter crashes) Mass Grave with
8-16 zombies and 2x more loot.
+ [REMOVED] Commented out remaining unused call to stream_locationCheck.
+ [INFO] Changes can be made to all zombie spawn variables via the
mission init.sqf (defaults: dayz_maxLocalZombies = 40;
dayz_maxGlobalZombies =30; dayz_maxZeds = 500;)
+ [INFO] DZEdebug = true; (default: false) will enable debug so that
road debris and new vehicle spawns are visible via map markers. Also
debug will enable "Save to arma.RPT" that allows access of a tool to
obtain lootpos information for buildings used for adding support for
additional maps.
2013-04-10 08:54:13 -05:00

82 lines
2.0 KiB
Plaintext

private["_item","_hasKnife","_hasKnifeBlunt","_hasHarvested","_qty","_text","_string","_type"];
_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;
player removeAction s_player_butcher;
s_player_butcher = -1;
if ((_hasKnife or _hasKnifeBlunt) and !_hasHarvested) then {
//Get Animal Type
_isListed = isClass (_config);
_text = getText (configFile >> "CfgVehicles" >> _type >> "displayName");
// force animation
player playActionNow "Medic";
// Alert zombies
[player,10,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;
[objNull, player, rSwitchMove,""] call RE;
player playActionNow "stop";
cutText ["Canceled gutting." , "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 = 2;
if (_isListed) then {
_qty = getNumber (_config >> "yield");
};
if (_hasKnifeBlunt) then { _qty = round(_qty / 2); };
_array = [_item,_qty];
if (local _item) then {
_array spawn local_gutObject;
} else {
dayzGutBody = _array;
publicVariable "dayzGutBody";
};
_string = format[localize "str_success_gutted_animal",_text,_qty];
cutText [_string, "PLAIN DOWN"];
};
};