mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-24 09:29:21 +03:00
Update private tags
From
e69f8d5306
Moved dog files to the \dog\ folder and pzombie files to the \pzombie\
folder. Also removed some legacy files that are no longer used.
The actions\ and compile\ folders are fully up to date now
This commit is contained in:
@@ -1,10 +0,0 @@
|
||||
_object_type = typeOf cursorTarget;
|
||||
_fuellevels = fuel cursorTarget;
|
||||
_dmglevels = damage cursorTarget;
|
||||
|
||||
//remove action menu
|
||||
player removeAction s_player_debugCheck;
|
||||
s_player_debugCheck = -1;
|
||||
|
||||
hintSilent format ["Object: %1, Fuel: %2, Damage: %3", _object_type, _fuellevels, _dmglevels];
|
||||
diag_log format ["Object: %1, Fuel: %2, Damage: %3", _object_type, _fuellevels, _dmglevels];
|
||||
@@ -1,4 +1,5 @@
|
||||
private["_bombData","_vehicle","_owner","_bombar"];
|
||||
private ["_bombData","_vehicle","_owner","_bombar","_bombCar","_bomb"];
|
||||
|
||||
_bombData = _this select 0;
|
||||
|
||||
_vehicle = _bombData select 0;
|
||||
|
||||
24
SQF/dayz_code/actions/dog/player_tameDog.sqf
Normal file
24
SQF/dayz_code/actions/dog/player_tameDog.sqf
Normal file
@@ -0,0 +1,24 @@
|
||||
private ["_target","_id","_pos","_dog","_fsmid","_hasRawMeat","_hasdog"];
|
||||
_target = _this select 0;
|
||||
//_caller = _this select 1;
|
||||
_id = _this select 2;
|
||||
//_params = _this select 3;
|
||||
_pos = [_target] call FNC_GetPos;
|
||||
_hasRawMeat = "FoodSteakRaw" in magazines player;
|
||||
_hasdog = player getVariable ["dogid", "false"];
|
||||
|
||||
if ((_hasRawMeat) && (_hasdog == "false")) then {
|
||||
player removeMagazine "FoodSteakRaw";
|
||||
deleteVehicle (_this select 0);
|
||||
_dog = (group player) createUnit [typeOf _target, _pos, [], 0, "FORM"];
|
||||
|
||||
_dog disableAI "FSM";
|
||||
_fsmid = [_dog, typeOf _target] execFSM "\z\addons\dayz_code\system\dog_agent.fsm";
|
||||
_fsmid setFSMVariable ["_handle", _fsmid];
|
||||
_target removeAction _id;
|
||||
player setvariable ["dogid", _fsmid];
|
||||
} else {
|
||||
cutText [localize "str_epoch_player_18","PLAIN DOWN"];
|
||||
};
|
||||
|
||||
//handle publicVariables here later.
|
||||
36
SQF/dayz_code/actions/dog/tame_dog_old.sqf
Normal file
36
SQF/dayz_code/actions/dog/tame_dog_old.sqf
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
File: tame_dog.sqf
|
||||
Author: Kane "Alby" Stone
|
||||
|
||||
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","_fsmid","_animalID"];
|
||||
_target = _this select 0;
|
||||
_caller = _this select 1;
|
||||
_id = _this select 2;
|
||||
_dog = _this select 3;
|
||||
|
||||
player removeMagazine "FoodSteakRaw";
|
||||
_animalID = _dog getVariable "fsm_handle";
|
||||
_animalID setFSMVariable ["_isTamed", true];
|
||||
uiSleep 1;
|
||||
// diag_log format["DEBUG: %1, id: %2 [%3]",_dog,_animalID,completedFSM _animalID];
|
||||
if (!moveToCompleted _dog) then {
|
||||
_dog moveTo ([_dog] call FNC_GetPos);
|
||||
};
|
||||
_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];
|
||||
@@ -1,18 +0,0 @@
|
||||
private["_location","_isOk","_dir","_classname"];
|
||||
_location = player modeltoworld [0,1,0];
|
||||
_location set [2,0];
|
||||
_isOk = count (_location isFlatEmpty [0.5,0,0,4,0,false,player]) > 0;
|
||||
|
||||
if (_isOk) then {
|
||||
_dir = getDir player;
|
||||
_classname = "Land_Fire";
|
||||
["Working",0,[20,40,15,0]] call dayz_NutritionSystem;
|
||||
player playActionNow "Medic";
|
||||
uiSleep 6;
|
||||
dayz_hasFire = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
|
||||
dayz_hasFire setDir _dir;
|
||||
player reveal dayz_hasFire;
|
||||
cutText [localize "str_fireplace_01", "PLAIN DOWN"];
|
||||
} else {
|
||||
cutText [localize "str_fireplace_02", "PLAIN DOWN"];
|
||||
};
|
||||
@@ -1,4 +1,5 @@
|
||||
private["_flare"];
|
||||
private ["_flare"];
|
||||
|
||||
_flare = _this select 3;
|
||||
player removeAction s_player_dropflare;
|
||||
detach _flare;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private ["_flare","_text"];
|
||||
private["_flare","_text"];
|
||||
|
||||
_flare = _this select 3;
|
||||
player playActionNow "PutDown";
|
||||
uiSleep 2;
|
||||
@@ -14,7 +15,7 @@ dayz_hasLight = true;
|
||||
_text = getText (configFile >> "CfgAmmo" >> (typeOf _flare) >> "displayName");
|
||||
s_player_dropflare = player addAction [format[localize "str_actions_medical_16",_text], "\z\addons\dayz_code\actions\flare_drop.sqf",_flare, 1, false, true, "", ""];
|
||||
|
||||
while {(alive _flare) && dayz_hasLight} do {
|
||||
while {(alive _flare) and dayz_hasLight} do {
|
||||
uiSleep 0.1;
|
||||
};
|
||||
if (dayz_hasLight) then {
|
||||
|
||||
@@ -1,91 +1,65 @@
|
||||
private ["_qty","_started","_finished","_animState","_isMedic","_abort","_fillCounter","_dis","_sfx","_displayName","_fuelCans"];
|
||||
|
||||
if (DZE_ActionInProgress) exitWith {cutText [localize "str_epoch_player_34","PLAIN DOWN"];};
|
||||
DZE_ActionInProgress = true;
|
||||
private ["_qty","_dis","_sfx","_started","_finished","_animState","_isRefuel","_fuelcans","_qty20","_qty5","_qty40"];
|
||||
|
||||
player removeAction s_player_fillfuel;
|
||||
s_player_fillfuel = 1;
|
||||
//s_player_fillfuel = -1;
|
||||
|
||||
_fillCounter = 0;
|
||||
_abort = false;
|
||||
_fuelcans = ["ItemFuelcanEmpty","ItemJerrycanEmpty","ItemFuelBarrelEmpty"];
|
||||
|
||||
_fuelCans = [];
|
||||
_qty = 0;
|
||||
_qty = {_x in _fuelcans} count magazines player;
|
||||
|
||||
{
|
||||
if(_x == "ItemJerrycanEmpty" || _x == "ItemFuelBarrelEmpty") then {
|
||||
_fuelCans set [(count _fuelCans),_x];
|
||||
};
|
||||
} count magazines player;
|
||||
_qty20 = {_x == "ItemJerrycanEmpty"} count magazines player;
|
||||
_qty5 = {_x == "ItemFuelcanEmpty"} count magazines player;
|
||||
_qty40 = {_x == "ItemFuelBarrelEmpty"} count magazines player;
|
||||
|
||||
_qty = count _fuelCans;
|
||||
|
||||
{
|
||||
_displayName = getText (configFile >> "cfgMagazines" >> _x >> "displayName");
|
||||
|
||||
_fillCounter = _fillCounter + 1;
|
||||
|
||||
cutText [format[(localize "str_siphon_preparing"),_displayName], "PLAIN DOWN"];
|
||||
|
||||
["Working",0,[20,40,15,0]] call dayz_NutritionSystem;
|
||||
// force animation
|
||||
if (("ItemJerrycanEmpty" in magazines player) or ("ItemFuelcanEmpty" in magazines player) or ("ItemFuelBarrelEmpty" in magazines player)) then {
|
||||
player playActionNow "Medic";
|
||||
// Play sound && alert zombies
|
||||
|
||||
_dis=10;
|
||||
_sfx = "refuel";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] spawn player_alertZombies;
|
||||
|
||||
r_interrupt = false;
|
||||
_animState = animationState player;
|
||||
_dis=5;
|
||||
_sfx = "refuel";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] call player_alertZombies;
|
||||
|
||||
// Added Nutrition-Factor for work
|
||||
["Working",0,[20,40,15,0]] call dayz_NutritionSystem;
|
||||
|
||||
r_doLoop = true;
|
||||
_started = false;
|
||||
_finished = false;
|
||||
|
||||
while {r_doLoop} do {
|
||||
_animState = animationState player;
|
||||
_isMedic = ["medic",_animState] call fnc_inString;
|
||||
if (_isMedic) then {
|
||||
_isRefuel = ["medic",_animState] call fnc_inString;
|
||||
if (_isRefuel) then {
|
||||
_started = true;
|
||||
};
|
||||
if (_started && !_isMedic) then {
|
||||
if (_started and !_isRefuel) then {
|
||||
r_doLoop = false;
|
||||
_finished = true;
|
||||
};
|
||||
if (r_interrupt) then {
|
||||
r_doLoop = false;
|
||||
};
|
||||
uiSleep 0.1;
|
||||
};
|
||||
|
||||
r_doLoop = false;
|
||||
|
||||
if (!_finished) exitWith {
|
||||
r_interrupt = false;
|
||||
if (vehicle player == player) then {
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
if (_finished) then {
|
||||
for "_x" from 1 to _qty20 do {
|
||||
player removeMagazine "ItemJerrycanEmpty";
|
||||
player addMagazine "ItemJerrycan";
|
||||
};
|
||||
for "_x" from 1 to _qty5 do {
|
||||
player removeMagazine "ItemFuelcanEmpty";
|
||||
player addMagazine "ItemFuelcan";
|
||||
};
|
||||
for "_x" from 1 to _qty40 do {
|
||||
player removeMagazine "ItemFuelBarrelEmpty";
|
||||
player addMagazine "ItemFuelBarrel";
|
||||
};
|
||||
cutText [localize "str_siphon_canceled","PLAIN DOWN"];
|
||||
_abort = true;
|
||||
};
|
||||
|
||||
if (_finished) then {
|
||||
if(([player,_x] call BIS_fnc_invRemove) == 1) then {
|
||||
if (_x == "ItemFuelBarrelEmpty") then {
|
||||
player addMagazine "ItemFuelBarrel";
|
||||
} else {
|
||||
player addMagazine "ItemJerrycan";
|
||||
};
|
||||
cutText [format[(localize "str_epoch_player_134"),_displayName], "PLAIN DOWN"];
|
||||
} else {
|
||||
_abort = true;
|
||||
};
|
||||
};
|
||||
|
||||
uiSleep 1;
|
||||
if(_abort) exitWith {};
|
||||
|
||||
} count _fuelCans;
|
||||
|
||||
s_player_fillfuel = -1;
|
||||
cutText [format [localize "str_player_09",_qty], "PLAIN DOWN"];
|
||||
} else {
|
||||
cutText [localize "str_player_10", "PLAIN DOWN"];
|
||||
};
|
||||
DZE_ActionInProgress = false;
|
||||
@@ -1,4 +1,4 @@
|
||||
//Code developed by Axe Cop - Massiv improvments && performance tunes by Skaronator
|
||||
//Code developed by Axe Cop - Massiv improvments and performance tunes by Skaronator
|
||||
private ["_missing","_missingQty","_proceed","_itemIn","_countIn","_qty","_num_removed","_uniqueID","_removed","_removed_total","_tobe_removed_total","_obj","_objectID","_objectUID","_classname","_location","_dir","_objectCharacterID","_object","_temp_removed_array","_textMissing","_target","_objectClasses","_range","_objects","_requirements","_count","_cost","_itemText","_option"];
|
||||
|
||||
if (DZE_ActionInProgress) exitWith {cutText [localize "STR_EPOCH_ACTIONS_2","PLAIN DOWN"];};
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private ["_status","_array","_object","_items","_classname","_text","_build","_inside","_location","_nearObjects","_dis","_sfx", "_variables"];
|
||||
private ["_status","_array","_object","_items","_classname","_text","_build","_inside","_location","_nearObjects","_dis","_sfx","_variables","_ghost","_keepOnSlope","_direction","_passcode"];
|
||||
|
||||
_array = _this select 3;
|
||||
|
||||
_ghost = _array select 0;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
private ["_cursorTarget","_onLadder","_isWater","_alreadyRemoving","_characterID","_objectID","_objectUID","_ownerArray","_dir",
|
||||
"_realObjectStillThere","_upgrade","_entry","_parent","_requiredParts","_requiredTools","_model","_toolsOK","_displayname",
|
||||
"_whpos","_i","_wh","_object"];
|
||||
"_realObjectStillThere","_upgrade","_entry","_parent","_requiredParts","_requiredTools","_model","_toolsOK","_displayname",
|
||||
"_whpos","_i","_wh","_object","_msg","_vector","_dis","__FILE__","_puid","_variables"];
|
||||
|
||||
|
||||
_cursorTarget = _this select 3;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_object","_proceed","_pos","_rndattemps","_limit","_dismantleToo","_pos","_ownerID","_objectID","_objectUID","_playerID","_claimedBy","_tools"];
|
||||
private ["_object","_proceed","_rndattemps","_limit","_dismantleToo","_ownerID","_objectID","_objectUID","_playerID","_claimedBy","_tools","_exit","_end","_onLadder","_isWater","_isOk","_counter","_text","_dis","_sfx","_animState","_started","_finished","_isMedic","_holder"];
|
||||
|
||||
_object = _this;
|
||||
_proceed = false;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#define MAINTENANCE_NUTRITION_VALUES [20,40,15,0]
|
||||
|
||||
|
||||
private ["_isMedic","_cursorTarget"];
|
||||
private ["_isMedic","_cursorTarget","_item","_classname","_displayname","_requiredTools","_requiredParts","_onLadder","_isWater","_upgradeParts","_startMaintenance","_dis","_sfx","_started","_finished","_animState","_isRefuel"];
|
||||
|
||||
_cursorTarget = _this select 3;
|
||||
|
||||
|
||||
@@ -9,39 +9,10 @@
|
||||
};
|
||||
|
||||
*/
|
||||
private
|
||||
[
|
||||
"_objclass",
|
||||
"_cursorTarget",
|
||||
"_item",
|
||||
"_classname",
|
||||
"_requiredTools",
|
||||
"_requiredParts",
|
||||
"_upgrade",
|
||||
"_upgradeConfig",
|
||||
"_upgradeDisplayname",
|
||||
"_onLadder",
|
||||
"_isWater",
|
||||
"_upgradeParts",
|
||||
"_startUpgrade",
|
||||
"_missingPartsConfig",
|
||||
"_textMissingParts",
|
||||
"_dis",
|
||||
"_sfx",
|
||||
"_ownerID",
|
||||
"_objectID",
|
||||
"_objectUID",
|
||||
"_alreadyupgrading",
|
||||
"_pos",
|
||||
"_dir",
|
||||
"_weapons",
|
||||
"_magazines",
|
||||
"_backpacks",
|
||||
"_object",
|
||||
"_objWpnTypes",
|
||||
"_objWpnQty",
|
||||
"_countr"
|
||||
];
|
||||
private ["_objclass","_cursorTarget","_item","_classname","_requiredTools","_requiredParts","_upgrade","_upgradeConfig",
|
||||
"_upgradeDisplayname","_onLadder","_isWater","_upgradeParts","_startUpgrade","_missingPartsConfig","_textMissingParts","_dis",
|
||||
"_sfx","_ownerID","_objectID","_objectUID","_alreadyupgrading","_dir","_weapons","_magazines","_backpacks",
|
||||
"_object","_objWpnTypes","_objWpnQty","_countr","_itemName","_msg","_vector"];
|
||||
|
||||
_cursorTarget = _this select 0;
|
||||
|
||||
|
||||
@@ -9,39 +9,10 @@
|
||||
};
|
||||
|
||||
*/
|
||||
private
|
||||
[
|
||||
"_objclass",
|
||||
"_cursorTarget",
|
||||
"_item",
|
||||
"_classname",
|
||||
"_requiredTools",
|
||||
"_requiredParts",
|
||||
"_upgrade",
|
||||
"_upgradeConfig",
|
||||
"_upgradeDisplayname",
|
||||
"_onLadder",
|
||||
"_isWater",
|
||||
"_upgradeParts",
|
||||
"_startUpgrade",
|
||||
"_missingPartsConfig",
|
||||
"_textMissingParts",
|
||||
"_dis",
|
||||
"_sfx",
|
||||
"_ownerID",
|
||||
"_objectID",
|
||||
"_objectUID",
|
||||
"_alreadyupgrading",
|
||||
"_pos",
|
||||
"_dir",
|
||||
"_weapons",
|
||||
"_magazines",
|
||||
"_backpacks",
|
||||
"_object",
|
||||
"_objWpnTypes",
|
||||
"_objWpnQty",
|
||||
"_countr"
|
||||
];
|
||||
private ["_objclass","_cursorTarget","_item","_classname","_requiredTools","_requiredParts","_upgrade","_upgradeConfig",
|
||||
"_upgradeDisplayname","_onLadder","_isWater","_upgradeParts","_startUpgrade","_missingPartsConfig","_textMissingParts","_dis",
|
||||
"_sfx","_ownerID","_objectID","_objectUID","_alreadyupgrading","_dir","_weapons","_magazines","_backpacks","_object",
|
||||
"_objWpnTypes","_objWpnQty","_countr","_itemName","_msg","_vector"];
|
||||
|
||||
_objclass = _this;
|
||||
_cursorTarget = _this select 3;
|
||||
|
||||
@@ -11,6 +11,10 @@
|
||||
debugged by facoptere@gmail.com
|
||||
*/
|
||||
|
||||
private ["_cursorTarget","_type","_class","_requiredTools","_requiredParts","_upgradeType","_producedParts","_randomCreate",
|
||||
"_upgradeClass","_msg","_onLadder","_isWater","_ok","_missing","_upgradeParts","_dis","_characterID","_objectID","_objectUID",
|
||||
"_ownerArray","_ownerPasscode","_dir","_vector","_object","_puid","_clanArray","_wh","_variables"];
|
||||
|
||||
//systemchat str _this;
|
||||
if (!isnil "faco_object_upgradeBuilding") exitWith { _this call faco_object_upgradeBuilding };
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private ["_unit","_unconcious","_inVeh","_alive"];
|
||||
|
||||
call fnc_usec_medic_removeActions;
|
||||
_unit = _this select 3;
|
||||
_unconcious = _unit getVariable ["NORRN_unconscious", false];
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private ["_array","_object","_type"];
|
||||
|
||||
_array = _this select 3;
|
||||
_object = _array select 0;
|
||||
_type = TypeOf(_object);
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Please request permission to use/alter from Alby.
|
||||
*/
|
||||
|
||||
private["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace"];
|
||||
private ["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace","_overwrite","_orignalClass","_index","_entry","_avail","_selection","_item","_amount","_itemName","_freeSlots","_slotType","_i","_j"];
|
||||
disableSerialization;
|
||||
["close"] call fn_updateCraftUI;
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ if (dayZ_OnBack != "") exitWith {closeDialog 0; cutText [format [localize "str_p
|
||||
|
||||
call gear_ui_init;
|
||||
|
||||
if (_item in ["ItemHatchet","ItemHatchet_DZE","ItemCrowbar","ItemMachete","ItemFishingPole","ItemSledge"]) then {
|
||||
if (_item in ["ItemHatchet","ItemCrowbar","ItemMachete","ItemFishingPole","ItemHatchet_DZE","ItemSledge"]) then {
|
||||
//free primary slot for new melee (remember item to add after)
|
||||
switch (_item) do {
|
||||
case "ItemHatchet": {player removeWeapon "ItemHatchet"; dayz_onBack = "MeleeHatchet";};
|
||||
|
||||
@@ -11,15 +11,7 @@
|
||||
|
||||
#include "\z\addons\dayz_code\util\Player.hpp"
|
||||
|
||||
private
|
||||
[
|
||||
"_attachment",
|
||||
"_weapon",
|
||||
"_config",
|
||||
"_newWeapon",
|
||||
"_weaponInUse",
|
||||
"_muzzle"
|
||||
];
|
||||
private ["_attachment","_weapon","_config","_newWeapon","_weaponInUse","_muzzle"];
|
||||
|
||||
//check if player is on a ladder and if so, exit
|
||||
if (Player_IsOnLadder()) exitWith
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private["_theBomb","_vehicle","_curFuel","_newFuel","_timeLeft","_hasToolbox","_hasCarBomb","_dis","_sfx","_alreadyBombed","_hasCrowbar"];
|
||||
private ["_theBomb","_vehicle","_curFuel","_newFuel","_timeLeft","_hasToolbox","_hasCarBomb","_dis","_sfx","_alreadyBombed","_hasCrowbar"];
|
||||
|
||||
_vehicle = _this select 3;
|
||||
_hasToolbox = "ItemToolbox" in items player;
|
||||
_hasCrowbar = "ItemCrowbar" in items player;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
private ["_target", "_pos", "_gps", "_vars", "_hasToolbox", "_hasCrowbar", "_limit", "_proceed", "_counter", "_dis", "_sfx", "_roll", "_animState", "_started", "_finished", "_animState", "_isMedic","_isGate"];
|
||||
|
||||
private ["_brokein","_isOk","_hasSledgeHammer","_gps","_vars","_hasToolbox","_hasCrowbar","_limit","_proceed","_counter",
|
||||
"_dis","_sfx","_roll","_animState","_started","_finished","_isMedic","_isGate"];
|
||||
_target = _this select 3;
|
||||
_pos = getPos _target;
|
||||
_isGate = (typeOf cursorTarget) in ["WoodenGate_2","WoodenGate_3","WoodenGate_4"];
|
||||
@@ -148,6 +148,6 @@ if (_proceed and _brokein) then {
|
||||
titleText ["Break in attempt successful.", "PLAIN DOWN", 0.3];
|
||||
|
||||
//Open Gate.
|
||||
_target animate ["DoorR", 0];
|
||||
_target animate ["DoorL", 0];
|
||||
_target animate ["DoorR", 1];
|
||||
_target animate ["DoorL", 1];
|
||||
};
|
||||
@@ -1,6 +1,11 @@
|
||||
// (c) facoptere@gmail.com, licensed to DayZMod for the community
|
||||
private ["_classType","_item","_action","_missingTools","_missingItem","_emergingLevel","_isClass","_classname","_requiredTools","_requiredParts ","_ghost","_placement","_text","_onLadder","_isWater","_object","_string","_actionBuildHidden","_getBeams","_o","_offset","_rot","_r","_p","_bn","_bb","_h","_bx","_by","_minElevation","_maxElevation","_insideCheck","_building","_unit","_bbb","_ubb","_check","_min","_max","_myX","_myY","_checkBuildingCollision","_objColliding","_inside","_checkOnRoad","_roadCollide","_checkBeam2Magnet","_a","_beams","_best","_b","_d","_checkNotBuried","_elevation","_position","_delta","_overElevation","_maxplanting","_safeDistance","_dir","_angleRef","_tmp","_actionCancel","_sfx","_actionBuild"];
|
||||
|
||||
private ["_classType","_item","_action","_missingTools","_missingItem","_emergingLevel","_isClass","_classname","_requiredTools",
|
||||
"_requiredParts","_ghost","_placement","_text","_onLadder","_isWater","_object","_string","_actionBuildHidden","_getBeams",
|
||||
"_o","_offset","_rot","_r","_p","_bn","_bb","_h","_bx","_by","_minElevation","_maxElevation","_insideCheck","_building",
|
||||
"_unit","_bbb","_ubb","_check","_min","_max","_myX","_myY","_checkBuildingCollision","_objColliding","_inside","_checkOnRoad",
|
||||
"_roadCollide","_checkBeam2Magnet","_a","_beams","_best","_b","_d","_checkNotBuried","_elevation","_position","_delta","_overElevation",
|
||||
"_maxplanting","_safeDistance","_dir","_angleRef","_tmp","_actionCancel","_sfx","_actionBuild","_byPassChecks","_keepOnSlope","_msg",
|
||||
"_ok","_missing","_upgradeParts","_ownerID","_posReference"];
|
||||
/*
|
||||
Needs a full rewrite to keep up with the demand of everything we plan to add.
|
||||
*/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Please request permission to use/alter from Alby.
|
||||
*/
|
||||
|
||||
private ["_items","_counts","_config","_isRecipe","_item","_index","_amount","_count","_entry","_input","_array"];
|
||||
private ["_items","_counts","_config","_isRecipe","_item","_index","_amount","_count","_entry","_input","_array","_overwrite","_i","_inputIndex","_inputItems"];
|
||||
disableSerialization;
|
||||
|
||||
_array = _this select 0;
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Please request permission to use/alter from Alby.
|
||||
*/
|
||||
|
||||
private ["_items","_counts","_config","_isRecipe","_item","_index","_amount","_count","_entry","_input","_array"];
|
||||
private ["_items","_counts","_config","_isRecipe","_item","_index","_amount","_count","_entry","_input","_array","_overwrite","_i","_inputIndex","_inputItems"];
|
||||
disableSerialization;
|
||||
|
||||
_array = _this select 0;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
|
||||
private["_item","_result","_dis","_sfx","_num", "_breaking"];
|
||||
private ["_item","_result","_dis","_sfx","_num","_breaking","_countOut","_woodCutting","_trees","_findNearestTree","_objInfo","_lenInfo","_objName","_i","_k","_counter","_isOk","_proceed","_animState","_started","_finished","_isMedic","_itemOut"];
|
||||
|
||||
//if (!isnil "faco_player_chopWood") exitWith { _this call faco_player_chopWood };
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
private ["_create","_config","_create_magsize","_type","_name","_magCount","_slotstart","_slotend","_dialog","_qty_total_ammo","_control","_mag","_qtynew_create_mags_full","_qtynew_create_ammo_rest","_magFull","_magFullSingular","_magAmmunition"];
|
||||
|
||||
private ["_create","_config","_create_magsize","_type","_magCount","_slotstart","_slotend","_dialog","_qty_total_ammo","_control","_mag","_qtynew_create_mags_full","_qtynew_create_ammo_rest","_magFull","_magFullSingular","_magAmmunition","_i"];
|
||||
disableSerialization;
|
||||
call gear_ui_init;
|
||||
closeDialog 0;
|
||||
|
||||
@@ -11,15 +11,7 @@
|
||||
#define PILE_SEARCH_RADIUS 2
|
||||
#define PILE_PLAYER_OFFSET [0,1,0]
|
||||
|
||||
private
|
||||
[
|
||||
"_cfg",
|
||||
"_nutrition",
|
||||
"_bloodRegen",
|
||||
"_infectionChance",
|
||||
"_sound",
|
||||
"_output"
|
||||
];
|
||||
private ["_cfg","_nutrition","_bloodRegen","_infectionChance","_sound","_output","_hungerCount","_thirstCount","_soundDistance"];
|
||||
|
||||
_cfg = (ConfigFile >> "CfgMagazines" >> _this);
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
failChance = 1;
|
||||
*/
|
||||
//diag_log("crafting system");
|
||||
private["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace"];
|
||||
private ["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace","_classname","_isClass","_onLadder","_hasTools","_avail","_selection","_item","_amount","_itemName","_freeSlots","_slotType","_i","_j","_dis","_sfx"];
|
||||
|
||||
//diag_log(str(isnil "r_player_crafting"));
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Please request permission to use/alter from Alby.
|
||||
*/
|
||||
|
||||
private["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace"];
|
||||
private ["_config","_input","_output","_required","_failChance","_hasInput","_availabeSpace","_overwrite","_nearByPile","_index","_entry","_nearByTable","_weaps","_mags","_objMagTypes","_objMagQty","_i","_obj","_return","_inArray","_avail","_selection","_item","_amount","_itemName","_freeSlots","_slotType","_j"];
|
||||
disableSerialization;
|
||||
["close"] call fn_updateCraftUI;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private["_qty_arrows","_qty_quivers","_qty_quiverarrows"];
|
||||
private ["_qty_arrows","_qty_quivers","_qty_quiverarrows"];
|
||||
call gear_ui_init;
|
||||
|
||||
_qty_arrows = {_x == "WoodenArrow"} count magazines player;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_cantype","_emptycan","_intensity","_objectID", "_objectUID"];
|
||||
private ["_cantype","_emptycan","_intensity","_objectID","_objectUID","_obj","_fuelArray","_matchArray","_alreadyDestorying","_randomJerryCan","_fireIntensity","_randomBoxMatches","_qtyRemaining","_dis","_sfx"];
|
||||
|
||||
//Tent Object
|
||||
_obj = _this select 3;
|
||||
|
||||
@@ -8,15 +8,7 @@
|
||||
Foxy
|
||||
*/
|
||||
|
||||
private
|
||||
[
|
||||
"_cfg",
|
||||
"_nutrition",
|
||||
"_bloodRegen",
|
||||
"_infectionChance",
|
||||
"_sound",
|
||||
"_output"
|
||||
];
|
||||
private ["_cfg","_nutrition","_bloodRegen","_infectionChance","_sound","_output"];
|
||||
|
||||
_cfg = (ConfigFile >> "CfgMagazines" >> _this);
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private["_qty_arrows","_qty_quivers","_control","_qty_quiverarrows","_qty_quiverfreeslots","_qty_arrows2add"];
|
||||
private ["_qty_arrows","_qty_quivers","_control","_qty_quiverarrows","_qty_quiverfreeslots","_qty_arrows2add"];
|
||||
|
||||
disableSerialization;
|
||||
call gear_ui_init;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//fixHatchet old file
|
||||
private ["_tool","_tape","_fixedItem"];
|
||||
private ["_tool","_tape","_fixedItem","_config","_dName","_handle"];
|
||||
|
||||
_tool = _this;
|
||||
_config = configFile >> "CfgWeapons" >> _tool;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
private ["_plant", "_originalCount"];
|
||||
private ["_plant","_originalCount","_xx_leaf","_mags","_weps","_item","_magcounts","_forEachIndex","_wepcounts","_dis","_sfx"];
|
||||
|
||||
_plant = _this;
|
||||
|
||||
if (_plant getVariable["Gathering",false]) exitWith {};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
private ["_item","_result","_dis","_sfx","_num","_breaking","_counter","_rocks","_findNearestRock","_objInfo","_lenInfo","_objName","_i","_k","_countOut","_isOk","_proceed","_animState","_started","_finished","_isMedic","_itemOut","_wpPos","_nearByPile"];
|
||||
|
||||
private ["_item","_result","_dis","_sfx","_num","_breaking","_counter","_rocks","_findNearestRock","_objInfo","_lenInfo",
|
||||
"_objName","_i","_k","_countOut","_isOk","_proceed","_animState","_started","_finished","_isMedic","_itemOut","_wpPos","_nearByPile"];
|
||||
|
||||
_item = _this;
|
||||
call gear_ui_init;
|
||||
@@ -38,7 +38,7 @@ if (!isNull _findNearestRock) then {
|
||||
_countOut = 2 + floor(random 3);
|
||||
|
||||
//Remove melee magazines (BIS_fnc_invAdd fix) (add new melee ammo to array if needed)
|
||||
{player removeMagazines _x} forEach ["Hatchet_Swing","Crowbar_Swing","Machete_Swing","Fishing_Swing"];
|
||||
{player removeMagazines _x} forEach ["Hatchet_Swing","Crowbar_Swing","Machete_Swing","Fishing_Swing","Sledge_Swing"];
|
||||
|
||||
// Start stone mining loop
|
||||
_counter = 0;
|
||||
@@ -121,7 +121,7 @@ if (!isNull _findNearestRock) then {
|
||||
};
|
||||
_isOk = false;
|
||||
_proceed = true;
|
||||
uisleep 1;
|
||||
uiSleep 1;
|
||||
};
|
||||
cutText [format[localize "str_mining_progress", _counter,(_countOut - _counter)], "PLAIN DOWN"];
|
||||
};
|
||||
@@ -143,6 +143,8 @@ if (!isNull _findNearestRock) then {
|
||||
case "MeleeCrowbar": {player addMagazine 'Crowbar_Swing';};
|
||||
case "MeleeMachete": {player addMagazine 'Machete_Swing';};
|
||||
case "MeleeFishingPole": {player addMagazine 'Fishing_Swing';};
|
||||
case "MeleeHatchet_DZE": {player addMagazine 'Hatchet_Swing';};
|
||||
case "MeleeSledge": {player addMagazine 'Sledge_Swing';};
|
||||
};
|
||||
} else {
|
||||
cutText [localize "str_mining_no_rocks", "PLAIN DOWN"];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_target","_type","_fn_Lock","_fn_UnLock","_fn_Open","_fn_Closed"];
|
||||
private ["_type","_fn_Lock","_fn_UnLock","_fn_Open","_fn_Closed","_fn_Set","_fn_Lockold","_fn_UnLockold","_fn_BuildLock","_fn_BuildUnLock"];
|
||||
|
||||
_target = ((_this select 3) select 0);
|
||||
_type = ((_this select 3) select 1);
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
private ["_item","_config","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart","_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags","_qty_free_slots","_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags","_qtynew_consume_mags_full","_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest"];
|
||||
private ["_item","_config","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart",
|
||||
"_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags",
|
||||
"_qty_free_slots","_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags",
|
||||
"_qtynew_consume_mags_full","_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest","_mags","_i"];
|
||||
|
||||
disableSerialization;
|
||||
call gear_ui_init;
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
private ["_item","_config","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart","_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags","_qty_free_slots","_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags","_qtynew_consume_mags_full","_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest"];
|
||||
private ["_item","_config","_consume","_create","_item_ammo","_consume_magsize","_create_magsize","_consume_type","_slotstart",
|
||||
"_slotend","_dialog","_qty_total_ammo","_qty_consume_ammo","_qty_create_ammo","_qty_consume_mags","_qty_create_mags","_qty_free_slots",
|
||||
"_control","_mag","_qtynew_create_ammo","_qtynew_consume_ammo","_qtynew_create_mags","_qtynew_consume_mags","_qtynew_consume_mags_full",
|
||||
"_qtynew_create_mags_full","_qtynew_consume_ammo_rest","_qtynew_create_ammo_rest","_mags","_i"];
|
||||
|
||||
disableSerialization;
|
||||
call gear_ui_init;
|
||||
|
||||
|
||||
@@ -12,15 +12,7 @@
|
||||
|
||||
#include "\z\addons\dayz_code\util\Player.hpp"
|
||||
|
||||
private
|
||||
[
|
||||
"_attachment",
|
||||
"_weapon",
|
||||
"_newWeapon",
|
||||
"_weaponInUse",
|
||||
"_newWeaponConfig",
|
||||
"_muzzle"
|
||||
];
|
||||
private ["_attachment","_weapon","_newWeapon","_weaponInUse","_newWeaponConfig","_muzzle"];
|
||||
|
||||
//check if player is on a ladder and if so, exit
|
||||
if (Player_IsOnLadder()) exitWith
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_item","_use","_repair","_waterUsed"];
|
||||
private ["_item","_use","_repair","_waterUsed","_displayName","_msg"];
|
||||
|
||||
//['ItemKnifeBlunt','ItemKnife']
|
||||
_item = _this select 0; //Item to be sharpened
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private["_qty_quivers","_control","_qty_quiverarrows","_empty","_emptymagslotcount"];
|
||||
private ["_qty_quivers","_control","_qty_quiverarrows","_empty","_emptymagslotcount"];
|
||||
|
||||
disableSerialization;
|
||||
call gear_ui_init;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_skin","_rnd","_rounded","_itemtocreate","_i"];
|
||||
private ["_skin","_rnd","_rounded","_itemtocreate","_i","_config","_infoText","_result","_nearByPile","_pile","__FILE__"];
|
||||
|
||||
_skin = _this;
|
||||
_config = configFile >> "CfgMagazines" >> _skin;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private["_item","_onLadder","_hasmeditem","_config","_text","_id"];
|
||||
private ["_item","_onLadder","_hasmeditem","_config","_text","_removeWeapon","_addWeapon","_hasitem","_display"];
|
||||
|
||||
//Old System
|
||||
|
||||
|
||||
@@ -1,37 +1,35 @@
|
||||
/*
|
||||
_item spawn player_wearClothes;
|
||||
Added Female skin changes - DayZ Epoch - vbawol
|
||||
*/
|
||||
private ["_item","_onLadder","_hasclothesitem","_config","_text","_myModel","_itemNew","_currentSex","_newSex","_model","_playerNear"];
|
||||
|
||||
if (_this in DZE_RestrictSkins) exitWith { cutText [format[(localize "str_epoch_player_315"),_this], "PLAIN DOWN"] };
|
||||
|
||||
if (_this in DZE_RestrictSkins) exitWith { cutText [format[localize "str_epoch_player_315",_this], "PLAIN DOWN"] };
|
||||
if (DZE_ActionInProgress) exitWith {cutText [localize "str_epoch_player_83","PLAIN DOWN"]};
|
||||
DZE_ActionInProgress = true;
|
||||
/*
|
||||
_item call player_wearClothes;
|
||||
Added Female skin changes - DayZ Epoch - vbawol
|
||||
*/
|
||||
private ["_item","_onLadder","_hasclothesitem","_config","_text","_isFemale","_myModel","_humanity","_isBandit","_isHero",
|
||||
"_itemNew","_model","_skinToArray","_finalArray","_skinToModel"];
|
||||
|
||||
_item = _this;
|
||||
call gear_ui_init;
|
||||
r_action_count = 0; //reset for strange glitch
|
||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||
if (_onLadder) exitWith {DZE_ActionInProgress = false; cutText [localize "str_player_21","PLAIN DOWN"]};
|
||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||
if (_onLadder) exitWith {cutText [localize "str_player_21", "PLAIN DOWN"]; DZE_ActionInProgress = false;};
|
||||
|
||||
_hasclothesitem = _this in magazines player;
|
||||
_config = configFile >> "CfgMagazines";
|
||||
_text = getText (_config >> _item >> "displayName");
|
||||
|
||||
if (!_hasclothesitem) exitWith { DZE_ActionInProgress = false; cutText [format[(localize "str_player_31"),_text,"wear"] , "PLAIN DOWN"]};
|
||||
|
||||
if (vehicle player != player) exitWith {DZE_ActionInProgress = false; cutText [localize "str_epoch_player_85","PLAIN DOWN"]};
|
||||
if (!_hasclothesitem) exitWith {cutText [format [localize "str_player_31",_text,localize "str_player_31_wear"] , "PLAIN DOWN"]; DZE_ActionInProgress = false;};
|
||||
|
||||
if (vehicle player != player) exitWith {cutText [localize "str_player_fail_wear1", "PLAIN DOWN"]; DZE_ActionInProgress = false;};
|
||||
//if (!isNull (unitBackpack player)) exitWith {DZE_ActionInProgress = false; cutText [localize "STR_EPOCH_ACTIONS_9","PLAIN DOWN"]};
|
||||
|
||||
if ("CSGAS" in (magazines player)) exitWith {DZE_ActionInProgress = false; cutText [localize "STR_EPOCH_ACTIONS_10","PLAIN DOWN"]};
|
||||
|
||||
_myModel = (typeOf player);
|
||||
_humanity = player getVariable ["humanity",0];
|
||||
_isBandit = _humanity < -2000;
|
||||
_isHero = _humanity > 5000;
|
||||
_itemNew = "Skin_" + _myModel;
|
||||
|
||||
//diag_log ("Debug Clothes: model In: " + str(_itemNew) + " Out: " + str(_item));
|
||||
|
||||
if ( (isClass(_config >> _itemNew)) ) then {
|
||||
if ( (isClass(_config >> _item)) ) then {
|
||||
// Current sex of player skin
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
//********************************************************************************************************************/
|
||||
|
||||
|
||||
private ["_h_human_disp","_top_value","_bot_value","_card_details","_h","_blank","_bandit_pic","_bandit_pic","_b_human_disp","_b_spades_top_suit","_b_spades_bot_suit","_b_clubs_top_suit","_b_clubs_bot_suit","_survivor_pic","_survivor_pic","_s_human_disp","_s_top_joker_b","_s_bot_joker_b","_s_top_joker_r","_s_bot_joker_r","_hero_pic","_hero_pic","_h_hearts_top_suit","_h_hearts_bot_suit","_h_diamonds_top_suit","_h_diamonds_bot_suit"];
|
||||
_h = (_this select 0) / 37037.037037;
|
||||
private ["_h_human_disp","_top_value","_bot_value","_card_details","_h","_blank","_bandit_pic","_b_human_disp","_b_spades_top_suit","_b_spades_bot_suit","_b_clubs_top_suit","_b_clubs_bot_suit","_survivor_pic","_s_human_disp","_s_top_joker_b","_s_bot_joker_b","_s_top_joker_r","_s_bot_joker_r","_hero_pic","_h_hearts_top_suit","_h_hearts_bot_suit","_h_diamonds_top_suit","_h_diamonds_bot_suit","_pl_pic","_humanity_readout","_top_joker","_bot_joker","_top_suit","_bot_suit"];_h = (_this select 0) / 37037.037037;
|
||||
|
||||
// we need to return these
|
||||
/*
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
private ["_ys","_ms","_ds","_b","_2","_6","_7","_8","_9","_10","_str_left_text","_1","_3","_4","_5","_blood_in_pack","_blood_in_inv","_mag_arr","_backpack","_11","_mags_for_weap","_mssv_cnt","_weapon","_config"];
|
||||
|
||||
private ["_ys","_ms","_ds","_b","_2","_6","_7","_8","_9","_10","_str_left_text","_1","_3","_4","_5","_blood_in_pack","_blood_in_inv","_mag_arr","_backpack","_11","_mags_for_weap","_mssv_cnt","_weapon","_config","_survivors","_moon","_spawnselection","_disabledTemperature"];
|
||||
_survivors = playersNumber west;
|
||||
|
||||
_str_left_text = "
|
||||
@@ -251,9 +250,9 @@ _disabledTemperature = switch (dayz_temperature_override) do {
|
||||
|
||||
// left page
|
||||
((uiNamespace getVariable "horde_myDisplay") displayCtrl 1800) ctrlSetStructuredText parseText format ["
|
||||
<t size='2' font='Zeppelin33' color = '#000000' align='center'>Survival Type: %14</t><br/>
|
||||
<br/>
|
||||
<t size='2' font='Zeppelin33' color = '#000000' align='left'>Health: </t><t size='2' font='Zeppelin33' align='right' color='#FF0033'>%1</t><br/>
|
||||
<br/>
|
||||
<t size='2' font='Zeppelin33' color = '#000000' align='left'>Hunger: </t><t size='2' font='Zeppelin33' align='right' color='#FF0033'>%2%</t><br/>
|
||||
<t size='2' font='Zeppelin33' color = '#000000' align='left'>Thirst: </t><t size='2' font='Zeppelin33' align='right' color='#FF0033'>%3%</t><br/>
|
||||
<br/>
|
||||
@@ -287,7 +286,8 @@ _disabledTemperature = switch (dayz_temperature_override) do {
|
||||
(round diag_fps),
|
||||
(round diag_fpsmin),
|
||||
(_moon),
|
||||
(_disabledTemperature)
|
||||
(_disabledTemperature),
|
||||
(dayz_presets)
|
||||
];
|
||||
|
||||
// right page - blank until humanity is checked
|
||||
|
||||
@@ -7,7 +7,7 @@ disableSerialization;
|
||||
player removeAction s_player_butcher;
|
||||
s_player_butcher = 1;
|
||||
|
||||
if(!(alive _item)) then {
|
||||
if !(alive _item) then {
|
||||
|
||||
_rnd = (round(random 4)) + 1;
|
||||
_move = "ZombieFeed" + str(_rnd);
|
||||
@@ -68,7 +68,7 @@ if(!(alive _item)) then {
|
||||
|
||||
[player,"eat",0,false] call dayz_zombieSpeak;
|
||||
|
||||
// todo: dump loot on ground && then remove
|
||||
// todo: dump loot on ground and then remove
|
||||
|
||||
//Ensure Control is visible
|
||||
_display = uiNamespace getVariable 'DAYZ_GUI_display';
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
if (DZE_ActionInProgress) exitWith {cutText [localize "str_epoch_player_88","PLAIN DOWN"];};
|
||||
DZE_ActionInProgress = true;
|
||||
/*
|
||||
delete object from db with extra waiting by [VB]AWOL
|
||||
parameters: _obj
|
||||
*/
|
||||
private ["_activatingPlayer","_obj","_objectID","_objectUID","_started","_finished","_animState","_isMedic","_isOk","_proceed","_counter","_limit","_objType","_sfx","_dis","_itemOut","_countOut","_selectedRemoveOutput","_friendlies","_nearestPole","_ownerID","_refundpart","_isWreck","_findNearestPoles","_findNearestPole","_IsNearPlot","_brokenTool","_removeTool","_isDestructable","_isRemovable","_objOwnerID","_isOwnerOfObj","_preventRefund","_ipos","_item","_radius","_isWreckBuilding","_nameVehicle","_isModular"];
|
||||
|
||||
if (DZE_ActionInProgress) exitWith {cutText [localize "str_epoch_player_88","PLAIN DOWN"];};
|
||||
DZE_ActionInProgress = true;
|
||||
|
||||
player removeAction s_player_deleteBuild;
|
||||
s_player_deleteBuild = 1;
|
||||
|
||||
_obj = _this select 3;
|
||||
|
||||
_activatingPlayer = player;
|
||||
|
||||
_objOwnerID = _obj getVariable["CharacterID","0"];
|
||||
_isOwnerOfObj = (_objOwnerID == dayz_characterID);
|
||||
|
||||
@@ -248,3 +245,5 @@ if (_proceed) then {
|
||||
};
|
||||
DZE_ActionInProgress = false;
|
||||
s_player_deleteBuild = -1;
|
||||
|
||||
_obj
|
||||
@@ -1,4 +1,3 @@
|
||||
private [];
|
||||
{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
|
||||
s_player_repair_crtl = -1;
|
||||
dayz_myCursorTarget = objNull;
|
||||
104
SQF/dayz_code/actions/tent_pitch.sqf
Normal file
104
SQF/dayz_code/actions/tent_pitch.sqf
Normal file
@@ -0,0 +1,104 @@
|
||||
private ["_item","_config","_text","_booleans","_worldspace","_dir","_location","_dis","_sfx","_tent","_classname","_object","_boundingBox","_maxPoint","_actionBuild","_actionCancel"];
|
||||
/*
|
||||
private ["_item", "_config", "_text", "_booleans", "_worldspace", "_dir", "_location", "_dis", "_sfx", "_tent"];
|
||||
|
||||
call gear_ui_init;
|
||||
|
||||
_item = _this;
|
||||
|
||||
_config = configFile >> "CfgMagazines" >> _item;
|
||||
_text = getText (_config >> "displayName");
|
||||
_classname = getText (_config >> "tentmodel");
|
||||
|
||||
//diag_log ("Classname: "+str(_classname));
|
||||
//diag_log ("Item: "+str(_item));
|
||||
|
||||
if (r_action_count != 1) exitWith { cutText [localize "str_player_actionslimit", "PLAIN DOWN"]; };
|
||||
|
||||
// item is missing or tools are missing
|
||||
if ((!(_item IN magazines player))) exitWith {
|
||||
r_action_count = 0;
|
||||
cutText [format [localize "str_player_31",_text,localize "str_player_31_pitch"] , "PLAIN DOWN"];
|
||||
};
|
||||
|
||||
_booleans = []; //testonLadder, testSea, testPond, testBuilding, testSlope, testDistance
|
||||
|
||||
//remove tentbag
|
||||
player removeMagazine _item;
|
||||
//_dir = _worldspace select 0;
|
||||
//_location = _worldspace select 1;
|
||||
|
||||
//wait a bit
|
||||
//player playActionNow "Medic";
|
||||
sleep 1;
|
||||
// tent location may not be in front of player
|
||||
//player setDir _dir;
|
||||
//player setPosATL (getPosATL player);
|
||||
|
||||
_dis=20;
|
||||
_sfx = "tentunpack";
|
||||
|
||||
//sleep 5;
|
||||
|
||||
cutText [localize "str_player_build_rotate", "PLAIN DOWN"];
|
||||
_location = getMarkerpos "respawn_west";
|
||||
_object = createVehicle [_classname, _location, [], 0, "NONE"];
|
||||
|
||||
// Attach item
|
||||
_boundingBox = boundingBox _object;
|
||||
_maxPoint = ((_boundingBox select 1) select 0) max ((_boundingBox select 1) select 1);
|
||||
_object setPosATL [getPosATL _object select 0, getPosATL _object select 1, 0.01];
|
||||
_object attachTo [player, [0, _maxPoint + 1, 0.3]];
|
||||
|
||||
//Vars
|
||||
player setVariable ["constructionObject", _object];
|
||||
_object setVariable ["characterID",dayz_characterID,true];
|
||||
|
||||
//Actions
|
||||
_actionBuild = player addAction [localize "str_player_build_complete", "\z\addons\dayz_code\actions\object_build.sqf", [_object, _item, _classname, _text, true, _booleans, _dis, _sfx], 1, true];
|
||||
_actionCancel = player addAction [localize "str_player_build_cancel", "\z\addons\dayz_code\actions\object_build.sqf", [_object, _item, _classname, _text, false, _booleans, _dis, _sfx], 1, true];
|
||||
|
||||
sleep 0.01;
|
||||
|
||||
while {!isNull (player getVariable "constructionObject")} do {
|
||||
if (vehicle player != player) then {
|
||||
player action ["eject", vehicle player];
|
||||
};
|
||||
|
||||
if (speed player > 10 or speed player <= -8) then {
|
||||
cutText [localize "str_player_build_movingfast", "PLAIN DOWN"];
|
||||
player playMove "amovpercmstpssurwnondnon";
|
||||
};
|
||||
|
||||
sleep 0.2;
|
||||
|
||||
if (!alive player) then {
|
||||
[[],[],[],[_object, _item, _classname, _text, false, _booleans, _dis, _sfx]] call object_build;
|
||||
};
|
||||
};
|
||||
|
||||
player removeAction _actionBuild;
|
||||
player removeAction _actionCancel;
|
||||
*/
|
||||
/*
|
||||
sleep 5;
|
||||
|
||||
_tent = createVehicle ["TentStorage", getMarkerpos "respawn_west", [], 0, "CAN_COLLIDE"];
|
||||
_tent setDir _dir;
|
||||
_tent setPos _location; // follow terrain slope (works above sea level)
|
||||
player reveal _tent;
|
||||
_location = getPosATL _tent;
|
||||
|
||||
_tent setVariable ["characterID",dayz_characterID,true];
|
||||
PVDZ_obj_Publish = [dayz_characterID,_tent,[_dir,_location],_classname];
|
||||
publicVariableServer "PVDZ_obj_Publish";
|
||||
|
||||
cutText [localize "str_success_tent_pitch", "PLAIN DOWN"];
|
||||
sleep 1;
|
||||
r_action_count = 0;
|
||||
|
||||
} else {
|
||||
r_action_count = 0;
|
||||
cutText [localize "str_fail_tent_pitch", "PLAIN DOWN"];
|
||||
};
|
||||
*/
|
||||
@@ -1,15 +0,0 @@
|
||||
|
||||
private ["_array","_location","_dir","_classname","_weapon"];
|
||||
_array = _this select 3;
|
||||
_location = player modeltoworld [0,1,0];
|
||||
_dir = getDir player;
|
||||
_classname = _array select 0;
|
||||
removeBackpack player;
|
||||
player playActionNow "Medic";
|
||||
uiSleep 8;
|
||||
player removeAction r_player_action_bag;
|
||||
r_action_bag = false;
|
||||
_weapon = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
|
||||
_weapon setDir _dir;
|
||||
//_weapon setpos _location;
|
||||
player reveal _weapon;
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
Created exclusively for ArmA2:OA - DayZMod && DayZ Epoch. Script by icomrade.
|
||||
permission is required to use, alter &&/|| distribute from the author || project leader.
|
||||
Created exclusively for ArmA2:OA - DayZMod and DayZ Epoch. Script by icomrade.
|
||||
permission is required to use, alter and/or distribute from the author or project leader.
|
||||
*/
|
||||
private ["_array","_count","_action","_driver","_vehicle","_vehicleType","_emptySeat","_emptyGun"];
|
||||
_array = _this select 3;
|
||||
|
||||
@@ -1,70 +1,92 @@
|
||||
private ["_text","_qty","_canFill","_isWell","_objectsWell","_pondPos","_isPond","_objectsPond","_dis","_sfx","_playerPos","_onLadder","_hasbottleitem","_config"];
|
||||
#include "\z\addons\dayz_code\util\player.hpp"
|
||||
|
||||
private ["_water","_filled","_canFill","_infected","_well"];
|
||||
|
||||
call gear_ui_init;
|
||||
closeDialog 0;
|
||||
|
||||
_playerPos = getPosATL player;
|
||||
_canFill = count nearestObjects [_playerPos, ["Land_pumpa","Land_water_tank","Land_Misc_Well_L_EP1","Land_Misc_Well_C_EP1","Land_Barrel_water"], 4] > 0;
|
||||
_isPond = false;
|
||||
_isWell = false;
|
||||
_pondPos = [];
|
||||
_objectsWell = [];
|
||||
if Player_IsOnLadder() exitWith { (localize "str_player_21") call dayz_rollingMessages; };
|
||||
|
||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||
if (_onLadder) exitWith {cutText [localize "str_player_21","PLAIN DOWN"]};
|
||||
|
||||
_hasbottleitem = _this in magazines player;
|
||||
|
||||
_config = configFile >> "CfgMagazines" >> _this;
|
||||
_text = getText (_config >> "displayName");
|
||||
|
||||
if (!_hasbottleitem) exitWith {cutText [format[(localize "str_player_31"),_text,"fill"] , "PLAIN DOWN"]};
|
||||
|
||||
if (!dayz_isSwimming) then {
|
||||
player playActionNow "PutDown";
|
||||
};
|
||||
|
||||
if (!_canFill) then {
|
||||
_objectsWell = nearestObjects [_playerPos, [], 4];
|
||||
_water = call
|
||||
{
|
||||
private ["_canFill", "_infected"];
|
||||
|
||||
_canFill = count nearestObjects [player, ["Land_pumpa","Land_water_tank","Land_Barrel_water"], 4] > 0;
|
||||
|
||||
if (_canFill) exitWith { "safe" };
|
||||
|
||||
//Check for wells
|
||||
{
|
||||
//Check for Well
|
||||
_isWell = ["_well",str(_x),false] call fnc_inString;
|
||||
if (_isWell) then {_canFill = true};
|
||||
} count _objectsWell;
|
||||
};
|
||||
|
||||
if (!_canFill) then {
|
||||
_objectsPond = nearestObjects [_playerPos, [], 50];
|
||||
if (["_well", str _x, false] call fnc_inString) exitWith
|
||||
{
|
||||
_canFill = true;
|
||||
};
|
||||
}
|
||||
foreach nearestObjects [player, [], 4];
|
||||
|
||||
if (_canFill) exitWith { "safe" };
|
||||
|
||||
_infected = false;
|
||||
|
||||
//Check for ponds and corpses
|
||||
{
|
||||
//Check for pond
|
||||
_isPond = ["pond",str(_x),false] call fnc_inString;
|
||||
if (_isPond) then {
|
||||
_pondPos = (_x worldToModel _playerPos) select 2;
|
||||
if (_pondPos < 0) then {
|
||||
if (!_canFill) then
|
||||
{
|
||||
if (["pond", str _x, false] call fnc_inString && {((getPosASL player) select 2) < ((GetPosASL _x) select 2)}) then
|
||||
{
|
||||
_canFill = true;
|
||||
};
|
||||
};
|
||||
} count _objectsPond;
|
||||
};
|
||||
|
||||
if (_canFill) then {
|
||||
_qty = {_x == "ItemWaterbottleUnfilled"} count magazines player;
|
||||
|
||||
if ("ItemWaterbottleUnfilled" in magazines player) then {
|
||||
for "_x" from 1 to _qty do {
|
||||
if(([player,"ItemWaterbottleUnfilled"] call BIS_fnc_invRemove) == 1) then {
|
||||
player addMagazine "ItemWaterbottle";
|
||||
|
||||
if (!_infected) then
|
||||
{
|
||||
if (["dead", str _x, false] call fnc_inString || {["massgrave", str _x, false] call fnc_inString}) then
|
||||
{
|
||||
_infected = true;
|
||||
};
|
||||
};
|
||||
|
||||
_dis=5;
|
||||
_sfx = "fillwater";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] spawn player_alertZombies;
|
||||
|
||||
cutText [format[(localize "str_player_01"),_qty], "PLAIN DOWN"];
|
||||
} else {
|
||||
cutText [localize "str_player_02","PLAIN DOWN"];
|
||||
if (_canFill && {_infected}) exitWith {};
|
||||
}
|
||||
foreach nearestObjects [player, [], 50];
|
||||
|
||||
if (!_canFill) exitWith { nil };
|
||||
|
||||
if (_infected) exitWith { "infected" };
|
||||
|
||||
""
|
||||
};
|
||||
|
||||
if (isNil "_water") exitWith
|
||||
{
|
||||
(localize "str_player_20") call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
_water = "containerwater" + _water;
|
||||
_filled = 0;
|
||||
|
||||
{
|
||||
if (isText (configFile >> "CfgMagazines" >> _x >> _water)) then
|
||||
{
|
||||
if (_filled < 1) then
|
||||
{
|
||||
if (!dayz_isSwimming) then
|
||||
{
|
||||
player playActionNow "PutDown";
|
||||
};
|
||||
|
||||
[player, "fillwater", 0, false, 5] call dayz_zombieSpeak;
|
||||
[player, 5, true, getPosATL player] call player_alertZombies;
|
||||
};
|
||||
|
||||
_filled = _filled + 1;
|
||||
|
||||
player removeMagazine _x;
|
||||
player addMagazine getText (configFile >> "CfgMagazines" >> _x >> _water);
|
||||
};
|
||||
} else {
|
||||
cutText [localize "str_player_20","PLAIN DOWN"];
|
||||
};
|
||||
}
|
||||
foreach magazines player;
|
||||
|
||||
if (_filled > 0)
|
||||
then { (format [localize "str_player_01", _filled]) call dayz_rollingMessages; }
|
||||
else { (localize "str_player_02") call dayz_rollingMessages; };
|
||||
Reference in New Issue
Block a user