diff --git a/SQF/dayz_code/Configs/CfgMagazines.hpp b/SQF/dayz_code/Configs/CfgMagazines.hpp
index ac97781d9..f1540bf08 100644
--- a/SQF/dayz_code/Configs/CfgMagazines.hpp
+++ b/SQF/dayz_code/Configs/CfgMagazines.hpp
@@ -787,6 +787,17 @@ class CfgMagazines {
model = "\dayz_equip\models\fueltank.p3d";
picture = "\dayz_equip\textures\equip_fueltank_ca.paa";
descriptionShort = "$STR_EQUIP_DESC_8";
+ class ItemActions {
+ class Crafting
+ {
+ text = "Salvage Scrap";
+ script = "spawn player_craftItem;";
+ neednearby[] = {"workshop"};
+ requiretools[] = {"ItemToolbox","ItemCrowbar"};
+ output[] = {{"PartGeneric",1}};
+ input[] = {{"PartFueltank",1}};
+ };
+ };
};
class PartWheel: CA_Magazine
{
@@ -1722,6 +1733,37 @@ class CfgMagazines {
picture = "\z\addons\dayz_epoch\pictures\equip_wooden_crate_ca.paa";
descriptionShort = "Wood stairs";
class ItemActions
+ {
+ class Build
+ {
+ text = "$STR_ACTIONS_BUILD";
+ script = "spawn player_build;";
+ require[] = {"ItemToolbox"};
+ create = "WoodStairsSans_DZ";
+ };
+ class Crafting
+ {
+ text = "Craft Stair Supports";
+ script = "spawn player_craftItem;";
+ neednearby[] = {"workshop"};
+ requiretools[] = {"ItemToolbox"};
+ output[] = {{"ItemWoodStairsSupports",1}};
+ input[] = {{"ItemWoodStairs",1},{"PartWoodLumber",2}};
+
+ };
+ };
+ };
+
+ class ItemWoodStairsSupport: CA_Magazine
+ {
+ scope = 2;
+ count = 1;
+ type = 256;
+ displayName = "Wood Stairs w/ supports";
+ model = "\z\addons\dayz_epoch\models\supply_crate.p3d";
+ picture = "\z\addons\dayz_epoch\pictures\equip_wooden_crate_ca.paa";
+ descriptionShort = "Wood stairs with supports";
+ class ItemActions
{
class Build
{
@@ -2155,6 +2197,17 @@ class CfgMagazines {
model = "\dayz_equip\models\engine.p3d";
picture = "\dayz_equip\textures\equip_engine_ca.paa";
descriptionShort = "$STR_EQUIP_DESC_11";
+ class ItemActions {
+ class Crafting
+ {
+ text = "Salvage Scrap";
+ script = "spawn player_craftItem;";
+ neednearby[] = {"workshop"};
+ requiretools[] = {"ItemToolbox","ItemCrowbar"};
+ output[] = {{"PartGeneric",2}};
+ input[] = {{"PartEngine",1}};
+ };
+ };
};
class PartWoodPile: CA_Magazine
{
@@ -2255,6 +2308,17 @@ class CfgMagazines {
input[] = {{"bulk_empty",1},{"PartWoodLumber",8}};
};
+ class Crafting4
+ {
+ text = "Craft Wood Ladder";
+ script = "spawn player_craftItem4;";
+ neednearby[] = {"workshop"};
+ requiretools[] = {"ItemToolbox"};
+ output[] = {{"ItemWoodLadder",1}};
+ input[] = {{"bulk_empty",1},{"PartWoodLumber",8}};
+
+ };
+
};
};
class PartWoodPlywood: CA_Magazine
@@ -3434,8 +3498,8 @@ class CfgMagazines {
scope = public;
count = 1;
bloodRegen = 100;
- displayName = "Pumkin";
- descriptionShort = "Pumkin";
+ displayName = "Pumpkin";
+ descriptionShort = "Pumpkin";
model = "z\addons\dayz_communityassets\models\pistachio.p3d"; // TODO: model + icon
picture = "\z\addons\dayz_communityassets\pictures\equip_pistachios_CA.paa";
};
diff --git a/SQF/dayz_code/Configs/CfgVehicles/DZE/Doors.hpp b/SQF/dayz_code/Configs/CfgVehicles/DZE/Doors.hpp
index 261db2ae3..358f60483 100644
--- a/SQF/dayz_code/Configs/CfgVehicles/DZE/Doors.hpp
+++ b/SQF/dayz_code/Configs/CfgVehicles/DZE/Doors.hpp
@@ -122,6 +122,8 @@ class Land_DZE_WoodDoorLocked_Base: DZE_Housebase {
lifeTime = 1;
};
};
+ maintainBuilding[] = {{"PartWoodPlywood",1},{"PartWoodLumber",1}};
+ lockable = 3;
};
/* Same name as stated in the Class DestructionEffects, but an "Land_" added infront*/
@@ -204,16 +206,23 @@ class Land_DZE_WoodDoorLocked: Land_DZE_WoodDoorLocked_Base {
{
displayName="Lock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
statement="this animate [""Open_hinge"", 0]";
};
class Unlock_Door : Open_Door
{
displayName="Unlock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
statement="this animate [""Open_hinge"", 1]";
};
+ class Unlock_Door_Dialog : Open_Door
+ {
+ displayName="Unlock Door";
+ //condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="DZE_Lock_Door != (this getvariable['CharacterID','0'])";
+ statement="dayz_selectedDoor = this;DZE_topCombo = 0;DZE_midCombo = 0;DZE_botCombo = 0;createdialog ""ComboLockUI""";
+ };
class Close_Door : Open_Door
{
displayName="Close Door";
@@ -296,16 +305,23 @@ class Land_DZE_LargeWoodDoorLocked: Land_DZE_WoodDoorLocked_Base {
{
displayName="Lock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
statement="this animate [""Open_hinge"", 0]";
};
class Unlock_Door : Open_Door
{
displayName="Unlock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
statement="this animate [""Open_hinge"", 1]";
};
+ class Unlock_Door_Dialog : Open_Door
+ {
+ displayName="Unlock Door";
+ //condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="DZE_Lock_Door != (this getvariable['CharacterID','0'])";
+ statement="dayz_selectedDoor = this;DZE_topCombo = 0;DZE_midCombo = 0;DZE_botCombo = 0;createdialog ""ComboLockUI""";
+ };
class Close_Door : Open_Door
{
displayName="Close Door";
@@ -388,16 +404,23 @@ class Land_DZE_GarageWoodDoorLocked: Land_DZE_WoodDoorLocked_Base {
{
displayName="Lock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 1)";
statement="this animate [""Open_hinge"", 0]";
};
class Unlock_Door : Open_Door
{
displayName="Unlock Door";
//condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
- condition="(DZE_Lock_Door == (this getvariable['characterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="(DZE_Lock_Door == (this getvariable['CharacterID','0'])) and (this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
statement="this animate [""Open_hinge"", 1]";
};
+ class Unlock_Door_Dialog : Open_Door
+ {
+ displayName="Unlock Door";
+ //condition="(this animationPhase ""Open_door"" == 0) and (this animationPhase ""Open_hinge"" == 0)";
+ condition="DZE_Lock_Door != (this getvariable['CharacterID','0'])";
+ statement="dayz_selectedDoor = this;DZE_topCombo = 0;DZE_midCombo = 0;DZE_botCombo = 0;createdialog ""ComboLockUI""";
+ };
class Close_Door : Open_Door
{
displayName="Close Door";
diff --git a/SQF/dayz_code/Configs/CfgWeapons/Item/Flashlight.hpp b/SQF/dayz_code/Configs/CfgWeapons/Item/Flashlight.hpp
index d13ab3a01..a816f7eba 100644
--- a/SQF/dayz_code/Configs/CfgWeapons/Item/Flashlight.hpp
+++ b/SQF/dayz_code/Configs/CfgWeapons/Item/Flashlight.hpp
@@ -1,7 +1,7 @@
class MeleeFlashlight : Pistol {
class ItemActions {
class Toolbelt {
- text = $STR_ACTIONS_2TB;
+ text = "Add to toolbelt";
};
};
};
@@ -9,7 +9,7 @@ class MeleeFlashlight : Pistol {
class ItemFlashlight : ItemCore {
class ItemActions {
class Toolbelt {
- text = $STR_ACTIONS_RFROMTB;
+ text = "Remove from toolbelt";
};
};
};
@@ -17,7 +17,7 @@ class MeleeFlashlight : Pistol {
class MeleeFlashlightRed : MeleeFlashlight {
class ItemActions {
class Toolbelt {
- text = $STR_ACTIONS_2TB;
+ text = "Add to toolbelt";
};
};
};
@@ -25,7 +25,7 @@ class MeleeFlashlight : Pistol {
class ItemFlashlightRed : ItemCore {
class ItemActions {
class Toolbelt {
- text = $STR_ACTIONS_RFROMTB;
+ text = "Remove from toolbelt";
};
};
};
\ No newline at end of file
diff --git a/SQF/dayz_code/Configs/CfgWeapons/Melee/ItemCrowbar.hpp b/SQF/dayz_code/Configs/CfgWeapons/Melee/ItemCrowbar.hpp
index ee3a290f0..4c07ea566 100644
--- a/SQF/dayz_code/Configs/CfgWeapons/Melee/ItemCrowbar.hpp
+++ b/SQF/dayz_code/Configs/CfgWeapons/Melee/ItemCrowbar.hpp
@@ -9,7 +9,7 @@ class ItemCrowbar: ItemCore
{
class Toolbelt
{
- text=$STR_ACTIONS_RFROMTB;
+ text = "Remove from toolbelt";
script="spawn player_addToolbelt;";
use[]=
{
diff --git a/SQF/dayz_code/Configs/cfgLoot.hpp b/SQF/dayz_code/Configs/cfgLoot.hpp
index 2dcf0f849..34fccf6a6 100644
--- a/SQF/dayz_code/Configs/cfgLoot.hpp
+++ b/SQF/dayz_code/Configs/cfgLoot.hpp
@@ -55,6 +55,48 @@ class CfgLoot {
0.01
}
};
+ office2[] = {
+ {
+ "FoodCanUnlabeled",
+ "TrashJackDaniels",
+ "ItemSodaEmpty",
+ "ItemSodaCoke",
+ "ItemSodaPepsi",
+ "FoodCanBakedBeans",
+ "FoodCanSardines",
+ "FoodCanFrankBeans",
+ "FoodCanPasta",
+ "8Rnd_9x18_Makarov",
+ "7Rnd_45ACP_1911",
+ "2Rnd_shotgun_74Slug",
+ "2Rnd_shotgun_74Pellets",
+ "ItemBandage",
+ "ItemPainkiller",
+ "FoodBioMeat",
+ "8Rnd_9x18_MakarovSD",
+ "ItemBriefcaseEmpty"
+ },
+ {
+ 0.07,
+ 0.09,
+ 0.09,
+ 0.09,
+ 0.09,
+ 0.05,
+ 0.05,
+ 0.05,
+ 0.05,
+ 0.07,
+ 0.05,
+ 0.05,
+ 0.05,
+ 0.06,
+ 0.06,
+ 0.01,
+ 0.01,
+ 0.01
+ }
+ };
food[] = {
{
//trash
@@ -89,6 +131,68 @@ class CfgLoot {
0.04
}
};
+ office[] = {
+ {
+ "FoodCanUnlabeled",
+ "ItemSodaEmpty",
+ "ItemSodaCoke",
+ "ItemSodaPepsi",
+ "TrashJackDaniels",
+ "FoodCanBakedBeans",
+ "FoodCanSardines",
+ "FoodCanFrankBeans",
+ "FoodCanPasta",
+ "ItemWaterbottleUnfilled",
+ "ItemWaterbottle",
+ "ItemBandage",
+ "7Rnd_45ACP_1911",
+ "5x_22_LR_17_HMR",
+ "10x_303",
+ "6Rnd_45ACP",
+ "2Rnd_shotgun_74Slug",
+ "2Rnd_shotgun_74Pellets",
+ "8Rnd_9x18_Makarov",
+ "15Rnd_W1866_Slug",
+ "WoodenArrow",
+ "HandRoadFlare",
+ "ItemPainkiller",
+ "HandChemGreen",
+ "HandChemBlue",
+ "HandChemRed",
+ "ItemHeatPack",
+ "ItemLockbox"
+ },
+ {
+ 0.06,
+ 0.06,
+ 0.06,
+ 0.04,
+ 0.04,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.11,
+ 0.03,
+ 0.01,
+ 0.04,
+ 0.04,
+ 0.05,
+ 0.05,
+ 0.09,
+ 0.02,
+ 0.04,
+ 0.07,
+ 0.02,
+ 0.01,
+ 0.03,
+ 0.03,
+ 0.03,
+ 0.01
+ }
+ };
generic[] = {
{
"FoodCanUnlabeled",
@@ -331,12 +435,13 @@ class CfgLoot {
"ItemPainkiller",
"ItemWire",
"ItemTankTrap",
+ "ItemComboLock",
},
{
0.14,
0.12,
0.09,
- 0.12,
+ 0.11,
0.09,
0.06,
0.06,
@@ -345,6 +450,7 @@ class CfgLoot {
0.12,
0.06,
0.01,
+ 0.01,
0.01
}
};
diff --git a/SQF/dayz_code/Configs/cfgVehicles.hpp b/SQF/dayz_code/Configs/cfgVehicles.hpp
index 8ddb8ab18..c98a12980 100644
--- a/SQF/dayz_code/Configs/cfgVehicles.hpp
+++ b/SQF/dayz_code/Configs/cfgVehicles.hpp
@@ -1645,7 +1645,7 @@ class CfgVehicles {
destrType = "DestructTree";
cost = 100;
offset[] = {0,1.5,0};
- model="\z\addons\dayz_epoch\models\largel_wall_doorA.p3d";
+ model="\z\addons\dayz_epoch\models\large_wall_door.p3d";
icon = "\ca\data\data\Unknown_object.paa";
mapSize = 2;
armor = 200;
@@ -1728,7 +1728,7 @@ class CfgVehicles {
destrType = "DestructTree";
cost = 100;
offset[] = {0,1.5,0};
- model="\z\addons\dayz_epoch\models\small_wall_doorA.p3d";
+ model="\z\addons\dayz_epoch\models\small_wall_door.p3d";
icon = "\ca\data\data\Unknown_object.paa";
mapSize = 2;
armor = 200;
@@ -1786,6 +1786,7 @@ class CfgVehicles {
displayName = "Wood Stairs Sans";
vehicleClass = "Fortifications";
maintainBuilding[] = {{"PartWoodLumber",1}};
+ upgradeBuilding[] = {"WoodStairs_DZ",{{"PartWoodLumber",2}}};
constructioncount = 1;
GhostPreview = "WoodStairsSans_Preview_DZ";
};
@@ -1875,7 +1876,7 @@ class CfgVehicles {
destrType = "DestructNo";
cost = 100;
offset[] = {0,1.5,0};
- model="\z\addons\dayz_epoch\models\small_wall_doorA_ghost.p3d";
+ model="\z\addons\dayz_epoch\models\small_wall_door_ghost.p3d";
icon = "\ca\data\data\Unknown_object.paa";
mapSize = 2;
armor = 1000;
@@ -1901,7 +1902,7 @@ class CfgVehicles {
destrType = "DestructNo";
cost = 100;
offset[] = {0,1.5,0};
- model="\z\addons\dayz_epoch\models\large_wall_doorA_ghost.p3d";
+ model="\z\addons\dayz_epoch\models\large_wall_door_ghost.p3d";
icon = "\ca\data\data\Unknown_object.paa";
mapSize = 2;
armor = 1000;
@@ -2402,7 +2403,7 @@ class CfgVehicles {
transportMaxWeapons = 0;
transportMaxBackpacks = 0;
offset[] = {0,1.5,0.5};
- lockable = 1;
+ lockable = 4;
unlockedClass = "VaultStorage";
};
@@ -2417,7 +2418,7 @@ class CfgVehicles {
transportMaxWeapons = 0;
transportMaxBackpacks = 0;
offset[] = {0,1.5,0.5};
- lockable = 1;
+ lockable = 3;
unlockedClass = "LockboxStorage";
};
diff --git a/SQF/dayz_code/Configs/rscTitles.hpp b/SQF/dayz_code/Configs/rscTitles.hpp
index dff4ffe06..68419f084 100644
--- a/SQF/dayz_code/Configs/rscTitles.hpp
+++ b/SQF/dayz_code/Configs/rscTitles.hpp
@@ -149,7 +149,7 @@ class RscDisplayMain : RscStandardDisplay
class DAYZ_Version : CA_Version
{
idc = -1;
- text = "DayZ Epoch 1.0.1.8";
+ text = "DayZ Epoch 1.0.1.94";
y = "(SafeZoneH + SafeZoneY) - (1 - 0.95)";
};
delete CA_TitleMainMenu;
diff --git a/SQF/dayz_code/Configs/safegui.hpp b/SQF/dayz_code/Configs/safegui.hpp
index b5fa30c51..272b5d966 100644
--- a/SQF/dayz_code/Configs/safegui.hpp
+++ b/SQF/dayz_code/Configs/safegui.hpp
@@ -302,8 +302,355 @@ class SafeKeyPad
colorText[] = {0,1,0,1};
colorBackground[] = {0,0,0,0};
colorBackgroundActive[] = {0,0,0,0};
- onButtonClick = "((ctrlParent (_this select 0)) closeDisplay 3000); if(!isNull dayz_selectedVault and (typeOf dayz_selectedVault) == ""VaultStorageLocked"") then {dayz_selectedVault spawn player_unlockVault;};";
+ onButtonClick = "((ctrlParent (_this select 0)) closeDisplay 3000); if(!isNull dayz_selectedVault and (typeOf dayz_selectedVault) in DZE_LockedStorage) then {dayz_selectedVault spawn player_unlockVault;};";
soundClick[] = {"\dayz_sfx\action\cell\dtmf_hash.ogg",0.6,1};
};
};
-};
\ No newline at end of file
+};
+
+// SafeKeyPadTest
+class ComboLockUI
+{
+ idd = 41144;
+ movingenable = 0;
+
+ class Controls
+ {
+ class ComboLockUIPic: RscPicture
+ {
+ idc = -1;
+ text = "\z\addons\dayz_epoch\ui\combo_gui.paa";
+ x = 0;
+ y = 0;
+ w = 1;
+ h = 1;
+ };
+ class top_combo: RscPicture
+ {
+ idc = 17734;
+ text = "\z\addons\dayz_epoch\ui\top_0.paa";
+ x = 0.418883;
+ y = 0.234042;
+ w = 0.388564;
+ h = 0.161072;
+ };
+ class middle_combo: RscPicture
+ {
+ idc = 17735;
+ text = "\z\addons\dayz_epoch\ui\mid_0.paa";
+ x = 0.420213;
+ y = 0.431049;
+ w = 0.387234;
+ h = 0.161072;
+ };
+ class bottom_combo: RscPicture
+ {
+ idc = 17736;
+ text = "\z\addons\dayz_epoch\ui\bot_0.paa";
+ x = 0.420212;
+ y = 0.616233;
+ w = 0.387234;
+ h = 0.180772;
+ };
+ class unlock_combo: RscPicture
+ {
+ idc = 17737;
+ text = "\z\addons\dayz_epoch\ui\unlock_a.paa";
+ x = 0.219415;
+ y = 0.762017;
+ w = 0.199734;
+ h = 0.208353;
+ };
+ class exit_combo: RscPicture
+ {
+ idc = 17738;
+ text = "\z\addons\dayz_epoch\ui\exit_a.paa";
+ x = 0.863032;
+ y = 0.0252169;
+ w = 0.0946809;
+ h = 0.0724192;
+ };
+
+ class main_combo: RscButton
+ {
+ idc = -1;
+ text = "";
+ style = "0x02 + 0x100";
+ colorText[] = {1,1,1,0};
+ colorDisabled[] = {1,1,1,0};
+ colorBackground[] = {1,1,1,0};
+ colorBackgroundDisabled[] = {1,1,1,0};
+ colorBackgroundActive[] = {1,1,1,0};
+ colorShadow[] = {1,1,1,0};
+ colorFocused[] = {1,1,1,0};
+ soundClick[] = {"",0.6,1};
+ };
+
+ class top_left: main_combo
+ {
+ idc = -1;
+ x = 0.43484;
+ y = 0.243893;
+ w = 0.1625;
+ h = 0.135461;
+ onButtonClick = "[17734,0,""top""] call player_changeCombo";
+ };
+ class top_right: main_combo
+ {
+ idc = -1;
+ x = 0.660904;
+ y = 0.241923;
+ w = 0.147872;
+ h = 0.135461;
+ onButtonClick = "[17734,1,""top""] call player_changeCombo";
+ };
+ class mid_left: main_combo
+ {
+ idc = -1;
+ x = 0.43484;
+ y = 0.433018;
+ w = 0.1625;
+ h = 0.135461;
+ onButtonClick = "[17735,0,""mid""] call player_changeCombo";
+ };
+ class mid_right: main_combo
+ {
+ idc = -1;
+ x = 0.659574;
+ y = 0.427108;
+ w = 0.153191;
+ h = 0.135461;
+ onButtonClick = "[17735,1,""mid""] call player_changeCombo";
+ };
+ class bottom_left: main_combo
+ {
+ idc = -1;
+ x = 0.4375;
+ y = 0.637904;
+ w = 0.1625;
+ h = 0.135461;
+ onButtonClick = "[17736,0,""bot""] call player_changeCombo";
+ };
+ class bottom_right: main_combo
+ {
+ idc = -1;
+ x = 0.658245;
+ y = 0.633964;
+ w = 0.155851;
+ h = 0.133491;
+ onButtonClick = "[17736,1,""bot""] call player_changeCombo";
+ };
+ class exit_combo_btn: main_combo
+ {
+ idc = -1;
+ x = 0.827128;
+ y = 0.0153665;
+ w = 0.158511;
+ h = 0.153191;
+ onButtonClick = "((ctrlParent (_this select 0)) closeDisplay 3000);";
+ };
+ class unlock_combo_btn: main_combo
+ {
+ idc = -1;
+ x = 0.218085;
+ y = 0.762017;
+ w = 0.201064;
+ h = 0.233964;
+ onButtonClick = "call player_unlockDoor";
+ };
+ };
+};
+
+
+class KeypadUI
+{
+ idd = -1;
+ movingenable = 0;
+
+ class Controls
+ {
+ class KeypadUIPic: RscPicture
+ {
+ idc = -1;
+ text = "\z\addons\dayz_epoch\ui\lockbox_gui.paa";
+ x = 0.0492023;
+ y = 0.00788009;
+ w = 0.902925;
+ h = 0.98818;
+ };
+ class main_button: RscButton
+ {
+ idc = -1;
+ text = "";
+ style = "0x02 + 0x100";
+ colorText[] = {1,1,1,0};
+ colorDisabled[] = {1,1,1,0};
+ colorBackground[] = {1,1,1,0};
+ colorBackgroundDisabled[] = {1,1,1,0};
+ colorBackgroundActive[] = {1,1,1,0.1};
+ colorShadow[] = {1,1,1,0};
+ colorFocused[] = {1,1,1,0.1};
+ soundClick[] = {"",0.6,1};
+ };
+ class red_button: main_button
+ {
+ idc = -1;
+ x = 0.171543;
+ y = 0.115839;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(100);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class green_button: main_button
+ {
+ idc = -1;
+ x = 0.343085;
+ y = 0.115839;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(101);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class blue_button: main_button
+ {
+ idc = -1;
+ x = 0.514628;
+ y = 0.115839;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(102);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_1: main_button
+ {
+ idc = -1;
+ x = 0.174202;
+ y = 0.308905;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(1);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_2: main_button
+ {
+ idc = -1;
+ x = 0.344415;
+ y = 0.310875;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(2);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_3: main_button
+ {
+ idc = -1;
+ x = 0.515957;
+ y = 0.312845;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(3);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_4: main_button
+ {
+ idc = -1;
+ x = 0.178192;
+ y = 0.50788;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(4);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_5: main_button
+ {
+ idc = -1;
+ x = 0.344415;
+ y = 0.50788;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(5);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_6: main_button
+ {
+ idc = -1;
+ x = 0.517287;
+ y = 0.50985;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(6);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_7: main_button
+ {
+ idc = -1;
+ x = 0.179521;
+ y = 0.700946;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(7);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_8: main_button
+ {
+ idc = -1;
+ x = 0.344415;
+ y = 0.700946;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(8);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_9: main_button
+ {
+ idc = -1;
+ x = 0.518617;
+ y = 0.704886;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(9);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+ class keypad_0: main_button
+ {
+ idc = -1;
+ x = 0.692819;
+ y = 0.704886;
+ w = 0.126596;
+ h = 0.153191;
+ action = "dayz_combination = dayz_combination + str(0);";
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak";
+ };
+
+ class kpbcancel: main_button
+ {
+ idc = -1;
+ x = 0.68617;
+ y = 0.312845;
+ w = 0.126596;
+ h = 0.153191;
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak;((ctrlParent (_this select 0)) closeDisplay 3000);";
+ };
+ class kpbcancel2: main_button
+ {
+ idc = -1;
+ x = 0.69016;
+ y = 0.50985;
+ w = 0.126596;
+ h = 0.153191;
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak;((ctrlParent (_this select 0)) closeDisplay 3000);";
+ };
+ class kpbenter: main_button
+ {
+ idc = -1;
+ x = 0.6875;
+ y = 0.121749;
+ w = 0.126596;
+ h = 0.153191;
+ onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak;((ctrlParent (_this select 0)) closeDisplay 3000); if(!isNull dayz_selectedVault and (typeOf dayz_selectedVault) in DZE_LockedStorage) then {dayz_selectedVault spawn player_unlockVault;};";
+ };
+ };
+};
+
+
diff --git a/SQF/dayz_code/actions/list_playerDeaths.sqf b/SQF/dayz_code/actions/list_playerDeaths.sqf
index e796d9849..ed963224d 100644
--- a/SQF/dayz_code/actions/list_playerDeaths.sqf
+++ b/SQF/dayz_code/actions/list_playerDeaths.sqf
@@ -13,16 +13,10 @@ waitUntil {!isNil "dayzPlayerDeathsResult"};
//diag_log format["DEBUG Death: %1", dayzPlayerDeathsResult];
-/*
if((count dayzPlayerDeathsResult) > 0) then {
- "Recent Player Deaths:" hintC dayzPlayerDeathsResult;
+ // load death message board ui
+ call EpochDeathBoardLoad;
} else {
- "Recent Player Deaths:" hintC "No recent Deaths.";
-};
-*/
-
-// load death message board ui
-call EpochDeathBoardLoad;
-
-// Clear Data maybe consider cacheing results
-// dayzPlayerDeathsResult = nil;
\ No newline at end of file
+ cutText ["No recent Deaths.", "PLAIN DOWN"];
+ dayzPlayerDeathsResult = nil;
+};
\ No newline at end of file
diff --git a/SQF/dayz_code/actions/player_build.sqf b/SQF/dayz_code/actions/player_build.sqf
index d3cb2f8f5..6f882c6dd 100644
--- a/SQF/dayz_code/actions/player_build.sqf
+++ b/SQF/dayz_code/actions/player_build.sqf
@@ -2,7 +2,7 @@
DayZ Base Building
Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
*/
-private ["_location","_dir","_classname","_item","_hasrequireditem","_missing","_hastoolweapon","_cancel","_reason","_started","_finished","_animState","_isMedic","_dis","_sfx","_hasbuilditem","_tmpbuilt","_onLadder","_isWater","_require","_text","_offset","_IsNearPlot","_isOk","_location1","_location2","_counter","_limit","_proceed","_num_removed","_position","_object","_canBuildOnPlot","_friendlies","_nearestPole","_ownerID","_findNearestPoles","_findNearestPole","_distance","_classnametmp","_ghost","_isPole","_needText"];
+private ["_location","_dir","_classname","_item","_hasrequireditem","_missing","_hastoolweapon","_cancel","_reason","_started","_finished","_animState","_isMedic","_dis","_sfx","_hasbuilditem","_tmpbuilt","_onLadder","_isWater","_require","_text","_offset","_IsNearPlot","_isOk","_location1","_location2","_counter","_limit","_proceed","_num_removed","_position","_object","_canBuildOnPlot","_friendlies","_nearestPole","_ownerID","_findNearestPoles","_findNearestPole","_distance","_classnametmp","_ghost","_isPole","_needText","_lockable","_zheightchanged","_rotate","_combination_1","_combination_2","_combination_3","_combination_4","_combination"];
if(TradeInprogress) exitWith { cutText ["Building already in progress." , "PLAIN DOWN"]; };
TradeInprogress = true;
@@ -29,6 +29,11 @@ _require = getArray (configFile >> "cfgMagazines" >> _this >> "ItemActions" >>
_text = getText (configFile >> "CfgVehicles" >> _classname >> "displayName");
_ghost = getText (configFile >> "CfgVehicles" >> _classname >> "ghostpreview");
+_lockable = 0;
+if(isNumber (configFile >> "CfgVehicles" >> _classname >> "lockable")) then {
+ _lockable = getNumber(configFile >> "CfgVehicles" >> _classname >> "lockable");
+};
+
_offset = getArray (configFile >> "CfgVehicles" >> _classname >> "offset");
_isPole = (_classname == "Plastic_Pole_EP1_DZ");
@@ -100,32 +105,29 @@ if (_hasrequireditem) then {
_counter = 0;
_isOk = true;
+
+ // get inital players position
+ _location1 = getPosATL player;
+ _dir = getDir player;
+ _position = player modeltoworld _offset;
+ _position = [(_position select 0),(_position select 1), (_position select 2)];
+ // hintSilent str (_position);
+
+ // if ghost preview available use that instead
+ if (_ghost == "") then {
+ _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
+ } else {
+ _classname = _ghost;
+ _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
+ };
+
+ _object setDir _dir;
+ _object setPos _position;
+ _object attachTo [player];
+
+
while {_isOk} do {
-
-
- if(_counter == 0) then {
- // get inital players position
- _location1 = getPosATL player;
- _dir = getDir player;
- _position = player modeltoworld _offset;
- _position = [(_position select 0),(_position select 1), (_position select 2)];
- hintSilent str (_position);
-
- // if ghost preview available use that instead
- _ghost = getText (configFile >> "CfgVehicles" >> _classname >> "ghostpreview");
- if (_ghost == "") then {
- _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
- } else {
- _classname = _ghost;
- _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
- };
-
- _object setDir _dir;
- _object setPos _position;
- _object attachTo [player];
- };
-
_zheightchanged = false;
if (DZE_Q) then {
@@ -136,38 +138,42 @@ if (_hasrequireditem) then {
if (DZE_Z) then {
DZE_Z = false;
DZE_BuildingZ = DZE_BuildingZ - 0.1;
-
_zheightchanged = true;
};
-
- if(_zheightchanged) then {
- detach _object;
- deleteVehicle _object;
- _dir = getDir player;
+ _rotate = false;
+
+ if (DZE_4) then {
+ _rotate = true;
+ DZE_4 = false;
+ _dir = 180;
+ };
+ if (DZE_6) then {
+ _rotate = true;
+ DZE_6 = false;
+ _dir = 0;
+ };
+
+ if(_rotate) then {
_position = player modeltoworld _offset;
_position = [(_position select 0),(_position select 1), (_position select 2)+DZE_BuildingZ];
- hintSilent str (_position);
-
- // if ghost preview available use that instead
-
- if (_ghost == "") then {
- _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
- } else {
- _classname = _ghost;
- _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
- };
-
_object setDir _dir;
_object setPos _position;
+ };
+
+ if(_zheightchanged) then {
+ detach _object;
+ _position = player modeltoworld _offset;
+ _position = [(_position select 0),(_position select 1), (_position select 2)+DZE_BuildingZ];
+
+ _object setDir (getDir _object);
+ _object setPos _position;
_object attachTo [player];
};
cutText ["Planning construction numpad 8 = up, numpad 2 = down, and numpad 5 to start building.", "PLAIN DOWN"];
- _location0 = getPosATL player;
-
sleep 1;
_location2 = getPosATL player;
@@ -175,13 +181,14 @@ if (_hasrequireditem) then {
if(DZE_5) exitWith {
_isOk = false;
detach _object;
+ _dir = getDir _object;
deleteVehicle _object;
};
if(_location1 distance _location2 > 5) exitWith {
_isOk = false;
_cancel = true;
- _reason = "Moving to fast.";
+ _reason = "Moving too fast.";
detach _object;
deleteVehicle _object;
};
@@ -207,13 +214,9 @@ if (_hasrequireditem) then {
_classname = _classnametmp;
-
-
-
// Start Build
_tmpbuilt = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
- _dir = getDir player;
_tmpbuilt setdir _dir;
// Get position based on player
@@ -304,11 +307,64 @@ if (_hasrequireditem) then {
cutText [format[localize "str_build_01",_text], "PLAIN DOWN"];
- _tmpbuilt setVariable ["characterID",dayz_characterID,true];
-
- //["dayzPublishObj",[dayz_characterID,_tmpbuilt,[_dir,_location],_classname]] call callRpcProcedure;
- dayzPublishObj = [dayz_characterID,_tmpbuilt,[_dir,_location],_classname];
- publicVariableServer "dayzPublishObj";
+ _tmpbuilt setVariable ["OEMPos",_location,true];
+
+ if(_lockable > 1) then {
+
+ switch (_lockable) do {
+
+ case 2: { // 2 lockbox
+ _combination_1 = (floor(random 3)) + 100; // 100=red,101=green,102=blue
+ _combination_2 = floor(random 10);
+ _combination_3 = floor(random 10);
+ _combination = format["%1%2%3",_combination_1,_combination_2,_combination_3];
+
+ if (_combination_1 == 100) then {
+ _combination_1_Display = "Red";
+ };
+ if (_combination_1 == 101) then {
+ _combination_1_Display = "Green";
+ };
+ if (_combination_1 == 102) then {
+ _combination_1_Display = "Blue";
+ };
+ _combinationDisplay = format["%1%2%3",_combination_1_Display,_combination_2,_combination_3];
+ };
+
+ case 3: { // 3 combolock
+ _combination_1 = floor(random 10);
+ _combination_2 = floor(random 10);
+ _combination_3 = floor(random 10);
+ _combination = format["%1%2%3",_combination_1,_combination_2,_combination_3];
+ _combinationDisplay = _combination;
+ };
+
+ case 4: { // 4 safe
+ _combination_1 = floor(random 10);
+ _combination_2 = floor(random 10);
+ _combination_3 = floor(random 10);
+ _combination_4 = floor(random 10);
+ _combinationDisplay = _combination;
+ _combination = format["%1%2%3%4",_combination_1,_combination_2,_combination_3,_combination_4];
+ };
+ };
+
+ _tmpbuilt setVariable ["CharacterID",_combination,true];
+
+
+ dayzPublishObj = [_combination,_tmpbuilt,[_dir,_location],_classname];
+ publicVariableServer "dayzPublishObj";
+
+ cutText [format["You have setup your %2. Combination is %1",_combinationDisplay,_text], "PLAIN DOWN", 5];
+
+
+ } else {
+ _tmpbuilt setVariable ["CharacterID",dayz_characterID,true];
+
+ dayzPublishObj = [dayz_characterID,_tmpbuilt,[_dir,_location],_classname];
+ publicVariableServer "dayzPublishObj";
+ };
+
} else {
deleteVehicle _tmpbuilt;
diff --git a/SQF/dayz_code/actions/player_buildingMaint.sqf b/SQF/dayz_code/actions/player_buildingMaint.sqf
new file mode 100644
index 000000000..2c81f8322
--- /dev/null
+++ b/SQF/dayz_code/actions/player_buildingMaint.sqf
@@ -0,0 +1,129 @@
+/*
+ DayZ Base Building Maintenance
+ Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
+*/
+private ["_location","_dir","_classname","_missing","_text","_proceed","_num_removed","_object","_missingQty","_itemIn","_countIn","_qty","_removed","_removed_total","_tobe_removed_total","_objectID","_objectUID","_temp_removed_array","_textMissing","_requirements","_obj","_upgrade","_objectCharacterID"];
+
+if(TradeInprogress) exitWith { cutText ["Upgrade already in progress." , "PLAIN DOWN"]; };
+TradeInprogress = true;
+
+player removeAction s_player_maint_build;
+s_player_maint_build = 1;
+
+// get cursortarget from addaction
+_obj = _this select 3;
+
+// Get classname
+_classname = typeOf _obj;
+
+// Find display name
+_text = getText (configFile >> "CfgVehicles" >> _classname >> "displayName");
+
+// Find next maintain
+_upgrade = getArray (configFile >> "CfgVehicles" >> _classname >> "maintainBuilding");
+
+if ((count _upgrade) > 0) then {
+ _requirements = _upgrade;
+} else {
+ _requirements = [["PartGeneric",1]];
+};
+
+_missingQty = 0;
+_missing = "";
+
+_proceed = true;
+{
+ _itemIn = _x select 0;
+ _countIn = _x select 1;
+ _qty = { (_x == _itemIn) || (configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn) } count magazines player;
+ if(_qty < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _qty); _proceed = false; };
+} forEach _requirements;
+
+if (_proceed) then {
+
+ _temp_removed_array = [];
+ _removed_total = 0;
+ _tobe_removed_total = 0;
+
+ {
+ _removed = 0;
+ _itemIn = _x select 0;
+ _countIn = _x select 1;
+ // diag_log format["Recipe Finish: %1 %2", _itemIn,_countIn];
+ _tobe_removed_total = _tobe_removed_total + _countIn;
+
+ {
+ if( (_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then {
+ _num_removed = ([player,_x] call BIS_fnc_invRemove);
+ _removed = _removed + _num_removed;
+ _removed_total = _removed_total + _num_removed;
+ if(_num_removed >= 1) then {
+ _temp_removed_array set [count _temp_removed_array,_x];
+ };
+ };
+
+ } forEach magazines player;
+
+ } forEach _requirements;
+
+ // all parts removed proceed
+ if (_tobe_removed_total == _removed_total) then {
+
+ // Get position
+ _location = _obj getVariable["OEMPos",(getposATL _obj)];
+
+ // Get direction
+ _dir = getDir _obj;
+
+ // Find objectID
+ _objectID = _obj getVariable ["ObjectID","0"];
+
+ // Find objectUID
+ _objectUID = _obj getVariable ["ObjectUID","0"];
+
+ // Find CharacterID
+ _objectCharacterID = _obj getVariable ["CharacterID","0"];
+
+ // Create new object
+ _object = createVehicle [_classname, [0,0,0], [], 0, "CAN_COLLIDE"];
+
+ // Set direction
+ _object setDir _dir;
+
+ // Set location
+ _object setPos _location;
+
+ // Remove old object
+ deleteVehicle _obj;
+
+ // Delete object from database
+ dayzDeleteObj = [_objectID,_objectUID];
+ publicVariableServer "dayzDeleteObj";
+
+ // Publish variables
+ _object setVariable ["CharacterID",_objectCharacterID,true];
+ _object setVariable ["ObjectID",_objectID,true];
+ _object setVariable ["ObjectUID",_objectUID,true];
+ _object setVariable ["OEMPos",_location,true];
+
+ dayzPublishObj = [_objectCharacterID,_object,[_dir,_location],_classname];
+ publicVariableServer "dayzPublishObj";
+
+ cutText [format["You have repaired %1.",_text], "PLAIN DOWN", 5];
+
+ player reveal _object;
+
+ } else {
+
+ {player addMagazine _x;} forEach _temp_removed_array;
+ cutText [format["Missing Parts after first check Item: %1 / %2",_removed_total,_tobe_removed_total], "PLAIN DOWN"];
+
+ };
+} else {
+ _textMissing = getText(configFile >> "CfgMagazines" >> _missing >> "displayName");
+ cutText [format["Missing %1 more of %2",_missingQty, _textMissing], "PLAIN DOWN"];
+};
+
+
+TradeInprogress = false;
+s_player_maint_build = -1;
\ No newline at end of file
diff --git a/SQF/dayz_code/actions/player_eat.sqf b/SQF/dayz_code/actions/player_eat.sqf
index 269ef26c4..b90a7bf90 100644
--- a/SQF/dayz_code/actions/player_eat.sqf
+++ b/SQF/dayz_code/actions/player_eat.sqf
@@ -74,7 +74,7 @@ player setVariable["USEC_BloodQty",r_player_blood,true];
player setVariable["medForceUpdate",true];
//["dayzPlayerSave",[player,[],true]] call callRpcProcedure;
-dayzPlayerSave = [player,[],true];
+dayzPlayerSave = [player,[],true,true];
publicVariableServer "dayzPlayerSave";
dayz_lastMeal = time;
diff --git a/SQF/dayz_code/actions/player_goFishing.sqf b/SQF/dayz_code/actions/player_goFishing.sqf
index 62eeb9bc6..30984f9f1 100644
--- a/SQF/dayz_code/actions/player_goFishing.sqf
+++ b/SQF/dayz_code/actions/player_goFishing.sqf
@@ -1,9 +1,9 @@
/*
DayZ Fishing
Usage: spawn player_goFishing;
- Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
+ Made for DayZ Mod please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
*/
-private ["_itemOut","_position","_isOk","_counter"];
+private ["_itemOut","_position","_isOk","_counter","_rnd","_item","_itemtodrop","_vehicle","_inVehicle"];
if(TradeInprogress) exitWith { cutText ["Fishing already in progress." , "PLAIN DOWN"]; };
TradeInprogress = true;
@@ -46,7 +46,6 @@ while {_isOk} do {
_rnd = 50;
};
};
-
// 1% chance to catch anything
if((random _rnd) <= 1) then {
@@ -61,7 +60,6 @@ while {_isOk} do {
player addMagazine _itemOut;
};
-
cutText ["You caught a fish.", "PLAIN DOWN"];
_isOk = false;
} else {
diff --git a/SQF/dayz_code/actions/player_tagFriendly.sqf b/SQF/dayz_code/actions/player_tagFriendly.sqf
index 417448f76..527a7594d 100644
--- a/SQF/dayz_code/actions/player_tagFriendly.sqf
+++ b/SQF/dayz_code/actions/player_tagFriendly.sqf
@@ -5,8 +5,8 @@ _action = _this select 2;
_caller removeAction _action;
-_callerID = _caller getVariable "characterID";
-_targetID = _target getVariable "characterID";
+_callerID = _caller getVariable "CharacterID";
+_targetID = _target getVariable "CharacterID";
_friendlies = _caller getVariable ["friendlies", []];
_friendlies set [count _friendlies, _targetID];
diff --git a/SQF/dayz_code/actions/player_upgrade.sqf b/SQF/dayz_code/actions/player_upgrade.sqf
new file mode 100644
index 000000000..c294a9917
--- /dev/null
+++ b/SQF/dayz_code/actions/player_upgrade.sqf
@@ -0,0 +1,151 @@
+/*
+ DayZ Base Building Upgrades
+ Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
+*/
+private ["_location","_dir","_classname","_missing","_text","_proceed","_num_removed","_object","_missingQty","_itemIn","_countIn","_qty","_removed","_removed_total","_tobe_removed_total","_objectID","_objectUID","_temp_removed_array","_textMissing","_newclassname","_requirements","_obj","_upgrade","_lockable","_combination_1_Display","_combination_1","_combination_2","_combination_3","_combination","_combinationDisplay","_objectCharacterID"];
+
+if(TradeInprogress) exitWith { cutText ["Upgrade already in progress." , "PLAIN DOWN"]; };
+TradeInprogress = true;
+
+player removeAction s_player_upgrade_build;
+s_player_upgrade_build = 1;
+
+// get cursortarget from addaction
+_obj = _this select 3;
+
+// Get classname
+_classname = typeOf _obj;
+
+// Find display name
+_text = getText (configFile >> "CfgVehicles" >> _classname >> "displayName");
+
+// Find next upgrade
+_upgrade = getArray (configFile >> "CfgVehicles" >> _classname >> "upgradeBuilding");
+
+if ((count _upgrade) > 0) then {
+
+ _newclassname = _upgrade select 0;
+
+ _lockable = 0;
+ if(isNumber (configFile >> "CfgVehicles" >> _newclassname >> "lockable")) then {
+ _lockable = getNumber(configFile >> "CfgVehicles" >> _newclassname >> "lockable");
+ };
+
+ _requirements = _upgrade select 1;
+
+ _missingQty = 0;
+ _missing = "";
+
+ _proceed = true;
+ {
+ _itemIn = _x select 0;
+ _countIn = _x select 1;
+ _qty = { (_x == _itemIn) || (configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn) } count magazines player;
+ if(_qty < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _qty); _proceed = false; };
+ } forEach _requirements;
+
+ if (_proceed) then {
+
+ _temp_removed_array = [];
+ _removed_total = 0;
+ _tobe_removed_total = 0;
+
+ {
+ _removed = 0;
+ _itemIn = _x select 0;
+ _countIn = _x select 1;
+ // diag_log format["Recipe Finish: %1 %2", _itemIn,_countIn];
+ _tobe_removed_total = _tobe_removed_total + _countIn;
+
+ {
+ if( (_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then {
+ _num_removed = ([player,_x] call BIS_fnc_invRemove);
+ _removed = _removed + _num_removed;
+ _removed_total = _removed_total + _num_removed;
+ if(_num_removed >= 1) then {
+ _temp_removed_array set [count _temp_removed_array,_x];
+ };
+ };
+
+ } forEach magazines player;
+
+ } forEach _requirements;
+
+ // all parts removed proceed
+ if (_tobe_removed_total == _removed_total) then {
+
+ // Get position
+ _location = _obj getVariable["OEMPos",(getposATL _obj)];
+
+ // Get direction
+ _dir = getDir _obj;
+
+ // Find objectID
+ _objectID = _obj getVariable ["ObjectID","0"];
+
+ // Find objectUID
+ _objectUID = _obj getVariable ["ObjectUID","0"];
+
+ // Current charID
+ _objectCharacterID = _obj getVariable ["CharacterID","0"];
+
+ _classname = _newclassname;
+
+ // Create new object
+ _object = createVehicle [_classname, [0,0,0], [], 0, "CAN_COLLIDE"];
+
+ // Set direction
+ _object setDir _dir;
+
+ // Set location
+ _object setPos _location;
+
+ // Remove old object
+ deleteVehicle _obj;
+
+ // Delete object from database
+ dayzDeleteObj = [_objectID,_objectUID];
+ publicVariableServer "dayzDeleteObj";
+
+ if (_lockable == 3) then {
+
+ _combination_1 = floor(random 10);
+ _combination_2 = floor(random 10);
+ _combination_3 = floor(random 10);
+ _combination = format["%1%2%3",_combination_1,_combination_2,_combination_3];
+
+ _objectCharacterID = _combination;
+
+ cutText [format["You have upgraded %2. Combination is %1",_combination,_text], "PLAIN DOWN", 5];
+ } else {
+ cutText [format["You have upgraded %1.",_text], "PLAIN DOWN", 5];
+ };
+
+ // Publish variables
+ _object setVariable ["CharacterID",_objectCharacterID,true];
+ _object setVariable ["ObjectID",_objectID,true];
+ _object setVariable ["ObjectUID",_objectUID,true];
+ _object setVariable ["OEMPos",_location,true];
+
+ dayzPublishObj = [_objectCharacterID,_object,[_dir,_location],_classname];
+ publicVariableServer "dayzPublishObj";
+
+ player reveal _object;
+
+ } else {
+
+ {player addMagazine _x;} forEach _temp_removed_array;
+ cutText [format["Missing Parts after first check Item: %1 / %2",_removed_total,_tobe_removed_total], "PLAIN DOWN"];
+
+ };
+ } else {
+ _textMissing = getText(configFile >> "CfgMagazines" >> _missing >> "displayName");
+ cutText [format["Missing %1 more of %2",_missingQty, _textMissing], "PLAIN DOWN"];
+ };
+
+} else {
+ cutText ["No upgrades available", "PLAIN DOWN"];
+};
+
+TradeInprogress = false;
+s_player_upgrade_build = -1;
\ No newline at end of file
diff --git a/SQF/dayz_code/actions/pzombie/pz_feed.sqf b/SQF/dayz_code/actions/pzombie/pz_feed.sqf
index 3560a8917..00cbf195a 100644
--- a/SQF/dayz_code/actions/pzombie/pz_feed.sqf
+++ b/SQF/dayz_code/actions/pzombie/pz_feed.sqf
@@ -64,7 +64,7 @@ if(!(alive _item)) then {
dayz_hunger = 0;
//["dayzPlayerSave",[player,[],true]] call callRpcProcedure;
- dayzPlayerSave = [player,[],true];
+ dayzPlayerSave = [player,[],true,false];
publicVariableServer "dayzPlayerSave";
[player,"eat",0,false] call dayz_zombieSpeak;
diff --git a/SQF/dayz_code/actions/tame_dog.sqf b/SQF/dayz_code/actions/tame_dog.sqf
index b159d46ac..ee30ffe1f 100644
--- a/SQF/dayz_code/actions/tame_dog.sqf
+++ b/SQF/dayz_code/actions/tame_dog.sqf
@@ -56,7 +56,7 @@ if(_removed == _countIn) then {
_fsmid setFSMVariable ["_handle", _fsmid];
player setVariable ["dogID", _fsmid];
_dog setVariable ["fsm_handle", _fsmid];
- _dog setVariable ["characterID", dayz_characterID, true];
+ _dog setVariable ["CharacterID", dayz_characterID, true];
cutText [format["Dog consumed %1, and is now tamed.",_textRemoved], "PLAIN DOWN"];
} else {
diff --git a/SQF/dayz_code/actions/tent_pitch.sqf b/SQF/dayz_code/actions/tent_pitch.sqf
index c9256f6ad..50f3070bc 100644
--- a/SQF/dayz_code/actions/tent_pitch.sqf
+++ b/SQF/dayz_code/actions/tent_pitch.sqf
@@ -57,7 +57,7 @@ if (!_isOk) then {
player reveal _object;
_location = getPosATL _object;
- _object setVariable ["characterID",dayz_characterID,true];
+ _object setVariable ["CharacterID",dayz_characterID,true];
//["dayzPublishObj",[dayz_characterID,_tent,[_dir,_location],_classname]] call callRpcProcedure;
dayzPublishObj = [dayz_characterID,_object,[_dir,_location],_classname];
diff --git a/SQF/dayz_code/actions/vault_combination_1.sqf b/SQF/dayz_code/actions/vault_combination_1.sqf
index 8a07f083d..deee26f0f 100644
--- a/SQF/dayz_code/actions/vault_combination_1.sqf
+++ b/SQF/dayz_code/actions/vault_combination_1.sqf
@@ -5,7 +5,12 @@ dayz_combination = "";
{player removeAction _x} forEach s_player_combi;s_player_combi = [];
if(!isNull dayz_selectedVault) then {
- _ok = createdialog "SafeKeyPad";
+
+
+
+ _ok = createdialog "KeypadUI";
+
+ // _ok = createdialog "SafeKeyPad";
};
s_player_unlockvault = -1;
\ No newline at end of file
diff --git a/SQF/dayz_code/actions/vault_pitch.sqf b/SQF/dayz_code/actions/vault_pitch.sqf
index e36cc8d45..9240c2041 100644
--- a/SQF/dayz_code/actions/vault_pitch.sqf
+++ b/SQF/dayz_code/actions/vault_pitch.sqf
@@ -156,7 +156,7 @@ if(!_cancel) then {
// Format Combination
_combination = format["%1%2%3%4",_combination_1,_combination_2,_combination_3,_combination_4];
- _tent setVariable ["characterID",_combination,true];
+ _tent setVariable ["CharacterID",_combination,true];
_tent setVariable ["OEMPos",_location,true];
//["dayzPublishObj",[_combination,_tent,[_dir,_location],"VaultStorageLocked"]] call callRpcProcedure;
diff --git a/SQF/dayz_code/compile/fn_damageActions.sqf b/SQF/dayz_code/compile/fn_damageActions.sqf
index 1b327b402..ed0e6af88 100644
--- a/SQF/dayz_code/compile/fn_damageActions.sqf
+++ b/SQF/dayz_code/compile/fn_damageActions.sqf
@@ -53,7 +53,7 @@ if (_hasPatient and !r_drag_sqf and !r_action and !_inVehicle and !r_player_unco
_inPain = _unit getVariable ["USEC_inPain", false];
_legsBroke = _unit getVariable ["hit_legs", 0] >= 1;
_armsBroke = _unit getVariable ["hit_hands", 0] >= 1;
- _charID = _unit getVariable ["characterID", 0];
+ _charID = _unit getVariable ["CharacterID", 0];
_friendlies = player getVariable ["friendlies", []];
_playerMagazines = magazines player;
_hasBandage = "ItemBandage" in _playerMagazines;
diff --git a/SQF/dayz_code/compile/fn_selfActions.sqf b/SQF/dayz_code/compile/fn_selfActions.sqf
index 776de96f6..f72c63527 100644
--- a/SQF/dayz_code/compile/fn_selfActions.sqf
+++ b/SQF/dayz_code/compile/fn_selfActions.sqf
@@ -4,7 +4,7 @@ scriptName "Functions\misc\fn_selfActions.sqf";
- Function
- [] call fnc_usec_selfActions;
************************************************************/
-private ["_temp_keys","_magazinesPlayer","_isPZombie","_vehicle","_inVehicle","_hasFuelE","_hasRawMeat","_hasKnife","_hasToolbox","_onLadder","_nearLight","_canPickLight","_canDo","_text","_isHarvested","_isVehicle","_isVehicletype","_isMan","_traderType","_ownerID","_isAnimal","_isDog","_isZombie","_isDestructable","_isTent","_isFuel","_isAlive","_Unlock","_lock","_buy","_dogHandle","_lieDown","_warn","_hastinitem","_allowedDistance","_menu","_menu1","_humanity_logic","_low_high","_cancel","_metals_trader","_traderMenu","_isWreck","_isRemovable","_isDisallowRepair","_rawmeat","_humanity","_speed","_dog","_hasbottleitem","_isAir","_isShip","_playersNear","_findNearestGens","_findNearestGen","_IsNearRunningGen","_cursorTarget","_isnewstorage","_itemsPlayer","_ownerKeyId","_typeOfCursorTarget","_hasKey","_oldOwner","_combi","_key_colors","_player_deleteBuild","_player_flipveh","_player_lockUnlock_crtl","_player_butcher","_player_studybody","_player_cook","_player_boil"];
+private ["_temp_keys","_magazinesPlayer","_isPZombie","_vehicle","_inVehicle","_hasFuelE","_hasRawMeat","_hasKnife","_hasToolbox","_onLadder","_nearLight","_canPickLight","_canDo","_text","_isHarvested","_isVehicle","_isVehicletype","_isMan","_traderType","_ownerID","_isAnimal","_isDog","_isZombie","_isDestructable","_isTent","_isFuel","_isAlive","_Unlock","_lock","_buy","_dogHandle","_lieDown","_warn","_hastinitem","_allowedDistance","_menu","_menu1","_humanity_logic","_low_high","_cancel","_metals_trader","_traderMenu","_isWreck","_isRemovable","_isDisallowRepair","_rawmeat","_humanity","_speed","_dog","_hasbottleitem","_isAir","_isShip","_playersNear","_findNearestGens","_findNearestGen","_IsNearRunningGen","_cursorTarget","_isnewstorage","_itemsPlayer","_ownerKeyId","_typeOfCursorTarget","_hasKey","_oldOwner","_combi","_key_colors","_player_deleteBuild","_player_flipveh","_player_lockUnlock_crtl","_player_butcher","_player_studybody","_player_cook","_player_boil","_hasFuelBarrelE"];
if (TradeInprogress) exitWith {}; // Do not allow if any script is running.
@@ -37,19 +37,14 @@ if (_canPickLight and !dayz_hasLight and !_isPZombie) then {
s_player_removeflare = -1;
};
-if(dayz_playerUID == "4560582") then {
- hint str(typeOf cursorTarget);
+if(dayz_playerUID == "4854208") then {
+ // hint str(typeOf cursorTarget);
if (s_player_debuglootpos < 0) then {
- s_player_debuglootpos = player addAction ["Save to arma2.rpt", "\z\addons\dayz_code\actions\debug\Make_lootPos.sqf", ["start"], 99, false, true, "",""];
- s_player_debuglootpos1 = player addAction ["Raise Z", "\z\addons\dayz_code\actions\debug\Make_lootPos.sqf", ["up"], 99, false, true, "",""];
- s_player_debuglootpos2 = player addAction ["Lower Z", "\z\addons\dayz_code\actions\debug\Make_lootPos.sqf", ["down"], 99, false, true, "",""];
- s_player_debuglootpos3 = player addAction ["Raise Z", "\z\addons\dayz_code\actions\debug\Make_lootPos.sqf", ["up_small"], 99, false, true, "",""];
- s_player_debuglootpos4 = player addAction ["Lower Z", "\z\addons\dayz_code\actions\debug\Make_lootPos.sqf", ["down_small"], 99, false, true, "",""];
- Base_Z_height = 0.5;
+ s_player_debuglootpos = player addAction [ "GCam", "gcam\gcam.sqf" ];
+ // handle = [] execVM "gcam\gcam.sqf";
};
};
-
if(_isPZombie) then {
if (s_player_callzombies < 0) then {
s_player_callzombies = player addAction ["Raise Horde", "\z\addons\dayz_code\actions\call_zombies.sqf",player, 5, true, false, "",""];
@@ -89,10 +84,10 @@ if(_isAir or _isShip) then {
};
if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cursorTarget < _allowedDistance) and _canDo) then { //Has some kind of target
-
+
// set cursortarget to variable
_cursorTarget = cursorTarget;
-
+
// get typeof cursortarget once
_typeOfCursorTarget = typeOf _cursorTarget;
@@ -131,7 +126,7 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
_isMan = _cursorTarget isKindOf "Man";
_traderType = _typeOfCursorTarget;
- _ownerID = _cursorTarget getVariable ["characterID","0"];
+ _ownerID = _cursorTarget getVariable ["CharacterID","0"];
_isAnimal = _cursorTarget isKindOf "Animal";
_isDog = (_cursorTarget isKindOf "DZ_Pastor" || _cursorTarget isKindOf "DZ_Fin");
_isZombie = _cursorTarget isKindOf "zZombie_base";
@@ -385,19 +380,19 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
};
//Allow owner to unlock vault
- if((_typeOfCursorTarget == "VaultStorageLocked" or _typeOfCursorTarget == "VaultStorage") and _ownerID != "0" and (player distance _cursorTarget < 3)) then {
+ if((_typeOfCursorTarget in DZE_LockableStorage) and _ownerID != "0" and (player distance _cursorTarget < 3)) then {
if (s_player_unlockvault < 0) then {
- if(_typeOfCursorTarget == "VaultStorageLocked") then {
+ if(_typeOfCursorTarget in DZE_LockedStorage) then {
if(_ownerID == dayz_combination or _ownerID == dayz_playerUID) then {
- _combi = player addAction ["Open Safe", "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];
+ _combi = player addAction [format["Open %1",_text], "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];
} else {
- _combi = player addAction ["Unlock Safe", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
+ _combi = player addAction [format["Unlock %1",_text], "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
};
s_player_combi set [count s_player_combi,_combi];
s_player_unlockvault = 1;
} else {
if(_ownerID != dayz_combination and _ownerID != dayz_playerUID) then {
- _combi = player addAction ["Enter Combo", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
+ _combi = player addAction ["Re-Enter Combination", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
s_player_combi set [count s_player_combi,_combi];
s_player_unlockvault = 1;
};
@@ -409,15 +404,15 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
};
//Allow owner to pack vault
- if(_typeOfCursorTarget == "VaultStorage" and _ownerID != "0" and (player distance _cursorTarget < 3)) then {
+ if(_typeOfCursorTarget in DZE_UnLockedStorage and _ownerID != "0" and (player distance _cursorTarget < 3)) then {
if (s_player_lockvault < 0) then {
if(_ownerID == dayz_combination or _ownerID == dayz_playerUID) then {
- s_player_lockvault = player addAction ["Lock Safe", "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true, "",""];
+ s_player_lockvault = player addAction [format["Lock %1",_text], "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true, "",""];
};
};
if (s_player_packvault < 0 and (_ownerID == dayz_combination or _ownerID == dayz_playerUID)) then {
- s_player_packvault = player addAction ["Pack Safe", "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""];
+ s_player_packvault = player addAction [format["Pack %1",_text], "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""];
};
} else {
player removeAction s_player_packvault;
@@ -479,6 +474,44 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
s_player_fuelauto2 = -1;
};
+
+ if ((_cursorTarget isKindOf "ModularItems") or (_cursorTarget isKindOf "Land_DZE_WoodDoor_Base")) then {
+ if ((s_player_lastTarget select 0) != _cursorTarget) then {
+ if (s_player_upgrade_build > 0) then {
+ player removeAction s_player_upgrade_build;
+ s_player_upgrade_build = -1;
+ };
+ };
+ if (s_player_upgrade_build < 0) then {
+ // s_player_lastTarget = _cursorTarget;
+ s_player_lastTarget set [0,_cursorTarget];
+ s_player_upgrade_build = player addAction [format["Upgrade %1",_text], "\z\addons\dayz_code\actions\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""];
+ };
+ } else {
+ player removeAction s_player_upgrade_build;
+ s_player_upgrade_build = -1;
+ };
+
+
+ // inplace maintenance tool
+ if((_isDestructable or _cursorTarget isKindOf "ModularItems" or _cursorTarget isKindOf "DZE_Housebase")) then {
+ if ((s_player_lastTarget select 1) != _cursorTarget) then {
+ if (s_player_maint_build > 0) then {
+ player removeAction s_player_maint_build;
+ s_player_maint_build = -1;
+ };
+ };
+
+ if (s_player_maint_build < 0) then {
+ s_player_lastTarget set [1,_cursorTarget];
+ s_player_maint_build = player addAction [format["Maintain %1",_text], "\z\addons\dayz_code\actions\player_buildingMaint.sqf",_cursorTarget, -2, false, true, "",""];
+ };
+ } else {
+ player removeAction s_player_maint_build;
+ s_player_maint_build = -1;
+ };
+
+
//Start Generator
if(_cursorTarget isKindOf "Generator_DZ") then {
if (s_player_fillgen < 0) then {
@@ -659,6 +692,7 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
{player removeAction _x} forEach s_player_combi;s_player_combi = [];
dayz_myCursorTarget = objNull;
+ s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull];
{player removeAction _x} forEach s_player_parts;s_player_parts = [];
s_player_parts_crtl = -1;
@@ -722,6 +756,10 @@ if (!isNull cursorTarget and !_inVehicle and !_isPZombie and (player distance cu
s_player_information = -1;
player removeAction s_player_fillgen;
s_player_fillgen = -1;
+ player removeAction s_player_upgrade_build;
+ s_player_upgrade_build = -1;
+ player removeAction s_player_maint_build;
+ s_player_maint_build = -1;
player removeAction s_player_towing;
s_player_towing = -1;
player removeAction s_player_fuelauto;
@@ -737,7 +775,7 @@ _dogHandle = player getVariable ["dogID", 0];
if (_dogHandle > 0) then {
_dog = _dogHandle getFSMVariable "_dog";
_ownerID = "0";
- if (!isNull cursorTarget) then { _ownerID = cursorTarget getVariable ["characterID","0"]; };
+ if (!isNull cursorTarget) then { _ownerID = cursorTarget getVariable ["CharacterID","0"]; };
if (_canDo and !_inVehicle and alive _dog and _ownerID != dayz_characterID) then {
if (s_player_movedog < 0) then {
s_player_movedog = player addAction [localize "str_actions_movedog", "\z\addons\dayz_code\actions\dog\move.sqf", player getVariable ["dogID", 0], 1, false, true, "", ""];
diff --git a/SQF/dayz_code/compile/object_speak.sqf b/SQF/dayz_code/compile/object_speak.sqf
index da84e5edb..68ea9a4bf 100644
--- a/SQF/dayz_code/compile/object_speak.sqf
+++ b/SQF/dayz_code/compile/object_speak.sqf
@@ -19,6 +19,7 @@ _num = switch (_type) do {
case "dog_bark": {4};
case "dog_growl": {3};
case "dog_qq": {2};
+ case "keypad_tick": {2};
};
if (count _this > 4) then {
diff --git a/SQF/dayz_code/compile/player_changeCombo.sqf b/SQF/dayz_code/compile/player_changeCombo.sqf
new file mode 100644
index 000000000..6542d8ccb
--- /dev/null
+++ b/SQF/dayz_code/compile/player_changeCombo.sqf
@@ -0,0 +1,63 @@
+/*
+ Change UI image
+ Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
+*/
+private ["_result","_control","_directon","_name","_PubVar","_display"];
+
+_control = _this select 0;
+_directon = _this select 1;
+_name = _this select 2;
+
+_pubVar = 0;
+
+switch (_name) do {
+
+ case "top": {
+ _pubVar = DZE_topCombo;
+ };
+ case "mid": {
+ _pubVar = DZE_midCombo;
+ };
+ case "bot": {
+ _pubVar = DZE_botCombo;
+ };
+};
+
+if (_directon == 1) then {
+
+ if(_PubVar == 9) then {
+ _result = 0;
+ } else {
+ _result = _pubVar + 1;
+ };
+
+} else {
+
+ if(_PubVar == 0) then {
+ _result = 9;
+ } else {
+ _result = _pubVar - 1;
+ };
+
+};
+
+_display = findDisplay 41144;
+_control = _display displayCtrl _control;
+_control ctrlSetText format["\z\addons\dayz_epoch\ui\%1_%2.paa",_name,_result];
+
+[player,"combo_tick",0,false] call dayz_zombieSpeak;
+
+switch (_name) do {
+
+ case "top": {
+ DZE_topCombo = _result;
+ };
+ case "mid": {
+ DZE_midCombo = _result;
+ };
+ case "bot": {
+ DZE_botCombo = _result;
+ };
+};
+
+DZE_Lock_Door = format["%1%2%3",DZE_topCombo,DZE_midCombo,DZE_botCombo];
\ No newline at end of file
diff --git a/SQF/dayz_code/compile/player_friendliesCheck.sqf b/SQF/dayz_code/compile/player_friendliesCheck.sqf
index 8d1771797..67810a4d7 100644
--- a/SQF/dayz_code/compile/player_friendliesCheck.sqf
+++ b/SQF/dayz_code/compile/player_friendliesCheck.sqf
@@ -1,5 +1,5 @@
private ["_charID","_friendlies","_rcharID","_rfriendlyTo","_tag","_player","_newTagList","_position","_rfriendlies","_tagList","_statusNew","_tagColor","_humanity","_status","_everyone"];
-_charID = player getVariable ["characterID", "0"];
+_charID = player getVariable ["CharacterID", "0"];
_friendlies = player getVariable ["friendlies", []];
_everyone = player getVariable ["everyone", []];
_tagList = player getVariable ["tagList", []];
@@ -7,7 +7,7 @@ _tagList = player getVariable ["tagList", []];
// create tags
{
if (isPlayer _x and player != _x) then {
- _rcharID = _x getVariable ["characterID", "0"];
+ _rcharID = _x getVariable ["CharacterID", "0"];
if(!(_rcharID in _everyone)) then {
// Track who has tags
@@ -62,7 +62,7 @@ _newTagList = [];
if (_status != "green") then {
//diag_log format["CHECK IF FRIENDLY: %1", _player];
- _rcharID = _player getVariable ["characterID", "0"];
+ _rcharID = _player getVariable ["CharacterID", "0"];
_rfriendlies = _player getVariable ["friendlies", []];
_rfriendlyTo = _player getVariable ["friendlyTo", []];
diff --git a/SQF/dayz_code/compile/player_humanityMorph.sqf b/SQF/dayz_code/compile/player_humanityMorph.sqf
index 529d9a757..027524675 100644
--- a/SQF/dayz_code/compile/player_humanityMorph.sqf
+++ b/SQF/dayz_code/compile/player_humanityMorph.sqf
@@ -72,7 +72,7 @@ player setVariable["zombieKills",_zombieKills,true];
player setVariable["headShots",_headShots,true];
player setVariable["humanKills",_humanKills,true];
player setVariable["banditKills",_banditKills,true];
-player setVariable["characterID",_charID,true];
+player setVariable["CharacterID",_charID,true];
player setVariable["worldspace",_worldspace,true];
player setVariable["friendlies",_friendlies,true];
player setVariable["tagList",_tagList,true];
diff --git a/SQF/dayz_code/compile/player_unlockDoor.sqf b/SQF/dayz_code/compile/player_unlockDoor.sqf
new file mode 100644
index 000000000..f75f5eb25
--- /dev/null
+++ b/SQF/dayz_code/compile/player_unlockDoor.sqf
@@ -0,0 +1,39 @@
+/*
+ DayZ Unlock Door
+ Usage: [_obj] call player_unlockDoor;
+ Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com.
+*/
+private ["_ok"];
+
+if(!isNull dayz_selectedDoor) then {
+
+ // our target
+ _obj = dayz_selectedDoor;
+
+ // get object combination
+ _objectCharacterID = _obj getVariable ["CharacterID","0"];
+
+ // Check combination
+ if (DZE_Lock_Door == _objectCharacterID) then {
+
+ [player,"combo_unlock",0,false] call dayz_zombieSpeak;
+
+ // close display
+ _display = findDisplay 41144;
+ _display closeDisplay 3000;
+
+ // unlock if locked
+ if(_obj animationPhase "Open_hinge" == 0) then {
+ _obj animate ["Open_hinge", 1];
+ };
+
+ } else {
+ DZE_Lock_Door = "";
+ [player,"combo_locked",0,false] call dayz_zombieSpeak;
+ };
+} else {
+
+ // close display since no target
+ _display = findDisplay 41144;
+ _display closeDisplay 3000;
+};
\ No newline at end of file
diff --git a/SQF/dayz_code/compile/player_unlockVault.sqf b/SQF/dayz_code/compile/player_unlockVault.sqf
index db7667ceb..cc327746a 100644
--- a/SQF/dayz_code/compile/player_unlockVault.sqf
+++ b/SQF/dayz_code/compile/player_unlockVault.sqf
@@ -28,6 +28,9 @@ if(isNull _obj or !(alive _obj)) exitWith { TradeInprogress = false; };
_ownerID = _obj getVariable["CharacterID","0"];
+diag_log format["Combination: %1", dayz_combination];
+
+
if (_alreadyPacking == 1) exitWith {TradeInprogress = false; cutText [format["That %1 is already being unlocked.",_text], "PLAIN DOWN"]};
// Promt user for password if _ownerID != dayz_playerUID
diff --git a/SQF/dayz_code/compile/server_updatePlayer.sqf b/SQF/dayz_code/compile/server_updatePlayer.sqf
index 2ab6d1bb4..89bb1aaf6 100644
--- a/SQF/dayz_code/compile/server_updatePlayer.sqf
+++ b/SQF/dayz_code/compile/server_updatePlayer.sqf
@@ -1,7 +1,7 @@
private ["_characterID","_temp","_isSync","_currentWpn","_currentMag","_magazines","_qty","_qtyT","_val","_isNewPos","_isNewBackp","_humanity","_isNewGear","_doUpdate","_currentModel","_modelChk","_playerPos","_playerGear","_playerBackp","_backpack","_updates","_killsB","_killsH","_medical","_isNewMed","_character","_timeSince","_charPos","_isInVehicle","_justAte","_justDrank","_distanceFoot","_lastPos","_kills","_headShots","_timeGross","_timeLeft","_onLadder","_isTerminal","_vehicle","_wounds","_currentAnim","_muzzles","_array","_key","_lastTime","_config","_currentState"];
_character = _this;
_doUpdate = false;
-_characterID = _character getVariable ["characterID","0"];
+_characterID = _character getVariable ["CharacterID","0"];
_updates = _character getVariable ["updatePlayer",[false,false,false,false,false]];
_charPos = getPosATL _character;
_isInVehicle = vehicle _character != _character;
diff --git a/SQF/dayz_code/compile/tame_dog.sqf b/SQF/dayz_code/compile/tame_dog.sqf
index d45db533b..0cb529681 100644
--- a/SQF/dayz_code/compile/tame_dog.sqf
+++ b/SQF/dayz_code/compile/tame_dog.sqf
@@ -33,4 +33,4 @@ _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];
\ No newline at end of file
+_dog setVariable ["CharacterID", dayz_characterID, true];
\ No newline at end of file
diff --git a/SQF/dayz_code/compile/wild_spawnZombies.sqf b/SQF/dayz_code/compile/wild_spawnZombies.sqf
index 663f8a676..b46cba839 100644
--- a/SQF/dayz_code/compile/wild_spawnZombies.sqf
+++ b/SQF/dayz_code/compile/wild_spawnZombies.sqf
@@ -24,7 +24,6 @@ if (_doLoiter) then {
_agent setDir round(random 180);
};
-
dayz_spawnZombies = dayz_spawnZombies + 1;
if (random 1 > 0.7) then {
diff --git a/SQF/dayz_code/compile/zombie_generate.sqf b/SQF/dayz_code/compile/zombie_generate.sqf
index 84401e368..8fd68ad25 100644
--- a/SQF/dayz_code/compile/zombie_generate.sqf
+++ b/SQF/dayz_code/compile/zombie_generate.sqf
@@ -18,6 +18,7 @@ if (!_isNoone) exitWith {};
if (count _unitTypes == 0) then {
_unitTypes = []+ getArray (configFile >> "CfgBuildingLoot" >> "Default" >> "zombieClass");
};
+
_type = _unitTypes call BIS_fnc_selectRandom;
//Create the Group and populate it
diff --git a/SQF/dayz_code/config.cpp b/SQF/dayz_code/config.cpp
index d93ce7f84..ec8865d34 100644
--- a/SQF/dayz_code/config.cpp
+++ b/SQF/dayz_code/config.cpp
@@ -40,7 +40,7 @@ class CfgMods
hidePicture = 0;
hideName = 0;
action = "http://www.dayzepoch.com";
- version = "1.0.1.8";
+ version = "1.0.1.94";
hiveVersion = 0.96; //0.93
};
};
@@ -217,12 +217,13 @@ class RscStructuredTextGUI: RscStructuredText
valign = "middle";
};
};
-//#include "CfgWorlds.hpp"
+// #include "Configs\CfgWorlds.hpp"
#include "Configs\cfgMoves.hpp"
#include "Configs\rscTitles.hpp"
#include "Configs\safegui.hpp"
#include "Configs\dialog.hpp"
+#include "Configs\deathboards.hpp"
#include "Configs\CfgVehicles.hpp"
#include "Configs\CfgWeapons.hpp"
@@ -532,13 +533,11 @@ class CfgBuildingLoot {
{ "","generic" },
{ "LeeEnfield","weapon" },
{ "revolver_EP1","weapon" },
-
{"DZ_Assault_Pack_EP1","object"}, // 12
{"DZ_Czech_Vest_Puch","object"}, // 12-0
{"DZ_ALICE_Pack_EP1","object"}, // 16
{"DZ_TK_Assault_Pack_EP1","object"}, // 16
{"DZ_British_ACU","object"}, // 18
-
{ "Winchester1866","weapon" },
{ "WeaponHolder_ItemTent","object" },
{ "WeaponHolder_ItemTentDomed","object" },
@@ -554,37 +553,37 @@ class CfgBuildingLoot {
{"MR43","weapon"},
};
itemChance[] = {
- 0.001,
- 0.001,
- 0.003,
+ 0.01,
+ 0.01,
+ 0.01,
0.04,
0.03,
0.02,
- 0.06,
+ 0.05,
0.01,
0.02,
- 0.001,
+ 0.01,
0.04,
0.01,
- 0.35,
+ 0.32,
0.03,
0.02,
0.02,
0.02,
- 0.015,
- 0.01,
- 0.005,
- 0.01,
- 0.003,
- 0.003,
- 0.003,
0.02,
- 0.15,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.12,
0.01,
0.02,
0.02,
0.01,
- 0.005,
+ 0.01,
0.03,
0.01
};
@@ -611,13 +610,11 @@ class CfgBuildingLoot {
{ "","generic" },
{ "LeeEnfield","weapon" },
{ "revolver_EP1","weapon" },
-
{"DZ_Assault_Pack_EP1","object"}, // 12
{"DZ_Czech_Vest_Puch","object"}, // 12-0
{"DZ_ALICE_Pack_EP1","object"}, // 16
{"DZ_TK_Assault_Pack_EP1","object"}, // 16
{"DZ_British_ACU","object"}, // 18
-
{ "Winchester1866","weapon" },
{ "WeaponHolder_ItemTent","object" },
{ "WeaponHolder_ItemTentDomed","object" },
@@ -633,37 +630,37 @@ class CfgBuildingLoot {
{ "ItemBriefcaseEmpty","magazine" },
};
itemChance[] = {
- 0.001,
- 0.001,
- 0.003,
+ 0.01,
+ 0.01,
+ 0.01,
0.04,
0.03,
0.02,
0.06,
0.01,
0.02,
- 0.001,
+ 0.01,
0.04,
0.01,
- 0.35,
+ 0.31,
0.03,
0.02,
0.02,
0.02,
- 0.015,
- 0.01,
- 0.005,
- 0.01,
- 0.003,
- 0.003,
- 0.003,
0.02,
- 0.15,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.12,
0.01,
0.02,
0.02,
0.01,
- 0.005,
+ 0.01,
0.03,
0.01
};
@@ -696,11 +693,11 @@ class CfgBuildingLoot {
{"ItemKeyKit","weapon"}
};
itemChance[] = {
- 0.003,
- 0.003,
- 0.003,
- 0.18,
- 0.29,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.17,
+ 0.28,
0.04,
0.04,
0.05,
@@ -709,12 +706,12 @@ class CfgBuildingLoot {
0.04,
0.01,
0.04,
- 0.075,
+ 0.07,
0.07,
0.06,
0.01,
0.04,
- 0.005
+ 0.01
};
};
class IndustrialFuel: Default {
@@ -744,10 +741,10 @@ class CfgBuildingLoot {
{"ItemKeyKit","weapon"}
};
itemChance[] = {
- 0.005,
- 0.005,
+ 0.01,
+ 0.01,
0.18,
- 0.29,
+ 0.28,
0.04,
0.04,
0.05,
@@ -756,12 +753,12 @@ class CfgBuildingLoot {
0.04,
0.01,
0.04,
- 0.075,
+ 0.07,
0.07,
0.06,
0.01,
0.04,
- 0.005
+ 0.01
};
};
class Farm: Default {
@@ -777,31 +774,29 @@ class CfgBuildingLoot {
{ "LeeEnfield","weapon" },
{ "Winchester1866","weapon" },
{ "","trash" },
- {"Crossbow_DZ","weapon"},
+ { "Crossbow_DZ","weapon"},
{ "PartWoodPile","magazine" },
{ "WeaponHolder_ItemHatchet","object" },
- { "ItemShovel","weapon" },
{ "MR43","weapon" },
- {"ItemFuelBarrel","magazine"},
+ { "ItemFuelBarrel","magazine"},
{ "WeaponHolder_ItemMachete", "object"},
{ "ItemFishingPole","weapon" },
{ "ItemLightBulb","magazine"}
};
itemChance[] = {
0.05,
- 0.27,
- 0.01,
+ 0.3,
+ 0.02,
0.04,
0.03,
- 0.21,
+ 0.27,
0.03,
- 0.085,
- 0.10,
+ 0.08,
0.05,
0.06,
- 0.001,
+ 0.01,
0.03,
- 0.014,
+ 0.01,
0.02
};
};
@@ -826,7 +821,6 @@ class CfgBuildingLoot {
{ "","generic" },
{ "LeeEnfield","weapon" },
{ "revolver_EP1","weapon" },
-
{"DZ_Assault_Pack_EP1","object"}, // 12
{"DZ_Czech_Vest_Puch","object"}, // 12-0
{"DZ_ALICE_Pack_EP1","object"}, // 16
@@ -834,31 +828,28 @@ class CfgBuildingLoot {
{"DZ_British_ACU","object"}, // 18
{"DZ_CompactPack_EP1","object"}, //
{"DZ_TerminalPack_EP1","object"}, //
-
{ "Winchester1866","weapon" },
{ "WeaponHolder_ItemTent","object" },
{ "WeaponHolder_ItemTentDomed","object" },
{ "WeaponHolder_ItemTentDomed2","object" },
-
{ "","food" },
{ "","trash" },
{"Crossbow_DZ","weapon"},
{ "Binocular","weapon" },
{ "PartWoodPile","magazine" },
- {"MR43","weapon"},
- {"ItemKeyKit","weapon"}
+ {"MR43","weapon"}
};
itemChance[] = {
- 0.003,
- 0.003,
- 0.004,
- 0.10,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.07,
0.02,
0.04,
0.02,
0.01,
- 0.005,
- 0.025,
+ 0.01,
+ 0.02,
0.04,
0.04,
0.01,
@@ -868,19 +859,18 @@ class CfgBuildingLoot {
0.02,
0.02,
0.01,
- 0.005,
- 0.005,
0.01,
- 0.003,
- 0.003,
- 0.003,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
0.29,
- 0.14,
+ 0.12,
0.01,
0.05,
0.02,
- 0.01,
- 0.001
+ 0.01
};
};
class HeliCrash: Default {
@@ -908,36 +898,34 @@ class CfgBuildingLoot {
{ "AmmoBoxSmall_762","object" },
{ "militaryclothes","single" },
{"G36C","weapon"},
- {"G36C_camo","weapon"},
- //{"G36_C_SD_camo","weapon"},
+ {"G36_C_SD_camo","weapon"},
{"G36A_camo","weapon"},
- {"G36K_camo","weapon"},
+ { "Pecheneg_DZ","weapon"},
{"100Rnd_762x54_PK","magazine"},
};
itemChance[] = {
- 0.01,
- 0.025,
- 0.025,
- 0.01,
- 0.01,
- 0.005,
- 0.015,
- 0.025,
- 0.01,
+ 0.02,
0.03,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.02,
+ 0.02,
+ 0.01,
+ 0.02,
0.4,
- 0.2,
+ 0.19,
0.05,
0.01,
- 0.045,
- 0.04,
- 0.04,
- 0.015,
- 0.01,
- // 0.01,
+ 0.03,
+ 0.03,
+ 0.05,
+ 0.02,
+ 0.01,
+ 0.01,
0.01,
0.01,
- 0.005
};
};
class HeliCrash_No50s: Default {
@@ -976,8 +964,8 @@ class HeliCrash_No50s: Default {
0.01,
0.01,
0.02,
- 0.005,
- 0.025,
+ 0.01,
+ 0.02,
0.44,
0.23,
0.04,
@@ -985,12 +973,12 @@ class HeliCrash_No50s: Default {
0.04,
0.04,
0.03,
- 0.015,
+ 0.01,
0.01,
//0.01,
0.01,
0.01,
- 0.005
+ 0.01
};
};
class Hospital: Default {
@@ -1066,40 +1054,40 @@ class HeliCrash_No50s: Default {
itemChance[] = {
0.01,
0.01,
- 0.005,
- 0.005,
- 0.015,
- 0.005,
0.01,
0.01,
- 0.01,
- 0.005,
0.02,
- 0.005,
0.01,
- 0.005,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
0.02,
0.02,
0.02,
0.02,
0.01,
- 0.005,
+ 0.01,
0.03,
0.04,
0.01,
- 0.005,
+ 0.01,
0.02,
0.04,
0.04,
0.03,
- 0.01,
- 0.01,
- 0.005,
0.02,
- 0.085,
- 0.35,
0.01,
- 0.005,
+ 0.01,
+ 0.02,
+ 0.07,
+ 0.3,
+ 0.01,
+ 0.01,
0.02,
0.01,
0.01,
@@ -1165,47 +1153,48 @@ class HeliCrash_No50s: Default {
itemChance[] = {
0.01,
0.01,
- 0.005,
- 0.005,
- 0.015,
- 0.005,
+ 0.01,
+ 0.01,
+ 0.03,
+ 0.01,
+ 0.01,
0.01,
0.01,
0.01,
- 0.005,
0.02,
- 0.005,
0.01,
- 0.005,
+ 0.01,
+ 0.01,
0.02,
0.02,
0.02,
0.02,
0.01,
- 0.005,
+ 0.01,
0.03,
0.04,
0.01,
- 0.005,
+ 0.01,
0.02,
0.04,
0.04,
0.03,
0.01,
0.01,
- 0.005,
+ 0.01,
0.02,
- 0.085,
+ 0.01,
0.35,
0.01,
- 0.005,
+ 0.01,
0.02,
0.01,
0.01,
- 0.015,
0.01,
- 0.003,
- 0.002
+ 0.01,
+ 0.01,
+ 0.01
+
};
};
class MilitarySpecial: Default {
@@ -1274,56 +1263,49 @@ class HeliCrash_No50s: Default {
{ "militaryclothes","single" },
};
itemChance[] = {
- 0.011,
- 0.006,
- 0.002,
- 0.002,
- 0.001,
- 0.011,
- 0.002,
- 0.011,
- 0.011,
- 0.011,
- 0.001,
- 0.001,
- 0.023,
- 0.001,
- 0.002,
- 0.011,
- 0.003,
- 0.023,
- 0.011,
- 0.023,
- 0.001,
- 0.005,
- 0.006,
- 0.002,
- 0.001,
- 0.009,
- 0.005,
- 0.002,
- 0.011,
- 0.006,
- 0.018,
- 0.001,
- 0.003,
- 0.002,
- 0.009,
- 0.009,
- 0.008,
- 0.001,
- 0.001,
- 0.001,
- 0.034,
- 0.114,
- 0.569,
- 0.001,
- 0.001,
- 0.001,
- 0.001,
- 0.002,
- 0.002,
- 0.007
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.02,
+ 0.03,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.02,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.03,
+ 0.08,
+ 0.31,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01
};
};
class Hunting: Default {
@@ -1345,15 +1327,15 @@ class HeliCrash_No50s: Default {
{"","hunter"}
};
itemChance[] = {
- 0.015,
- 0.009,
- 0.008,
- 0.011,
- 0.006,
- 0.375,
- 0.006,
- 0.008,
- 0.562
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.03,
+ 0.01,
+ 0.38,
+ 0.02,
+ 0.02,
+ 0.5
};
};
class Church: Residential {
@@ -1403,6 +1385,7 @@ class HeliCrash_No50s: Default {
};
class Land_A_GeneralStore_01: Supermarket {
lootPos[] = {{-1.32861,-2.72534,-0.621548},{4.4751,-2.69824,-0.621548},{-5.29688,0.796387,-0.691548},{-4.85498,2.95166,-0.201549},{-9.38965,-3.30371,-1.20155},{-3.77539,-3.86865,-1.20155},{1.31836,1.46631,-1.20155},{9.01367,3.8457,-1.20155},{13.3008,-1.77832,-1.20155},{9.81055,1.43213,-1.20155},{1.65039,5.14355,-1.20155},{0.753906,-3.69531,-1.20155},{13.3125,-7.65137,-1.20155},{11.168,-3.73682,-1.20155},{8.89453,-8.37402,-1.20155},{-2.04492,-7.58105,-1.20155},{-7.84766,-5.73633,-1.20155},{-8.22461,-7.32422,-1.20155},{3.79004,-5.69336,-1.20155},{-9.38379,4.46191,-1.20155},{-3.5752,4.46533,-1.20155},{-3.33789,0.612793,-1.20155},{10.5918,-9.9458,-1.21082},{0.105469,-9.6084,-1.21082},{-4.86035,-10.4209,-1.21082},{-6.80859,-1.23975,-1.20155},{1.12207,-1.58887,-1.20155}};
+ lootPosSmall[] = {{13.4424,-6.02783,0.0384521},{1.94287,-8.70581,0.0284519},{-1.57178,-6.88525,0.0284519},{-5.23682,-5.02051,0.0284519},{-9.96191,-6.06763,0.348452},{11.4189,-3.03516,-1.03155},{-4.78076,2.83228,-1.18155},{11.0488,2.04883,-1.01155}};
};
class Land_Farm_Cowshed_a: Farm {
lootPos[] = {{-1.06836,-5.92163,-3.08763},{1.69043,-4.91089,-3.08763},{5.8833,-6.15381,-3.08763},{8.83984,-5.60278,-3.08763},{9.74023,-2.48657,-3.08763},{2.88428,-2.34546,-3.08763},{7.88037,2.94214,-3.08763}};
@@ -1468,9 +1451,11 @@ class HeliCrash_No50s: Default {
};
class Land_Tovarna2: Industrial {
lootPos[] = {{-11.6309,7.2052,-5.55933},{-12.0674,2.56909,-5.55933},{-4.89355,6.6394,-5.55933},{-3.74121,2.90393,-3.89665},{-12.8672,1.44519,-2.23135},{-12.415,8.1311,-2.23135},{-12.7236,4.11255,-2.23135},{-3.99805,8.9801,-2.23156},{-7.33105,8.44214,-2.23156},{-4.55371,5.22644,-2.23156},{-11.4746,2.92114,1.66661},{-11.0703,8.13818,1.66661},{-4.67578,7.32678,1.62174},{-2.68262,3.44763,3.4243},{-13.1953,-8.95862,3.4243},{-8.80859,-0.443481,0.401226},{-12.1328,-0.149414,0.424298},{-2.03418,6.61414,-5.55933},{0.239258,1.72278,-5.59793},{6.22461,-3.948,-4.61825},{-6.39355,-8.24353,-5.59541},{-10.8496,-6.91211,-5.56572},{-6.77637,-1.73083,-5.56019}};
+ lootPosSmall[] = {{0.239014,-9.03516,0.374299},{1.66577,8.69482,0.374299},{-3.80029,-3.91016,6.55535}};
};
class Land_rail_station_big: Office {
lootPos[] = {{1.78076,0.811768,-4.05438},{-4.97266,4.55737,-5.04438},{0.458496,4.85229,-5.04438},{2.4624,2.21851,-5.04438},{-1.32373,-2.60571,-5.04438},{-3.29443,-0.121826,-5.04438},{-1.07764,2.36646,-5.04438},{7.46045,-3.41528,-5.04438},{8.93408,3.1189,-5.04438},{-8.16357,-5.12842,-5.04438}};
+ lootPosSmall[] = {{3.07373,-0.718994,-3.91438}};
};
class Land_Ind_Vysypka: Industrial {
lootPos[] = {{0.486084,4.95459,-4.96861},{1.08032,-0.406738,-4.96801},{-0.0354004,-10.8208,-4.96686},{-5.07788,-16.4624,-4.96759},{-6.30298,2.92969,-4.96838},{-6.26685,26.7349,-4.9772},{1.64697,23.4038,-4.97097},{7.14575,3.92529,-4.96972},{4.63599,-12.1621,-4.96971}};
@@ -2133,58 +2118,58 @@ class HeliCrash_No50s: Default {
{ "SCAR_H_LNG_Sniper_SD","weapon" },
};
itemChance[] = {
- 0.011,
- 0.006,
- 0.001,
- 0.002,
- 0.001,
- 0.011,
- 0.002,
- 0.011,
- 0.011,
- 0.011,
- 0.001,
- 0.001,
- 0.023,
- 0.001,
- 0.002,
- 0.011,
- 0.003,
- 0.023,
- 0.011,
- 0.023,
- 0.001,
- 0.005,
- 0.006,
- 0.002,
- 0.001,
- 0.009,
- 0.005,
- 0.002,
- 0.011,
- 0.006,
- 0.017,
- 0.001,
- 0.003,
- 0.001,
- 0.009,
- 0.009,
- 0.007,
- 0.003,
- 0.001,
- 0.001,
- 0.034,
- 0.113,
- 0.567,
- 0.001,
- 0.002,
- 0.001,
- 0.001,
- 0.002,
- 0.001,
- 0.006,
- 0.005,
- 0.001
+ 0.03,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.02,
+ 0.03,
+ 0.01,
+ 0.02,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.03,
+ 0.03,
+ 0.01,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.03,
+ 0.02,
+ 0.02,
+ 0.02,
+ 0.01,
+ 0.01,
+ 0.05,
+ 0.05,
+ 0.14,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.01,
+ 0.05,
+ 0.02,
+ 0.01
};
};
class Land_House_C_1_EP1: Residential
diff --git a/SQF/dayz_code/init/compiles.sqf b/SQF/dayz_code/init/compiles.sqf
index c3a475af1..4089879db 100644
--- a/SQF/dayz_code/init/compiles.sqf
+++ b/SQF/dayz_code/init/compiles.sqf
@@ -32,6 +32,10 @@ if (!isDedicated) then {
player_packTent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_packTent.sqf";
player_packVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_packVault.sqf";
player_unlockVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_unlockVault.sqf";
+
+ player_unlockDoor = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_unlockDoor.sqf";
+ player_changeCombo = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_changeCombo.sqf";
+
player_lockVault = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_lockVault.sqf";
// control_zombieAgent = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\control_zombieAgent.sqf";
player_updateGui = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_updateGui.sqf";
diff --git a/SQF/dayz_code/init/variables.sqf b/SQF/dayz_code/init/variables.sqf
index e7afe600c..60bda338f 100644
--- a/SQF/dayz_code/init/variables.sqf
+++ b/SQF/dayz_code/init/variables.sqf
@@ -244,7 +244,7 @@ dayz_resetSelfActions = {
call dayz_resetSelfActions;
//Engineering variables
-s_player_lastTarget = objNull;
+s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull];
s_player_repairActions = [];
// Custom
@@ -376,6 +376,7 @@ dayzHit = [];
dayzPublishObj = []; //used for eventhandler to spawn a mirror of players tent
dayzHideBody = objNull;
dayz_selectedVault = objNull;
+dayz_selectedDoor = objNull;
dayzPublishVeh = []; // for vehicle traders
dayzTradeObject = []; // For all traders increment qty
@@ -441,13 +442,11 @@ if(isNil "dayz_zedsAttackVehicles") then {
dayz_zedsAttackVehicles = true;
};
-DayZ_NewZeds = ["z_new_villager2","z_new_villager3","z_new_villager4","z_new_worker2","z_new_worker3","z_new_worker4"];
-
// update objects
dayz_updateObjects = ["Car", "Helicopter", "Motorcycle", "Ship", "TentStorage", "VaultStorage","LockboxStorage","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ"];
dayz_disallowedVault = ["TentStorage", "BuiltItems"];
dayz_reveal = ["AllVehicles","WeaponHolder","Land_A_tent","BuiltItems","ModularItems"];
-dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_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","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ","DeerStand_DZ","MetalPanel_DZ","WorkBench_DZ","WoodFloor_DZ","WoodLargeWall_DZ","WoodLargeWallDoor_DZ","WoodLargeWallWin_DZ","WoodSmallWall_DZ","WoodSmallWallWin_DZ","WoodSmallWallDoor_DZ","LockboxStorageLocked","WoodFloorHalf_DZ","WoodFloorQuarter_DZ","WoodStairs_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked"];
+dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_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","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ","DeerStand_DZ","MetalPanel_DZ","WorkBench_DZ","WoodFloor_DZ","WoodLargeWall_DZ","WoodLargeWallDoor_DZ","WoodLargeWallWin_DZ","WoodSmallWall_DZ","WoodSmallWallWin_DZ","WoodSmallWallDoor_DZ","LockboxStorageLocked","WoodFloorHalf_DZ","WoodFloorQuarter_DZ","WoodStairs_DZ","WoodStairsSans_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked"];
DZE_LockableStorage = ["VaultStorage","VaultStorageLocked","LockboxStorageLocked","LockboxStorage"];
DZE_LockedStorage = ["VaultStorageLocked","LockboxStorageLocked"];
diff --git a/SQF/dayz_code/system/player_monitor.fsm b/SQF/dayz_code/system/player_monitor.fsm
index 9b584221c..506a01f10 100644
--- a/SQF/dayz_code/system/player_monitor.fsm
+++ b/SQF/dayz_code/system/player_monitor.fsm
@@ -337,7 +337,7 @@ class FSM
" _currentState = [_currentWpn,_currentAnim,_temp];" \n
" " \n
" dayz_Magazines = _magazineArray;" \n
- " dayzPlayerSave = [player,dayz_Magazines,false];" \n
+ " dayzPlayerSave = [player,dayz_Magazines,false,true];" \n
" publicVariableServer ""dayzPlayerSave"";" \n
" " \n
" if (isServer) then {" \n
@@ -763,8 +763,13 @@ class FSM
"_setDir = _worldspace select 0;" \n
"_setPos = _worldspace select 1;" \n
"" \n
- "player setPosATL _setPos;" \n
- "player setDir _setDir;" \n
+ "if(dayz_paraSpawn and !(player isKindOf ""PZombie_VB"")) then {" \n
+ " _para = createVehicle [""ParachuteWest"", _setPos, [], 0, ""FLY""]; " \n
+ " player moveInDriver _para;" \n
+ "} else {" \n
+ " player setPosATL _setPos;" \n
+ " player setDir _setDir;" \n
+ "};" \n
"" \n
"{" \n
" if (player getVariable[""hit_""+_x,false]) then { " \n
@@ -986,7 +991,7 @@ class FSM
name = "Load_In";
init = /*%FSM*/"//Reveal action types" \n
"" \n
- "{player reveal _x} forEach (nearestObjects [getPosATL player, [""AllVehicles"",""WeaponHolder"",""StashSmall"",""StashMedium"",""TentStorage"",""BuiltItems"",""ModularItems"",""DZE_Base_Object""], 50]);" \n
+ "{player reveal _x} forEach (nearestObjects [getPosATL player, dayz_reveal, 50]);" \n
"" \n
"dayz_clientPreload = true;" \n
"3 fadeSound 1;" \n
@@ -1091,7 +1096,7 @@ class FSM
"" \n
"reload player;" \n
"" \n
- "if (_currentAnim != """") then {" \n
+ "if (_currentAnim != """" and !dayz_paraSpawn) then {" \n
" [objNull, player, rSwitchMove,_currentAnim] call RE;" \n
"};" \n
"if (_currentWpn != """") then {" \n
diff --git a/SQF/dayz_code/system/player_spawn_2.sqf b/SQF/dayz_code/system/player_spawn_2.sqf
index a607fbc4b..9124eb8c9 100644
--- a/SQF/dayz_code/system/player_spawn_2.sqf
+++ b/SQF/dayz_code/system/player_spawn_2.sqf
@@ -1,12 +1,9 @@
-private["_refObj","_size","_vel","_speed","_hunger","_thirst","_array","_unsaved","_timeOut","_result","_lastSave"];
+private ["_refObj","_size","_vel","_speed","_hunger","_thirst","_timeOut","_result","_factor","_randomSpot","_mylastPos","_distance","_lastTemp","_rnd","_listTalk","_bloodChanged","_id","_messTimer","_display","_control","_combatdisplay","_combatcontrol","_timeleft","_inVehicle","_tempPos","_lastUpdate","_foodVal","_thirstVal","_lowBlood","_startcombattimer","_combattimeout","_myPos","_lastPos","_debug"];
disableSerialization;
_timeOut = 0;
_messTimer = 0;
-_lastSave = 0;
_lastTemp = dayz_temperatur;
_debug = getMarkerpos "respawn_west";
-_isBandit = false;
-_isHero = false;
player setVariable ["temperature",dayz_temperatur,true];
@@ -26,7 +23,6 @@ while {true} do {
_size = (sizeOf typeOf _refObj) * _factor;
_vel = velocity player;
_speed = round((_vel distance [0,0,0]) * 3.5);
- _saveTime = (playersNumber west * 2) + 10;
//reset position
_randomSpot = true;
@@ -39,16 +35,19 @@ while {true} do {
if (_distance < 500) then {
_randomSpot = false;
};
- _distance = _mylastPos distance _tempPos;
- if (_distance > 400) then {
- _randomSpot = false;
+ if (!isNil "_mylastPos") then {
+ _distance = _mylastPos distance _tempPos;
+ if (_distance > 400) then {
+ _randomSpot = false;
+ };
};
-
if (_randomSpot) then {
_mylastPos = _tempPos;
};
- dayz_mylastPos = _mylastPos;
+ if (!isNil "_mylastPos") then {
+ dayz_mylastPos = _mylastPos;
+ };
dayz_areaAffect = _size;
if (_speed > 0.1) then {
@@ -213,27 +212,17 @@ while {true} do {
};
//Save Checker
- if (dayz_unsaved) then {
- if ((diag_tickTime - dayz_lastSave) > _saveTime) then {
-
- dayzPlayerSave = [player,dayz_Magazines,false,false];
- publicVariableServer "dayzPlayerSave";
-
- if (isServer) then {
- dayzPlayerSave call server_playerSync;
- };
-
- dayz_lastSave = diag_tickTime;
- dayz_Magazines = [];
+ if (dayz_unsaved or ((time - dayz_lastSave) > 300)) then {
+ dayzPlayerSave = [player,dayz_Magazines,false,false];
+ publicVariableServer "dayzPlayerSave";
+
+ // diag_log format["Save Checker: %1", dayzPlayerSave];
+
+ if (isServer) then {
+ dayzPlayerSave call server_playerSync;
};
- _lastSave = _lastSave + 2;
- } else {
- dayz_lastSave = diag_tickTime;
- _lastSave = 0;
- };
-
- if (!dayz_unsaved) then {
- dayz_lastSave = diag_tickTime;
+ dayz_lastSave = time;
+ dayz_Magazines = [];
};
//Attach Trigger Current Object
@@ -284,16 +273,18 @@ while {true} do {
};
_lastPos = getPosATL player;
- if (player == vehicle player) then {
- if (_mylastPos distance _lastPos > 200) then {
- if (alive player) then {
- player setPosATL _mylastPos;
+ if (!isNil "_mylastPos") then {
+ if (player == vehicle player) then {
+ if (_mylastPos distance _lastPos > 200) then {
+ if (alive player) then {
+ player setPosATL _mylastPos;
+ };
};
- };
- } else {
- if (_mylastPos distance _lastPos > 800) then {
- if (alive player) then {
- player setPosATL _mylastPos;
+ } else {
+ if (_mylastPos distance _lastPos > 800) then {
+ if (alive player) then {
+ player setPosATL _mylastPos;
+ };
};
};
};
diff --git a/SQF/dayz_server/compile/server_onPlayerDisconnect.sqf b/SQF/dayz_server/compile/server_onPlayerDisconnect.sqf
index fe2b07120..cd911ef2f 100644
--- a/SQF/dayz_server/compile/server_onPlayerDisconnect.sqf
+++ b/SQF/dayz_server/compile/server_onPlayerDisconnect.sqf
@@ -2,7 +2,7 @@ private ["_object","_myGroup","_id","_playerID","_playerName","_characterID","_p
_playerID = _this select 0;
_playerName = _this select 1;
_object = call compile format["player%1",_playerID];
-_characterID = _object getVariable ["characterID","0"];
+_characterID = _object getVariable ["CharacterID","0"];
_timeout = _object getVariable["combattimeout",0];
_playerIDtoarray = [];
diff --git a/SQF/dayz_server/compile/server_playerSetup.sqf b/SQF/dayz_server/compile/server_playerSetup.sqf
index d7e9af05a..6ce63cb63 100644
--- a/SQF/dayz_server/compile/server_playerSetup.sqf
+++ b/SQF/dayz_server/compile/server_playerSetup.sqf
@@ -248,7 +248,7 @@ if (_randomSpot) then {
dayz_players set [count dayz_players,_playerObj];
//record player pos locally for server checking
-_playerObj setVariable["characterID",_characterID,true];
+_playerObj setVariable["CharacterID",_characterID,true];
_playerObj setVariable["humanity",_humanity,true];
_playerObj setVariable["humanity_CHK",_humanity];
//_playerObj setVariable["worldspace",_worldspace,true];
diff --git a/SQF/dayz_server/compile/server_playerSync.sqf b/SQF/dayz_server/compile/server_playerSync.sqf
index 47281b9ec..96b1ad742 100644
--- a/SQF/dayz_server/compile/server_playerSync.sqf
+++ b/SQF/dayz_server/compile/server_playerSync.sqf
@@ -6,7 +6,7 @@ _magazines = _this select 1;
_forceGear = _this select 3;
_force = true;
-_characterID = _character getVariable ["characterID","0"];
+_characterID = _character getVariable ["CharacterID","0"];
_charPos = getPosATL _character;
_isInVehicle = vehicle _character != _character;
_timeSince = 0;
@@ -185,7 +185,7 @@ if (_characterID != "0") then {
// If player is in a vehicle, keep its position updated
if (vehicle _character != _character) then {
-// [vehicle _character, "position"] call server_updateObject;
+ //[vehicle _character, "position"] call server_updateObject;
if (!(vehicle _character in needUpdate_objects)) then {
//diag_log format["DEBUG: Added to NeedUpdate=%1",_object];
needUpdate_objects set [count needUpdate_objects, vehicle _character];
diff --git a/SQF/dayz_server/compile/server_publishObject.sqf b/SQF/dayz_server/compile/server_publishObject.sqf
index efce40b4b..fa051b656 100644
--- a/SQF/dayz_server/compile/server_publishObject.sqf
+++ b/SQF/dayz_server/compile/server_publishObject.sqf
@@ -20,7 +20,7 @@ _key call server_hiveWrite;
_object setVariable ["lastUpdate",time];
_object setVariable ["ObjectUID", _uid,true];
-// _object setVariable ["characterID",_charID,true];
+// _object setVariable ["CharacterID",_charID,true];
_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
// Test disabling simulation server side on buildables only.
diff --git a/SQF/dayz_server/system/server_monitor.sqf b/SQF/dayz_server/system/server_monitor.sqf
index 8694ea0f8..f2bb91fa3 100644
--- a/SQF/dayz_server/system/server_monitor.sqf
+++ b/SQF/dayz_server/system/server_monitor.sqf
@@ -131,8 +131,13 @@ if (isServer and isNil "sm_done") then {
_object setVariable ["lastUpdate",time];
_object setVariable ["ObjectID", _idKey, true];
+ _lockable = 0;
+ if(isNumber (configFile >> "CfgVehicles" >> _type >> "lockable")) then {
+ _lockable = getNumber(configFile >> "CfgVehicles" >> _type >> "lockable");
+ };
+
// fix for leading zero issues on safe codes after restart
- if (_type in DZE_LockedStorage) then {
+ if (_lockable == 4) then {
_codeCount = (count (toArray _ownerID));
if(_codeCount == 3) then {
_ownerID = format["0%1", _ownerID];
@@ -145,6 +150,16 @@ if (isServer and isNil "sm_done") then {
};
};
+ if (_lockable == 3) then {
+ _codeCount = (count (toArray _ownerID));
+ if(_codeCount == 2) then {
+ _ownerID = format["0%1", _ownerID];
+ };
+ if(_codeCount == 1) then {
+ _ownerID = format["00%1", _ownerID];
+ };
+ };
+
_object setVariable ["CharacterID", _ownerID, true];
clearWeaponCargoGlobal _object;
@@ -154,14 +169,14 @@ if (isServer and isNil "sm_done") then {
_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
// Test disabling simulation server side on buildables only.
_object enableSimulation false;
+ // used for inplace upgrades and lock/unlock of safe
+ _object setVariable ["OEMPos", _pos, true];
};
_object setdir _dir;
_object setpos _pos;
_object setDamage _damage;
- _object setVariable ["OEMPos", _pos, true];
-
if (count _intentory > 0) then {
if (_type in DZE_LockedStorage) then {
// Fill variables with loot
diff --git a/Server Files/Battleye/attachto.txt b/Server Files/Battleye/attachto.txt
index 45116abad..aed2414e4 100644
--- a/Server Files/Battleye/attachto.txt
+++ b/Server Files/Battleye/attachto.txt
@@ -1,56 +1,8 @@
-1 "" !="VaultStorageLocked" !="Hedgehog_DZ" !="Sandbag1_DZ" !="Fort_RazorWire" !="WoodGate_DZ" !="Land_HBarrier1_DZ" !="Land_HBarrier3_DZ"
-5 "Offroad_DSHKM_Gue"
-5 "Old_moto_TK_Civ_EP1"
-5 "MMT_Civ"
-5 "Old_bike_TK_INS_EP1"
-5 "Old_bike_TK_CIV_EP1"
-5 "TT650_Ins"
-5 "TT650_Civ"
-5 "TT650_TK_CIV_EP1"
-5 "ATV_US_EP1"
-5 "hilux1_civil_3_open_EP1"
-5 "hilux1_civil_2_covered"
-5 "datsun1_civil_3_open"
-5 "Pickup_PK_TK_GUE_EP1"
-5 "VWGolf"
-5 "Lada1"
-5 "Lada2"
-5 "LadaLM"
-5 "Lada2_TK_CIV_EP1"
-5 "Skoda"
-5 "SkodaGreen"
-5 "SkodaRed"
-5 "SkodaBlue"
-5 "car_sedan"
-5 "car_hatchback"
-5 "policecar"
-5 "GLT_M300_LT"
-5 "GLT_M300_ST"
-5 "Volha_1_TK_CIV_EP1"
-5 "Volha_2_TK_CIV_EP1"
-5 "VolhaLimo_TK_CIV_EP1"
-5 "UAZ_Unarmed_TK_EP1"
-5 "UAZ_RU"
-5 "UAZ_INS"
-5 "UAZ_CDF"
+1 "" !="VaultStorageLocked" !="LockboxStorageLocked" !="Hedgehog_DZ" !="Sandbag1_DZ" !="Fort_RazorWire" !="WoodGate_DZ" !="Land_HBarrier1_DZ"
5 "Ikarus"
-5 "SUV_TK_CIV_EP1"
-5 "SUV_Green"
-5 "SUV_Yellow"
-5 "SUV_White"
-5 "SUV_Silver"
-5 "SUV_Red"
-5 "SUV_Pink"
-5 "SUV_Orange"
-5 "SUV_Charcoal"
-5 "SUV_Blue"
5 "UH1H_DZ"
5 "Mi17_Civilian_DZ"
5 "Mi17_DZ"
-5 "LandRover_CZ_EP1"
-5 "HMMWV_Ambulance"
-5 "HMMWV_DES_EP1"
-5 "HMMWV_Ambulance_CZ_DES_EP1"
5 "PBX"
5 "Zodiac"
5 "RHIB"
@@ -64,15 +16,11 @@
5 "Ural_TK_CIV_EP1"
5 "Ural_CDF"
5 "Kamaz"
-5 "tractor"
5 "CSJ_GyroP"
-5 "S1203_ambulance_EP1"
-5 "S1203_TK_CIV_EP1"
5 "MH6J_DZ"
5 "AH6X_DZ"
5 "MTVR_DES_EP1"
-5 "LandRover_MG_TK_EP1"
-5 "M1030_US_DES_EP1"
5 "V3S_Civ"
5 "Parachute"
-5 "VaultStorage" !"VaultStorageLocked"
\ No newline at end of file
+5 "VaultStorage" !"VaultStorageLocked"
+5 "LockboxStorage" !"LockboxStorageLocked"
\ No newline at end of file
diff --git a/Server Files/Battleye/createvehicle.txt b/Server Files/Battleye/createvehicle.txt
index 3cb40e6ac..6ea55906b 100644
--- a/Server Files/Battleye/createvehicle.txt
+++ b/Server Files/Battleye/createvehicle.txt
@@ -1,6 +1,6 @@
1 "" !="WeaponHolder" !="TinCan" !="Rabbit" !="Goat01_EP1" !="Goat02_EP1" !="Goat" !="WildBoar" !="Sheep" !="Sheep02_EP1" !="Sheep01_EP1" !="Hen" !="Cock" !="Cow01" !="Cow02" !="Cow03" !="Cow04" !="Cow01_EP1" !="zZombie_Base" !="z_hunter" !="z_teacher" !="z_doctor" !="z_suit1" !="z_suit2" !="z_worker1" !="z_worker2" !="z_worker3" !="z_villager1" !="z_villager2" !="z_villager3" !="z_soldier" !="z_soldier_heavy" !="z_soldier_pilot" !="z_policeman" !="z_priest" !="BoltSteelF" !="Land_Fire_DZ" !="SodaCan" !="JackDaniels" !="RoadFlare" !="ChemRed" !="ChemBlue" !="ChemGreen" !="Survivor1_DZ" !="Survivor2_DZ" !="Survivor3_DZ" !="SurvivorW2_DZ" !="Bandit1_DZ" !="CZ_VestPouch_EP1" !="DZ_Patrol_Pack_EP1" !="DZ_CivilBackpack_EP1" !="DZ_ALICE_Pack_EP1" !="SmokeShell" !="SmokeShellRed" !="SmokeShellGreen" !="MedBox0" !="Camo1_DZ" !="Soldier1_DZ" !="DZ_Backpack_EP1" !="Sniper1_DZ" !="DZ_Assault_Pack_EP1" !="BanditW1_DZ" !="G_40mm_HE" !="dog" !="WeaponHolder_MeleeCrowbar" !="WeaponHolder_ItemHatchet" !="WeaponHolder_PartGeneric" !="WeaponHolder_ItemJerrycan" !="WeaponHolder_PartFueltank" !="WeaponHolder_PartGlass" !="WeaponHolder_PartEngine" !="WeaponHolder_PartWheel" !="WeaponHolder_PartVRotor" !="DZ_Czech_Vest_Puch" !="DZ_British_ACU" !="DZ_TK_Assault_Pack_EP1"
1 "SeaGull"
-5 "box" !="MedBox0" !="AmmoBoxSmall_556" !="AmmoBoxSmall_762" !="ItemMatchbox" !="ItemToolbox" !="CardBoardBox" !="FoodBox1" !="FoodBox2" !="FoodBox3"
+5 "box" !="MedBox0" !="AmmoBoxSmall_556" !="AmmoBoxSmall_762" !="ItemMatchbox" !="ItemToolbox" !="CardBoardBox" !="FoodBox1" !="FoodBox2" !="FoodBox3" !="LockboxStorageLocked" !="LockboxStorage" !="WeaponHolder_ItemLockbox"
5 "Mine"
5 "ARTY_"
5 "SADARM_"
@@ -35,7 +35,7 @@
5 "DSHKM"
5 "MK19"
5 "AGS"
-5 "Nest_" !="M240Nest_DZ" !="SandNest_DZ" //Nest_M240 //Nest_PK
+5 "Nest_" !="M240Nest_DZ" !="SandNest_DZ" !="Land_fortified_nest_smallPreview"
5 "R_PG"
5 "R_OG"
5 "B_"
@@ -47,7 +47,7 @@
1 "M_" !="G_40mm_HE" //!="40mm_" //keep monitoring to catch obvious abuse
5 "Parachute" !="ParachuteWest" //under monitoring
1 "dog" //until released not welcome
-5 "Land_" !="Land_Fire_DZ" !="Land_HBarrier1_DZ" !="Land_HBarrier3_DZ"
+5 "Land_" !="Land_Fire_DZ" !="Land_HBarrier1_DZ" !="Land_HBarrier1Preview" !="Land_HBarrier3_DZ" !="Land_HBarrier3ePreview" !="Land_fortified_nest_smallPreview" !="Land_DZE_WoodDoor" !="Land_DZE_LargeWoodDoor" !="Land_DZE_GarageWoodDoor" !="Land_DZE_WoodDoorLocked" !="Land_DZE_LargeWoodDoorLocked" !="Land_DZE_GarageWoodDoorLocked"
5 "BBarracks"
1 "_ep1" !="DZ_Patrol_Pack_EP1" !="DZ_CivilBackpack_EP1" !="CZ_VestPouch_EP1" !="DZ_ALICE_Pack_EP1" !="DZ_Backpack_EP1" !="DZ_Assault_Pack_EP1" !="DZ_TK_Assault_Pack_EP1"
1 "_baf"
@@ -56,7 +56,7 @@
5 "_LHD_
5 "_acr"
5 "MASH_"
-5 "Fort_" !="Fort_RazorWire"
+5 "Fort_" !="Fort_RazorWire" !="Fort_RazorWirePreview"
5 "BasicWeapons"
5 "SpecialWeapons"
5 "_uav"
diff --git a/Server Files/Battleye/scripts.txt b/Server Files/Battleye/scripts.txt
index 6e1465c47..de20fb752 100644
--- a/Server Files/Battleye/scripts.txt
+++ b/Server Files/Battleye/scripts.txt
@@ -1,243 +1,8 @@
-1 101000
-1 action_crate1
-1 actionKeys !"if (_dikCode in (actionKeys \"GetOver\")) then {"
-1 activateAddons
-1 addAction !"s_player_holderPickup = _holder addAction [format[(localize \"str_init_take\"),_name]" !"raddActioncode" !"\"addAction\"," !"= player addAction [format[localize \"str_" !"_action = player addAction [format[(localize \"str_init_take\"),_name]," !"_action = player addAction [format[(localize \"STR_DAYZ_CODE_1\"),_name], \"" !"s_player_grabflare = player addAction [format[localize \"str_actions_medical_15\",_text], \"" !"_action = _vehicle addAction [format[\"Add AMMO to %1\",_weaponName], \"" !"raddActioncode = compile PreprocessFile (BIS_PathMPscriptCommands + 'addAction.sqf')" !"raddAction = 'addAction'"
-1 addBackpack !"_holder addbackpackcargoGlobal [_x,(_objWpnQty select _countr)];" !"_newUnit addBackpack _newBackpackType;" !"player addBackpack _backpackType;" !"player addBackpack _bcpk;" !"player addBackpack _ba"
-1 addCamShake !"addCamShake [5, 0.5, 25];" !"addCamShake [2, 1, 25];" !"addCamShake [15, 0.8, 25];" !"addCamShake [2, 0.5, 25];" !"addCamShake [_temp,(_looptime + 1),30];"
-1 addMagazine !"(getPosATL player)] spawn player_alertZombies;\n\nplayer addMagazine \"ItemWaterbottle\";\n};" !"player removeMagazine _meat;\nplayer addMagazine _meatcooked;\nif !(_meat in magazines player) exitWith" !"publicVariable \"PVDZ_hlt_Morphine\";\n} else {\nplayer addMagazine \"ItemMorphine\";\nr_interrupt = false;" !"player addMagazine [\"Quiver\",_qty_quiverarrows];" !"for \"_i\" from 1 to _qtynew_create_mags_full do {" !"raddMagazineCargocode={diag_log(\"WARNING illegal RE raddMagazineCargocode with args:\"+str(_this));};" !"addMagazineCargo" !"raddMagazinecode" !"player addMagazine _magType;" !"_animalbody addMagazine _rawfoodtype;" !"_agent addMagazine _loot;" !"ile >> \"cfgmagazines\" >> (configName _item))) then {_unit addMagazine configName _item;};" !"player addMagazine 'machete_swing';" !"if (typeName _x == \"ARRAY\") then {_newUnit addMagazine [_x select 0,_x select 1] } else { _newUnit addMagazine _x" !"player addMagazine 'crowbar_swing';" !"player addMagazine _x;" !"player addMagazine [_item,_val];" !"raddMagazinecode = compile PreprocessFile (BIS_PathMPscriptCommands + 'addMagazine.sqf')" !"player addMagazine \"ItemBandage\";" !"raddMagazine = 'addMagazine'" !"\"addMagazine\"," !"wUnit addMagazine _x };"
-1 addSwitchableUnit !"addSwitchableUnit _newUnit;" !"addSwitchableUnit dayz_originalPlayer;"
-1 addWeapon !"addWeaponCargo" !"raddWeaponcode" !"player addWeapon \"Loot\";" !"player addWeapon" !"player addWeapon \"Flare\";" !"igfile >> \"cfgweapons\" >> (configName _item))) then {_unit addWeapon configName _item;};" !"raddWeapon = 'addWeapon'" !"_newUnit addWeapon _x;" !"\"addWeapon\"," !"player addWeapon _x;" !"raddWeaponcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'addWeapon.sqf')"
-1 allMissionObjects !"{ _id = [_x,0] spawn object_roadFlare } forEach (allMissionObjects \"RoadFlare\");" !"} forEach allMissionObjects \"SpawnableWreck\";"
-1 allowDamage !"_object allowDamage false;" !"player allowDamage false;" !"player allowDamage true;"
-1 allowDammage !"this enableSimulation false;this allowDammage false;this disableAI 'FSM';this disableAI 'ANIM';this disableAI 'MOVE';"
-1 attachObject !"lightAttachObject"
-1 attachTo !"_smoke = \"#particlesource\" createVehicleLocal _pos;\n_smoke attachto [_v,[0,0,0],\"destructionEffect1\"];" !"_bolt attachTo [_hitObject,_val,_hitMemoryPt];" !"_flare attachTo [player,[0,0,0],\"granat2\"];" !"_fl attachto [_v,[0,0,0],\"destructionEffect2\"]" !"_point attachTo [_unit,_modelPos,_wound];"
-1 BIS_Effects_AirDestructionStage !"BIS_Effects_AirDestructionStage2 = compile preprocessFileLineNumbers" !"%2]spawn BIS_Effects_AirDestructionStage2\",_int, _t];" !"BIS_Effects_AirDestructionStage2=compile preprocessFileLineNumbers"
-1 BIS_MPF_ServerPersistentCallsArray
-1 buttonSetAction !"buttonSetAction [104,\"\"];"
-1 campaignConfigFile !"_pathConfig = [configfile,campaignconfigfile,missionconfigfile] select _t"
-1 clearMagazineCargo !"rclearMagazineCargocode" !"rclearMagazineCargocode = compile PreprocessFile (BIS_PathMPscriptCommands + 'clearMagazineCargo.sqf')" !"apon\",\"addWeaponCargo\",\"addWPCur\",\"animate\",\"callVar\",\"clearMagazineCargo\",\"clearWeaponCargo\",\"createDiaryRecord\",\"createMarkerL" !"\"clearMagazineCargo\"," !"rclearMagazineCargo = 'clearMagazineCargo'" !"clearMagazineCargoGlobal _firePlace;"
-1 clearVehicleInit !"etDropInterval _dr;_i=_i+1;sleep 0.2;};};_pos=getpos _v;clearVehicleInit _v;if!(isDedicated)then{deletevehicle _fl;deletevehicle" !"clearVehicleInit _v;" !";_pos=getpos _v;clearVehicleInit _v;if!(isDedicated)then{deletevehicle _fl;deletevehicle _sm;};if(surfaceiswater(_pos)&&(_pos se"
-1 clearWeaponCargo !"rclearWeaponCargocode" !"rclearWeaponCargocode = compile PreprocessFile (BIS_PathMPscriptCommands + 'clearWeaponCargo.sqf')" !"apon\",\"addWeaponCargo\",\"addWPCur\",\"animate\",\"callVar\",\"clearMagazineCargo\",\"clearWeaponCargo\",\"createDiaryRecord\",\"createMarkerL" !"\"clearWeaponCargo\"," !"earMagazineCargo\",\"clearWeaponCargo\",\"createDiaryRecord\",\"createMarkerLocal\",\"createSimpleTask\",\"createTaskSet\",\"debugLog\",\"dele" !"rclearWeaponCargo = 'clearWeaponCargo'" !"clearWeaponCargoGlobal _firePlace"
-1 closeDialog !"closeDialog 0;dayz_selectGender = 'Survivor2_DZ';" !"if ((_this select 1) == 22) then {closeDialog 129; true} else {false}" !"closeDialog 0;" !"closeDialog 0;};"
-1 combatMode !"setCombatMode"
-1 commander !="IsLeader + VehicleCommander"
-1 commandingMenu !="\"showCommandingMenu\"" !"rshowCommandingMenucode" !"'showCommandingMenu'" !"rshowCommandingMenucode" !"\"showCommandingMenu\"," !"Description\",\"setTaskState\",\"setWPdesc\",\"setWPtype\",\"showCommandingMenu\",\"sideChat\",\"sideRadio\",\"skiptime\",\"spawn\",\"switchAction" !"c\",\"setWPtype\",\"showCommandingMenu\",\"sideChat\",\"sideRadio\",\"skiptime\",\"spawn\",\"switchAction\",\"switchCamera\",\"taskHint\",\"titleCut" !"rshowCommandingMenucode = compile PreprocessFile (BIS_PathMPscriptCommands + 'showCommandingMenu.sqf')" !"osLocal\",\"setObjectTexture\",\"setSimpleTaskDescription\",\"setTaskState\",\"setWPdesc\",\"setWPtype\",\"showCommandingMenu\",\"sideChat\",\"s" !"rshowCommandingMenu = 'showCommandingMenu'" !",\"setWPtype\",\"showCommandingMenu\",\"sideChat\",\"sideRadio\",\"skiptime\",\"spawn\",\"switchAction\",\"switchCamera\",\"taskHint\",\"titleCut\","
-1 commandStop !"NotEmpty + CommandsToPilot"
-1 composeText !"_text = composetext _finalArray;"
-1 createAgent !"if (_type == \"DZ_Pastor\") then { _agent = createAgent [_type, _Pos, [], 0, \"NONE\"]; } else { _agent = createAgen" !"_agent = createAgent [_type, _Pos, [], 0, \"FORM\"]; };" !"_agent = createAgent [_type, _position, [], _radius, _method];"
-1 createCenter !"createcenter sidelogic"
-1 createDialog !"createDialog 'horde_journal_front_cover';" !"createDialog \"horde_journal_front_cover\";" !"createDialog 'horde_journal_pages_bandits';" !"createDialog 'horde_journal_pages_journal_humanity';" !"createDialog 'horde_journal_pages_headshots';" !"createDialog 'horde_journal_pages_humanity_art';" !"createDialog 'horde_journal_pages_murders';" !"createDialog 'horde_journal_pages_zombies';" !"createDialog \"RscDisplayGenderSelect\";"
-1 createGearDialog !"createGearDialog [player, \"RscDisplayGear\"];"
-1 createGroup !"_group = createGroup west;" !"BIS_MPF_dummygroup = createGroup sideLogic;" !"_group = createGroup west;"
-1 createMarker !"\"createMarkerLocal\"" !"BIS_GITA_fnc_createMarkers" !"rcreateMarkerLocalcode" !"os \"respawn_west\", _debug] call BIS_fnc_areEqual)) then {" !"_markerstr = createMarkerLocal [\"MaxZeds\", _position]" !"'createMarkerLocal'" !"'createMarkerLocal.sqf'" !"rcreateMarkerLocalcode={diag_log(\"FACO RE(DEL)rcreateMarkerLocalcode args:\"+str(_this));};"
-1 createMenu !"BIS_fnc_createmenu"
-1 createSimpleTask !"rcreateSimpleTaskcode" !"rcreateSimpleTask = 'createSimpleTask'" !"createDiaryRecord\",\"createMarkerLocal\",\"createSimpleTask\",\"createTaskSet\",\"debugLog\",\"deleteWP\",\"enablesimulation\",\"endMission\"," !"\"createSimpleTask\"," !"earMagazineCargo\",\"clearWeaponCargo\",\"createDiaryRecord\",\"createMarkerLocal\",\"createSimpleTask\",\"createTaskSet\",\"debugLog\",\"dele" !"rcreateSimpleTaskcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'createSimpleTask.sqf')"
-1 createSoundSource !"_snd = createSoundSource [\"Sound_Fire\", getpos _v," !"a = createSoundSource[\"Sound_Flies\",getpos (_this" !"_snd = createSoundSource [\"Sound_Fire\", getpos _v, [], 0];" !"_sound = createSoundSource[\"Sound_Flies\",_" !"_sound = createSoundSource[\"Sound_Flies\",_pos" !"a = createSoundSource[\"Sound_Flies\",getpos (_t"
-1 createTask !="createTaskSet" !"_newUnit = _group createUnit [_class,getMarkerPos \"respawn_west\",[],0,\"NONE\"];" !"BIS_EW_fnc_createtask" !"_task = _this createTask [[_taskType], 1.0];"
-1 createUnit !"_newUnit = _group createUnit [_class,dayz_spawnPos" !"_newUnit = _group createUnit [_class,getMarkerPos \"respawn_west\",[],0,\"NONE\"];" !"BIS_MPF_logic = BIS_MPF_dummygroup createUnit [\"Logic\", [1000,10,0], [], 0, \"NONE\"];" !"_newUnit = _group createUnit [_class,dayz_spawnPos," !"_newUnit = _group createUnit [_class,dayz_spawnPos,[],0,\"NONE\"];"
-1 createVehicle !createVehicleLocal !"_bolt = createVehicle [\"WoodenArrowF\", _endPos, [], 0, \"CAN_COLLIDE\"];\n_bolt se" !"spawn player_alertZombies;" !="createVehicleLocal" !"_item = createVehicle [\"WeaponHolder\", _iPos, [], _radius, \"CAN_COLLIDE\"];" !"_item = createVehicle [\"WeaponHolder\", position player, [], 0.0, \"CAN_COLLIDE\"]"
-1 createVehicleLocal !"_source = \"#particlesource\" createVehicleLocal getpos (_this select 0);" !"_object = _type createVehicleLocal [_position select 0,_position select 1,-100];" !"_obj = _class createVehicleLocal (getMarkerpos \"respawn_west\");" !"_obj = _class createVehicleLocal _new;" !"\"#lightpoint\" createVehicleLocal (getPosATL _flare);" !"_object = _type createVehicleLocal _position;" !"\"#particlesource\" createVehicleLocal _x;" !"\"Logic\" createVehicleLocal getPosATL _unit;" !"\"#particlesource\" createVehicleLocal getPosATL _unit;" !"_Crater= \"CraterLong\" createvehiclelocal [_pos select 0, _pos select 1, 0];" !"\"#particlesource\" createVehicleLocal _pos;" !"\"#particlesource\" createVehicleLocal getpos _v;"
-1 ctrlActivate !"_cancel = _display displayCtrl 2;\nif (_close) then {\nctrlActivate _cancel;" !"ctrlActivate _control;"
-1 ctrlCommit !"_adminGroupIDC ctrlCommit _delay;\n};\n_editPwdBackground = _display displayCtrl 1123;" !"_control ctrlCommit 0" !"_textControl ctrlcommit 0.01" !"_primaryWeaponControl ctrlCommit 0.0;" !"_control ctrlCommit 0;" !"(_controlsBuffer select _x) ctrlCommit _ctrl_delay;" !"_group ctrlCommit 0;" !"_ctrl1 ctrlCommit 1;" !"ctrlCommit 0;"
-1 ctrlEnable !"_control ctrlenable false" !"_adminGroupIDC ctrlEnable _isAdmin" !"_btnAbort ctrlEnable false;" !"_disp_ctrl ctrlEnable true;" !"_btnAbort ctrlEnable fals"
-1 ctrlParent !"_display = ctrlParent _control;" !"_dialog = ctrlParent _control;"
-1 ctrlPosition !"((ctrlPosition _delayControl) select 1)" !"_pos = ctrlPosition _group;" !"_pos = ctrlPosition _group;" !"_pos = ctrlPosition _group;" !"_posX = ((ctrlPosition _disp_ctrl) select 0)+ (_move_ctrl select 0);" !"_pos = ctrlPosition _control;" !"_y = (ctrlPosition _control) select 1;" !"_ctrl1Pos = ctrlPosition _ctrl1;" !"= ctrlPosition _control;" !"_grpPos = ctrlPosition _control;"
-1 ctrlSetEventHandler !"_menu ctrlSetEventHandler [\"ButtonClick" !"_menu ctrlSetEventHandler [\"ButtonClick\",_compile];"
-1 ctrlSetStructuredText !"space getVariable \"horde_myDisplay\") displayCtrl _x) ctrlSetStructuredText parseText format [\"%1\", _b];\n} forEach _need_to_blank" !"space getVariable \"horde_myDisplay\") displayCtrl _x) ctrlSetStructuredText parseText format [\"%1\", _5];\n};\nif (_count == _full_b" !"ace getVariable \"horde_myDisplay\") displayCtrl 1800) ctrlSetStructuredText parseText format [_str_left_text, _1, _2, _3, _4, _5," !"ace getVariable \"horde_myDisplay\") displayCtrl 1801) ctrlSetStructuredText parseText format [\"%1\", _top_value];" !"_descriptionControl ctrlSetStructuredText parseText(_selectedItemDescription);"
-1 ctrlShow !"ctrlShow [1906, false];\n((uiNamespace getVariable \"horde_myDisplay\")" !"((_this select 0) displayctrl 8401) ctrlshow false" !"_control ctrlShow true;" !"(_display displayCtrl 1302) ctrlShow true;" !"_ctrlFracture ctrlShow true;" !"_group ctrlShow true;" !"_menu ctrlShow false;" !"_control ctrlShow false;" !"(_display displayCtrl 1301) ctrlShow true;"
-1 ctrlText !"_password = ctrlText _editPassControl;" !"_return = ctrlText _control;"
-1 currentMuzzle !"_currentWpn = currentMuzzle player;" !"_currentWpn = currentMuzzle player;"
-1 currentTask !="\"setCurrentTask\"" !="\"setCurrentTaskArrays\"" !"rsetCurrentTaskArrayscode" !"rsetCurrentTask" !"rsetCurrentTaskArrays" !"'setCurrentTaskArrays.sqf'" !"rsetCurrentTaskcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'setCurrentTask.sqf')" !"rsetCurrentTaskcode"
-1 currentWeapon !"_weapon = currentWeapon player;" !"\"_currentWeaponHolders\"" !"_move = switch (currentWeapon player) do {" !"if ((currentWeapon player == \"\")) then { player action [\"SWITCHWEAPON\"," !"_currentWpn = currentWeapon p"
-1 currentZeroing
-1 CursorOnGroupMember !"CursorOnGroupMemberSelected"
-1 CursorOnGroupMemberSelected
-1 cursorTarget !_cursorTarget !"dayz_myCursorTarget" !"_object = cursorTarget;" !"if (inflamed cursorTarget and _hasRawMeat and _canDo) then {" !"_unit = cursorTarget;" !"ursorTarget) and _isVehicle and !_isMan and _hasToolbox and (damage cursorTarget < 1)) then {" !"ursorTarget >= 2) and (count (crew cursorTarget))== 0 and ((vectorUp cursorTarget) select 2) < 0.5) then {" !"t = cursorTarget isKindOf \"TentStorage\";" !"_isVehicle = cursorTarget isKindOf \"AllVehicles\";" !"if(cursorTarget == dayz_hasFire and _canDo) then {" !"if (!isNull cursorTarget and !dayz_heartBeat) then {" !"_menClose = cursorTarget;"
-1 cutText !"format[localize \"str_success_gutted_animal\",_text,_qty];\ncutText [_string, \"PLAIN DOWN\"];\n};" !"player removeMagazine \"ItemBloodbag\";\ncutText [\"Transfusion in progress, remain still...\"" !"0 cutText [\"\",\"BLACK\"];" !"cutText [\"\", \"BLACK\",0]" !"cutText [localize \"str_player_24\", \"PLAIN DOWN\"];" !"cutText [localize \"str_abort_playerclose\", \"PLAIN DOWN\"];" !"1 cutText [\"Disconnected!\", \"PLAIN\"];" !"cutText [\"\",\"BLACK OUT\"];" !"cutText [localize \"STR_DAYZ_CODE_2\", \"PLAIN DOWN\"];" !"cutText [localize \"str_fireplace_01\", \"PLAIN DOWN\"]" !"cutText [localize \"str_player_25\", \"PLAIN DOWN\"];" !"3100 cuttext [\"\",\"plain\"];" !"1 cutText [\"\", \"BLACK\",0];" !"cutText [format[localize \"str_abort_playerclose\",_text], \"PLAIN DOWN\"" !"startLoadingScreen[\"\",\"RscDisplayLoadCustom\"];cutText[\"\",\"BLACK OUT\"];enableSaving[false,false];dayzHiveRequest=[];" !"(Killed by %1%2)\",AttackedByName,_tmp];999 cutText[_killmsg,\"PLAIN DOWN\",7];diag_log(format[\"KILLERMSG Last atta" !"cutText [format[localize \"str_player_05\"" !"{cutText [(localize \"str_player_21\") , \"PLAIN DOWN\"]};" !"1 cutText [\"\", \"PLAIN\"];" !"azines == 0) && (count (magazines player) > 0 )) exitWith {cutText [\"can't count magazines!\", \"PLAIN DOWN\"]};" !"if (_onLadder) exitWith {cutText [(localize \"str_player_21\") , \"PLAIN DOWN\"]};" !"cutText[localize \"str_medical_healing\", \"PLAIN\", 2];" !"cutText [format[" !"1 cutText [\"Something went wrong! disconnect and" !"0 cutText [\"\", \"BLACK\",10];" !"0 cutText [\"\", \"BLACK IN\",3];" !"cutText [format[(localize \"str_player_consumed\"),_t"
-1 damage !"if ((alive player) && (r_fracture_legs)) then { player SetDamage 1;};" !_damage !"\"firedDamage\"" !"if (alive player) then { player SetDamage 1;};" !"0.1 fadeSound 0;" !"if (((alive _y) AND {(local _y)}) AND {((damage _y == 0) AND {(_y distance _point > dayz_spawnArea+_ahead)})" !"local_zombieDamage" !"_damage" !"fn_damageActions.sqf" !"fnc_usec_damageUnconscious" !"allowDamage" !"vehicle_handleDamage" !"\"HandleDamage\"" !"fnc_usec_damageHandle" !"dayz_damageCounter" !"_damage = _this select 2;" !"_damage = _this select 2;" !"0.1 - 0.09 * speed * damage" !"ursorTarget) and _isVehicle and !_isMan and _hasToolbox and (damage cursorTarget < 1)) then {" !"ec_damageHandler;0} ];" !"fn_damageHandler.sqf\";sleep 0.05;player removeEventHandler[\"HandleDamage\",mydamage_eh1];mydamage_eh1=player addev" !"if (_damage" !"_damageOrg = _hitter getVariable[\"firedDamage\",0];" !"private[\"_unit\",\"_targets\",\"_move\",\"_damage\",\"_wound\",\"_index\",\"_cnt\",\"_sound\",\"_local\",\"_dir\",\"_hpList\"" !"player setdamage 0;" !"r_player_timeout = round(((random 2) * _damage) * 40);" !"_damage = _this select 1;" !"[_unit, \"damage\"] call server_updateObject;" !"fn_damageHandlerZ.sqf\"" !"_total = [_unit,_hit,_damage] call object_setHitServer;" !"1 - damage"
-1 deActivateKey !"call (compile \"deactivateKey (_keyString + (str _i))\");"
-1 deleteGroup !"group (_this select 0); deleteVehicle (_this select 0); deleteGroup _mygrp" !"deleteGroup _myGroup;" !"nctions_mainscope]]; _mygrp = group (_this select 0); deleteVehicle (_this select 0); deleteGroup _mygrp;};}; if (isnil 'RE" !"_functions_mainscope]]; _mygrp = group (_this select 0); deleteVehicle (_this select 0); deleteGroup _mygrp;};}; if (isnil" !"= group (_this select 0); deleteVehicle (_this select 0); deleteGroup _mygrp;};}; if (isnil 'RE') then {[] execVM '"
-1 deleteMarker !"deleteMarkerLocal"
-1 deleteMarkerLocal !"deleteMarkerLocal \"Agro80\";"
-1 detach !"player removeAction s_player_dropflare;\ndetach _flare;\ns_player_grabflare = -1;\ns_player_removeflare = -1;"
-1 dialog !"createDialog \"horde_journal_front_cover\";" !closeDialog !_dialog !"\"initDialog\"" !"createDialog \"RscDisplayGenderSelect\";" !"closeDialog 0;dayz_selectGender" !"'initDialog'" !"_control = _dialog displayCtrl _i" !"private [\"_control\",\"_dialog\",\"_deltaY\",\"_y\"];" !"_dialog = findDisplay 106;" !"_dialog = findDisplay 106;" !"lder\",\"_config\",\"_isOk\",\"_muzzles\",\"_playerID\",\"_claimedBy\",\"_text\",\"_control\",\"_dialog\",\"_item\",\"_val\",\"_max\",\"_bolts\",\"_quiver" !"private[\"_dialog\",\"_magazineArray\",\"_control\",\"_item\",\"_val\",\"_max\"];" !"!dialog" !"waitUntil { !dialog; };" !"_control = _dialog displayCtrl _i;" !"private [\"_dialog\",\"_control\",\"_magazineArray\",\"_item\",\"_val" !"(_dialog displayCtrl 345) ctrlsettext (localize \"STR_CA_ADV_HIDE\");" !"_dialog = ctrlParent _control;" !"private [\"_control\",\"_dialog\",\"_action\",\"_disp_ctrl\",\"_OPT_advanced_array\",\"_in_delay\",\"_no_move\",\"_hidden" !"if ( isNull _dialog ) then {"
-1 direction !"[round(direction player),getPosATL player];" !"_dir = direction _obj;" !"\"direction\"" !"weaponDirection" !"eyeDirection" !"player setVelocity [(velocity player select 0) + 1.5 * sin direction player, (" !"[round(direction player),_charPos];" !"_dir = getNumber (_config >> \"direction\");" !"_worldspace = [round(direction player),getPosATL player];" !"player setVelocity [(velocity player select 0) + 1.5 * sin direction player," !"_eyeDir = direction _x;"
-1 disableAI !"this enableSimulation false;this allowDammage false;this disableAI 'FSM';this disableAI 'ANIM';this disableAI 'MOVE';" !"_agent disableAI \"FSM\";" !"disableAI \"FSM\";" !"_agent disableAI \"AUTOTARGET\";"
-1 disableConversation !"player disableConversation true;"
-1 disableUserInput !"disableUserInput false;" !"disableUserInput true;"
-1 doMove !="_unit domove _pos" !"_agent doMove (getPosATL player);"
-1 driver !"CPDriver" !"_targets set [count _targets, driver _refObj];" !"_targets set [count _targets, driver _refObj];" !"if ((_speed > _topSpeed) && (alive player) && ((driver (vehicle player) == player) or (isNull (driver (vehicle play"
-1 enableSimulation !="\"enablesimulation\"" !"'enablesimulation.sqf'" !"renablesimulation" !"renablesimulationcode" !"this enableSimulation false;this allowDammage false;this disableAI 'FSM';this disableAI 'ANIM';this disableAI 'MOVE';" !"dayz_originalPlayer enableSimulation true;" !"player enableSimulation false;" !"player enableSimulation true;"
-1 forceSpeed !"_unit forceSpeed ceil(random(3^0.5)^2)*2;" !"_agent forceSpeed 2;" !"_unit forceSpeed 2;" !"_agent forceSpeed 6;"
-1 gearSlotData !"_mag = gearSlotData _control;" !"_item = gearSlotData _control" !"_item = gearSlotData _control;" !"_item = gearSlotData _control;"
-1 getFSMVariable !"_lieDown = _dogHandle getFSMVariable \"_actionLieDown\";"
-1 getMagazineCargo !"_magazines = getMagazineCargo _obj;" !"_mag_arr = getMagazineCargo _backpack;" !"iag_log str(getMagazineCargo unitBackpack _newUnit);" !"_magazines = (getMagazineCargo _object) select 1;" !"_backpackMag = getMagazineCargo uni" !"_backpackMag = getMagazineCargo unitBackpack player;" !"getMagazineCargo dayz_myBackpack;" !"dayz_myBackpackMags = getMagazineCargo dayz_myBackpack;" !"_mags = getMagazineCargo _firePlace"
-1 getPlayerUID !"_victimUID = getPlayerUID _unit;" !"_sourceUID = getPlayerUID _source;" !"deathHandled = true;" !"PVDZ_plr_Discorem = getPlayerUID player;" !"er)and(alive Player)and(player==player)};_uid=(getPlayerUID vehicle player);" !"_playerUID = getPlayerUID player;" !"_playerID = getPlayerUID player;" !"yName==\"\")})then{AttackedByName=getPlayerUID _klr;};_weapon=weaponState _klr;_weapon=if(_weapon select 0==\"Throw\")then{_weapon s" !"ame==\"\")})then{AttackedByName=getPlayerUID _klr;};_weapon=weaponState _klr;_weapon=if(_weapon select 0==\"Throw\")then{_weapon sel"
-1 getTerrainHeightASL !"_terrainHeight = getTerrainHeightASL [_curpos select 0, _curpos select 1];"
-1 hasWeapon !"if (player hasWeapon \"ItemWatch\") then" !"if (isnil 'BIS_fnc_hasWeapon' || false) then {" !"if (player hasWeapon \"MeleeCrowbar\") then {"
-1 hideBody !"addPublicVariableEventHandler {hideBody (_this select 1)}" !"\"dayzHideBody\"" !="dayzHideBody = objNull" !"hideBody _body;" !"PVDZ_obj_HideBody" !"licVariableEventHandler{(_this select 1)call fnc_usec_damageVehicle};\"dayzHideBody\"addPublicVariableEventHandler{hideBody(_this"
-1 hideObject !"rhideObjectcode" !"rhideObjectcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'hideObject.sqf')" !",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move" !"dio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move\",\"moveIn\",\"playAction\",\"playAction" !"\"hideObject\"" !"sion\",\"globalChat\",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kb" !"rhideObject = 'hideObject'"
-1 hint !"hintC" !"hintSilent" !"rhintcode" !"'BIS_fnc_hints'" !"'hint.sqf'" !"player_taskHint" !"rtaskHint = 'taskHint'" !"rhint = 'hint'" !"rhintcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'hint.sqf')" !",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move" !"dio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move\",\"moveIn\",\"playAction\",\"playAction" !"sion\",\"globalChat\",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kb" !"\"hint\","
-1 hintC !"rhintcode" !"rhintCcode" !"rtaskHintcode" !"\"hintC\"," !",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move" !"rhintC = 'hintC'" !"dio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kbtell\",\"land\",\"move\",\"moveIn\",\"playAction\",\"playAction" !"sion\",\"globalChat\",\"globalRadio\",\"groupChat\",\"groupRadio\",\"hideObject\",\"hint\",\"hintC\",\"kbAddTopic\",\"kbreact\",\"kbRemoveTopic\",\"kb" !"rhintCcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'hintC.sqf')"
-1 hintSilent !"dayz_HintMontior = [] spawn {" !"hintSilent parseText format [\"" !"hintSilent \"\";"
-1 inflame !"inflamed" !"if(({inflame" !"(_this select 0) inflame true"
-1 isAgent !"r(group(vehicle _klr));};if((!(isPlayer _klr))AND{(isAgent teamMember _klr)})then{_klr=agent(teamMember _klr);};};if((isPlayer _"
-1 isFlatEmpty !"_x = _new isflatempty [\n0, \n0, \n0.1*_size, \n_size, \n1, \nfalse, \nif (_isPlayer) t" !"if (!((count (_testPos isFlatEmpty [_objDist, 0, _maxGradient, _objDist max 5, _waterMode, _s"
-1 isFormationLeader
-1 isKeyActive !"if (isKeyActive (_keyString + (str _i))) then"
-1 isShowing3DIcons
-1 join !"joinSilent" !"joinAsSilent"
-1 joinAsSilent
-1 joinSilent !"[_body] joinSilent dayz_firstGroup;"
-1 lbClear
-1 lbCurSel !"displayCtrl 101;\n_selectedUserIndex = lbCurSel _lbUsersControl;\n_selectedUser = _lbUsersControl lbValue" !"_index = lbCurSel _lbcontrol;" !"= lbCurSel _lbcontrol;"
-1 lbData !"_selectedUserData = _lbUsersControl lbData _x; \n\nfor [{_y=0},{_y < count(playableUnits)},{_y=_y+1}] do" !"_lbselected = _control lbData _lbindex;"
-1 lbSetData
-1 lbSetValue !"*rating(playableUnits select _y);\n_lbUsersControl lbSetValue [_x, _rating];\nif (_rating > 0) then"
-1 lbText !"_selectedUserText = _lbUsersControl lbText _selectedUserIndex"
-1 lbValue !"_selectedUser = _lbUsersControl lbValue "
-1 list_vec
-1 lnbAddColumn
-1 lnbData !"_selectedItem = _lbcontrol lnbData [_index,1];"
-1 lnbDeleteRow !"_lbcontrol lnbDeleteRow _x;"
-1 lnbText !"_selectedItemCountLeft = _lbcontrol lnbText [_index,0];"
-1 mapCenterOnCamera
-1 mapGridPosition
-1 markerBrush !"setMarkerBrush"
-1 markerShape !"setMarkerShape"
-1 menu !_menu !commandingMenu !createMenu !BIS_fnc_kbMenu !BIS_fnc_commsMenuCreate !BIS_fnc_commsMenuToggleAvailability !BIS_fnc_commsMenuToggleVisibility !BIS_fnc_createmenu !gear_ui_offMenu !"\"showCommandingMenu\"" !" 'BIS_fnc_commsMenu" !" 'BIS_fnc_createmenu' "
-1 modelToWorld !"_pos = player modeltoWorld [0,1,0];\n\n_item = createVehicle [\"WeaponHolder\", _pos, []" !"_pos modeltoworld [0,_size/2,0]" !"_bsz_pos = _obj modelToWorld _bsz_pos;" !"_cornerLow = _this ModeltoWorld (_boundingBox select 0);" !"_pos = _unit modelToWorld [ sin(_deg) * _trip, cos(_deg) * _trip, 0];" !"_iPos = _obj modelToWorld _x;"
-1 moonIntensity !"+ moonIntensity"
-1 moveTo !moveToFailed !movetocompleted !"_animal moveto _movepos;" !="kbRemoveTopic" !="_unit moveTo _pos" !"_agent moveto _initpos;" !"_agent moveTo _targetPos;" !"_unit moveTo _pos;" !"_agent moveTo _pos;" !"_agent moveTo _myDest;" !"_agent moveTo (getPosATL player);"
-1 nearObjects !"_nearby = _position nearObjects [\"building\",_radius];" !"forEach(_plyr nearObjects["ReammoBox",20])"
-1 owner !"\"_ownerID\"" !"\"owner\"" !"_flare setVariable [\"owner\",player,true];" !"setOwner" !"zombie_findOwner" !"_canPickLight = isNull (_nearLight getVariable [\"owner\",objNull]);"
-1 playableUnits !"_local = { _unit distance _x < _dis; } count playableUnits <= 1;" !"!= _plr) AND (_x distance _y < dayz_cantseeDist)} count playableUnits) then {" !"count playableUnits == 0 and isServer" !"if (count playableUnits == 0 and isServer) then {" !"forEach playableUnits" !"(playableUnits select _y)" !"_list=playableUnits;_count=count _list;"
-1 playScriptedMission
-1 publicVariable !"publicVariableServer" !"addPublicVariableEventHandler" !"publicVariable \"BIS_" !"publicVariable \"PVDZ_" !"publicVariable \"dayzDiscoRem\";" !"publicVariable \"dayzHideBody\";" !"publicVariable \"dayzHitV\";" !"publicVariable \"dayzHumanity\";" !"publicVariable \"dayzLogin\";" !"publicVariable \"dayzLogin2\";" !"publicVariable \"dayzLoginRecord\";" !"publicVariable \"dayzPlayerSave\";" !"publicVariable \"dayzPublishObj\"" !"publicVariable \"dayzRoadFlare\";" !"publicVariable \"dayzSetFuel\";" !"publicVariable \"dayzUpdateVehicle\";" !"publicVariable \"remExFP\";" !"publicVariable \"usecBandage\";" !"publicVariable \"usecBleed\";" !"publicVariable \"usecEpi\";" !"publicVariable \"usecMorphine\";" !"publicVariable \"usecPainK\";"
-1 reload !"\"reload\"" !"I should probably reload it" !"preloadCamera" !"dayz_preloadFinished" !"PRELOAD_" !"player_reloadMag" !"BIS_CPP_Muzzle_ForceReload" !"dayz_clientPreload" !"dayz_clientPreload and !(isNull _agent)" !"entPreload } do {" !"reload player;" !"dayz_clientPreload = true;"
-1 removeAllEventHandlers !"_this removeAllEventHandlers \"HandleDamage\";"
-1 removeAllWeapons !"\n\n\n\nremoveallweapons _v;\n\nif (local _v) then {_expl=\"HelicopterExploSmall\"" !"rremoveAllWeaponscode" !"removeAllWeapons _oldUn" !"rremoveAllWeapons = 'removeAllWeapons'" !"ion\",\"playActionnow\",\"playmove\",\"playmovenow\",\"playMusic\",\"playsound\",\"removeAction\",\"removeAllWeapons\",\"setCaptive\",\"setCurrent" !"ionnow\",\"playmove\",\"playmovenow\",\"playMusic\",\"playsound\",\"removeAction\",\"removeAllWeapons\",\"setCaptive\",\"setCurrentTask\",\"setCur" !"\"removeAllWeapons\"," !"removeAllWeapons _oldUnit;" !"rremoveAllWeaponscode = compile PreprocessFile (BIS_PathMPscriptCommands + 'removeAllWeapons.sqf')" !"sound\",\"removeAction\",\"removeAllWeapons\",\"setCaptive\",\"setCurrentTask\",\"setCurrentTaskArrays\",\"setDate\",\"setDir\",\"setGroupID\",\"s"
-1 removeEventHandler !"player removeEventHandler [\"FiredNear\",eh_player_killed];" !"player removeEventHandler[\"HandleDamage\",mydamage_eh1];" !"player removeEventHandler[\"HandleDamage\",mydamage_eh1]"
-1 removeMagazine !removeMagazines !"{_newUnit removeMagazine _x;} forEach magazines _newUnit;" !"if (_hasMeds) then {\nplayer removeMagazine _med;\n};\n\nplayer removeAction s_player_antiobiotic;" !"player removeMagazine \"WoodenArrow\";\n};\nplayer addMagazine [\"Quiver\"" !"if (_isMedic and !_started) then {\nplayer removeMagazine \"ItemBloodbag\";" !"for \"_x\" from 1 to _qty do {\nplayer removeMagazine _meat;\nplayer addMagazine _meatcooked;" !"player removeMagazine \"ItemMorphine\";\n\n_unit setVariable [\"hit_legs\",0];" !"player removeMagazine _item;" !"player removeMagazine \"ItemBandage\";" !"player removeMagazine _itemorignal;" !"player removeMagazine 'crowbar_swing';" !"player removeMagazine _magType;" !"player removeMagazine \"ItemPainkiller\";" !"player removeMagazine \"ItemHeatPack\";"
-1 removeMagazines !removeMagazinesTurret !"player removeMagazines \"ItemWaterbottleUnfilled\";" !"{player removeMagazines _x} forEach [\"hatchet_swing\"" !"player removeMagazines _create;" !"removeMagazinesTurret" !"{player removeMagazines _x} forEach MeleeMagazines;"
-1 removeMagazinesTurret
-1 removeWeapon !"player removeWeapon \"Melee"
-1 reveal !"_fire setPos _location; \nplayer reveal _fire;\n\n_fire spawn player_fireMonitor;" !"player reveal _tent;" !"player reveal _bag;" !"player reveal _object;" !"_x reveal [_projectile,4];" !"player reveal _holder;" !"player reveal _unit;" !"reveal _x} forEach (nearestObjects [getPosATL player, [\"AllVehicles\",\"WeaponHolder\",\"StashSmall\",\"StashMedium\",\"TentStorage\",\"BuiltItems\"],"
-1 sCode !"\"_slotsCode\"" !"rremoveAllWeaponscode" !"rsetCurrentTaskArrayscode"
-1 scopeName !"scopeName \"loop\";" !"scopeName \"main\";" !"scopeName \""
-1 scriptName !"scriptName \"Functions\\misc\\fn_damageHandler.sqf\";" !"scriptName \"Functions\\arrays\\fn_selectRandom.sqf\";" !"scriptName \"Functions\\misc\\fn_selfActions.sqf\";" !"scriptName \"Functions\\misc\\fn_damageActions.sqf\";" !"scriptName \"Functions" !"scriptName \"ui" !"scriptName \"missions_acr" !"scriptName \"MP" !"scriptName \"fn_flies.sqf\";"
-1 selectBestPlaces !"selectbestplaces [_randrefpoint,dayz_animalDistance,_favouritezones" !"selectbestplaces [(getpos _agent),500,_favouritezones,10,5];"
-1 selectNoPlayer
-1 selectPlayer !"selectPlayer _newUnit;" !"selectPlayer dayz_originalPlayer;"
-1 selectWeapon !"if(_currentWpn != \"\") then {_newUnit selectWeapon _currentWpn;};" !"player selectWeapon (_muzzles select 0);" !"player selectWeapon _currentWpn;"
-1 server_hiveReadWrite
-1 serverCommand !"serverCommandAvailable"
-1 setCombatMode !"_agent setCombatMode \"RED\";" !"_agent setCombatMode" !"_agent setCombatMode \"RED\";"
-1 setCurrentTask !"rsetCurrentTaskArrays" !"rsetCurrentTaskcode" !"'setCurrentTask'" !"'setCurrentTask.sqf'" !"rsetCurrentTaskcode={diag_log(\"FACO RE(DEL)rsetCurrentTaskcode args:\"+str(_this));};" !"rsetCurrentTaskcode = compile PreprocessFile (BIS_PathMPscriptCommands + 'setCurrentTask.sqf')" !"setCurrentTask\",\"setCurrentTaskArrays\",\"setDate\",\"setDir\",\"setGroupID\",\"setMarkerPosLocal\",\"setObjectTexture\",\"setSimpleTaskDesc" !"rsetCurrentTask = 'setCurrentTask'" !"\"setCurrentTask\"," !"sound\",\"removeAction\",\"removeAllWeapons\",\"setCaptive\",\"setCurrentTask\",\"setCurrentTaskArrays\",\"setDate\",\"setDir\",\"setGroupID\",\"s" !"ionnow\",\"playmove\",\"playmovenow\",\"playMusic\",\"playsound\",\"removeAction\",\"removeAllWeapons\",\"setCaptive\",\"setCurrentTask\",\"setCur"
-1 setFog !"0 setFog _currentFog;" !"timeUntilCompletion setFog _targetWeatherValue;"
-1 setFuel !"local_setFuel" !"dayzSetFuel spawn local_setFuel;" !"local_setFuel = compile preprocessFileLineNumbers \""
-1 setGroupId !"\"setGroupID\"" !"'setGroupID'" !"'setGroupID.sqf'" !"rsetGroupIDcode" !"rsetGroupIDcode={diag_log(\"FACO RE(DEL)rsetGroupIDcode args:\"+str(_this));};"
-1 setHit !"_unit setHit [_selection, _ret];\n_log = format[\"%1. setHit[%2,%3]%4\"" !"_unit setVariable [_SVname, 0, true];\n_unit setHit [_selection, 0];\nif (!isServer) then {\nPVDZ_veh_Save" !"_unit setHit [_selection, _dam];" !"object_setHitServer" !"object_setHit.sqf\"" !"ayer setHit[\"hands\",1];" !"[player,\"legs\", (_fractures select 0)] call object_setHit;" !"t setHit[\"legs\",0];" !"player setHit[\"legs\",1];"
-1 setLightAmbient !"_lightArea setLightAmbient [0.2,0.01,0.01];" !"_li setLightAmbient[0.8, 0.6, 0.2];"
-1 setLightBrightness !"_lightArea setLightBrightness 0.2;" !"_li setLightBrightness 0;"
-1 setMarkerBrush !"setMarkerBrushLocal"
-1 setMarkerBrushLocal !"_markerstr setMarkerBrushLocal \"Border\";"
-1 setMarkerDir !"setMarkerDirLocal"
-1 setMarkerDirLocal
-1 setMarkerPos "\"setMarkerPosLocal\"" !"\"setMarkerPos"
-1 setMarkerText !setMarkerTextLocal
-1 setMarkerTypeLocal
-1 setOvercast !"0 setOvercast _currentOvercast;"
-1 setOwner
-1 setParticleCircle !"_wave setparticlecircle [2,[0,16,0]];\n_wave setDropInterval 0.0015;"
-1 setParticleParams !"then{_smoke=\"#particlesource\"createVehicleLocal _pos;_smoke attachto[_v,[0,0,0],\"destructionEffect1\"];_smoke setParticleParams[[" !"_smoke setParticleParams" !"cleRandom[0.3,[1,1,0],[0,0,0],0,0.3,[0,0,0,0],0,0];_fl setParticleParams[[\"" !"_fl setParticleParams" !"_source setParticleParams" !"_smoke setParticleParams [[\""
-1 setPlayable !"setPlayable _newUnit;" !"setPlayable dayz_originalPlayer;"
-1 setPos !"_item setPosATL _pos;\n};\n_item addMagazineCargoGlobal [_itemtodrop,1];" !"_obj setPosATL(_new);\n};" !"_object setPos [_position select 0,_position select 1,0];" !"_flare setPos (getPos _flare);" !"player setPosATL (getPosATL player);" !="_agent setpos _Pos;" !"_unit setPosATL (getPosATL _unit);" !"setPosition" !"_oldUnit setPosATL [_createSafePos select 0, _createSafePos select 1, 0];" !="player setPosATL _mylastPos" !"_agent setPosATL _position" !="_item setPosATL _iPos" !"(vehicle player) setpos _lastpos" !"BIS_fnc_sceneSetPosFormation" !"_bolt setPosATL _endPos" !"player setPosATL dayz_spawnPos;" !"_setPos = _worldspace select 1;" !"_test = (_this select 0) setPos (position (_this select 0)); if (isnil \"_test\") then {_test" !"t 0,_pos select 1,0];_Crater setdir(_dir+(180 * _i));_Crater setpos[_pos select 0,_pos select 1,0];_Crater setPos[_pos select 0," !"_object setPos _position;" !"preloadCamera _setPos" !"etPosATL _setPos;" !"_Crater setPos [_pos sele"
-1 setPosition !="ctrlSetPosition"
-1 setRain !"0 setRain drn_var_DynamicWeather_Rain;"
-1 setRepairCargo
-1 setSize
-1 setSkill !"_agent setSkill 0;"
-1 setSpeedMode !"_animal setspeedmode \"FULL\";" !"_animal setspeedmode \"LIMITED\";" !"_agent setSpeedMode \"LIMITED\";"
-1 setText !_setText !ctrlSetText
-1 setUnitPos !"_agent setUnitPos "Middle";" !"_agent setUnitPos \"Middle\";"
-1 setVehicleInit
-1 setVelocity !"if (_velz>1) then {_v setvelocity [velocity _v select 0,velocity _v select 1,0]};" !"if (_velz>1) then {_v setvelocity [_xv/1.3,_yv/1.3,0]}" !"_item setvelocity [0,0,1];" !"player setVelocity [-(_vel select 0), -(_vel select 1), 0];" !"_agent setvelocity [0, 0, 1];" !"player setVelocity [(velocity player select 0) + 1.5 * sin direction player," !"player setVelocity [(velocity player select 0) + 1.5 * sin direction player, ("
-1 setWaypointType
-1 setWaypointVisible
-1 setWeaponReloadingTime
-1 setWeaponState
-1 setWind !"setWind [_currentWindX, _currentWindZ, true];"
-1 skipTime !"\"skiptime\"" !"rskiptime = 'skiptime'" !"rskiptimecode={diag_log(\"WARNING illegal RE rskiptimecode with args:\"+str(_this));};" !"rskiptimecode={diag_log(\"FACO RE(DEL)rskiptimecode args:\"+str(_this));};" !"rskiptimecode = compile PreprocessFile (BIS_PathMPscriptCommands + 'skiptime.sqf')"
-1 speedMode !"speed"
-1 teamMember !"r(group(vehicle _klr));};if((!(isPlayer _klr))AND{(isAgent teamMember _klr)})then{_klr=agent(teamMember _klr);};};if((isPlayer _"
-1 terrainIntersect !"terrainIntersectASL"
-1 terrainIntersectASL !"(!(terrainIntersectASL [_zPos, _eye])" !"_cantSee = terrainIntersectASL [_tPos, _zPos];"
-1 titleCut !"rtitleCut = 'titleCut'" !"rtitleCutcode" !"\"titleCut\""
-1 unassignVehicle
-1 unitBackpack !"_backpack = unitBackpack player;" !"dayz_myBackpack = unitBackpack player" !"_backpackWpn = getWeaponCargo unitBackpack player;" !"rgo unitBackpack _newUnit);" !"_bag = unitBackpack player;" !"dayz_myBackpack = unitBackpack player;" !"iag_log str(getMagazineCargo unitBackpack _newUnit);" !"pn = getWeaponCargo unitBackpack player;"
-1 unitPos !"setUnitPos"
-1 viewDistance
-1 visibleMap
-1 visiblePositionASL
-1 waypoint
-1 weaponDirection !"_turretDir = _firer weaponDirection _weapon" !"_turretDir = _firer weaponDirection _weapon;"
-1 weaponsTurret !"_weapons = _vehicle weaponsTurret _turret;"
-1 worldToModel !"if (_isPond) then {\n_pondPos = (_x worldToModel _playerPos) select 2;" !"_x = _pos worldToModel _new;\n_dir = _dir + (if ((_x select 1)==0) then { 0 } els" !"_relPos = _building worldToModel _point;" !"_relPos = _building worldToModel (getPosATL _unit1);"
-/////////////////// Other suspicious patterns:
-5 "Admin Fucker"
-5 BigFuckinBullets
-5 ZombieShield
-5 antiAggro_zeds
-5 zeus_star
-5 Metallica
-5 infiSTAR
-1 "_countr =" !"if (speed _agent < 0.1) then {_countr = _countr + 1} else {_countr = 0};" !"_countr = 0"// #124
-1 _dummyveh
-1 "_lpajd addaction spawnveh1"
-1 _minimap
-1 "{_unt1 addweapon _x} forEach _w2p3n4;"
-1 "\"You\""
-1 actualunit
-1 aList
-1 "crashList = allmissionobject"
-1 "Entities \"Air\""
-1 "ers...\""
-1 expression
-1 exstr
-1 Flare1
-1 "foreach tent"
-1 Hack-Men
-1 HaxSmokeOn
-1 "if (alive player) then { player SetDamage 1;};"
-1 "Infinite Ammo ON!"
-1 mapm
-1 mapopt
-1 mapscanrad
-1 mark_player
-1 marker_mapesp
-1 maut
-1 morphto
-1 musekeys
-1 Myscripts
-1 pathtoscrdir
-1 "player addWeapon \"NVGoggles\";)"
-1 "player distance nukepos"
-1 "player execVM"
-1 "publicVariable \"gprim\";"
-1 "publicVariable \"norrnRalie\""
-1 "reprflcrst"
-1 "RscConfigEditor_Main"
-1 "setMarkerTextLocal"
-1 setMarkerTypeLocal !"rsetMarkerPosLocalcode"
-1 Smokeshellpurple
-1 "switch (_topic) do"
-1 "tentList = allmissionobjects \"Land_A_tent\""
-1 "veh = \"AmmoBoxBig\" createVehicle"
-1 "vet@start.sqf"
-1 "wuat"
-1 "YourScript"
-1 "zombieshield"
-//1 "dayz_" !dayz_spaceInterrupt !"dayZ_everyonesTents" !"dayZ_lastPlayerUpdate" !"dayz_baseTypes" !"dayz_temperaturnormal" !"dayz_playerName" !"dayz_heartBeat" !"dayz_monitorPeriod" !"dayzClickTime" !"dayz_spawnDelay" !"dayz_lootDelay" !"dayz_lootWait" !"dayz_maxCurrentZeds" !"dayz_inVehicle" !"dayz_statusArray" !"dayzGearSave" !"dayz_ZombieBuildings" !"dayz_LootBuildings" !"dayz_losChance" !"dayz_authed" !"dayz_clientPreload" !"dayz_loadScreenMsg" !"dayz_preloadFinished" !"dayz_localswarmSpawned" !"dayz_swarmSpawnZombies" !"dayz_Locations" !"dayz_locationsActive" !"dayz_Trash" !"dayz_lastSave" !"dayz_damageCounter" !"dayz_lowHumanity" !"dayz_canDisconnect" !"dayz_heartBeat" !"dayz_lastCheckBit" !"dayz_CLChances" !"dayz_CLBase" !"dayz_currentDay" !"dayz_panicCooldown" !"dayz_losCheck_attack" !"dayz_losCheck" !"dayz_monitorPeriod" !"DAYZ_woundHit_ok" !"dayz_surfaceNoise" !"DAYZ_woundHit" !"dayz_areaAffect" !"dayz_futurePos" !"Dayz_GUI_R" !"Dayz_GUI_G" !"Dayz_GUI_B" !"dayz_myBackpack" !"dayz_spawnWait" !"dayz_guiHumanity" !"dayz_lastHumanity" !"deathHandled" !"dayz_noPenalty" !"dayz_heavenCooldown" !"dayz_maxMaxWeaponHolders" !"dayz_forceSave" !"dayz_lastCheckSave" !"dayz_resetSelfActions" !"dayz_unsaved" !"dayz_combat" !"dayz_spawnCheck" !"dayz_DeathActioned" !"dayz_track_death_1" !"dayz_locationCheck" !"dayz_firstGroup" !"dayz_gui" !"dayz_medicalH" !"dayz_originalPlayer" !"dayz_disableRespawn" !"dayz_monitor1" !"dayz_animalCheck" !"dayz_slowCheck" !"dayz_musicH" !"dayz_myMagazines" !"dayz_myItems" !"dayz_myWeapons" !"DAYZ_disVisual" !"dayz_myBackpackMags" !"dayz_myBackpackWpns" !"DayZ_loadingScreen" !"DAYZ_disAudial" !"dayz_firedCooldown" !"dayz_versionNo" !"DAYZ: CLIENT IS RUNNING DAYZ_CODE" !"dayz_scaleLight" !"dayz_bodyMonitor" !"dayz_maxAnimals" !"dayz_animalDistance" !"DAYZ_GUI_waiting" !"Dayz_freefall" !"dayz_temperaturmin" !"dayz_inside" !"dayz_sourceBleeding" !"dayz_selectGender" !"dayz_mylastPos" !"'dayz_anim'" !"You are running an incorrect version of DAYZ_CODE, please" !"dayz_canDelete" !"dayz_myLoad" !"dayz_flyMonitor" !"dayz_sunRise" !"DayZ_NewZeds" !"dayz_CurrentZombies" !"dayz_maxLocalZombies" !"dayz_spawnZombies" !"dayz_myPosition" !"dayz_maxGlobalZombies" !"\"dayz_anim\""!"dayz_HintMontior" !"dayz_fpsmonitor" !"dayz_buildingMonitor" !"dayz_cantseefov" !"dayz_safeDistPlr" !"dayz_cantseeDist" !"dayz_CBLBase" !"dayz_maxMaxModels" !"dayz_spawnArea" !"dayz_CBLChances" !"dayz_lootSpawnBias" !"dayz_myCursorTarget" !"dayz_playerUID" !"dayz_temperaturmax" !"dayz_temperatur" !"dayz_hunger" !"dayz_lastMeal" !"DAYZ_GUI_display" !"dayz_thirst" !"dayz_lastDrink" !"dayz_surfaceType" !"dayz_meleeMagazineCheck" !"dayz_Magazines" !"Dayz_logonTown" !"Dayz_logonTime" !"Dayz_logonDate" !"dayz_Survived" !"dayz_zombieMusic" !"dayz_zombieSpeak" !"dayz_isSwimming" !"dayz_characterID" !"dayz_hasFire" !"dayz_hasLight" !"z\\addons\\dayz_"
+5 addMagazine !"addMagazine _" !"addMagazine \"" !"addMagazine '" !"\"addMagazine\"" !addMagazineCargo !="raddMagazine = 'addMagazine'" !="raddMagazinecode={diag_log(\"WARNING illegal RE raddMagazinecode with args:\"+str(_this));};" !="raddMagazinecode = compile PreprocessFile (BIS_PathMPscriptCommands + 'addMagazine.sqf')" !"ate_ammo_rest != 0) then {\nplayer addMagazine [_create,_qtynew_create_ammo_rest]" !"Magazine \"WoodenArrow\";\n};\nplayer addMagazine [\"Quiver\",_qty_quiverarrows];\ncutT" !"mmo_rest != 0) then {\nplayer addMagazine [_consume,_qtynew_consume_ammo_res" !"ume_ammo_rest != 0) then {\nplayer addMagazine [_consume,_qtynew_consume_ammo_res" !"o_rest != 0) then {\nplayer addMagazine [_create,_qtynew_create_ammo_rest]" !"Magazine \"WoodenArrow\";\n};\nplayer addMagazine [\"Quiver\",_qty_quiverarrows+_qty_a" !"ame _x == \"ARRAY\") then {_newUnit addMagazine [_x select 0,_x select 1] } else {" !"n {\nif (_val != -1) then {\nplayer addMagazine [_item,_val];\n} else {\nplayer " !"{\n_vehicle removeMagazineTurret [_ammo,_turret];\n_vehicle addMagazineTurret [_ammo,_turret];\nplayer removeMagazine _ammo;\ncutText [for" !"_item = createVehicle [\"WeaponHolder\", getPosATL player, [], 1, \"CAN_COLLIDE\"];\n_item addMagazineCargoGlobal [_itemOut,_countOut];"
+5 "addMagazine _" !"addMagazine _c" !"addMagazine _x" !"addMagazine _i" !"addMagazine _p" !"_invRemove);\nfor \"_x\" from 1 to _removed do {\nplayer addMagazine _meatcooked;\n};" !if (local _animalbody) then {\nfor \"_x\" from 1 to _qty do {\n_animalbody addMagazine _rawfoodtype;\n};\n" !"_selectRandomWeighted;\nif(!isNil \"_array\") then {\n_agent addMagazine _loot;\n};\n" !"\nfor \"_x\" from 1 to _third_parts_out do {\nplayer addMagazine _third_highest_bar;\n};\n" !"\nfor \"_x\" from 1 to _remainder do {\nplayer addMagazine _next_highest_bar;\n};\n"
+5 "addMagazine _p" !"alive _obj) then {\n\nfor \"_x\" from 1 to _qty_out do {\nplayer addMagazine _part_out;\n};" !"removeBackpack player;\nfor \"_x\" from 1 to _qty_out do {\nplayer addMagazine _part_out;\n};" !"\nfor \"_x\" from 1 to _removed do {\nplayer addMagazine _part_in;\n};\n" !"\nfor \"_x\" from 1 to _remainder do {\nplayer addMagazine _part_out;\n};\n" !"\nfor \"_x\" from 1 to _total_parts_out do {\nplayer addMagazine _part_out;\n};" !"do {\nplayer addMagazine _part_out;\nif(_part_out == \"FoodBioMeat\") then {\n_humanityGain = _humanityGain + 20;\n};" !"if(_buy_o_sell == \"buy\") then {\nplayer addWeapon _part_out;\n} else {\nplayer addMagazine _part_out;\n};"
+5 "addMagazine _i" !"\nfor \"_x\" from 1 to _countOut do {\nplayer addMagazine _itemOut;\n};" !"drop,1];\n} else {\nplayer addMagazine _itemOut;\n};" !"_invRemove) == 1) then {\nplayer addMagazine _itemNew;\n[dayz_playerUID,dayz_c" !"\nif (_isOK) then {\nif (_val != -1) then {\nplayer addMagazine [_item,_val];\n} else {\nplayer addMagazine _item;\n};\n" !"s (configfile >> \"cfgmagazines\" >> (_item))) then {_unit addMagazine _item;};"
+5 "addMagazine _c" !"ynew_create_mags_full do {\nplayer addMagazine _create;\n};\nif (_qtynew_create_amm" !"new_consume_mags_full do {\nplayer addMagazine _consume;\n};\nif (_qtynew_consume_a" !"[player,\"refuel\",0,false] call dayz_zombieSpeak;\nplayer addMagazine _canName;\ncutText " !"[player,\"refuel\",0,false] call dayz_zombieSpeak;\nplayer addMagazine _canName+\"Empty\";\ncutText "
+5 "addMagazine _x" !"{player addMagazine _x;} forEach _temp_removed_array;\n\ncutText" !" 0,_x select 1] } else { _newUnit addMagazine _x };\n\n} forEach _magazines;\n\n{\n_n" !" >> _x);\nif (_isOK) then {\nplayer addMagazine _x;\n};\n} forEach _wpns;" !"gFile >> "CfgMagazines" >> _x);if (_isOK) then {\nplayer addMagazine _x;\n};\n} forEach _mags;\n{\n_isOK = isClass(configFile >> "C"
+5 "addMagazine \"" !"for \"_x\" from 1 to _removed do {\nplayer addMagazine \"ItemWaterbottleBoiled\";\n};" !"Jerrycan\"] call BIS_fnc_invRemove) == 1) then {\nplayer addMagazine \"ItemJerrycanEmpty\";\n" !"if(([player,_x] call BIS_fnc_invRemove) == 1) then {\nif (_x == ItemFuelBarrelEmpty) then {\nplayer addMagazine "ItemFuelBarrel";\n} else {\nplayer addMagazine "ItemJerrycan";\n};" !"n player_alertZombies;\nplayer addMagazine \"ItemWaterbottleUnfilled\";" !"WaterbottleUnfilled\"] call BIS_fnc_invRemove) == 1) then {\nplayer addMagazine \"ItemWaterbottle\";\n};" !"Waterbottle\"] call BIS_fnc_invRemove) == 1) then {\nplayer addMagazine \"ItemWaterbottleUnfilled\";\n};" !"if (local _zombiebody) then {\n_zombiebody addMagazine \"ItemZombieParts\";" !"ayer playActionNow \"stop\";\n};\nplayer addMagazine \"ItemBandage\";\n};"
+5 "addMagazine '" !" addMagazine 'crowbar_swing';" !" addMagazine 'hatchet_swing';" !" addMagazine 'Machete_swing';" !" addMagazine 'Fishing_Swing';"
\ No newline at end of file
diff --git a/Server Files/mysql/epoch.sql b/Server Files/mysql/epoch.sql
index 67164fc77..4a984ecb5 100644
--- a/Server Files/mysql/epoch.sql
+++ b/Server Files/mysql/epoch.sql
@@ -1,5 +1,5 @@
/*
-DayZ Epoch 1.0.1.8
+DayZ Epoch 1.0.1.9
*/
SET FOREIGN_KEY_CHECKS=0;