mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 12:12:34 +03:00
It makes no sense to rename the identical DayZ PVs to have an E in their name. I don't see any good reason it was done in the first place. All it accomplishes is breaking script compatibility between the two mods and requiring different publicvariable.txt filters. The only time it makes sense is for custom Epoch variables that aren't used in vanilla. All admins have to do to update custom scripts is swap the names according to the change log. Note I've submitted a pull request to replace PVDZ_veh_Save with PVDZ_obj_Save in official too because they are duplicates.
1133 lines
41 KiB
Plaintext
1133 lines
41 KiB
Plaintext
disableSerialization;
|
|
if (isNil "DayZ_UseSteamID") then {
|
|
DayZ_UseSteamID = true;
|
|
};
|
|
//Model Variables
|
|
Bandit1_DZ = "Bandit1_DZ";
|
|
Bandit2_DZ = "Bandit2_DZ";
|
|
BanditW1_DZ = "BanditW1_DZ";
|
|
BanditW2_DZ = "BanditW2_DZ";
|
|
Survivor1_DZ = "Survivor2_DZ";
|
|
Survivor2_DZ = "Survivor2_DZ";
|
|
SurvivorW2_DZ = "SurvivorW2_DZ";
|
|
SurvivorW3_DZ = "SurvivorW2_DZ";
|
|
Sniper1_DZ = "Sniper1_DZ";
|
|
Camo1_DZ = "Camo1_DZ";
|
|
Soldier1_DZ = "Soldier1_DZ";
|
|
Rocket_DZ = "Rocket_DZ";
|
|
dayz_Trash = 0;
|
|
|
|
//Rolling Msg system
|
|
Message_1 = "";
|
|
Message_2 = "";
|
|
Message_3 = "";
|
|
Message_1_time = 0;
|
|
Message_2_time = 0;
|
|
Message_3_time = 0;
|
|
|
|
//OpenTarget timer
|
|
OpenTarget_Time = 0;
|
|
|
|
AllPlayers = ["Survivor2_DZ","SurvivorWcombat_DZ","SurvivorWdesert_DZ","SurvivorWurban_DZ","SurvivorWsequishaD_DZ","SurvivorWsequisha_DZ","SurvivorWpink_DZ","SurvivorW3_DZ","SurvivorW2_DZ","Bandit1_DZ","Bandit2_DZ","BanditW1_DZ","BanditW2_DZ","Soldier_Crew_PMC","Sniper1_DZ","Camo1_DZ","Soldier1_DZ","Rocket_DZ","Rocker1_DZ","Rocker2_DZ","Rocker3_DZ","Rocker4_DZ","Priest_DZ","Functionary1_EP1_DZ","GUE_Commander_DZ","Ins_Soldier_GL_DZ","Haris_Press_EP1_DZ","Pilot_EP1_DZ","RU_Policeman_DZ","pz_policeman","pz_suit1","pz_suit2","pz_worker1","pz_worker2","pz_worker3","pz_doctor","pz_teacher","pz_hunter","pz_villager1","pz_villager2","pz_villager3","pz_priest","Soldier_TL_PMC_DZ","Soldier_Sniper_PMC_DZ","Soldier_Bodyguard_AA12_PMC_DZ","Drake_Light_DZ","CZ_Special_Forces_GL_DES_EP1_DZ","TK_INS_Soldier_EP1_DZ","TK_INS_Warlord_EP1_DZ","FR_OHara_DZ","FR_Rodriguez_DZ","CZ_Soldier_Sniper_EP1_DZ","Graves_Light_DZ","GUE_Soldier_MG_DZ","GUE_Soldier_Sniper_DZ","GUE_Soldier_Crew_DZ","GUE_Soldier_CO_DZ","GUE_Soldier_2_DZ","TK_Special_Forces_MG_EP1_DZ","TK_Soldier_Sniper_EP1_DZ","TK_Commander_EP1_DZ","RU_Soldier_Crew_DZ","INS_Lopotev_DZ","INS_Soldier_AR_DZ","INS_Soldier_CO_DZ","INS_Bardak_DZ","INS_Worker2_DZ"];
|
|
DayZ_Male = ["Survivor_DZ","Survivor1_DZ","Survivor2_DZ","Survivor3_DZ","Sniper1_DZ","Soldier1_DZ","Camo1_DZ","Bandit1_DZ","Bandit2_DZ","Soldier_Crew_PMC","Rocket_DZ","Rocker1_DZ","Rocker2_DZ","Rocker3_DZ","Rocker4_DZ","Priest_DZ","Functionary1_EP1_DZ","GUE_Commander_DZ","Ins_Soldier_GL_DZ","Haris_Press_EP1_DZ","Pilot_EP1_DZ","RU_Policeman_DZ","pz_policeman","pz_suit1","pz_suit2","pz_worker1","pz_worker2","pz_worker3","pz_doctor","pz_teacher","pz_hunter","pz_villager1","pz_villager2","pz_villager3","pz_priest","Soldier_TL_PMC_DZ","Soldier_Sniper_PMC_DZ","Soldier_Bodyguard_AA12_PMC_DZ","Drake_Light_DZ","CZ_Special_Forces_GL_DES_EP1_DZ","TK_INS_Soldier_EP1_DZ","TK_INS_Warlord_EP1_DZ","FR_OHara_DZ","FR_Rodriguez_DZ","CZ_Soldier_Sniper_EP1_DZ","Graves_Light_DZ","GUE_Soldier_MG_DZ","GUE_Soldier_Sniper_DZ","GUE_Soldier_Crew_DZ","GUE_Soldier_CO_DZ","GUE_Soldier_2_DZ","TK_Special_Forces_MG_EP1_DZ","TK_Soldier_Sniper_EP1_DZ","TK_Commander_EP1_DZ","RU_Soldier_Crew_DZ","INS_Lopotev_DZ","INS_Soldier_AR_DZ","INS_Soldier_CO_DZ","INS_Bardak_DZ","INS_Worker2_DZ"];
|
|
DayZ_Female = ["SurvivorW2_DZ","BanditW1_DZ","BanditW2_DZ","SurvivorWcombat_DZ","SurvivorWurban_DZ","SurvivorWdesert_DZ","SurvivorWsequishaD_DZ","SurvivorWsequisha_DZ","SurvivorWpink_DZ","SurvivorW3_DZ"];
|
|
|
|
MeleeWeapons = ["MeleeFishingPole","MeleeCrowbar","MeleeBaseBallBatNails","MeleeBaseBallBatBarbed","MeleeBaseBallBat","Crossbow_DZ","MeleeSledge","MeleeMachete","MeleeHatchet_DZE"];
|
|
MeleeMagazines = ["Hatchet_Swing","Crowbar_Swing","Machete_Swing","Bat_Swing","BatBarbed_Swing","BatNails_Swing","Fishing_Swing"];
|
|
Dayz_fishingItems = ["MeleeFishingPole"];
|
|
Dayz_plants = ["Dayz_Plant1","Dayz_Plant2","Dayz_Plant3"];
|
|
Dayz_attachment_array = ["Attachment_ACG","Attachment_AIM"];
|
|
DayZ_Backpacks = ["DZ_Patrol_Pack_EP1","DZ_Assault_Pack_EP1","DZ_Czech_Vest_Puch","DZ_ALICE_Pack_EP1","DZ_TK_Assault_Pack_EP1","DZ_British_ACU","DZ_CivilBackpack_EP1","DZ_Backpack_EP1","DZ_TerminalPack_EP1","DZ_CompactPack_EP1","DZ_GunBag_EP1","DZ_LargeGunBag_EP1"];
|
|
Dayz_Gutting = ["ItemKnife","ItemKnife5","ItemKnife4","ItemKnife3","ItemKnife2","ItemKnife1","ItemKnifeBlunt"];
|
|
Dayz_Ignators = ["ItemMatchbox","Item5Matchbox","Item4Matchbox","Item3Matchbox","Item2Matchbox","Item1Matchbox","ItemMatchbox_DZE"];
|
|
DayZ_fuelCans = ["ItemJerrycan","ItemFuelcan","ItemFuelBarrel"];
|
|
DayZ_fuelCansEmpty = ["ItemJerrycanEmpty","ItemFuelcanEmpty","ItemFuelBarrelEmpty"];
|
|
DayZ_traps = ["Trap_Cans", "TrapTripwireFlare", "TrapBearTrapSmoke", "TrapTripwireGrenade", "TrapTripwireSmoke", "TrapBearTrapFlare"];
|
|
DayZ_ViralZeds = ["z_new_villager2","z_new_villager3","z_new_villager4","z_new_worker2","z_new_worker3","z_new_worker4"];
|
|
DayZ_SafeObjects = ["Base_Fire_DZ","WoodenGate_1","WoodenGate_2","WoodenGate_3","WoodenGate_4","Land_Fire_DZ", "TentStorage","TentStorage0","TentStorage1","TentStorage2","TentStorage3","TentStorage4","StashSmall","StashSmall1","StashSmall2","StashSmall3","StashSmall4","StashMedium","StashMedium1","StashMedium2","StashMedium3", "StashMedium4", "Wire_cat1", "Sandbag1_DZ", "Fence_DZ", "Generator_DZ", "Hedgehog_DZ", "BearTrap_DZ", "DomeTentStorage", "DomeTentStorage0", "DomeTentStorage1", "DomeTentStorage2", "DomeTentStorage3", "DomeTentStorage4", "CamoNet_DZ", "Trap_Cans", "TrapTripwireFlare", "TrapBearTrapSmoke", "TrapTripwireGrenade", "TrapTripwireSmoke", "TrapBearTrapFlare"];
|
|
DayZ_GearedObjects = ["Car", "Helicopter", "Motorcycle", "Ship", "Tank", "VaultStorage", "LockboxStorage", "TentStorage", "TentStorage_base", "StashSmall_base", "StashMedium_base" ];
|
|
DayZ_RestingAnims = ["amovpsitmstpsnonwpstdnon_ground", "amovpsitmstpsnonwpstdnon_smoking", "amovpsitmstpsraswrfldnon_weaponcheck1", "amovpsitmstpsraswrfldnon"];
|
|
dayz_playerAchievements = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
|
|
|
|
gear_done = false;
|
|
//Cooking
|
|
meatraw = [
|
|
"FoodBeefRaw",
|
|
"FoodMuttonRaw",
|
|
"FoodChickenRaw",
|
|
"FoodRabbitRaw",
|
|
"FoodBaconRaw",
|
|
"FoodGoatRaw",
|
|
"FishRawTrout",
|
|
"FishRawSeaBass",
|
|
"FishRawTuna"
|
|
];
|
|
exceptionsraw = ["FishRawTuna","FishRawSeaBass","FishRawTrout"];
|
|
meatcooked = [
|
|
"FoodSteakCooked",
|
|
"FoodmeatCooked",
|
|
"FoodbeefCooked",
|
|
"FoodGoatCooked",
|
|
"FishCookedTrout",
|
|
"FishCookedSeaBass",
|
|
"FishCookedTuna",
|
|
"FoodmuttonCooked",
|
|
"FoodchickenCooked",
|
|
"FoodrabbitCooked",
|
|
"FoodbaconCooked"
|
|
];
|
|
//Eating
|
|
no_output_food = ["FoodMRE", "FoodPistachio", "FoodNutmix","FoodBioMeat"]+meatcooked+meatraw;
|
|
|
|
// Food with increased chance for infection.
|
|
badfood = ["FoodBioMeat","FoodCanUnlabeled"];
|
|
|
|
boil_tin_cans =
|
|
[
|
|
"TrashTinCan",
|
|
"FoodCanGriffEmpty",
|
|
"FoodCanBadguyEmpty",
|
|
"FoodCanBoneboyEmpty",
|
|
"FoodCanCornEmpty",
|
|
"FoodCanCurgonEmpty",
|
|
"FoodCanDemonEmpty",
|
|
"FoodCanFraggleosEmpty",
|
|
"FoodCanHerpyEmpty",
|
|
"FoodCanDerpyEmpty",
|
|
"FoodCanOrlokEmpty",
|
|
"FoodCanPowellEmpty",
|
|
"FoodCanTylersEmpty",
|
|
"FoodCanUnlabeledEmpty",
|
|
"FoodCanRusUnlabeledEmpty",
|
|
"FoodCanRusStewEmpty",
|
|
"FoodCanRusPorkEmpty",
|
|
"FoodCanRusPeasEmpty",
|
|
"FoodCanRusMilkEmpty",
|
|
"FoodCanRusCornEmpty",
|
|
"ItemSodaEmpty",
|
|
"ItemSodaClaysEmpty",
|
|
"ItemSodaDrwasteEmpty",
|
|
"ItemSodaFrankaEmpty",
|
|
"ItemSodaGrapeDrinkEmpty",
|
|
"ItemSodaLemonadeEmpty",
|
|
"ItemSodaLirikEmpty",
|
|
"ItemSodaLvgEmpty",
|
|
"ItemSodaMtngreenEmpty",
|
|
"ItemSodaMzlyEmpty",
|
|
"ItemSodaPeppsyEmpty",
|
|
"ItemSodaR4z0rEmpty",
|
|
"ItemSodaRabbitEmpty",
|
|
"ItemSodaRocketFuelEmpty",
|
|
"ItemSodaSacriteEmpty",
|
|
//"ItemSodaSherbetEmpty",
|
|
"ItemSodaSmashtEmpty",
|
|
"FoodCanPotatoesEmpty",
|
|
"FoodCanBeefEmpty"
|
|
];
|
|
|
|
food_with_output=[
|
|
"FoodCanBakedBeans",
|
|
"FoodCanSardines",
|
|
"FoodCanFrankBeans",
|
|
"FoodCanPasta",
|
|
"FoodCanGriff",
|
|
"FoodCanBadguy",
|
|
"FoodCanBoneboy",
|
|
"FoodCanCorn",
|
|
"FoodCanCurgon",
|
|
"FoodCanDemon",
|
|
"FoodCanFraggleos",
|
|
"FoodCanHerpy",
|
|
"FoodCanOrlok",
|
|
"FoodCanPowell",
|
|
"FoodCanTylers",
|
|
"FoodCanUnlabeled"
|
|
];
|
|
|
|
food_output = [
|
|
"TrashTinCan",
|
|
"TrashTinCan",
|
|
"TrashTinCan",
|
|
"TrashTinCan",
|
|
"FoodCanGriffEmpty",
|
|
"FoodCanBadguyEmpty",
|
|
"FoodCanBoneboyEmpty",
|
|
"FoodCanCornEmpty",
|
|
"FoodCanCurgonEmpty",
|
|
"FoodCanDemonEmpty",
|
|
"FoodCanFraggleosEmpty",
|
|
"FoodCanHerpyEmpty",
|
|
"FoodCanOrlokEmpty",
|
|
"FoodCanPowellEmpty",
|
|
"FoodCanTylersEmpty",
|
|
"FoodCanUnlabeledEmpty"
|
|
];
|
|
//Drinking
|
|
no_output_drink = ["ItemWaterbottle", "ItemWaterbottleBoiled"];
|
|
drink_with_output = [
|
|
"ItemSoda", //just to define item for ItemSodaEmpty
|
|
"ItemSodaRbull",
|
|
"ItemSodaOrangeSherbet",
|
|
"ItemSodaCoke",
|
|
"ItemSodaPepsi",
|
|
"ItemSodaMdew",
|
|
"ItemSodaMtngreen",
|
|
"ItemSodaR4z0r",
|
|
"ItemSodaClays",
|
|
"ItemSodaSmasht",
|
|
"ItemSodaDrwaste",
|
|
"ItemSodaLemonade",
|
|
"ItemSodaLvg",
|
|
"ItemSodaMzly",
|
|
"ItemSodaRabbit"
|
|
];
|
|
drink_output = [
|
|
"ItemSodaEmpty",
|
|
"ItemSodaEmpty",
|
|
"ItemSodaEmpty",
|
|
"ItemSodaCokeEmpty",
|
|
"ItemSodaPepsiEmpty",
|
|
"ItemSodaMdewEmpty",
|
|
"ItemSodaMtngreenEmpty",
|
|
"ItemSodaR4z0rEmpty",
|
|
"ItemSodaClaysEmpty",
|
|
"ItemSodaSmashtEmpty",
|
|
"ItemSodaDrwasteEmpty",
|
|
"ItemSodaLemonadeEmpty",
|
|
"ItemSodaLvgEmpty",
|
|
"ItemSodaMzlyEmpty",
|
|
"ItemSodaRabbitEmpty"
|
|
];
|
|
boil_tin_cans = [
|
|
"TrashTinCan",
|
|
"FoodCanGriffEmpty",
|
|
"FoodCanBadguyEmpty",
|
|
"FoodCanBoneboyEmpty",
|
|
"FoodCanCornEmpty",
|
|
"FoodCanCurgonEmpty",
|
|
"FoodCanDemonEmpty",
|
|
"FoodCanFraggleosEmpty",
|
|
"FoodCanHerpyEmpty",
|
|
"FoodCanOrlokEmpty",
|
|
"FoodCanPowellEmpty",
|
|
"FoodCanTylersEmpty",
|
|
"FoodCanUnlabeledEmpty",
|
|
"ItemSodaEmpty",
|
|
"ItemSodaCokeEmpty",
|
|
"ItemSodaPepsiEmpty",
|
|
"ItemSodaMdewEmpty",
|
|
"ItemSodaMtngreenEmpty",
|
|
"ItemSodaR4z0rEmpty",
|
|
"ItemSodaClaysEmpty",
|
|
"ItemSodaSmashtEmpty",
|
|
"ItemSodaDrwasteEmpty",
|
|
"ItemSodaLemonadeEmpty",
|
|
"ItemSodaLvgEmpty",
|
|
"ItemSodaMzlyEmpty",
|
|
"ItemSodaRabbitEmpty"
|
|
];
|
|
canPickup = false;
|
|
pickupInit = false;
|
|
dayz_combination = "";
|
|
dayz_humanitytarget = "";
|
|
dayz_combatLog = "";
|
|
canRoll = true;
|
|
|
|
canbuild = true;
|
|
|
|
//Hunting Variables
|
|
dayZ_partClasses = [
|
|
"PartFueltank",
|
|
"PartWheel",
|
|
//"PartGeneric", //No need to add, it is default for everything
|
|
"PartEngine"
|
|
];
|
|
dayZ_explosiveParts = [
|
|
"palivo",
|
|
"motor"
|
|
];
|
|
//Survival Variables
|
|
SleepFood = 2160; //minutes (48 hours)
|
|
SleepWater = 1440; //minutes (24 hours)
|
|
SleepTemperatur = 90 / 100; //Firs Value = Minutes untill Player reaches the coldest Point at night (without other effects! night factor expected to be -1) //TeeChange
|
|
|
|
//Server Variables
|
|
allowConnection = false;
|
|
isSinglePlayer = false;
|
|
PVDZE_serverObjectMonitor = [];
|
|
PlayerDeaths = [];
|
|
|
|
//Streaming Variables (player only)
|
|
dayz_Locations = [];
|
|
dayz_locationsActive = [];
|
|
|
|
//GUI
|
|
Dayz_GUI_R = 0.38; // 0.7
|
|
Dayz_GUI_G = 0.63; // -0.63
|
|
Dayz_GUI_B = 0.26; // -0.26
|
|
//actions blockers
|
|
a_player_cooking = false;
|
|
a_player_boil = false;
|
|
a_player_jerryfilling = false;
|
|
a_player_repairing = false;
|
|
|
|
if (isNil "Dayz_Dark_UI") then {
|
|
Dayz_Dark_UI = false;
|
|
};
|
|
|
|
//Player self-action handles
|
|
dayz_resetSelfActions = {
|
|
s_player_equip_carry = -1;
|
|
s_player_fire = -1;
|
|
s_player_cook = -1;
|
|
s_player_boil = -1;
|
|
s_player_fireout = -1;
|
|
s_player_butcher = -1;
|
|
s_player_packtent = -1;
|
|
s_player_packvault = -1;
|
|
s_player_lockvault = -1;
|
|
s_player_unlockvault = -1;
|
|
s_player_packtentinfected = -1;
|
|
s_player_fillwater = -1;
|
|
s_player_fillwater2 = -1;
|
|
s_player_fillfuel = -1;
|
|
s_player_grabflare = -1;
|
|
s_player_dropflare = -1;
|
|
s_player_callzombies = -1;
|
|
s_player_showname = -1;
|
|
s_player_debuglootpos = -1;
|
|
s_player_pzombiesattack = -1;
|
|
s_player_pzombiesvision = -1;
|
|
s_player_pzombiesfeed = -1;
|
|
s_player_removeflare = -1;
|
|
s_player_painkiller = -1;
|
|
s_player_studybody = -1;
|
|
s_player_tamedog = -1;
|
|
s_player_madsci_crtl = -1;
|
|
s_player_parts_crtl = -1;
|
|
s_build_Sandbag1_DZ = -1;
|
|
s_build_Hedgehog_DZ = -1;
|
|
s_build_Wire_cat1 = -1;
|
|
s_player_deleteBuild = -1;
|
|
s_player_forceSave = -1;
|
|
s_player_checkGear = -1;
|
|
s_player_flipveh = -1;
|
|
s_player_stats = -1;
|
|
s_player_sleep = -1;
|
|
s_player_movedog = -1;
|
|
s_player_speeddog = -1;
|
|
s_player_calldog = -1;
|
|
s_player_feeddog = -1;
|
|
s_player_fillfuel20 = -1;
|
|
s_player_siphonfuel = -1;
|
|
s_player_waterdog = -1;
|
|
s_player_staydog = -1;
|
|
s_player_trackdog = -1;
|
|
s_player_barkdog = -1;
|
|
s_player_warndog = -1;
|
|
s_player_followdog = -1;
|
|
s_player_repair_crtl = -1;
|
|
s_player_information = -1;
|
|
s_player_fuelauto = -1;
|
|
s_player_fuelauto2 = -1;
|
|
s_player_fishing = -1;
|
|
s_player_fishing_veh = -1;
|
|
s_player_gather = -1;
|
|
s_player_debugCheck = -1;
|
|
s_player_destorytent = -1;
|
|
s_player_attach_bomb = -1;
|
|
s_player_fillgen = -1;
|
|
s_player_upgrade_build = -1;
|
|
s_player_maint_build = -1;
|
|
s_player_downgrade_build = -1;
|
|
s_player_towing = -1;
|
|
s_halo_action = -1;
|
|
s_player_SurrenderedGear = -1;
|
|
s_player_upgradestroage = -1;
|
|
s_player_Drinkfromhands = -1;
|
|
s_player_lockhouse = -1;
|
|
s_player_unlockhouse = -1;
|
|
s_player_openGate = -1;
|
|
s_player_CloseGate = -1;
|
|
s_player_breakinhouse = -1;
|
|
s_player_setCode = -1;
|
|
s_player_BuildUnLock = -1;
|
|
s_player_BuildLock = -1;
|
|
s_player_maintain_area = -1;
|
|
s_player_maintain_area_preview = -1;
|
|
s_player_heli_lift = -1;
|
|
s_player_heli_detach = -1;
|
|
s_player_lockUnlock_crtl = -1;
|
|
s_player_lockUnlockInside_ctrl = -1;
|
|
s_player_toggleSnap = -1;
|
|
s_player_toggleSnapSelect = -1;
|
|
s_player_toggleSnapSelectPoint=[];
|
|
snapActions = -1;
|
|
};
|
|
call dayz_resetSelfActions;
|
|
|
|
dayz_resetUpgradeActions = {
|
|
s_player_disassembly = -1;
|
|
s_player_building = -1;
|
|
s_player_maintenance = -1;
|
|
};
|
|
call dayz_resetUpgradeActions;
|
|
//Engineering variables
|
|
s_player_lastTarget = objNull;
|
|
s_player_repairActions = [];
|
|
s_player_lockunlock = [];
|
|
s_player_lockUnlockInside = [];
|
|
//for carry slot since determining mouse pos doesn't work right
|
|
mouseOverCarry = false;
|
|
|
|
// Custom
|
|
s_player_madsci = [];
|
|
s_player_parts = [];
|
|
s_player_combi = [];
|
|
|
|
//Modular player_build
|
|
snapGizmos = [];
|
|
snapGizmosNearby = [];
|
|
|
|
//Initialize Medical Variables
|
|
force_dropBody = false;
|
|
r_interrupt = false;
|
|
r_doLoop = false;
|
|
r_self = false;
|
|
r_self_actions = [];
|
|
r_drag_sqf = false;
|
|
r_action = false;
|
|
r_action_unload = false;
|
|
r_player_handler = false;
|
|
r_player_handler1 = false;
|
|
r_player_unconsciousInProgress = false;
|
|
r_player_unconsciousInputDisabled = false;
|
|
r_player_dead = false;
|
|
r_player_unconscious = false;
|
|
r_player_infected = false;
|
|
r_player_Sepsis = [false, 0];
|
|
r_player_injured = false;
|
|
r_player_inpain = false;
|
|
r_player_loaded = false;
|
|
r_player_cardiac = false;
|
|
r_fracture_legs = false;
|
|
r_fracture_arms = false;
|
|
r_player_vehicle = player;
|
|
r_player_blood = 12000;
|
|
//Blood Regen
|
|
r_player_bloodregen = 0;
|
|
//Blood Gain Per Sec
|
|
r_player_bloodgainpersec = 0;
|
|
//Blood Loss Per Sec
|
|
r_player_bloodlosspersec = 0;
|
|
//Blood Per Sec (gain - loss)
|
|
r_player_bloodpersec = 0;
|
|
//Food Stack
|
|
r_player_foodstack = 1;
|
|
//player skill
|
|
r_player_lowblood = false;
|
|
r_player_timeout = 0;
|
|
r_player_bloodTotal = r_player_blood;
|
|
r_public_blood = r_player_blood;
|
|
r_player_bloodDanger = r_player_bloodTotal * 0.2;
|
|
r_player_actions = [];
|
|
r_handlerCount = 0;
|
|
r_action_repair = false;
|
|
r_action_targets = [];
|
|
r_pitchWhine = false;
|
|
r_isBandit = false;
|
|
isInTraderCity = false;
|
|
dayz_DisplayGenderSelect = true;
|
|
//blood test vars
|
|
r_A_watered = false;
|
|
r_B_watered = false;
|
|
r_D_watered = false;
|
|
r_control_watered = false;
|
|
r_canClick_resultsCard = false;
|
|
r_resultsCard_Clicked = false;
|
|
r_water_clicked = false;
|
|
r_needleclicked = 0;
|
|
r_needleReset = false;
|
|
r_control_done = false;
|
|
r_antiA_done = false;
|
|
r_antiB_done = false;
|
|
r_antiD_done = false;
|
|
carryClick = false;
|
|
dayz_workingInprogress = false;
|
|
|
|
//INT Nutrition Info
|
|
r_player_Nutrition = [0]; //[Calories]
|
|
r_player_nutritionMuilpty = 2;
|
|
NORRN_dropAction = -1;
|
|
DZE_PROTOBOX = objNull;
|
|
|
|
//count actions
|
|
r_action_count = 0;
|
|
|
|
//ammo routine
|
|
r_player_actions2 = [];
|
|
r_action2 = false;
|
|
r_player_lastVehicle = objNull;
|
|
r_player_lastSeat = [];
|
|
r_player_removeActions2 = {
|
|
if (!isNull r_player_lastVehicle) then {
|
|
{
|
|
r_player_lastVehicle removeAction _x;
|
|
} count r_player_actions2;
|
|
r_player_actions2 = [];
|
|
r_action2 = false;
|
|
};
|
|
};
|
|
|
|
USEC_woundHit = [
|
|
"",
|
|
"body",
|
|
"hands",
|
|
"legs",
|
|
"head_hit"
|
|
];
|
|
DAYZ_woundHit = [
|
|
[
|
|
"body",
|
|
"hands",
|
|
"legs",
|
|
"head_hit"
|
|
],
|
|
[ 0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,2,2,3]
|
|
];
|
|
DAYZ_woundHit_ok = [
|
|
[
|
|
"body",
|
|
"hands",
|
|
"legs"
|
|
],
|
|
[0,0,0,0,0,1,1,1,2,2]
|
|
];
|
|
DAYZ_woundHit_dog = [
|
|
[
|
|
"body",
|
|
"hands",
|
|
"legs"
|
|
],
|
|
[0,0,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2]
|
|
];
|
|
USEC_MinorWounds = [
|
|
"hands",
|
|
"legs"
|
|
];
|
|
USEC_woundPoint = [
|
|
["Pelvis","aimpoint"],
|
|
["aimpoint"], //,"RightShoulder","LeftShoulder"
|
|
["lelbow","relbow"],
|
|
["RightFoot","LeftFoot"],
|
|
["neck","pilot"]
|
|
];
|
|
USEC_typeOfWounds = [
|
|
"Pelvis",
|
|
"aimpoint",
|
|
"lelbow","relbow",
|
|
"RightFoot","LeftFoot",
|
|
"neck","pilot"
|
|
];
|
|
|
|
DZE_vehicleZwounds = [
|
|
"sklo predni L",
|
|
"sklo predni P",
|
|
"sklo zadni",
|
|
"sklo zadni L",
|
|
"sklo zadni P",
|
|
"sklo P",
|
|
"Glass1",
|
|
"Glass2",
|
|
"Glass3",
|
|
"Glass4",
|
|
"Glass5",
|
|
"Glass6"
|
|
];
|
|
|
|
DZE_HeliAllowTowFrom = [
|
|
"CH_47F_EP1_DZE",
|
|
"CH_47F_EP1_DZ",
|
|
"CH_47F_BAF",
|
|
"CH_47F_EP1",
|
|
"BAF_Merlin_DZE",
|
|
"CH53_DZE"
|
|
];
|
|
|
|
DZE_HeliAllowToTow = [
|
|
"hilux1_civil_1_open",
|
|
"HMMWV_Base",
|
|
"Lada_base",
|
|
"Offroad_DSHKM_base",
|
|
"Pickup_PK_base",
|
|
"SkodaBase",
|
|
"tractor",
|
|
"VWGolf",
|
|
"Volha_TK_CIV_Base_EP1",
|
|
"S1203_TK_CIV_EP1",
|
|
"SUV_Base_EP1",
|
|
"ArmoredSUV_Base_PMC",
|
|
"UAZ_Base",
|
|
"LandRover_Base",
|
|
"Ship"
|
|
];
|
|
|
|
//Initialize Zombie Variables
|
|
dayz_zombieTargetList = [
|
|
["SoldierWB",50],
|
|
["Air",500],
|
|
["LandVehicle",200]
|
|
];
|
|
|
|
PVDZ_obj_Publish = []; //used for eventhandler to spawn a mirror of players tent
|
|
PVCDZ_obj_HideBody = objNull;
|
|
dayz_selectedVault = objNull;
|
|
dayz_selectedDoor = objNull;
|
|
|
|
PVDZE_veh_Publish = []; // for vehicle traders
|
|
PVDZE_obj_Trade = []; // For all traders increment qty
|
|
PVDZE_plr_TradeMenu = []; // For all traders
|
|
PVDZE_plr_DeathB = [];
|
|
|
|
//DayZ settings
|
|
dayz_maxAnimals = 8;
|
|
dayz_maxPlants = 3;
|
|
DAYZ_agentnumber = 0;
|
|
dayz_animalDistance = 600;
|
|
dayz_plantDistance = 600;
|
|
dayz_zSpawnDistance = 1000;
|
|
|
|
dayz_maxMaxModels = 80; // max quantity of Man models (player || Z, dead || alive) around players. Below this limit we can spawn Z // max quantity of loot piles around players. Below this limit we can spawn some loot
|
|
dayz_spawnArea = 300; // radius around player where we can spawn loot & Z
|
|
dayz_cantseeDist = 150; // distance from which we can spawn a Z in front of any player without ray-tracing && angle checks
|
|
dayz_cantseefov = 70; // half player field-of-view. Visible Z won't be spawned in front of any near players
|
|
dayz_canDelete = 350; // Z, further than this distance from its "owner", will be deleted
|
|
dayz_traps = [];
|
|
dayz_traps_active = [];
|
|
dayz_traps_trigger = [];
|
|
|
|
//Settings Not under dayz_settings
|
|
if(isNil "dayz_attackRange") then {
|
|
dayz_attackRange = 3;
|
|
|
|
};
|
|
if(isNil "dayz_DamageMultiplier") then {
|
|
dayz_DamageMultiplier = 1;
|
|
};
|
|
if(isNil "dayz_quickSwitch") then {
|
|
dayz_quickSwitch = false; //Enable quick weapon switch,
|
|
};
|
|
//Will be moved to map
|
|
if(isNil "dayz_infectiouswaterholes") then {
|
|
dayz_infectiouswaterholes = true; //Enable infected waterholes
|
|
};
|
|
if(isNil "dayz_POIs") then {
|
|
dayz_POIs = true; //Enable POI's
|
|
};
|
|
if(isNil "DZE_SelfTransfuse") then {
|
|
DZE_SelfTransfuse = false;
|
|
};
|
|
if(isNil "dayz_maxAnimals") then {
|
|
dayz_maxAnimals = 5;
|
|
};
|
|
if(isNil "timezoneswitch") then {
|
|
timezoneswitch = 0;
|
|
};
|
|
if(isNil "dayz_maxLocalZombies") then {
|
|
dayz_maxLocalZombies = 15;
|
|
};
|
|
if(isNil "dayz_maxGlobalZombiesInit") then {
|
|
dayz_maxGlobalZombiesInit = 15;
|
|
};
|
|
if(isNil "dayz_maxGlobalZombiesIncrease") then {
|
|
dayz_maxGlobalZombiesIncrease = 5;
|
|
};
|
|
if(isNil "dayz_maxZeds") then {
|
|
dayz_maxZeds = 500;
|
|
};
|
|
if (isNil "DZE_PlayerZed") then {
|
|
DZE_PlayerZed = true;
|
|
};
|
|
if (isNil "DZE_GodModeBase") then {
|
|
DZE_GodModeBase = false;
|
|
};
|
|
if(isNil "DZEdebug") then {
|
|
DZEdebug = false;
|
|
};
|
|
if (isNil "DZE_Debug_Damage") then {
|
|
DZE_Debug_Damage = true;
|
|
};
|
|
if(isNil "DZE_TRADER_SPAWNMODE") then {
|
|
DZE_TRADER_SPAWNMODE = false;
|
|
};
|
|
if(isNil "dayz_tameDogs") then {
|
|
dayz_tameDogs = false;
|
|
};
|
|
if(isNil "dayz_sellDistance_vehicle") then {
|
|
dayz_sellDistance_vehicle = 10;
|
|
};
|
|
if(isNil "dayz_sellDistance_boat") then {
|
|
dayz_sellDistance_boat = 30;
|
|
};
|
|
if(isNil "dayz_sellDistance_air") then {
|
|
dayz_sellDistance_air = 40;
|
|
};
|
|
if(isNil "dayz_paraSpawn") then {
|
|
dayz_paraSpawn = false;
|
|
};
|
|
if(isNil "dayz_minpos") then {
|
|
dayz_minpos = -20000;
|
|
};
|
|
if(isNil "dayz_maxpos") then {
|
|
dayz_maxpos = 20000;
|
|
};
|
|
if(isNil "DZE_BuildingLimit") then {
|
|
DZE_BuildingLimit = 150;
|
|
};
|
|
if(isNil "DZE_HumanityTargetDistance") then {
|
|
DZE_HumanityTargetDistance = 25;
|
|
};
|
|
if(isNil "DZE_FriendlySaving") then {
|
|
DZE_FriendlySaving = true;
|
|
};
|
|
if(isNil "DZE_BuildOnRoads") then {
|
|
DZE_BuildOnRoads = false;
|
|
};
|
|
if(isNil "DZE_MissionLootTable") then {
|
|
DZE_MissionLootTable = false;
|
|
};
|
|
if(isNil "DZE_ConfigTrader") then {
|
|
DZE_ConfigTrader = false;
|
|
};
|
|
if(isNil "DZE_LootSpawnTimer") then {
|
|
DZE_LootSpawnTimer = 10;
|
|
};
|
|
if(isNil "DZE_HeliLift") then {
|
|
DZE_HeliLift = true;
|
|
};
|
|
if(isNil "DZE_DamageBeforeMaint") then {
|
|
DZE_DamageBeforeMaint = 0.09;
|
|
};
|
|
if(isNil "DZE_StaticConstructionCount") then {
|
|
DZE_StaticConstructionCount = 0;
|
|
};
|
|
if (isNil "DZE_selfTransfuse_Values") then {
|
|
DZE_selfTransfuse_Values = [12000, 15, 300];
|
|
};
|
|
if (isNil "helperDetach") then {
|
|
helperDetach = false;
|
|
};
|
|
if (isNil "DZE_modularBuild") then {
|
|
DZE_modularBuild = false;
|
|
};
|
|
if (isNil "DZE_snapExtraRange") then {
|
|
DZE_snapExtraRange = 0;
|
|
};
|
|
if (isNil "DZE_RestrictSkins") then {
|
|
DZE_RestrictSkins = [];
|
|
};
|
|
if (isNil "DZE_BackpackAntiTheft") then {
|
|
DZE_BackpackAntiTheft = false;
|
|
};
|
|
// needed on server
|
|
if(isNil "DZE_PlotPole") then {
|
|
DZE_PlotPole = [30,45];
|
|
};
|
|
if(isNil "DZE_maintainRange") then {
|
|
DZE_maintainRange = ((DZE_PlotPole select 0)+20);
|
|
};
|
|
if(isNil "DZE_HeartBeat") then {
|
|
DZE_HeartBeat = false;
|
|
};
|
|
if(isNil "DZE_UseBloodTypes") then {
|
|
DZE_UseBloodTypes = false;
|
|
};
|
|
|
|
if(isNil "dayz_presets") then { dayz_presets = "Vanilla"; };
|
|
|
|
switch (dayz_presets) do {
|
|
case "Custom": { //Custom
|
|
if(isNil "dayz_enableGhosting") then { dayz_enableGhosting = false; };
|
|
if(isNil "dayz_ghostTimer") then { dayz_ghostTimer = 120; };
|
|
if(isNil "dayz_spawnselection") then { dayz_spawnselection = 0; };
|
|
if(isNil "dayz_spawncarepkgs_clutterCutter") then { dayz_spawncarepkgs_clutterCutter = 0; };
|
|
if(isNil "dayz_spawnCrashSite_clutterCutter") then { dayz_spawnCrashSite_clutterCutter = 0; };
|
|
if(isNil "dayz_spawnInfectedSite_clutterCutter") then { dayz_spawnInfectedSite_clutterCutter = 0; };
|
|
if(isNil "dayz_bleedingeffect") then { dayz_bleedingeffect = 2; };
|
|
if(isNil "dayz_ForcefullmoonNights") then { dayz_ForcefullmoonNights = false; };
|
|
if(isNil "dayz_OpenTarget_TimerTicks") then { dayz_OpenTarget_TimerTicks = 60 * 10; };
|
|
if(isNil "dayz_temperature_override") then { dayz_temperature_override = true; };
|
|
if(isNil "dayz_nutritionValuesSystem") then { dayz_nutritionValuesSystem = false; };
|
|
//Not implmented yet
|
|
if(isNil "dayz_classicBloodBagSystem") then { dayz_classicBloodBagSystem = false; };
|
|
};
|
|
case "Classic": { //Classic
|
|
dayz_enableGhosting = false; //Enable disable the ghosting system.
|
|
dayz_ghostTimer = 120; //Sets how long in seconds a player must be dissconnected before being able to login again.
|
|
dayz_spawnselection = 0; //Turn on spawn selection 0 = random only spawns, 1 = Spawn choice based on limits
|
|
dayz_spawncarepkgs_clutterCutter = 0; //0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnCrashSite_clutterCutter = 0; // heli crash options 0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnInfectedSite_clutterCutter = 0; // infected base spawn... 0: loot hidden in grass, 1: loot lifted, 2: no grass
|
|
dayz_bleedingeffect = 2; //1= blood on the ground, 2= partical effect, 3 = both.
|
|
dayz_ForcefullmoonNights = false; // Forces night time to be full moon.
|
|
dayz_OpenTarget_TimerTicks = 60 * 10; //how long can a player be freely attacked for after attacking someone unprovoked.
|
|
dayz_temperature_override = true; // Set to true to disable all temperature changes.
|
|
dayz_nutritionValuesSystem = false; //Enables nutrition system
|
|
//Not implmented yet
|
|
dayz_classicBloodBagSystem = true; //Enables one type of bloodbag
|
|
};
|
|
case "Elite": { //Elite
|
|
dayz_enableGhosting = true; //Enable disable the ghosting system.
|
|
dayz_ghostTimer = 90; //Sets how long in seconds a player must be dissconnected before being able to login again.
|
|
dayz_spawnselection = 0; //Turn on spawn selection 0 = random only spawns, 1 = Spawn choice based on limits
|
|
dayz_spawncarepkgs_clutterCutter = 0; //0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnCrashSite_clutterCutter = 0; // heli crash options 0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnInfectedSite_clutterCutter = 0; // infected base spawn... 0: loot hidden in grass, 1: loot lifted, 2: no grass
|
|
dayz_bleedingeffect = 3; //1= blood on the ground, 2= partical effect, 3 = both.
|
|
dayz_ForcefullmoonNights = false; // Forces night time to be full moon.
|
|
dayz_OpenTarget_TimerTicks = 60 * 25; //how long can a player be freely attacked for after attacking someone unprovoked.
|
|
dayz_temperature_override = false; // Set to true to disable all temperature changes.
|
|
dayz_nutritionValuesSystem = true; //Enables nutrition system
|
|
//Not implmented yet
|
|
dayz_classicBloodBagSystem = false; //Enables one type of bloodbag
|
|
};
|
|
default { //Vanilla
|
|
dayz_enableGhosting = true; //Enable disable the ghosting system.
|
|
dayz_ghostTimer = 60; //Sets how long in seconds a player must be disconnected before being able to login again.
|
|
dayz_spawnselection = 1; //Turn on spawn selection 0 = random only spawns, 1 = Spawn choice based on limits
|
|
dayz_spawncarepkgs_clutterCutter = 0; //0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnCrashSite_clutterCutter = 0; // heli crash options 0 = loot hidden in grass, 1 = loot lifted and 2 = no grass
|
|
dayz_spawnInfectedSite_clutterCutter = 0; // infected base spawn... 0: loot hidden in grass, 1: loot lifted, 2: no grass
|
|
dayz_bleedingeffect = 3; //1= blood on the ground, 2= partical effect, 3 = both.
|
|
dayz_ForcefullmoonNights = true; // Forces night time to be full moon.
|
|
dayz_OpenTarget_TimerTicks = 60 * 10; //how long can a player be freely attacked for after attacking someone unprovoked.
|
|
dayz_temperature_override = false; // Set to true to disable all temperature changes.
|
|
dayz_nutritionValuesSystem = true; //Enables nutrition system
|
|
//Not implmented yet
|
|
dayz_classicBloodBagSystem = false; //Enables one type of bloodbag
|
|
};
|
|
};
|
|
DZE_REPLACE_WEAPONS = [["Crossbow","ItemMatchbox","ItemHatchet"],["Crossbow_DZ","ItemMatchbox_DZE","ItemHatchet_DZE"]];
|
|
|
|
if(isNil "dayz_zedSpawnVehCount") then {
|
|
dayz_zedSpawnVehCount = dayz_maxLocalZombies / 2;
|
|
};
|
|
if(isNil "dayz_spawnAirCount") then {
|
|
dayz_spawnAirCount = 0;
|
|
};
|
|
if(isNil "dayz_zedsAttackVehicles") then {
|
|
dayz_zedsAttackVehicles = true;
|
|
};
|
|
if (isNil "DZE_slowZombies") then {
|
|
DZE_slowZombies = false;
|
|
};
|
|
|
|
// update objects
|
|
dayz_updateObjects = ["Plane","Tank","Car", "Helicopter", "Motorcycle", "Ship", "TentStorage", "VaultStorage","LockboxStorage","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","GunRack_DZ","WoodCrate_DZ","Scaffolding_DZ"];
|
|
dayz_disallowedVault = ["TentStorage", "BuiltItems","ModularItems","DZE_Base_Object","Generator_DZ"];
|
|
dayz_reveal = ["AllVehicles","WeaponHolder","Land_A_tent","BuiltItems","ModularItems","DZE_Base_Object","Generator_DZ"];
|
|
dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","BagFenceRound_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_DZ","Land_HBarrier5_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","WoodStairsRails_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallHalf_DZ","CinderWall_DZ","CinderWallDoorway_DZ","CinderWallDoor_DZ","CinderWallDoorLocked_DZ","CinderWallSmallDoorway_DZ","CinderWallDoorSmall_DZ","CinderWallDoorSmallLocked_DZ","MetalFloor_DZ","WoodRamp_DZ","GunRack_DZ","FireBarrel_DZ","WoodCrate_DZ","Scaffolding_DZ"];
|
|
|
|
DZE_LockableStorage = ["VaultStorage","VaultStorageLocked","LockboxStorageLocked","LockboxStorage"];
|
|
DZE_LockedStorage = ["VaultStorageLocked","LockboxStorageLocked"];
|
|
DZE_UnLockedStorage = ["VaultStorage","LockboxStorage"];
|
|
DZE_maintainClasses = ["ModularItems","DZE_Housebase","LightPole_DZ","BuiltItems","Generator_DZ","Plastic_Pole_EP1_DZ","Fence_corrugated_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","StickFence_DZ","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","DeerStand_DZ","Scaffolding_DZ","FireBarrel_DZ"];
|
|
|
|
DZE_DoorsLocked = ["Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallDoorLocked_DZ","CinderWallDoorSmallLocked_DZ"];
|
|
|
|
// List of removable items that require crowbar
|
|
DZE_isRemovable = ["Fence_corrugated_DZ","M240Nest_DZ","ParkBench_DZ","Plastic_Pole_EP1_DZ","FireBarrel_DZ","Scaffolding_DZ"];
|
|
DZE_isWreck = ["SKODAWreck","HMMWVWreck","UralWreck","datsun01Wreck","hiluxWreck","datsun02Wreck","UAZWreck","Land_Misc_Garb_Heap_EP1","Fort_Barricade_EP1","Rubbish2"];
|
|
DZE_isWreckBuilding = ["Land_wreck_cinder","Land_wood_wreck_quarter","Land_wood_wreck_floor","Land_wood_wreck_third","Land_wood_wreck_frame","Land_iron_vein_wreck","Land_silver_vein_wreck","Land_gold_vein_wreck","Land_ammo_supply_wreck"];
|
|
DZE_isNewStorage = ["VaultStorage","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","GunRack_DZ","WoodCrate_DZ"];
|
|
|
|
// These work with just a running generator
|
|
dayz_fuelpumparray = ["FuelPump_DZ","Land_A_FuelStation_Feed","Land_Ind_FuelStation_Feed_EP1","Land_FuelStation_Feed_PMC","FuelStation","Land_ibr_FuelStation_Feed","Land_fuelstation_army","Land_fuelstation","land_fuelstation_w","Land_benzina_schnell"];
|
|
DZE_fueltruckarray = ["KamazRefuel_DZ","UralRefuel_TK_EP1_DZ","MtvrRefuel_DES_EP1_DZ","V3S_Refuel_TK_GUE_EP1_DZ","MtvrRefuel_DZ","KamazRefuel_DZE","UralRefuel_TK_EP1_DZE","MtvrRefuel_DES_EP1_DZE","V3S_Refuel_TK_GUE_EP1_DZE","MtvrRefuel_DZE"];
|
|
|
|
// Standard Fuel sources
|
|
dayz_fuelsources = ["Land_Ind_TankSmall","Land_fuel_tank_big","Land_fuel_tank_stairs","Land_fuel_tank_stairs_ep1","Land_wagon_tanker","Land_fuelstation","Land_fuelstation_army","land_fuelstation_w","Land_benzina_schnell"];
|
|
|
|
DZE_Lock_Door = "";
|
|
|
|
//init global arrays for Loot Chances
|
|
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\loot_init.sqf";
|
|
|
|
if(isServer) then {
|
|
dayz_players = [];
|
|
dead_bodyCleanup = [];
|
|
needUpdate_objects = [];
|
|
Server_InfectedCamps = [];
|
|
//dayz_spawnCrashSite_clutterCutter=0; // helicrash spawn... 0: loot hidden in grass, 1: loot lifted, 2: no grass
|
|
//dayz_spawnInfectedSite_clutterCutter=0; // infected base spawn... 0: loot hidden in grass, 1: loot lifted, 2: no grass
|
|
//Objects to remove when killed.
|
|
DayZ_removableObjects = ["Wire_cat1", "Sandbag1_DZ", "Hedgehog_DZ", "CamoNet_DZ", "Trap_Cans", "TrapTripwireFlare", "TrapBearTrapSmoke", "TrapTripwireGrenade", "TrapTripwireSmoke", "TrapBearTrapFlare"];
|
|
//[10416.695, 4198.4634],[7982.2563, 1419.8256],[10795.93, 1419.8263],[7966.083, 4088.7463],[9259.7266, 2746.1985],[5200.5234, 3915.3274],[6494.1665, 2572.7798],[5216.6968, 1246.407],[2564.7244, 3915.3296],[3858.3674, 2572.782],[2580.8977, 1246.4092],[13398.995, 4400.5874],[12242.025, 2948.3196],[13551.842, 1832.2257],[14870.512, 3009.5117],[-178.19415, 1062.4478],[1099.2754, 2388.8206],[-194.36755, 3731.3679],[10394.215, 8322.1719],[7959.7759, 5543.5342],[10773.449, 5543.5342],
|
|
dayz_grid =[[7943.6025, 8212.4551],[9237.2461, 6869.9063],[5178.043, 8039.0361],[6471.686, 6696.4883],[5194.2163, 5370.1152],[2542.2439, 8039.0381],[3835.887, 6696.4902],[2558.4172, 5370.1172],[13376.514, 8524.2969],[12219.544, 7072.0273],[13529.361, 5955.9336],[14848.032, 7133.2197],[-200.67474, 5186.1563],[1076.7949, 6512.5283],[-216.84814, 7855.0771],[10293.751, 12197.736],[7859.312, 9419.0996],[10672.988, 9419.0996],[7843.1387, 12088.021],[9136.7822, 10745.474],[5077.5791, 11914.601],[6371.2222, 10572.052],[5093.7524, 9245.6816],[2441.78, 11914.604],[3735.4231, 10572.055],[2457.9534, 9245.6816],[13276.053, 12399.861],[12119.08, 10947.596],[13428.897, 9831.501],[14747.566, 11008.786],[-301.13867, 9061.7207],[976.33112, 10388.096],[-317.31201, 11730.642],[10271.271, 16321.429],[7836.8315, 13542.813],[10650.506, 13542.813],[7820.6582, 16211.718],[9114.3018, 14869.175],[5055.0986, 16038.3],[6348.7417, 14695.758],[5071.272, 13369.392],[2419.2996, 16038.305],[3712.9426, 14695.76],[2435.4729, 13369.392],[13253.568, 16523.553],[12096.6, 15071.295],[13406.416, 13955.209],[14725.089, 15132.486],[-323.61914, 13185.43],[953.85059, 14511.8],[-339.79248, 15854.346]];
|
|
dayz_gridsActive = [];
|
|
dayz_seedloot = [];
|
|
dayz_deseedloot = [];
|
|
dayz_ghostPlayers = [];
|
|
dayz_activePlayers = [];
|
|
dayz_died = [];
|
|
|
|
DZE_DYN_AntiStuck = 0;
|
|
DZE_DYN_AntiStuck2nd = 0;
|
|
DZE_DYN_AntiStuck3rd = 0;
|
|
|
|
if(isNil "EpochEvents") then {
|
|
EpochEvents = [];
|
|
};
|
|
if(isNil "DZE_vehicleAmmo") then {
|
|
DZE_vehicleAmmo = 0;
|
|
};
|
|
|
|
if(isNil "DZE_BackpackGuard") then {
|
|
DZE_BackpackGuard = true;
|
|
};
|
|
|
|
if(isNil "DZE_CleanNull") then {
|
|
DZE_CleanNull = false;
|
|
};
|
|
if (isNil "DZE_DeathMsgGlobal") then {
|
|
DZE_DeathMsgGlobal = false;
|
|
};
|
|
if (isNil "DZE_DeathMsgSide") then {
|
|
DZE_DeathMsgSide = false;
|
|
};
|
|
if (isNil "DZE_DeathMsgTitleText") then {
|
|
DZE_DeathMsgTitleText = false;
|
|
};
|
|
DZE_safeVehicle = ["ParachuteWest","ParachuteC"];
|
|
};
|
|
|
|
if(!isDedicated) then {
|
|
//Establish Location Streaming
|
|
_funcGetLocation =
|
|
{
|
|
dayz_Locations = [];
|
|
for "_i" from 0 to ((count _this) - 1) do
|
|
{
|
|
private ["_location","_config","_locHdr","_position","_size","_type"];
|
|
//Get Location Data from config
|
|
_config = (_this select _i);
|
|
_position = getArray (_config >> "position");
|
|
_locHdr = configName _config;
|
|
_size = getNumber (_config >> "size");
|
|
dayz_Locations set [count dayz_Locations, [_position,_locHdr,_size]];
|
|
};
|
|
};
|
|
_cfgLocation = configFile >> "CfgTownGeneratorChernarus";
|
|
_cfgLocation call _funcGetLocation;
|
|
|
|
_funcGetGrid =
|
|
{
|
|
dayz_GridSystem = [];
|
|
for "_i" from 0 to ((count _this) - 1) do
|
|
{
|
|
private ["_location","_config","_locHdr","_position","_size","_type"];
|
|
_config = (_this select _i);
|
|
_position = getArray (_config >> "position");
|
|
_locHdr = configName _config;
|
|
_size = getNumber (_config >> "size");
|
|
dayz_GridSystem set [count dayz_GridSystem, [_position,_locHdr,_size]];
|
|
};
|
|
};
|
|
_cfggrid = configFile >> "CfgGrid";
|
|
_cfggrid call _funcGetGrid;
|
|
dayz_spawnPos = getPosATL player;
|
|
|
|
dayz_buildingMonitor = []; //Buildings to check
|
|
dayz_bodyMonitor = [];
|
|
dayz_flyMonitor = []; //used for monitor flies
|
|
dayz_zedMonitor = [];
|
|
dayz_buildingBubbleMonitor = [];
|
|
dayz_gridsActive = [];
|
|
|
|
// weather control var
|
|
zeroPreviousWeather = [0,0,[0,0],0];
|
|
zeroCurrentWeather = [0,0,[0,0],0];
|
|
|
|
if (DZE_MissionLootTable) then {
|
|
dayz_baseTypes = getArray (missionConfigFile >> "CfgBuildingLoot" >> "Default" >> "zombieClass");
|
|
} else {
|
|
dayz_baseTypes = getArray (configFile >> "CfgBuildingLoot" >> "Default" >> "zombieClass");
|
|
};
|
|
|
|
|
|
//temperature variables
|
|
dayz_temperatur = 36; //TeeChange
|
|
dayz_temperaturnormal = 36; //TeeChange
|
|
dayz_temperaturmax = 42; //TeeChange
|
|
dayz_temperaturmin = 27; //TeeChange
|
|
|
|
//player special variables
|
|
dayZ_lastPlayerUpdate = 0;
|
|
dayZ_everyonesTents = [];
|
|
dayz_hunger = 0;
|
|
dayz_thirst = 0;
|
|
dayz_combat = 0;
|
|
dayz_nutrition = 0;
|
|
dayz_preloadFinished = true;
|
|
dayz_statusArray = [1,1];
|
|
dayz_disAudial = 0;
|
|
dayz_disVisual = 0;
|
|
dayz_firedCooldown = 0;
|
|
dayz_DeathActioned = false;
|
|
dayz_canDisconnect = true;
|
|
dayz_damageCounter = time;
|
|
dayz_lastSave = time;
|
|
dayz_isSwimming = true;
|
|
dayz_isKneeling = false;
|
|
dayz_isCrawling = false;
|
|
dayz_PreviousTown = "Wilderness";
|
|
dayz_currentDay = 0;
|
|
dayz_hasLight = false;
|
|
dayz_surfaceNoise = 0;
|
|
dayz_surfaceType = "None";
|
|
dayz_noPenalty = [];
|
|
dayz_heavenCooldown = 0;
|
|
deathHandled = false;
|
|
dayz_lastHumanity = 0;
|
|
dayz_guiHumanity = -90000;
|
|
dayz_firstGroup = group player;
|
|
dayz_originalPlayer = player;
|
|
dayz_sourceBleeding = objNull;
|
|
dayz_clientPreload = false;
|
|
dayz_authed = false;
|
|
dayz_panicCooldown = 0;
|
|
dayz_areaAffect = 2.5;
|
|
dayz_monitorPeriod = 0.6; // number of seconds between each player_zombieCheck calls
|
|
dayz_heartBeat = false;
|
|
dayzClickTime = 0;
|
|
//Current local
|
|
dayz_spawnZombies = 0;
|
|
dayz_swarmSpawnZombies = 0;
|
|
//Max local
|
|
dayz_maxLocalZombies = 15; // max quantity of Z controlled by local gameclient, used by player_spawnCheck. Below this limit we can spawn Z
|
|
dayz_CurrentNearByZombies = 0;
|
|
//Max NearBy
|
|
if (isNil "dayz_maxNearByZombies") then {
|
|
dayz_maxNearByZombies = 30; // max quantity of Z controlled by local gameclient, used by player_spawnCheck. Below this limit we can spawn Z
|
|
//Current total
|
|
};
|
|
dayz_currentGlobalZombies = 0;
|
|
//Max global zeds.
|
|
if (isNil "dayz_maxGlobalZeds") then {
|
|
dayz_maxGlobalZeds = 1500;
|
|
};
|
|
//Animals
|
|
dayz_currentGlobalAnimals = 0;
|
|
dayz_maxGlobalAnimals = 80;
|
|
//Plnats
|
|
dayz_currentGlobalPlants = 0;
|
|
dayz_maxGlobalPlants = 500;
|
|
//Loot
|
|
r_player_divideinvehicle = 0;
|
|
if (isNil "dayz_spawnDelay") then {
|
|
dayz_spawnDelay = 120;
|
|
};
|
|
dayz_spawnWait = -(dayz_spawnDelay);
|
|
if (isNil "dayz_lootDelay") then {
|
|
dayz_lootDelay = 3;
|
|
};
|
|
dayz_lootWait = -300;
|
|
//used to count global zeds around players
|
|
dayz_CurrentZombies = 0;
|
|
//Used to limit overall zed counts
|
|
dayz_tickTimeOffset = 0;
|
|
dayz_currentWeaponHolders = 0;
|
|
dayz_maxMaxWeaponHolders = 80;
|
|
dayz_maxCurrentZeds = 0;
|
|
dayz_inVehicle = false;
|
|
dayz_Magazines = [];
|
|
dayzGearSave = false;
|
|
dayz_unsaved = false;
|
|
dayz_scaleLight = 0;
|
|
dayzDebug = false;
|
|
dayzState = -1;
|
|
dayz_onBack = "";
|
|
dayz_fishingInprogress = false;
|
|
dayz_siphonFuelInProgress = false;
|
|
dayz_salvageInProgress = false;
|
|
lastSpawned = diag_tickTime;
|
|
lastSepsis = 0;
|
|
//uiNamespace setVariable ['DAYZ_GUI_display',displayNull];
|
|
//if (uiNamespace getVariable ['DZ_displayUI', 0] == 2) then {
|
|
// dayzDebug = true;
|
|
//};
|
|
dayz_dodge = false;
|
|
|
|
DZE_ActionInProgress = false;
|
|
|
|
// DayZ Epoch Client only variables
|
|
if(isNil "DZE_AllowForceSave") then {
|
|
DZE_AllowForceSave = false;
|
|
};
|
|
if(isNil "DZE_AllowCargoCheck") then {
|
|
DZE_AllowCargoCheck = true;
|
|
};
|
|
if(isNil "DZE_ForceNameTags") then {
|
|
DZE_ForceNameTags = false;
|
|
};
|
|
if(isNil "DZE_ForceNameTagsOff") then {
|
|
DZE_ForceNameTagsOff = false;
|
|
};
|
|
if(isNil "DZE_ForceNameTagsInTrader") then {
|
|
DZE_ForceNameTagsInTrader = false;
|
|
};
|
|
if(isNil "DZE_HaloJump") then {
|
|
DZE_HaloJump = true;
|
|
};
|
|
|
|
if(isNil "DZE_AntiWallLimit") then {
|
|
DZE_AntiWallLimit = 3;
|
|
};
|
|
if(isNil "DZE_requireplot") then {
|
|
DZE_requireplot = 1;
|
|
};
|
|
if(isNil "DZE_R3F_WEIGHT") then {
|
|
DZE_R3F_WEIGHT = true;
|
|
};
|
|
|
|
|
|
DZE_AntiWallCounter = 0;
|
|
|
|
DZE_FreshSpawn = false;
|
|
|
|
DZE_myHaloVehicle = objNull;
|
|
dayz_myLiftVehicle = objNull;
|
|
|
|
DZE_Friends = [];
|
|
|
|
DZE_CanPickup = true;
|
|
DZE_Q = false;
|
|
DZE_Z = false;
|
|
|
|
DZE_Q_alt = false;
|
|
DZE_Z_alt = false;
|
|
|
|
DZE_Q_ctrl = false;
|
|
DZE_Z_ctrl = false;
|
|
|
|
DZE_5 = false;
|
|
DZE_4 = false;
|
|
DZE_6 = false;
|
|
|
|
DZE_F = false;
|
|
|
|
DZE_cancelBuilding = false;
|
|
DZE_PZATTACK = false;
|
|
|
|
DZE_trees = ["t_picea2s_snow.p3d","b_corylus.p3d","t_quercus3s.p3d","t_larix3s.p3d","t_pyrus2s.p3d","str_briza_kriva.p3d","dd_borovice.p3d","les_singlestrom_b.p3d","les_singlestrom.p3d","smrk_velky.p3d","smrk_siroky.p3d","smrk_maly.p3d","les_buk.p3d","str krovisko vysoke.p3d","str_fikovnik_ker.p3d","str_fikovnik.p3d","str vrba.p3d","hrusen2.p3d","str dub jiny.p3d","str lipa.p3d","str briza.p3d","p_akat02s.p3d","jablon.p3d","p_buk.p3d","str_topol.p3d","str_topol2.p3d","p_osika.p3d","t_picea3f.p3d","t_picea2s.p3d","t_picea1s.p3d","t_fagus2w.p3d","t_fagus2s.p3d","t_fagus2f.p3d","t_betula1f.p3d","t_betula2f.p3d","t_betula2s.p3d","t_betula2w.p3d","t_alnus2s.p3d","t_acer2s.p3d","t_populus3s.p3d","t_quercus2f.p3d","t_sorbus2s.p3d","t_malus1s.p3d","t_salix2s.p3d","t_picea1s_w.p3d","t_picea2s_w.p3d","t_ficusb2s_ep1.p3d","t_populusb2s_ep1.p3d","t_populusf2s_ep1.p3d","t_amygdalusc2s_ep1.p3d","t_pistacial2s_ep1.p3d","t_pinuse2s_ep1.p3d","t_pinuss3s_ep1.p3d","t_prunuss2s_ep1.p3d","t_pinusn2s.p3d","t_pinusn1s.p3d","t_pinuss2f.p3d","t_poplar2f_dead_pmc.p3d","misc_torzotree_pmc.p3d","misc_burnspruce_pmc.p3d","brg_cocunutpalm8.p3d","brg_umbrella_acacia01b.p3d","brg_jungle_tree_canopy_1.p3d","brg_jungle_tree_canopy_2.p3d","brg_cocunutpalm4.p3d","brg_cocunutpalm3.p3d","palm_01.p3d","palm_02.p3d","palm_03.p3d","palm_04.p3d","palm_09.p3d","palm_10.p3d","brg_cocunutpalm2.p3d","brg_jungle_tree_antiaris.p3d","brg_cocunutpalm1.p3d","str habr.p3d","brg_bird_1.p3d","brg_bird_2.p3d","brg_bird_3.p3d","brg_umbrella_acacia02b.p3d","brg_africandoumpalm_1.p3d","brg_umbrella_acacia04b.p3d","brg_datepalm_4.p3d","brg_datepalm_1.p3d","brg_umbrella_acacia03b.p3d","brg_bottle_4.p3d","brg_aloe1.p3d","brg_umbrella_acacia03.p3d","brg_umbrella_acacia01.p3d","brg_umbrella_acacia04.p3d","brg_aloe2.p3d","brg_umbrella_acacia02.p3d","brg_aloe3.p3d","brg_bottle_1.p3d","brg_datepalm_3.p3d","brg_datepalm_2.p3d","brg_baobab_1.p3d","brg_bottle_2.p3d","brg_bottle_3.p3d"];
|
|
DZE_TEMP_treedmg = 1;
|
|
|
|
DZE_Surrender = false;
|
|
DZE_Quarantine = false;
|
|
DZE_InRadiationZone = false;
|
|
|
|
Dayz_constructionContext = [];
|
|
Dayz_freefall = [ time, 0, 0.1 ];
|
|
autoRunActive = 0;
|
|
};
|