mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 04:02:37 +03:00
1.0.0.7 Developer Build
+ [CHANGED] Build-ables now get deleted from database when killed. + [ADDED] Basic fishing on ocean using toolbelt item: ItemFishingPole. TODO: add model + [ADDED] New way of chopping down trees that actually takes into account the size of the tree for number of chops/output. For example medium sized tree will typically require 3 animations and will yield 3 wood piles. + [ADDED] Airplane dealer to Namalsk and updated trader config. + [CHANGED] Can now remove park bench with refund. + [FIXED] dayz_maxGlobalZombies was not incrementing when other players are within 400m. Also, variable was overwritten in player_spawncheck code so a init variable was added dayz_maxGlobalZombiesInit (default=40) as well as dayz_maxGlobalZombiesIncrease (default=10) to control the amount of increase for each additional player within range. + [CHANGED] Any backpack placed on the ground will with gear will now disappear to all other players. + [FIXED] Added 5 second sleep to swimming in ground fix, now it should actually work without glitching. fixes #326 + [CHANGED] To prevent lost primary weapons in backpacks, all backpacks have been Upgraded. This requires that backpacks the weapon to magazines ratio be within 1:10. http://dayzepoch.com/wiki/index.php/Backpacks + [CLEANUP] disable debug of player zombie vision. + [ADDED] ASC EU Lights Mod FROM http://www.armaholic.com/page.php?id=12076 + [ADDED] New Craft-able light_pole_kit and Build-able LightPole_DZ for night lighting. RECIPE 4 lumber + 1 scrap + 1 Light Bulb + [ADDED] MAP Editorupgrade (EU) @MAP Mod FROM http://www.armaholic.com/page.php?id=6194 + [CHANGED] Picking up crowbar now gives toolbelt item instead of melee weapon.
This commit is contained in:
@@ -45,7 +45,7 @@ AllowedVehiclesList = [
|
||||
["UH1H_DZ",2],
|
||||
["Mi17_Civilian_DZ",3],
|
||||
["Mi17_DZ",1],
|
||||
["CH_47F_EP1",1],
|
||||
["CH_47F_EP1_DZ",1],
|
||||
["LandRover_CZ_EP1",2],
|
||||
["HMMWV_Ambulance",2],
|
||||
["HMMWV_DES_EP1",1],
|
||||
|
||||
@@ -25,7 +25,7 @@ MaxDynamicDebris = 300; // Default = 100
|
||||
dayz_MapArea = 8000; // Default = 10000
|
||||
dayz_maxLocalZombies = 80; // Default = 40
|
||||
|
||||
dayz_maxGlobalZombies = 60; // Default = 30
|
||||
dayz_maxGlobalZombiesInit = 60; // Default = 40
|
||||
dayz_maxZeds = 1000; // Default = 500
|
||||
|
||||
// new stuff
|
||||
|
||||
@@ -149,6 +149,23 @@ class CfgWeapons {
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemFishingPole: ItemCore
|
||||
{
|
||||
scope=2;
|
||||
displayName="Fishing Pole";
|
||||
// TODO MODEL AND ICON
|
||||
model="\dayz_equip\models\crowbar.p3d";
|
||||
picture="\dayz_weapons\textures\equip_crowbar_CA.paa";
|
||||
descriptionShort="Fishing Pole and with lure.";
|
||||
class ItemActions
|
||||
{
|
||||
class Use
|
||||
{
|
||||
text="Cast Fishing Pole";
|
||||
script="spawn player_goFishing;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class MeleeMachete: MeleeHatchet
|
||||
{
|
||||
scope=2;
|
||||
|
||||
104
dayz_code/actions/fill_nearestVehicle.sqf
Normal file
104
dayz_code/actions/fill_nearestVehicle.sqf
Normal file
@@ -0,0 +1,104 @@
|
||||
private ["_vehicle","_curFuel","_newFuel","_started","_finished","_animState","_isMedic","_location1","_location2","_abort","_canName","_canSizeEmpty","_canTypeEmpty","_canName","_canSize","_configCan","_configVeh","_capacity","_nameText","_availableCansEmpty","_availableCans"];
|
||||
|
||||
if(TradeInprogress) exitWith { cutText ["Refuel already in progress." , "PLAIN DOWN"] };
|
||||
TradeInprogress = true;
|
||||
|
||||
// Get all nearby vehicles within 10m
|
||||
_findNearestVehicles = nearestObjects [player, ["AllVehicles"], 10];
|
||||
_findNearestVehicle = [];
|
||||
{
|
||||
if (alive _x and !(_x isKindOf "Man")) then {
|
||||
_findNearestVehicle set [(count _findNearestVehicle),_x];
|
||||
};
|
||||
} foreach _findNearestVehicles;
|
||||
|
||||
_IsNearVehicle = count (_findNearestVehicle);
|
||||
|
||||
if(_IsNearVehicle >= 1) then {
|
||||
|
||||
// select the nearest one
|
||||
_vehicle = _findNearestVehicle select 0;
|
||||
|
||||
// Static vehicle fuel information
|
||||
_configVeh = configFile >> "cfgVehicles" >> TypeOf(_vehicle);
|
||||
_capacity = getNumber(_configVeh >> "fuelCapacity");
|
||||
_nameText = getText(_configVeh >> "displayName");
|
||||
|
||||
|
||||
_isOk = true;
|
||||
// perform fuel up
|
||||
while {_isOk} do {
|
||||
|
||||
// qty to add per loop
|
||||
_canSize = 20;
|
||||
|
||||
cutText [format["Filling up %1, move to cancel.",_nameText], "PLAIN DOWN"];
|
||||
|
||||
// alert zombies
|
||||
[player,20,true,(getPosATL player)] spawn player_alertZombies;
|
||||
|
||||
_finished = false;
|
||||
|
||||
// force animation
|
||||
player playActionNow "Medic";
|
||||
|
||||
r_interrupt = false;
|
||||
_animState = animationState player;
|
||||
r_doLoop = true;
|
||||
_started = 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) then {
|
||||
r_interrupt = false;
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
_abort = true;
|
||||
};
|
||||
|
||||
if (_finished) then {
|
||||
|
||||
// Get vehicle fuel levels again
|
||||
_curFuel = ((fuel _vehicle) * _capacity);
|
||||
_newFuel = (_curFuel + 20);
|
||||
|
||||
if (_newFuel > _capacity) then {_newFuel = _capacity; _abort = true; };
|
||||
|
||||
// calculate minimum needed fuel
|
||||
_newFuel = (_newFuel / _capacity);
|
||||
|
||||
dayzSetFuel = [_vehicle,_newFuel];
|
||||
if (local _vehicle) then {
|
||||
dayzSetFuel spawn local_setFuel;
|
||||
};
|
||||
publicVariable "dayzSetFuel";
|
||||
|
||||
// Play sound
|
||||
[player,"refuel",0,false] call dayz_zombieSpeak;
|
||||
|
||||
cutText [format["%1 filled to %2 percent capacity.",_nameText,round(_newFuel*100)], "PLAIN DOWN"];
|
||||
};
|
||||
|
||||
if(_abort) exitWith {};
|
||||
sleep 1;
|
||||
};
|
||||
|
||||
} else {
|
||||
cutText ["No Vehicles Nearby.", "PLAIN DOWN"];
|
||||
};
|
||||
TradeInprogress = false;
|
||||
@@ -4,7 +4,7 @@ if(TradeInprogress) exitWith { cutText ["Refuel already in progress." , "PLAIN D
|
||||
TradeInprogress = true;
|
||||
|
||||
player removeAction s_player_fillgen;
|
||||
|
||||
s_player_fillgen = 1;
|
||||
|
||||
// Use target from addaction
|
||||
_vehicle = _this select 3;
|
||||
|
||||
@@ -5,5 +5,8 @@ _vehicle = _this select 3;
|
||||
s_player_lockUnlock_crtl = -1;
|
||||
|
||||
_vehicle setVehicleInit "this lock true; this lockCargo true;";
|
||||
|
||||
processInitCommands;
|
||||
|
||||
//_vehicle lock true;
|
||||
//dayzLockVehicle = [_vehicle,true];
|
||||
//publicVariable "dayzLockVehicle";
|
||||
|
||||
@@ -17,7 +17,7 @@ _text = getText (configFile >> _type >> _classname >> "displayName");
|
||||
_claimedBy = _holder getVariable["claimed","0"];
|
||||
|
||||
// Check if any players are nearby if not allow player to claim item.
|
||||
_playerNear = {isPlayer _x} count (player nearEntities ["Man", 6]) > 1;
|
||||
_playerNear = {isPlayer _x} count (player nearEntities ["CAManBase", 6]) > 1;
|
||||
|
||||
// Only allow if not already claimed.
|
||||
if (_claimedBy == "0" or !_playerNear) then {
|
||||
@@ -57,7 +57,7 @@ if(_classname isKindOf "Bag_Base_EP1") then {
|
||||
};
|
||||
|
||||
// test to see if item still exists just before adding and removing
|
||||
if(_holder == objNull) exitWith {};
|
||||
if(_holder == objNull) exitWith { TradeInprogress = false; };
|
||||
|
||||
_obj = nearestObjects [(getPosATL player), [(typeOf _holder)], 5];
|
||||
_qty = count _obj;
|
||||
|
||||
@@ -252,7 +252,8 @@ if (_hasrequireditem) then {
|
||||
|
||||
//["dayzPublishObj",[dayz_characterID,_tmpbuilt,[_dir,_location],_classname]] call callRpcProcedure;
|
||||
dayzPublishObj = [dayz_characterID,_tmpbuilt,[_dir,_location],_classname];
|
||||
publicVariableServer "dayzPublishObj";
|
||||
publicVariableServer "dayzPublishObj";
|
||||
|
||||
} else {
|
||||
deleteVehicle _tmpbuilt;
|
||||
cutText ["Canceled building." , "PLAIN DOWN"];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private["_item","_location","_isOk","_dir","_classname"];
|
||||
private ["_item","_isOk","_i","_objName","_objInfo","_lenInfo","_started","_finished","_sfx","_dis","_animState","_isMedic","_proceed","_counter","_objType","_limit","_itemOut","_countOut","_tree","_distance2d","_distance3d","_trees","_findNearestTree"];
|
||||
|
||||
if(TradeInprogress) exitWith { cutText ["Harvest wood already in progress." , "PLAIN DOWN"]; };
|
||||
TradeInprogress = true;
|
||||
@@ -9,95 +9,131 @@ _trees = ["t_picea3f.p3d","t_picea2s.p3d","t_picea1s.p3d","t_fagus2w.p3d","t_fag
|
||||
_item = _this;
|
||||
call gear_ui_init;
|
||||
|
||||
player playActionNow "Medic";
|
||||
[player,20,false,(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) then {
|
||||
|
||||
_nearByTrees = 0;
|
||||
|
||||
_findNearestTree = [];
|
||||
{
|
||||
if("" == typeOf _x) then {
|
||||
_findNearestTree = [];
|
||||
{
|
||||
if("" == typeOf _x) then {
|
||||
|
||||
if (alive _x) then {
|
||||
if (alive _x) then {
|
||||
|
||||
_objInfo = toArray(str(_x));
|
||||
_lenInfo = count _objInfo - 1;
|
||||
_objName = [];
|
||||
_i = 0;
|
||||
// determine where the object name starts
|
||||
{
|
||||
if (58 == _objInfo select _i) exitWith {};
|
||||
_i = _i + 1;
|
||||
} forEach _objInfo;
|
||||
_i = _i + 2; // skip the ": " part
|
||||
for "_k" from _i to _lenInfo do {
|
||||
_objName = _objName + [_objInfo select _k];
|
||||
};
|
||||
_objName = toLower(toString(_objName));
|
||||
_objInfo = toArray(str(_x));
|
||||
_lenInfo = count _objInfo - 1;
|
||||
_objName = [];
|
||||
_i = 0;
|
||||
// determine where the object name starts
|
||||
{
|
||||
if (58 == _objInfo select _i) exitWith {};
|
||||
_i = _i + 1;
|
||||
} forEach _objInfo;
|
||||
_i = _i + 2; // skip the ": " part
|
||||
for "_k" from _i to _lenInfo do {
|
||||
_objName = _objName + [_objInfo select _k];
|
||||
};
|
||||
_objName = toLower(toString(_objName));
|
||||
|
||||
// Exit since we found a tree
|
||||
if (_objName in _trees) exitWith {
|
||||
_findNearestTree set [(count _findNearestTree),_x];
|
||||
// Exit since we found a tree
|
||||
if (_objName in _trees) exitWith {
|
||||
_findNearestTree set [(count _findNearestTree),_x];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
} foreach nearestObjects [getPos player, [], 20];
|
||||
|
||||
diag_log format["DEBUG TREES: %1", _findNearestTree];
|
||||
|
||||
if (count(_findNearestTree) >= 1) then {
|
||||
|
||||
_tree = _findNearestTree select 0;
|
||||
|
||||
// get 2d distance
|
||||
_distance2d = [player, _tree] call BIS_fnc_distance2D;
|
||||
_distance3d = player distance _tree;
|
||||
|
||||
if(_distance2d <= 5) then {
|
||||
|
||||
_countOut = ceil(_distance3d-_distance2d);
|
||||
|
||||
diag_log format["DEBUG TREE DISTANCE: %1 - %2 = %3", _distance3d,_distance2d,(_distance3d-_distance2d)];
|
||||
|
||||
// Start chop tree loop
|
||||
_counter = 0;
|
||||
_isOk = true;
|
||||
_proceed = false;
|
||||
while {_isOk} do {
|
||||
|
||||
player playActionNow "Medic";
|
||||
[player,20,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;
|
||||
[player,"chopwood",0,false] call dayz_zombieSpeak;
|
||||
};
|
||||
if (r_interrupt) then {
|
||||
r_doLoop = false;
|
||||
};
|
||||
|
||||
sleep 0.1;
|
||||
|
||||
};
|
||||
|
||||
if(!_finished) exitWith {
|
||||
_isOk = false;
|
||||
_proceed = false;
|
||||
};
|
||||
|
||||
if(_finished) then {
|
||||
_counter = _counter + 1;
|
||||
};
|
||||
|
||||
cutText ["Chopping down tree, walk away at anytime to cancel.", "PLAIN DOWN"];
|
||||
|
||||
if(_counter == _countOut) exitWith {
|
||||
_isOk = false;
|
||||
_proceed = true;
|
||||
};
|
||||
};
|
||||
|
||||
} foreach nearestObjects [getPos player, [], 5];
|
||||
if (_proceed) then {
|
||||
|
||||
diag_log format["DEBUG TREES: %1", _findNearestTree];
|
||||
|
||||
if (count(_findNearestTree) >= 1) then {
|
||||
|
||||
_result = [player,"PartWoodPile"] call BIS_fnc_invAdd;
|
||||
[player,"chopwood",0,false] call dayz_zombieSpeak;
|
||||
if (_result) then {
|
||||
cutText [localize "str_player_25", "PLAIN DOWN"];
|
||||
_tree = _findNearestTree select 0;
|
||||
_itemOut = "PartWoodPile";
|
||||
|
||||
for "_x" from 1 to _countOut do {
|
||||
player addMagazine _itemOut;
|
||||
};
|
||||
|
||||
// chop down tree
|
||||
if("" == typeOf _tree) then {
|
||||
_tree setDamage 1;
|
||||
};
|
||||
|
||||
diag_log format["DEBUG TREE DAMAGE: %1", _tree];
|
||||
|
||||
cutText [format["%1 piles of wood has been successfully added to your inventory.", _countOut], "PLAIN DOWN"];
|
||||
|
||||
} else {
|
||||
cutText [localize "str_player_24", "PLAIN DOWN"];
|
||||
r_interrupt = false;
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
cutText ["Canceled Harvesting Wood.", "PLAIN DOWN"];
|
||||
};
|
||||
|
||||
} else {
|
||||
cutText [localize "str_player_23", "PLAIN DOWN"];
|
||||
};
|
||||
|
||||
|
||||
} else {
|
||||
r_interrupt = false;
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
cutText ["Canceled Harvest Wood.", "PLAIN DOWN"];
|
||||
cutText [localize "str_player_23", "PLAIN DOWN"];
|
||||
};
|
||||
TradeInprogress = false;
|
||||
56
dayz_code/actions/player_goFishing.sqf
Normal file
56
dayz_code/actions/player_goFishing.sqf
Normal file
@@ -0,0 +1,56 @@
|
||||
private ["_item","_isOk","_i","_objName","_objInfo","_lenInfo","_started","_finished","_sfx","_dis","_animState","_isMedic","_proceed","_counter","_objType","_limit","_itemOut","_countOut","_tree","_distance2d","_distance3d","_trees","_findNearestTree"];
|
||||
|
||||
if(TradeInprogress) exitWith { cutText ["Fishing already in progress." , "PLAIN DOWN"]; };
|
||||
TradeInprogress = true;
|
||||
|
||||
_item = _this;
|
||||
call gear_ui_init;
|
||||
|
||||
// find position in front of player
|
||||
_position = player modeltoworld [0,5,0];
|
||||
|
||||
if(!(surfaceIsWater _position)) exitWith { TradeInprogress = false; cutText ["Must be near a shore or on a boat to fish." , "PLAIN DOWN"]; };
|
||||
|
||||
player playActionNow "Medic";
|
||||
[player,20,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;
|
||||
[player,"fillwater",0,false] call dayz_zombieSpeak;
|
||||
};
|
||||
if (r_interrupt) then {
|
||||
r_doLoop = false;
|
||||
};
|
||||
sleep 0.1;
|
||||
};
|
||||
|
||||
if (_finished) then {
|
||||
|
||||
_itemOut = "FoodCanSardines"; // TODO replace with random raw fishes
|
||||
_countOut = round(random 4);
|
||||
|
||||
for "_x" from 1 to _countOut do {
|
||||
player addMagazine _itemOut;
|
||||
};
|
||||
cutText [format["You caught %1 fish.", _countOut], "PLAIN DOWN"];
|
||||
|
||||
} else {
|
||||
r_interrupt = false;
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
cutText ["Canceled Fishing.", "PLAIN DOWN"];
|
||||
};
|
||||
TradeInprogress = false;
|
||||
@@ -117,13 +117,21 @@ if (_proceed) then {
|
||||
if(!isNull(_obj)) then {
|
||||
cutText [format["De-constructing %1.",_objType], "PLAIN DOWN"];
|
||||
|
||||
// TODO add hideobject to have it sink into ground then delete
|
||||
dayzHideObject = _obj;
|
||||
hideObject _obj; // local player
|
||||
publicVariable "dayzHideObject"; // remote player
|
||||
sleep 5;
|
||||
|
||||
|
||||
//["dayzDeleteObj",[_objectID,_objectUID]] call callRpcProcedure;
|
||||
dayzDeleteObj = [_objectID,_objectUID];
|
||||
publicVariableServer "dayzDeleteObj";
|
||||
|
||||
|
||||
_isWreck = (typeOf _obj) in ["SKODAWreck","HMMWVWreck","UralWreck","datsun01Wreck","hiluxWreck","datsun02Wreck","UAZWreck","Land_Misc_Garb_Heap_EP1","Fort_Barricade_EP1","Rubbish2"];
|
||||
|
||||
deleteVehicle _obj;
|
||||
|
||||
_selectedRemoveOutput = [];
|
||||
if(_isWreck) then {
|
||||
// Find one random part to give back
|
||||
|
||||
@@ -4,7 +4,7 @@ if(TradeInprogress) exitWith { cutText ["Stop already in progress." , "PLAIN DOW
|
||||
TradeInprogress = true;
|
||||
|
||||
player removeAction s_player_fillgen;
|
||||
|
||||
s_player_fillgen = 1;
|
||||
|
||||
// Use target from addaction
|
||||
_vehicle = _this select 3;
|
||||
|
||||
@@ -5,7 +5,9 @@ _vehicle = _this select 3;
|
||||
s_player_lockUnlock_crtl = -1;
|
||||
|
||||
_vehicle setVehicleInit "this lock false; this lockCargo false;";
|
||||
|
||||
processInitCommands;
|
||||
|
||||
|
||||
// Wiki states that lock is globally brodcast but the variable has to be local
|
||||
//_vehicle lock false;
|
||||
//dayzLockVehicle = [_vehicle,false];
|
||||
//publicVariable "dayzLockVehicle";
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
private["_hasKnife","_qty","_item","_text","_string","_type","_loop","_meat","_timer"];
|
||||
_item = _this select 3;
|
||||
|
||||
player playMove "GestureSwing"
|
||||
@@ -5,19 +5,21 @@ class CfgLoot {
|
||||
"TrashJackDaniels",
|
||||
"ItemSodaEmpty",
|
||||
"ItemTrashToiletpaper",
|
||||
"ItemTrashRazor"
|
||||
"ItemTrashRazor",
|
||||
"ItemLightBulb"
|
||||
},
|
||||
{
|
||||
1,
|
||||
0.1,
|
||||
0.5,
|
||||
0.4,
|
||||
0.2
|
||||
0.2,
|
||||
0.05
|
||||
}
|
||||
};
|
||||
civilian[] = {
|
||||
{
|
||||
"TrashTinCan",
|
||||
"FoodCanUnlabeled",
|
||||
"TrashJackDaniels",
|
||||
"ItemSodaEmpty",
|
||||
"ItemSodaCoke",
|
||||
@@ -91,7 +93,7 @@ class CfgLoot {
|
||||
};
|
||||
generic[] = {
|
||||
{
|
||||
"TrashTinCan",
|
||||
"FoodCanUnlabeled",
|
||||
"ItemSodaEmpty",
|
||||
"ItemSodaCoke",
|
||||
"ItemSodaPepsi",
|
||||
@@ -187,7 +189,7 @@ class CfgLoot {
|
||||
};
|
||||
military[] = {
|
||||
{
|
||||
"TrashTinCan",
|
||||
"FoodCanUnlabeled",
|
||||
"ItemSodaEmpty",
|
||||
"ItemSodaCoke",
|
||||
"ItemSodaPepsi",
|
||||
@@ -317,7 +319,7 @@ class CfgLoot {
|
||||
|
||||
worker[] = {
|
||||
{
|
||||
"TrashTinCan",
|
||||
"FoodCanUnlabeled",
|
||||
"TrashJackDaniels",
|
||||
"ItemSodaEmpty",
|
||||
"ItemSodaCoke",
|
||||
|
||||
@@ -989,7 +989,7 @@ class Citizen1; // External class reference
|
||||
mapsize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_us_assault_Coyote.p3d";
|
||||
transportMaxWeapons = 1;
|
||||
transportMaxMagazines = 8;
|
||||
transportMaxMagazines = 10;
|
||||
};
|
||||
|
||||
class DZ_Assault_Pack_EP1: Bag_Base_EP1
|
||||
@@ -1025,7 +1025,7 @@ class Citizen1; // External class reference
|
||||
mapsize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_tk_alice.p3d";
|
||||
transportMaxWeapons = 2;
|
||||
transportMaxMagazines = 16;
|
||||
transportMaxMagazines = 20;
|
||||
};
|
||||
|
||||
class DZ_TK_Assault_Pack_EP1 : Bag_Base_BAF
|
||||
@@ -1037,7 +1037,7 @@ class Citizen1; // External class reference
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_civil_assault.p3d";
|
||||
transportMaxWeapons = 2;
|
||||
transportMaxMagazines = 16;
|
||||
transportMaxMagazines = 22;
|
||||
};
|
||||
|
||||
class DZ_British_ACU : Bag_Base_BAF
|
||||
@@ -1049,7 +1049,7 @@ class Citizen1; // External class reference
|
||||
picture = "\ca\weapons_baf\data\UI\backpack_BAF_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
transportMaxWeapons = 3;
|
||||
transportMaxMagazines = 18;
|
||||
transportMaxMagazines = 30;
|
||||
};
|
||||
|
||||
class DZ_CivilBackpack_EP1: Bag_Base_EP1
|
||||
@@ -1061,7 +1061,7 @@ class Citizen1; // External class reference
|
||||
mapsize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_acr.p3d";
|
||||
transportMaxWeapons = 4;
|
||||
transportMaxMagazines = 24;
|
||||
transportMaxMagazines = 40;
|
||||
};
|
||||
|
||||
class DZ_Backpack_EP1: Bag_Base_EP1
|
||||
@@ -1072,8 +1072,8 @@ class Citizen1; // External class reference
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapsize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_us.p3d";
|
||||
transportMaxWeapons = 6;
|
||||
transportMaxMagazines = 30;
|
||||
transportMaxWeapons = 5;
|
||||
transportMaxMagazines = 50;
|
||||
};
|
||||
|
||||
class DZ_LargeGunBag_EP1: Bag_Base_EP1
|
||||
@@ -1084,8 +1084,8 @@ class Citizen1; // External class reference
|
||||
picture = "\ca\weapons_e\data\icons\staticX_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapsize = 2;
|
||||
transportMaxWeapons = 10;
|
||||
transportMaxMagazines = 45;
|
||||
transportMaxWeapons = 6;
|
||||
transportMaxMagazines = 60;
|
||||
};
|
||||
class DZ_GunBag_EP1: Bag_Base_EP1
|
||||
{
|
||||
@@ -1095,8 +1095,8 @@ class Citizen1; // External class reference
|
||||
picture = "\ca\weapons_e\data\icons\staticY_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapsize = 2;
|
||||
transportMaxWeapons = 6;
|
||||
transportMaxMagazines = 8;
|
||||
transportMaxWeapons = 3;
|
||||
transportMaxMagazines = 35;
|
||||
};
|
||||
class DZ_CompactPack_EP1: Bag_Base_EP1
|
||||
{
|
||||
@@ -1106,8 +1106,8 @@ class Citizen1; // External class reference
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapsize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_rpg.p3d";
|
||||
transportMaxWeapons = 1;
|
||||
transportMaxMagazines = 18;
|
||||
transportMaxWeapons = 2;
|
||||
transportMaxMagazines = 25;
|
||||
};
|
||||
class DZ_TerminalPack_EP1: Bag_Base_EP1
|
||||
{
|
||||
@@ -1118,7 +1118,7 @@ class Citizen1; // External class reference
|
||||
mapSize = 2;
|
||||
model = "\ca\weapons_e\AmmoBoxes\backpack_us_AUV";
|
||||
transportMaxWeapons = 1;
|
||||
transportMaxMagazines = 12;
|
||||
transportMaxMagazines = 15;
|
||||
};
|
||||
|
||||
//An2_TK_EP1
|
||||
|
||||
@@ -50,7 +50,7 @@ if (_canPickLight and !dayz_hasLight and !_isPZombie) then {
|
||||
s_player_grabflare = -1;
|
||||
s_player_removeflare = -1;
|
||||
};
|
||||
|
||||
hint str(typeOf cursorTarget);
|
||||
if(DZEdebug) then {
|
||||
hint str(typeOf cursorTarget);
|
||||
|
||||
@@ -71,39 +71,7 @@ if(_isPZombie) then {
|
||||
};
|
||||
|
||||
if (s_player_pzombiesvision < 0) then {
|
||||
|
||||
s_player_pzombiesvision = player addAction ["Vision", "\z\addons\dayz_code\actions\pzombie\pz_vision.sqf", [], 4, false, true, "nightVision", "_this == _target"];
|
||||
|
||||
player addAction ["Aperture + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_ap.sqf", [0.1], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Aperture - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_ap.sqf", [-0.1], 0, false, true, "", "_this == _target"];
|
||||
|
||||
player addAction ["First R + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First R - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[-0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First B + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First B - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,-0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First G + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,0,0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First G - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,0,-0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["First M + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,0,0,0.1]], 0, false, true, "", "", "_this == _target"];
|
||||
player addAction ["First M - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV1",[0,0,0,-0.1]], 0, false, true, "", "", "_this == _target"];
|
||||
|
||||
player addAction ["Second R + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second R - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[-0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second B + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second B - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,-0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second G + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,0,0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second G - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,0,-0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second M + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,0,0,0.1]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Second M - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV2",[0,0,0,-0.1]], 0, false, true, "", "_this == _target"];
|
||||
|
||||
player addAction ["Third R + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third R - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[-0.1,0,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third B + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third B - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,-0.1,0,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third G + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,0,0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third G - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,0,-0.1,0]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third M + 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,0,0,0.1]], 0, false, true, "", "_this == _target"];
|
||||
player addAction ["Third M - 0.1", "\z\addons\dayz_code\actions\pzombie\pz_vision_rbg1.sqf", ["NV3",[0,0,0,-0.1]], 0, false, true, "", "_this == _target"];
|
||||
|
||||
};
|
||||
|
||||
if (!isNull cursorTarget and (player distance cursorTarget < 3)) then { //Has some kind of target
|
||||
@@ -149,7 +117,7 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
|
||||
_isZombie = cursorTarget isKindOf "zZombie_base";
|
||||
_isDestructable = cursorTarget isKindOf "BuiltItems";
|
||||
_isWreck = typeOf cursorTarget in ["SKODAWreck","HMMWVWreck","UralWreck","datsun01Wreck","hiluxWreck","datsun02Wreck","UAZWreck","Land_Misc_Garb_Heap_EP1","Fort_Barricade_EP1","Rubbish2"];
|
||||
_isRemovable = typeOf cursorTarget in ["Fence_corrugated_DZ","M240Nest_DZ"];
|
||||
_isRemovable = typeOf cursorTarget in ["Fence_corrugated_DZ","M240Nest_DZ","ParkBench_DZ"];
|
||||
_isDisallowRepair = typeOf cursorTarget in ["M240Nest_DZ"];
|
||||
|
||||
_isTent = cursorTarget isKindOf "TentStorage";
|
||||
@@ -168,7 +136,7 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
|
||||
} forEach _rawmeat;
|
||||
|
||||
if (_hasFuelE and dayz_oldrefuel) then {
|
||||
_isFuel = (cursorTarget isKindOf "Land_Ind_TankSmall") or (cursorTarget isKindOf "Land_fuel_tank_big") or (cursorTarget isKindOf "Land_fuel_tank_stairs") or (cursorTarget isKindOf "Land_fuel_tank_stairs_ep1") or (cursorTarget isKindOf "Land_wagon_tanker") or (cursorTarget isKindOf "Land_fuelstation") or (cursorTarget isKindOf "Land_fuelstation_army");
|
||||
_isFuel = (cursorTarget isKindOf "Land_Ind_TankSmall") or (cursorTarget isKindOf "Land_fuel_tank_big") or (cursorTarget isKindOf "Land_fuel_tank_stairs") or (cursorTarget isKindOf "Land_fuel_tank_stairs_ep1") or (cursorTarget isKindOf "Land_wagon_tanker") or (cursorTarget isKindOf "Land_fuelstation") or (cursorTarget isKindOf "Land_fuelstation_army") or (cursorTarget isKindOf "land_fuelstation_w");
|
||||
};
|
||||
|
||||
// diag_log ("OWNERID = " + _ownerID + " CHARID = " + dayz_characterID + " " + str(_ownerID == dayz_characterID));
|
||||
@@ -345,6 +313,32 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
|
||||
player removeAction s_player_information;
|
||||
s_player_information = -1;
|
||||
};
|
||||
|
||||
//Fuel Pump
|
||||
if((typeOf cursorTarget) in dayz_fuelpumparray and _canDo) then {
|
||||
if ((s_player_fuelauto < 0) and (player distance cursorTarget < 3)) then {
|
||||
|
||||
// check if Generator_DZ is running within 30 meters
|
||||
_findNearestGens = nearestObjects [player, ["Generator_DZ"], 30];
|
||||
_findNearestGen = [];
|
||||
{
|
||||
if (alive _x and (_x getVariable ["GeneratorRunning", false])) then {
|
||||
_findNearestGen set [(count _findNearestGen),_x];
|
||||
};
|
||||
} foreach _findNearestGens;
|
||||
_IsNearRunningGen = count (_findNearestGen);
|
||||
|
||||
// show that pump needs power if no generator nearby.
|
||||
if(_IsNearRunningGen > 0) then {
|
||||
s_player_fuelauto = player addAction ["Fill Vehicle", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",[], 0, false, true, "",""];
|
||||
} else {
|
||||
s_player_fuelauto = player addAction ["<t color='#ff0000'>Needs Power</t>", "",[], 0, false, true, "",""];
|
||||
};
|
||||
};
|
||||
} else {
|
||||
player removeAction s_player_fuelauto;
|
||||
s_player_fuelauto = -1;
|
||||
};
|
||||
|
||||
//Start Generator
|
||||
if(cursorTarget isKindOf "Generator_DZ" and _canDo) then {
|
||||
|
||||
7
dayz_code/compile/local_lockUnlock.sqf
Normal file
7
dayz_code/compile/local_lockUnlock.sqf
Normal file
@@ -0,0 +1,7 @@
|
||||
private ["_vehicle","_status"];
|
||||
_vehicle = _this select 0;
|
||||
_status = _this select 1;
|
||||
|
||||
//if (local _vehicle) then {
|
||||
_vehicle lock _status;
|
||||
//};
|
||||
@@ -37,7 +37,9 @@ if (_anim4 == "aswm") then {
|
||||
// Stops swimming in ground
|
||||
[objNull, player, rSwitchMove,""] call RE;
|
||||
player playActionNow "stop";
|
||||
|
||||
// This sleep was much needed
|
||||
sleep 5;
|
||||
|
||||
dayz_isSwimming = false;
|
||||
};
|
||||
|
||||
|
||||
13
dayz_code/compile/player_dumpBackpack.sqf
Normal file
13
dayz_code/compile/player_dumpBackpack.sqf
Normal file
@@ -0,0 +1,13 @@
|
||||
private ["_weapons","_magazines","_weaponscnt","_magazinescnt","_backpack"];
|
||||
_backpack = nearestObject [player, "Bag_Base_EP1"];
|
||||
if (!(isNull _backpack) and local _backpack) then {
|
||||
_weapons = getWeaponCargo _backpack;
|
||||
_magazines = getMagazineCargo _backpack;
|
||||
_weaponscnt = count (_weapons select 0);
|
||||
_magazinescnt = count (_magazines select 0);
|
||||
if((_magazinescnt > 0) or (_weaponscnt > 0)) then {
|
||||
// hide backpack from everyone else
|
||||
dayzHideObject = _backpack;
|
||||
publicVariable "dayzHideObject";
|
||||
};
|
||||
};
|
||||
@@ -45,10 +45,12 @@ switch (_nearbytype) do {
|
||||
};
|
||||
*/
|
||||
|
||||
_players = _position nearEntities ["AllPlayers",_radius+200];
|
||||
dayz_maxGlobalZombies = 40;
|
||||
_players = _position nearEntities ["CAManBase",_radius+200];
|
||||
dayz_maxGlobalZombies = dayz_maxGlobalZombiesInit;
|
||||
{
|
||||
dayz_maxGlobalZombies = dayz_maxGlobalZombies + 10;
|
||||
if(isPlayer _x) then {
|
||||
dayz_maxGlobalZombies = dayz_maxGlobalZombies + dayz_maxGlobalZombiesIncrease;
|
||||
};
|
||||
} foreach _players;
|
||||
|
||||
_spawnZombies = _position nearEntities ["zZombie_Base",_radius+100];
|
||||
|
||||
@@ -20,7 +20,7 @@ class CfgPatches {
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {"dayz_equip","dayz_weapons","dayz_sfx","CAMisc3","CABuildingParts","CABuildingParts_Signs","CAStructuresHouse","CAStructuresLand_Ind_Stack_Big","CAStructures_Misc_Powerlines","CAStructures","CABuildings","CABuildings2","Ind_MalyKomin","CAStructures_A_CraneCon","CAStructures_Mil","CAStructures_Nav","CAStructures_Rail","A_Crane_02","A_TVTower","CAStructures_Railway","CAStructuresHouse","CAStructuresHouse_HouseBT"};
|
||||
requiredAddons[] = {"dayz_equip","dayz_weapons","dayz_sfx","CAMisc3","CABuildingParts","CABuildingParts_Signs","CAStructuresHouse","CAStructuresLand_Ind_Stack_Big","CAStructures_Misc_Powerlines","CAStructures","CABuildings","CABuildings2","Ind_MalyKomin","CAStructures_A_CraneCon","CAStructures_Mil","CAStructures_Nav","CAStructures_Rail","A_Crane_02","A_TVTower","CAStructures_Railway","CAStructuresHouse","CAStructuresHouse_HouseBT","asc_eu_lights"};
|
||||
};
|
||||
class DZ_DebriefingRemoved
|
||||
{
|
||||
@@ -40,7 +40,7 @@ class CfgMods
|
||||
hidePicture = 0;
|
||||
hideName = 0;
|
||||
action = "http://www.dayzepoch.com";
|
||||
version = "1.0.0.6";
|
||||
version = "1.0.0.7";
|
||||
hiveVersion = 0.96; //0.93
|
||||
};
|
||||
};
|
||||
@@ -633,8 +633,8 @@ class CfgBuildingLoot {
|
||||
{"DZ_ALICE_Pack_EP1","object"}, // 16
|
||||
{"DZ_TK_Assault_Pack_EP1","object"}, // 16
|
||||
{"DZ_British_ACU","object"}, // 18
|
||||
{"DZ_CompactPack_EP1","object"}, // 18-1
|
||||
{"DZ_TerminalPack_EP1","object"}, // 12-1
|
||||
{"DZ_CompactPack_EP1","object"}, //
|
||||
{"DZ_TerminalPack_EP1","object"}, //
|
||||
|
||||
{ "Winchester1866","weapon" },
|
||||
{ "WeaponHolder_ItemTent","object" },
|
||||
|
||||
@@ -20,6 +20,7 @@ if (!isDedicated) then {
|
||||
player_weaponFiredNear = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_weaponFiredNear.sqf";
|
||||
player_animalCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_animalCheck.sqf";
|
||||
player_spawnCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnCheck.sqf";
|
||||
player_dumpBackpack = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_dumpBackpack.sqf";
|
||||
player_spawnLootCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnlootCheck.sqf";
|
||||
player_spawnZedCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_spawnzedCheck.sqf";
|
||||
building_spawnLoot = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\building_spawnLoot.sqf";
|
||||
@@ -87,6 +88,7 @@ if (!isDedicated) then {
|
||||
player_fillWater = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\water_fill.sqf";
|
||||
player_makeFire = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_makefire.sqf";
|
||||
player_chopWood = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_chopWood.sqf";
|
||||
player_goFishing = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_goFishing.sqf";
|
||||
player_build = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_build.sqf";
|
||||
player_wearClothes = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_wearClothes.sqf";
|
||||
player_dropWeapon = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_dropWeapon.sqf";
|
||||
@@ -434,6 +436,7 @@ if (!isDedicated) then {
|
||||
dayz_zombieSpeak = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_speak.sqf"; //Used to generate random speech for a unit
|
||||
vehicle_getHitpoints = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_getHitpoints.sqf";
|
||||
local_gutObject = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_gutObject.sqf"; //Generated on the server (or local to unit) when gutting an object
|
||||
local_lockUnlock = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle
|
||||
local_gutObjectZ = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_gutObjectZ.sqf"; //Generated on the server (or local to unit) when gutting an object
|
||||
local_zombieDamage = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandlerZ.sqf"; //Generated by the client who created a zombie to track damage
|
||||
local_setFuel = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_setFuel.sqf"; //Generated when someone refuels a vehicle
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
"dayzHit" addPublicVariableEventHandler {(_this select 1) call fnc_usec_damageHandler};
|
||||
"dayzHitV" addPublicVariableEventHandler {(_this select 1) call fnc_usec_damageVehicle};
|
||||
"dayzHideBody" addPublicVariableEventHandler {hideBody (_this select 1)};
|
||||
"dayzHideObject" addPublicVariableEventHandler {hideObject (_this select 1)};
|
||||
"dayzLockVehicle" addPublicVariableEventHandler {(_this select 1) spawn local_lockUnlock};
|
||||
"dayzGutBody" addPublicVariableEventHandler {(_this select 1) spawn local_gutObject};
|
||||
"dayzGutBodyZ" addPublicVariableEventHandler {(_this select 1) spawn local_gutObjectZ};
|
||||
"dayzDelLocal" addPublicVariableEventHandler {(_this select 1) call object_delLocal};
|
||||
|
||||
@@ -15,7 +15,7 @@ Soldier1_DZ = "Soldier1_DZ";
|
||||
Rocket_DZ = "Rocket_DZ";
|
||||
|
||||
AllPlayers = ["Survivor2_DZ","SurvivorWcombat_DZ","SurvivorWdesert_DZ","SurvivorWurban_DZ","SurvivorWpink_DZ","SurvivorW3_DZ","SurvivorW2_DZ","Bandit1_DZ","Bandit2_DZ","BanditW1_DZ","BanditW2_DZ","Soldier_Crew_PMC","Sniper1_DZ","Camo1_DZ","Soldier1_DZ","Rocket_DZ","Rocker2_DZ","Priest_DZ","Functionary1_EP1_DZ","GUE_Commander_DZ","Ins_Soldier_GL_DZ","Haris_Press_EP1_DZ","Pilot_EP1_DZ","RU_Policeman_DZ","pz_policeman","pz_suit1","pz_suit2","pz_worker1","pz_worker2","pz_worker3","pz_doctor","pz_teacher","pz_hunter","pz_villager1","pz_villager2","pz_villager3","pz_priest","Soldier_TL_PMC_DZ","Soldier_Sniper_PMC_DZ","Soldier_Bodyguard_AA12_PMC_DZ","Drake_Light_DZ","CZ_Special_Forces_GL_DES_EP1_DZ","TK_INS_Soldier_EP1_DZ","TK_INS_Warlord_EP1_DZ","FR_OHara_DZ","FR_Rodriguez_DZ","CZ_Soldier_Sniper_EP1_DZ","Graves_Light_DZ"];
|
||||
AllPlayersVehicles = ["AllVehicles"]+AllPlayers;
|
||||
// AllPlayersVehicles = ["AllVehicles"]+AllPlayers;
|
||||
|
||||
//Cooking
|
||||
meatraw = [
|
||||
@@ -222,6 +222,7 @@ dayz_resetSelfActions = {
|
||||
s_player_followdog = -1;
|
||||
s_player_repair_crtl = -1;
|
||||
s_player_information = -1;
|
||||
s_player_fuelauto = -1;
|
||||
s_player_fillgen = -1;
|
||||
};
|
||||
call dayz_resetSelfActions;
|
||||
@@ -361,8 +362,11 @@ dayz_zSpawnDistance = 1000;
|
||||
if(isNil "dayz_maxLocalZombies") then {
|
||||
dayz_maxLocalZombies = 40;
|
||||
};
|
||||
if(isNil "dayz_maxGlobalZombies") then {
|
||||
dayz_maxGlobalZombies = 30;
|
||||
if(isNil "dayz_maxGlobalZombiesInit") then {
|
||||
dayz_maxGlobalZombiesInit = 40;
|
||||
};
|
||||
if(isNil "dayz_maxGlobalZombiesIncrease") then {
|
||||
dayz_maxGlobalZombiesIncrease = 10;
|
||||
};
|
||||
if(isNil "dayz_maxZeds") then {
|
||||
dayz_maxZeds = 500;
|
||||
@@ -384,7 +388,9 @@ if(isNil "dayz_oldrefuel") then {
|
||||
dayz_updateObjects = ["Car", "Helicopter", "Motorcycle", "Ship", "TentStorage", "VaultStorage","M240Nest_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ"];
|
||||
dayz_disallowedVault = ["TentStorage", "BuiltItems"];
|
||||
dayz_reveal = ["AllVehicles","WeaponHolder","TentStorage","VaultStorage","VaultStorageLocked","BuiltItems"];
|
||||
dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ"];
|
||||
dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ","LightPole_DZ","FuelPump_DZ"];
|
||||
|
||||
dayz_fuelpumparray = ["FuelPump_DZ","Land_A_FuelStation_Feed","Land_Ind_FuelStation_Feed_EP1","Land_FuelStation_Feed_PMC","FuelStation","Land_ibr_FuelStation_Feed","Land_fuelstation_army","Land_fuelstation","land_fuelstation_w"];
|
||||
|
||||
dayz_spawnPos = getPosATL player;
|
||||
|
||||
|
||||
@@ -137,7 +137,7 @@ class RscDisplayMain : RscStandardDisplay
|
||||
class DAYZ_Version : CA_Version
|
||||
{
|
||||
idc = -1;
|
||||
text = "DayZ Epoch 1.0.0.6 dev (1.7.6.1)";
|
||||
text = "DayZ Epoch 1.0.0.7 dev (1.7.6.1)";
|
||||
y = "(SafeZoneH + SafeZoneY) - (1 - 0.95)";
|
||||
};
|
||||
delete CA_TitleMainMenu;
|
||||
|
||||
@@ -537,9 +537,9 @@
|
||||
<Czech>Pro vytvoření ohniště je nutné mít v inventáři dřevo.</Czech>
|
||||
</Key>
|
||||
<Key ID="str_player_23">
|
||||
<Original>You must be in a forest and close to a tree to harvest wood.</Original>
|
||||
<English>You must be in a forest and close to a tree to harvest wood.</English>
|
||||
<German>Sie müssen in einem Wald in der Nähe eines Baums sein, um Holz zu sammeln.</German>
|
||||
<Original>You must be close to a tree to harvest wood.</Original>
|
||||
<English>You must be close to a tree to harvest wood.</English>
|
||||
<German>Sie müssen Nähe eines Baums sein, um Holz zu sammeln.</German>
|
||||
<Russian>Вы должны находится в лесу и подойти к дереву, чтобы нарубить дров.</Russian>
|
||||
<Spanish>Debes estar en el bosque y cerca de un árbol para recoger leña.</Spanish>
|
||||
<Dutch>Je moet in een bos en in de buurt van een boom zijn om hout te hakken.</Dutch>
|
||||
|
||||
@@ -34,9 +34,9 @@ item29[] = {"Load_In",2,250,-75.000000,850.000000,25.000000,900.000000,0.000000,
|
||||
item30[] = {"Bad_Version",4,218,50.000000,650.000000,150.000000,700.000000,0.000000,"Bad" \n "Version"};
|
||||
item31[] = {"ERROR__Bad_Versi",2,250,175.000000,650.000000,275.000000,700.000000,0.000000,"ERROR:" \n "Bad Version"};
|
||||
item32[] = {"Display_Ready",4,218,-175.000000,900.000000,-75.000000,950.000000,0.000000,"Display" \n "Ready"};
|
||||
item33[] = {"Preload_Display",2,4346,-75.000000,950.000000,25.000000,1000.000000,0.000000,"Preload" \n "Display"};
|
||||
item33[] = {"Preload_Display",2,250,-75.000000,950.000000,25.000000,1000.000000,0.000000,"Preload" \n "Display"};
|
||||
item34[] = {"Preload_Done",4,218,-175.000000,1000.000000,-75.000000,1050.000000,0.000000,"Preload" \n "Done"};
|
||||
item35[] = {"Initialize",2,250,-75.000000,1050.000000,25.000000,1100.000000,0.000000,"Initialize"};
|
||||
item35[] = {"Initialize",2,4346,-75.000000,1050.000000,25.000000,1100.000000,0.000000,"Initialize"};
|
||||
item36[] = {"Finish",1,250,-75.000000,1150.000000,25.000000,1200.000000,0.000000,"Finish"};
|
||||
item37[] = {"True",8,218,25.000000,1100.000000,125.000000,1150.000000,0.000000,"True"};
|
||||
item38[] = {"Too_Long",4,218,300.000000,150.000000,400.000000,200.000000,0.000000,"Too" \n "Long"};
|
||||
@@ -119,8 +119,8 @@ link59[] = {51,52};
|
||||
link60[] = {52,29};
|
||||
link61[] = {53,54};
|
||||
link62[] = {54,20};
|
||||
globals[] = {25.000000,1,0,0,0,640,480,1,85,6316128,1,-390.091248,277.974548,1239.554443,681.356201,754,630,1};
|
||||
window[] = {2,-1,-1,-1,-1,786,26,997,26,3,772};
|
||||
globals[] = {25.000000,1,0,0,0,640,480,1,85,6316128,1,-390.091248,277.974548,1208.543457,428.837982,567,630,1};
|
||||
window[] = {2,-1,-1,-1,-1,760,22,993,0,3,585};
|
||||
*//*%FSM</HEAD>*/
|
||||
class FSM
|
||||
{
|
||||
@@ -1130,6 +1130,13 @@ class FSM
|
||||
" sleep 60;" \n
|
||||
" };" \n
|
||||
"};" \n
|
||||
"" \n
|
||||
"dayz_backpackcheck = [] spawn {" \n
|
||||
" while {true} do {" \n
|
||||
" call player_dumpBackpack;" \n
|
||||
" sleep 1;" \n
|
||||
" };" \n
|
||||
"};" \n
|
||||
"//Removed for now" \n
|
||||
"//[] execVM ""\z\addons\dayz_code\system\antihack.sqf"";" \n
|
||||
"" \n
|
||||
|
||||
@@ -1329,6 +1329,17 @@ class CfgMagazines
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemLightBulb: CA_Magazine
|
||||
{
|
||||
scope = 2;
|
||||
count = 1;
|
||||
type = 256;
|
||||
displayName = "Light Bulb";
|
||||
// TODO model + texture
|
||||
model = "\dayz_equip\models\fad.p3d";
|
||||
picture = "\dayz_equip\textures\equip_fad_ca.paa";
|
||||
descriptionShort = "Light Bulb";
|
||||
};
|
||||
class PartFueltank: CA_Magazine
|
||||
{
|
||||
scope = 2;
|
||||
@@ -2236,6 +2247,46 @@ class CfgMagazines
|
||||
};
|
||||
};
|
||||
};
|
||||
class fuel_pump_kit: CA_Magazine
|
||||
{
|
||||
scope = 2;
|
||||
count = 1;
|
||||
type = 256;
|
||||
displayName = "Fuel Pump";
|
||||
descriptionShort = "Fuel Pump";
|
||||
model = "\dayz_equip\models\supply_crate.p3d";
|
||||
picture = "\dayz_equip\textures\equip_wooden_crate_ca.paa";
|
||||
class ItemActions
|
||||
{
|
||||
class Build
|
||||
{
|
||||
text = "$STR_ACTIONS_BUILD";
|
||||
script = "spawn player_build;";
|
||||
require[] = {"ItemEtool","ItemToolbox"};
|
||||
create = "FuelPump_DZ";
|
||||
};
|
||||
};
|
||||
};
|
||||
class light_pole_kit: CA_Magazine
|
||||
{
|
||||
scope = 2;
|
||||
count = 1;
|
||||
type = 256;
|
||||
displayName = "Light Pole";
|
||||
descriptionShort = "Light Pole";
|
||||
model = "\dayz_equip\models\supply_crate.p3d";
|
||||
picture = "\dayz_equip\textures\equip_wooden_crate_ca.paa";
|
||||
class ItemActions
|
||||
{
|
||||
class Build
|
||||
{
|
||||
text = "$STR_ACTIONS_BUILD";
|
||||
script = "spawn player_build;";
|
||||
require[] = {"ItemEtool","ItemToolbox"};
|
||||
create = "LightPole_DZ";
|
||||
};
|
||||
};
|
||||
};
|
||||
class stick_fence_kit: CA_Magazine
|
||||
{
|
||||
scope = 2;
|
||||
@@ -2660,7 +2711,7 @@ class CfgVehicles
|
||||
displayName = "Fuel Pump";
|
||||
vehicleClass = "Fortifications";
|
||||
constructioncount = 5;
|
||||
// removeoutput[] = {{"ItemFuelPump",1}};
|
||||
removeoutput[] = {{"ItemFuelPump",1}};
|
||||
};
|
||||
|
||||
class Fort_RazorWire : BuiltItems {
|
||||
@@ -2736,6 +2787,8 @@ class CfgVehicles
|
||||
class USMC_WarfareBMGNest_M240;
|
||||
class M240Nest_DZ: USMC_WarfareBMGNest_M240
|
||||
{
|
||||
destrType = "DestructBuilding";
|
||||
armor = 450;
|
||||
scope = 2;
|
||||
offset[] = {0,3.5,0};
|
||||
displayName = "M240 Nest";
|
||||
@@ -2750,6 +2803,7 @@ class CfgVehicles
|
||||
class Land_covering_hut_EP1;
|
||||
class CanvasHut_DZ: Land_covering_hut_EP1
|
||||
{
|
||||
armor = 200;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,1};
|
||||
displayName = "Canvas Hut";
|
||||
@@ -2762,10 +2816,12 @@ class CfgVehicles
|
||||
offset[] = {0,1.5,0.5};
|
||||
displayName = "Wood Bench";
|
||||
vehicleClass = "Fortifications";
|
||||
removeoutput[] = {{"park_bench_kit",1}};
|
||||
};
|
||||
class Land_Wall_Gate_Ind1_L;
|
||||
class MetalGate_DZ: Land_Wall_Gate_Ind1_L
|
||||
{
|
||||
armor = 400;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,1};
|
||||
displayName = "Rusty Gate";
|
||||
@@ -2775,6 +2831,7 @@ class CfgVehicles
|
||||
class Land_KBud;
|
||||
class OutHouse_DZ: Land_KBud
|
||||
{
|
||||
armor = 200;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,1};
|
||||
displayName = "Outhouse";
|
||||
@@ -2795,6 +2852,7 @@ class CfgVehicles
|
||||
class Land_Shed_M01;
|
||||
class StorageShed_DZ: Land_Shed_M01
|
||||
{
|
||||
armor = 400;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,1};
|
||||
displayName = "Storage Shed";
|
||||
@@ -2807,6 +2865,7 @@ class CfgVehicles
|
||||
class Fence_corrugated_plate;
|
||||
class Fence_corrugated_DZ: Fence_corrugated_plate
|
||||
{
|
||||
armor = 300;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,1};
|
||||
removeoutput[] = {{"ItemCorrugated",1}};
|
||||
@@ -2818,10 +2877,9 @@ class CfgVehicles
|
||||
class WoodShack_DZ: Land_kulna
|
||||
{
|
||||
scope = 2;
|
||||
//destrType = "DestructBuilding";
|
||||
//cost = 100;
|
||||
destrType = "DestructBuilding";
|
||||
offset[] = {0,2.5,1.3};
|
||||
//armor = 200;
|
||||
armor = 200;
|
||||
displayName = "Wooden Shack";
|
||||
vehicleClass = "Fortifications";
|
||||
transportMaxMagazines = 100;
|
||||
@@ -2833,10 +2891,10 @@ class CfgVehicles
|
||||
class Wooden_shed_DZ: Land_Shed_wooden
|
||||
{
|
||||
scope = 2;
|
||||
//destrType = "DestructBuilding";
|
||||
destrType = "DestructBuilding";
|
||||
//cost = 100;
|
||||
offset[] = {0,2.5,1};
|
||||
//armor = 100;
|
||||
armor = 400;
|
||||
displayName = "Wooden Shed";
|
||||
vehicleClass = "Fortifications";
|
||||
transportMaxMagazines = 200;
|
||||
@@ -2847,12 +2905,22 @@ class CfgVehicles
|
||||
class Wall_FenW2_6_EP1;
|
||||
class StickFence_DZ: Wall_FenW2_6_EP1
|
||||
{
|
||||
destrType = "DestructTree";
|
||||
armor = 200;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,0};
|
||||
displayName = "Stick Fence";
|
||||
vehicleClass = "Fortifications";
|
||||
};
|
||||
|
||||
class ASC_EU_LHVOld;
|
||||
class LightPole_DZ: ASC_EU_LHVOld
|
||||
{
|
||||
armor = 200;
|
||||
scope = 2;
|
||||
offset[] = {0,2.5,0};
|
||||
displayName = "Light Pole";
|
||||
vehicleClass = "Fortifications";
|
||||
};
|
||||
class WoodGate_DZ: BuiltItems
|
||||
{
|
||||
scope = 2;
|
||||
@@ -2987,7 +3055,7 @@ class CfgVehicles
|
||||
model = "\dayz_equip\models\crowbar.p3d";
|
||||
class eventHandlers
|
||||
{
|
||||
init = "[(_this select 0),'cfgWeapons','MeleeCrowbar'] execVM '\z\addons\dayz_code\init\object_pickupAction.sqf';";
|
||||
init = "[(_this select 0),'cfgWeapons','ItemCrowbar'] execVM '\z\addons\dayz_code\init\object_pickupAction.sqf';";
|
||||
};
|
||||
};
|
||||
class WeaponHolder_huntingrifle: WeaponHolderBase
|
||||
|
||||
@@ -22,7 +22,7 @@ _object setVariable ["lastUpdate",time];
|
||||
_object setVariable ["ObjectUID", _uid,true];
|
||||
// _object setVariable ["characterID",_charID,true];
|
||||
|
||||
_object addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
|
||||
_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
|
||||
// Test disabling simulation server side on buildables only.
|
||||
_object enableSimulation false;
|
||||
|
||||
|
||||
@@ -49,6 +49,22 @@ vehicle_handleServerKilled = {
|
||||
_unit removeAllEventHandlers "GetOut";
|
||||
};
|
||||
|
||||
object_handleServerKilled = {
|
||||
private["_unit","_objectID","_objectUID"];
|
||||
_unit = _this select 0;
|
||||
|
||||
_objectID = _unit getVariable ["ObjectID","0"];
|
||||
_objectUID = _unit getVariable ["ObjectUID","0"];
|
||||
|
||||
[_objectID,_objectUID] call server_deleteObj;
|
||||
|
||||
_unit removeAllMPEventHandlers "MPKilled";
|
||||
_unit removeAllEventHandlers "Killed";
|
||||
_unit removeAllEventHandlers "HandleDamage";
|
||||
_unit removeAllEventHandlers "GetIn";
|
||||
_unit removeAllEventHandlers "GetOut";
|
||||
};
|
||||
|
||||
check_publishobject = {
|
||||
private["_allowed","_object","_playername","_allowedObjects"];
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@ serverVehicleCounter = [];
|
||||
clearMagazineCargoGlobal _object;
|
||||
|
||||
if ((typeOf _object) in dayz_allowedObjects) then {
|
||||
_object addMPEventHandler ["MPKilled",{_this call vehicle_handleServerKilled;}];
|
||||
_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
|
||||
// Test disabling simulation server side on buildables only.
|
||||
_object enableSimulation false;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user