1.0.1.94 DEV BUILD

This commit is contained in:
[VB]AWOL
2013-08-26 02:29:18 -05:00
parent f7f0f23681
commit c911a7cdab
46 changed files with 1461 additions and 731 deletions

View File

@@ -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";
};

View File

@@ -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";

View File

@@ -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";
};
};
};

View File

@@ -9,7 +9,7 @@ class ItemCrowbar: ItemCore
{
class Toolbelt
{
text=$STR_ACTIONS_RFROMTB;
text = "Remove from toolbelt";
script="spawn player_addToolbelt;";
use[]=
{

View File

@@ -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
}
};

View File

@@ -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";
};

View File

@@ -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;

View File

@@ -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};
};
};
};
};
// 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;};";
};
};
};

View File

@@ -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;
cutText ["No recent Deaths.", "PLAIN DOWN"];
dayzPlayerDeathsResult = nil;
};

View File

@@ -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;

View File

@@ -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;

View File

@@ -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;

View File

@@ -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 {

View File

@@ -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];

View File

@@ -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;

View File

@@ -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;

View File

@@ -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 {

View File

@@ -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];

View File

@@ -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;

View File

@@ -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;

View File

@@ -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;

View File

@@ -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 ["<t color='#ff0000'>Pack Safe</t>", "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""];
s_player_packvault = player addAction [format["<t color='#ff0000'>Pack %1</t>",_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, "", ""];

View File

@@ -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 {

View File

@@ -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];

View File

@@ -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", []];

View File

@@ -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];

View File

@@ -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;
};

View File

@@ -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

View File

@@ -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;

View File

@@ -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];
_dog setVariable ["CharacterID", dayz_characterID, true];

View File

@@ -24,7 +24,6 @@ if (_doLoiter) then {
_agent setDir round(random 180);
};
dayz_spawnZombies = dayz_spawnZombies + 1;
if (random 1 > 0.7) then {

View File

@@ -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

View File

@@ -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

View File

@@ -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";

View File

@@ -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"];

View File

@@ -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<STATEINIT""">*/"//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

View File

@@ -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;
};
};
};
};