mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-13 19:52:38 +03:00
1140 lines
41 KiB
Plaintext
1140 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",
|
|
"ItemTrout",
|
|
"ItemSeaBass",
|
|
"ItemTuna"
|
|
];
|
|
exceptionsraw = ["ItemTuna","ItemSeaBass","ItemTrout","FishRawTuna","FishRawSeaBass","FishRawTrout"];
|
|
meatcooked = [
|
|
"FoodSteakCooked",
|
|
"FoodmeatCooked",
|
|
"FoodbeefCooked",
|
|
"FoodGoatCooked",
|
|
"FishCookedTrout",
|
|
"FishCookedSeaBass",
|
|
"FishCookedTuna",
|
|
"FoodmuttonCooked",
|
|
"FoodchickenCooked",
|
|
"FoodrabbitCooked",
|
|
"FoodbaconCooked",
|
|
"ItemTroutCooked",
|
|
"ItemSeaBassCooked",
|
|
"ItemTunaCooked"
|
|
];
|
|
//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]
|
|
];
|
|
PVDZE_plr_Hit = [];
|
|
PVDZE_obj_Publish = []; //used for eventhandler to spawn a mirror of players tent
|
|
PVCDZE_plr_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"];
|
|
dayz_reveal = ["AllVehicles","WeaponHolder","Land_A_tent","BuiltItems","ModularItems","DZE_Base_Object"];
|
|
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","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;
|
|
|
|
DZE_SaveTime = 30;
|
|
Dayz_constructionContext = [];
|
|
Dayz_freefall = [ time, 0, 0.1 ];
|
|
autoRunActive = 0;
|
|
};
|