mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-18 09:32:02 +03:00
+ [FIXED] Battleye kick when calling dog. Thanks to @kikyou2 + [FIXED] Moved vehicle event handler to server side with a call to all connected clients. Before it was just set on only the owner and the server. This should fix issues with damage/repair handling of just purchased vehicles. + [FIXED] Fixed case sensitivity in building loot generation. This was only a problem on new maps that share the same buildings as others yet have differing case in the classnames. + [ADDED] New build-ables: Fence_corrugated_DZ, M240Nest_DZ, CanvasHut_DZ, ParkBench_DZ, MetalGate_DZ, OutHouse_DZ, Wooden_shed_DZ, WoodShack_DZ, StorageShed_DZ. + [ADDED] New crafting items: ItemCanvas, PartWoodLumber, PartWoodPlywood, ItemCorrugated, ItemPole + [ADDED] 55 gallon (210 liter) Fuel Barrel that can only be used on helicopters or fuel trucks. + [ADDED] All DayZ specific magazine items now only take one slot, this also makes it easier to become over burdened so be careful about blacking out. + [ADDED] More building loot spawn positions for Namalsk. + [FIXED] When packing tent get classname of new weapon_holder from config. + [CHANGED] Totally reworked player building system. Preview and placement accuracy has been significantly improved. Building now requires X number of stages to complete. Players cannot build while in combat. + [CHANGED] Added required tools array and is nearby checking for fire, etc. Also, each item can now have 5 separate crafting options. + [CHANGED] Reworked refuel and siphon code to support more can types. + [CHANGED] Removed all infinite fueling sources and added (KamazRefuel_DZ, UralRefuel_TK_EP1_DZ,MtvrRefuel_DES_EP1_DZ) variants of the fuel trucks to remove auto refuel and increase siphon-able fuel capacity to 10000. Old style refuel can still be used if the variable dayz_oldrefuel = true is set in the missions init.sqf. + [CHANGED] Remove object code now uses config variables instead of hard coded into sqf (default: constructioncount = 5) + [CHANGED] Moved most arrays for revealing objects, allowed objects, update objects, disallowed combat roll to arrays within variables.sqf. So that these arrays are unified and easier to change. + [CHANGED] New vehicle spawns now have a new fuel system using a random percent between min and max variables. Defaults: (DynamicVehicleFuelLow = 0; DynamicVehicleFuelHigh = 100;) + [CHANGED] New vehicle spawns now damage all parts and without a limiter on fuel and engine parts, this could cause a vehicle to be very close to blowing up. + [CHANGED] Disabled simulation server side of all road debris and crashes.
66 lines
2.0 KiB
Plaintext
66 lines
2.0 KiB
Plaintext
/*
|
|
File: tame_dog.sqf 1.1
|
|
Author: Kane "Alby" Stone
|
|
Edited by: [VB]AWOL
|
|
|
|
Description:
|
|
Allows a player to tame/domesticate a dog.
|
|
Script is applied to object via addAction.
|
|
|
|
Variables:
|
|
_target = Object that action is attached too.
|
|
_caller = Object that activates the action.
|
|
_id = ID of the action handler.
|
|
_dog = Intended target of the script.
|
|
*/
|
|
|
|
private["_target", "_caller", "_id", "_dog", "_pos", "_fsmid"];
|
|
_target = _this select 0;
|
|
_caller = _this select 1;
|
|
_id = _this select 2;
|
|
_dog = _this select 3;
|
|
|
|
// expanded to allow all meats as input
|
|
_removed = 0;
|
|
_itemIn = "FoodmeatRaw";
|
|
_countIn = 1;
|
|
_selected = "";
|
|
|
|
{
|
|
if( (_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then {
|
|
_removed = _removed + ([player,_x] call BIS_fnc_invRemove);
|
|
};
|
|
if(_removed == 1) exitWith { _selected = _x; };
|
|
} forEach magazines player;
|
|
|
|
// Only proceed if removed count matches
|
|
if(_removed == _countIn) then {
|
|
|
|
// get name of item removed
|
|
_textRemoved = getText(configFile >> "CfgMagazines" >> _selected >> "displayName");
|
|
|
|
// add failure rate based on skill level variable (days alive)
|
|
_chanceToFail = ((random 1 + (dayz_skilllevel/100)) > 0.5);
|
|
|
|
if(!_chanceToFail) then {
|
|
|
|
_animalID = _dog getVariable "fsm_handle";
|
|
_animalID setFSMVariable ["_isTamed", true];
|
|
sleep 1;
|
|
diag_log format["DEBUG: %1, id: %2 [%3]",_dog,_animalID,completedFSM _animalID];
|
|
if (!moveToCompleted _dog) then {
|
|
_dog moveTo (position _dog);
|
|
};
|
|
_dog disableAI "FSM";
|
|
(group _dog) setBehaviour "AWARE";
|
|
_fsmid = [_dog, typeOf _dog] execFSM "\z\addons\dayz_code\system\dog_agent.fsm";
|
|
_fsmid setFSMVariable ["_handle", _fsmid];
|
|
player setVariable ["dogID", _fsmid];
|
|
_dog setVariable ["fsm_handle", _fsmid];
|
|
_dog setVariable ["characterID", dayz_characterID, true];
|
|
|
|
cutText [format["Dog consumed %1, and is now tamed.",_textRemoved], "PLAIN DOWN"];
|
|
} else {
|
|
cutText [format["Dog consumed %1, yet remains untamed.",_textRemoved], "PLAIN DOWN"];
|
|
};
|
|
}; |