mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-13 19:52:38 +03:00
@@ -1,21 +0,0 @@
|
||||
[NEW] Time between unlocking safes/lockboxes after a failed code will be exponentially higher, see configVariables.sqf\DZE_lockablesHarderPenalty @oiad
|
||||
[NEW] Added 93 new zombie models with loot groups and strings for Server Admins @Airwavesman
|
||||
|
||||
[FIXED] Some more occurrences of zero_building interiors misaligned or at the wrong terrain height (eaaedf2, 048caa5)
|
||||
[FIXED] Player could switch into gunner's seat of ArmoredSUV while the hatch was being closed (e89eebc) #2009 @TheFirstNoob
|
||||
[FIXED] POI fires were still spawning when POI was off and town generator was on (2855997)
|
||||
[FIXED] Combo locks could be duplicated by two players removing them at the same time (564e3da)
|
||||
[FIXED] Bush b_corylus.p3d allowed chopping down for wood like a tree (42e519a)
|
||||
[FIXED] Player could shoot during unconscious wake up animation (634a01a)
|
||||
[FIXED] Rare publicVariable value restrictions for AuthKey due to RNG with basic Latin characters (d48c907) @oiad @AirwavesMan
|
||||
[FIXED] Freeze when iterating through CfgWeapons in A2OA 1.64 due to conflict with ItemKeys in dayz_epoch_b.pbo #2010 @S-fly
|
||||
[FIXED] 45Rnd_545x39_RPK error after it was removed with the 2018-04-05 A2OA CorePatch (d249227)
|
||||
[FIXED] Disabled Arma's automatic vehicle refuel, repair and rearm at WarfareBVehicleServicePoint buildings (2c4f06c) @dihan48
|
||||
[FIXED] DistanceFoot database stat was incorrect. @dihan48
|
||||
[FIXED] Wrong cargo count of Refuel Trucks after last Corepatch. @AirwavesMan
|
||||
|
||||
[UPDATED] Spawning of Zombies and Loot in Safe Zones can now be toggled, disabled by default, see configVariables.sqf/DZE_SafeZoneZombieLoot (6248add, 141b25e) @oiad @_Lance_
|
||||
[UPDATED] Added notification when status icons are disabled
|
||||
[UPDATED] Added night vision mode back to DMR_DZ and M4SPR_DZE after it was removed with the 2018-04-05 A2OA CorePatch
|
||||
|
||||
[INFO] Synced with DayZMod upstream up to commit fe063a8
|
||||
39
CHANGE LOG 1.0.7.txt
Normal file
39
CHANGE LOG 1.0.7.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
[NEW] Time between unlocking safes/lockboxes after a failed code will be exponentially higher, see configVariables.sqf\DZE_lockablesHarderPenalty (c3cbca1) @oiad
|
||||
[NEW] Added 93 new zombie models with loot groups and strings for Server Admins. (2e15009) @AirwavesMan
|
||||
[NEW] Zombie Loot supports backpacks now. (096fc13) @AirwavesMan
|
||||
[NEW] Hide Body can be edited and toggled now. Enabled by default, configVariables.sqf/DZE_Hide_Body (c0e9fe6) @AirwavesMan
|
||||
[NEW] 6 AK-107 versions added with attachment support. (82485ea) @AirwavesMan
|
||||
[NEW] Added new waterbottles from DayZ Mod. Icons made by @DeVloek. Fully functional with all actions. @AirwavesMan
|
||||
|
||||
[FIXED] Some more occurrences of zero_building interiors misaligned or at the wrong terrain height (eaaedf2, 048caa5) @ebayShopper
|
||||
[FIXED] Player could switch into gunner's seat of ArmoredSUV while the hatch was being closed (e89eebc) #2009 @TheFirstNoob
|
||||
[FIXED] POI fires were still spawning when POI was off and town generator was on (2855997) @ebayShopper
|
||||
[FIXED] Combo locks could be duplicated by two players removing them at the same time (564e3da) @shu @oiad
|
||||
[FIXED] Bush b_corylus.p3d allowed chopping down for wood like a tree (42e519a) @ebayShopper
|
||||
[FIXED] Player could shoot during unconscious wake up animation (634a01a) @ebayShopper
|
||||
[FIXED] Rare publicVariable value restrictions for AuthKey due to RNG with basic Latin characters (d48c907) @oiad @AirwavesMan
|
||||
[FIXED] Freeze when iterating through CfgWeapons in A2OA 1.64 due to conflict with ItemKeys in dayz_epoch_b.pbo #2010 @S-fly
|
||||
[FIXED] 45Rnd_545x39_RPK error after it was removed with the 2018-04-05 A2OA CorePatch (d249227) @ebayShopper
|
||||
[FIXED] Disabled Arma's automatic vehicle refuel, repair and rearm at WarfareBVehicleServicePoint buildings (2c4f06c) @dihan48
|
||||
[FIXED] DistanceFoot database stat was incorrect. (be777dd) @dihan48
|
||||
[FIXED] Wrong cargo count of Refuel Trucks after last Corepatch. (e26fb24) @AirwavesMan
|
||||
[FIXED] Vehicles jumping into the air after flipping. (096fc13) @AirwavesMan
|
||||
[FIXED] Crafting wooden arrows from wood piles and razors was not possible. (d4b46e4) @AirwavesMan
|
||||
[FIXED] Top snap point for half cinder wall was incorrect. (8f10a36) @ndavalos, @AirwavesMan
|
||||
[FIXED] The RPK-74 magazine could not be used with all AK-74 versions. (82485ea) @AirwavesMan
|
||||
[FIXED] Multiple Vehicle Upgrades were not possibile. (ac884f2), (a430f79), (c24504a) @F507DMT
|
||||
[FIXED] Fix an inventory dupe if on water. (a052ba7), (baf92eb) @F507DMT
|
||||
[FIXED] The pickaxe and the broken pickaxe spawned in the ground on loot spawn. (a09bb81a) @AirwavesMan
|
||||
[FIXED] Fix floating loot from remove, pack and fn_dropItem. (1268f55) @AirwavesMan
|
||||
[FIXED] Water dogs did not work with other waterbottles than the normal one. @AirwavesMan
|
||||
|
||||
[UPDATED] Spawning of Zombies and Loot in Safe Zones can now be toggled, disabled by default, see configVariables.sqf/DZE_SafeZoneZombieLoot (6248add, 141b25e) @oiad @_Lance_
|
||||
[UPDATED] Added notification when status icons are disabled. (e04f0fc) @ebayShopper
|
||||
[UPDATED] Added night vision mode back to DMR_DZ and M4SPR_DZE after it was removed with the 2018-04-05 A2OA CorePatch (d6cf707) @ebayShopper
|
||||
[UPDATED] All M32 grenades using one inventroy slot now. (cc85067) @AirwavesMan
|
||||
[UPDATED] The Czech Vest Pouch can carry one weapon now. This was changed to be more intuitive and to avoid disappearing weapons. (f7ea9cb) @AirwavesMan
|
||||
[UPDATED] Old/unused variables removed from variables.sqf. Entire file reorganized. (4accdee) @worldwidesorrow
|
||||
[UPDATED] Functions fnc_usec_damageHandler, dayz_inflame_showMenu, dayz_inflame_showMenu_other, DZ_KeyDown_EH, dayz_EjectPlayer compiled on client only - compiles.sqf. (7613e3a) @worldwidesorrow
|
||||
[UPDATED] "PVCDZ_OpenTarget_Reset" moved to client only - publicEH.sqf. (58a98b7) @worldwidesorrow
|
||||
|
||||
[INFO] Synced with DayZMod upstream up to commit fe063a8
|
||||
@@ -16,5 +16,5 @@
|
||||
|
||||
[REMOVED] Old Towngenerator Config. @Skaronator
|
||||
|
||||
[INFO] Models/textures by Paul Tomany. @Sequisha.
|
||||
[INFO] Models/textures by @Sequisha.
|
||||
[INFO] Special thanks to http://verthosting.com for hosting our development server.
|
||||
|
||||
@@ -46,7 +46,7 @@ Initial Developers
|
||||
--------------------------
|
||||
* [VB]AWOL - Lead Developer - http://www.twitch.tv/vbawol
|
||||
* Axle - Tester, Trader City Designer - http://www.twitch.tv/axles
|
||||
* Paul Tomany - Models, Textures - ptomany@gmail.com - http://www.twitch.tv/sequisha
|
||||
* Sequisha - Models, Textures - http://www.twitch.tv/sequisha
|
||||
* [VB]GREEN - Graphics - http://www.twitch.tv/vbgreen
|
||||
|
||||
--------------------------
|
||||
@@ -65,6 +65,9 @@ GitHub Collaborators (In order of most commits)
|
||||
* Axles - https://github.com/Axles
|
||||
* Armifer - https://github.com/Armifer
|
||||
* Zupa - https://github.com/Windmolders
|
||||
* oiad - https://github.com/oiad
|
||||
* AirwavesMan - https://github.com/AirwavesMan
|
||||
* Seelenapparat - https://github.com/seelenapparat
|
||||
|
||||
--------------------------
|
||||
GitHub Contributors (In order of most commits)
|
||||
@@ -116,6 +119,8 @@ GitHub Contributors (In order of most commits)
|
||||
* F507DMT - https://github.com/F507DMT
|
||||
* ndavalos - https://github.com/ndavalos
|
||||
* SmokeyBR - https://github.com/SmokeyBR
|
||||
* DeVloek - https://github.com/DeVloek
|
||||
* worldwidesorrow - https://github.com/worldwidesorrow
|
||||
|
||||
--------------------------
|
||||
Special thanks
|
||||
|
||||
@@ -27,6 +27,7 @@ class CfgActions {
|
||||
class PutMagazine : None { show = 0; };
|
||||
class DeactivateMine : None { show = 0; };
|
||||
class RepairVehicle: None { show = 0; };
|
||||
class HideBody: None { show = 0; }; //Moved to fn_selfactions to allow editing
|
||||
/*
|
||||
"None"
|
||||
"GetInCommander"
|
||||
|
||||
@@ -18,7 +18,7 @@ class CfgCrafting {
|
||||
#include "Recipes\Medical\woodensplint.hpp"
|
||||
#include "Recipes\Medical\HerbalDrink.hpp"
|
||||
//ammo
|
||||
#include "Recipes\Ammo\WoodenArrow.hpp"
|
||||
//#include "Recipes\Ammo\WoodenArrow.hpp"
|
||||
//other
|
||||
#include "Recipes\Other\woodencrate.hpp"
|
||||
#include "Recipes\Other\nails.hpp"
|
||||
|
||||
@@ -288,7 +288,7 @@ class SnapBuilding {
|
||||
{0,0,0,"Pivot"},
|
||||
{-2.64, 0, 1.685,"Left"},
|
||||
{2.64, 0, 1.685,"Right"},
|
||||
{0, 0, 1.685,"Top"}
|
||||
{0, 0, 1.5,"Top"}
|
||||
};
|
||||
};
|
||||
class CinderWallDoorSmall_DZ: Cinder_DZE {};
|
||||
|
||||
@@ -5,8 +5,10 @@ Castle[] =
|
||||
{Loot_WEAPON, 1, ItemMap},
|
||||
{Loot_WEAPON, 1, ItemCompass},
|
||||
{Loot_WEAPON, 2, ItemFlashlight},
|
||||
{Loot_WEAPON, 1, ItemPickaxe},
|
||||
{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
//{Loot_WEAPON, 1, ItemPickaxe},
|
||||
//{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
{Loot_VEHICLE, 1, WeaponHolder_ItemPickaxe},
|
||||
{Loot_VEHICLE, 2, WeaponHolder_ItemPickaxeBroken},
|
||||
// {Loot_WEAPON, 2, ItemShovel},
|
||||
// {Loot_WEAPON, 1, ItemHatchet},
|
||||
{Loot_VEHICLE, 1, WeaponHolder_ItemHatchet},
|
||||
|
||||
@@ -10,8 +10,10 @@ Construction[] =
|
||||
{Loot_MAGAZINE, 1, equip_lever},
|
||||
{Loot_MAGAZINE, 1, ItemComboLock},
|
||||
|
||||
{Loot_WEAPON, 1, ItemPickaxe},
|
||||
{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
//{Loot_WEAPON, 1, ItemPickaxe},
|
||||
//{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
{Loot_VEHICLE, 1, WeaponHolder_ItemPickaxe},
|
||||
{Loot_VEHICLE, 2, WeaponHolder_ItemPickaxeBroken},
|
||||
{Loot_WEAPON, 1, ItemSledge},
|
||||
{Loot_MAGAZINE, 2, ItemSledgeHandle},
|
||||
{Loot_MAGAZINE, 2, ItemSledgeHead},
|
||||
|
||||
@@ -7,8 +7,10 @@ Industrial[] =
|
||||
{Loot_VEHICLE, 8, WeaponHolder_ItemCrowbar},
|
||||
// {Loot_WEAPON, 5, ItemHatchet},
|
||||
{Loot_VEHICLE, 5, WeaponHolder_ItemHatchet},
|
||||
{Loot_WEAPON, 1, ItemPickaxe},
|
||||
{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
//{Loot_WEAPON, 1, ItemPickaxe},
|
||||
//{Loot_WEAPON, 2, ItemPickaxeBroken},
|
||||
{Loot_VEHICLE, 1, WeaponHolder_ItemPickaxe},
|
||||
{Loot_VEHICLE, 2, WeaponHolder_ItemPickaxeBroken},
|
||||
{Loot_WEAPON, 1, ItemSledge},
|
||||
{Loot_MAGAZINE, 2, ItemSledgeHandle},
|
||||
{Loot_MAGAZINE, 2, ItemSledgeHead},
|
||||
|
||||
@@ -74,6 +74,7 @@ assaultrifles[] = {
|
||||
{Loot_WEAPON, 0.1, AKS_GOLD},
|
||||
{Loot_WEAPON, 0.5, AKM_DZ}, //AK_47_M
|
||||
{Loot_WEAPON, 0.5, AK74_DZ}, //AK_74
|
||||
{Loot_WEAPON, 0.5, AK107_DZ}, //AK_107
|
||||
{Loot_WEAPON, 0.3, FNFAL_DZ}, //FN_FAL
|
||||
{Loot_WEAPON, 0.1, FN_FAL_ANPVS4_DZE}, //FNFAL_ANPVS4_DZ is NV only _DZE is toggleable
|
||||
{Loot_WEAPON, 0.5, G36A_Camo_DZ}, //G36A_camo
|
||||
|
||||
@@ -64,11 +64,12 @@ class CfgMagazines
|
||||
#include "DZE\Currency\GoldBar.hpp"
|
||||
#include "DZE\Currency\SilverBar.hpp"
|
||||
#include "DZE\Currency\CopperBar.hpp"
|
||||
#include "DZE\Currency\BronzeBar.hpp"
|
||||
//#include "DZE\Currency\BronzeBar.hpp" //The Bronze Bar has no model
|
||||
#include "DZE\Currency\AluminumBar.hpp"
|
||||
#include "DZE\Currency\TinBar.hpp"
|
||||
|
||||
#include "DZE\ItemWaterbottle.hpp"
|
||||
#include "DZE\PlasticWaterbottle.hpp"
|
||||
#include "Planting.hpp"
|
||||
|
||||
// Building Stuff
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
class ItemCanteen : FoodDrink
|
||||
{
|
||||
scope = public;
|
||||
|
||||
model = "\dayz_equip\models\waterbottle_gear.p3d";
|
||||
picture = "\dayz_equip\textures\equip_waterbottle_ca.paa";
|
||||
displayName = $STR_ITEM_CANTEEN_NAME;
|
||||
descriptionShort = $STR_ITEM_CANTEEN_DESC;
|
||||
|
||||
Nutrition[] = {0,0,1000,0};
|
||||
|
||||
infectionChance = 0.3;
|
||||
|
||||
consumeOutput = "ItemCanteenEmpty";
|
||||
|
||||
containerEmpty = "ItemCanteenEmpty";
|
||||
|
||||
class ItemActions : ItemActions
|
||||
{
|
||||
class Consume : Consume
|
||||
{
|
||||
};
|
||||
|
||||
class Empty
|
||||
{
|
||||
text = $STR_ITEM_CANTEEN_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ItemCanteenInfected : ItemCanteen
|
||||
{
|
||||
infectionChance = 1;
|
||||
};
|
||||
|
||||
class ItemCanteenSafe : ItemCanteen
|
||||
{
|
||||
infectionChance = 0;
|
||||
};
|
||||
|
||||
class ItemCanteenBoiled : ItemCanteen
|
||||
{
|
||||
displayName = $STR_ITEM_CANTEEN_BOILED_NAME;
|
||||
|
||||
infectionChance = 0;
|
||||
};
|
||||
|
||||
class ItemCanteenHerbal : ItemCanteen
|
||||
{
|
||||
displayName = $STR_ITEM_CANTEEN_HERBAL_NAME;
|
||||
|
||||
infectionChance = -0.5;
|
||||
};
|
||||
@@ -111,4 +111,3 @@ class FoodCooked : FoodEdible
|
||||
|
||||
#include "Soda.hpp"
|
||||
#include "WaterBottle.hpp"
|
||||
//#include "Canteen.hpp"
|
||||
@@ -11,11 +11,11 @@ class equip_rope : CA_Magazine {
|
||||
class Crafting
|
||||
{
|
||||
text = $STR_BLD_craft_equip_rope;//"String"
|
||||
script = "spawn player_craftItem;";
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {""};
|
||||
output[] = {{"equip_string","CfgMagazines",2}};
|
||||
input[] = {{"equip_rope","CfgMagazines",1}};
|
||||
requiretools[] = {"ItemKnife"};
|
||||
output[] = {{"equip_string",2}};
|
||||
input[] = {{"equip_rope",1}};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -3,7 +3,7 @@ class ItemBronzeBar: CA_Magazine {
|
||||
count = 1;
|
||||
type = 256;
|
||||
displayName = $STR_EPOCH_BRONZE;
|
||||
model = "\z\addons\dayz_epoch\models\bronze_bar.p3d";
|
||||
model = "\z\addons\dayz_epoch\models\bronze_bar.p3d"; // This model does not exist under the written path
|
||||
picture = "\z\addons\dayz_epoch\pictures\equip_bar_bronze_CA.paa";
|
||||
descriptionShort = $STR_EPOCH_BRONZE_DESC;
|
||||
};
|
||||
@@ -70,15 +70,21 @@ class ItemJerryMixed: CA_Magazine {
|
||||
picture = "\dayz_equip\textures\equip_jerrycan_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_CHAINSAW_MIXEDGAS20L_CAN_DESC;
|
||||
sfx = "refuel";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Crafting {
|
||||
text = $STR_EPOCH_CHAINSAW_MIXEDGAS_CAN_ACTION;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemToolbox"};
|
||||
requiretools[] = {"ItemToolbox","ChainSaw"};
|
||||
output[] = {{"CSGAS",1},{"ItemJerryMixed4",1}};
|
||||
input[] = {{"ItemJerryMixed",1}};
|
||||
};
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemJerryMixed4: CA_Magazine {
|
||||
@@ -90,15 +96,21 @@ class ItemJerryMixed4: CA_Magazine {
|
||||
picture = "\dayz_equip\textures\equip_jerrycan_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_CHAINSAW_MIXEDGAS16L_CAN_DESC;
|
||||
sfx = "refuel";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Crafting {
|
||||
text = $STR_EPOCH_CHAINSAW_MIXEDGAS_CAN_ACTION;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemToolbox"};
|
||||
requiretools[] = {"ItemToolbox","ChainSaw"};
|
||||
output[] = {{"CSGAS",1},{"ItemJerryMixed3",1}};
|
||||
input[] = {{"ItemJerryMixed4",1}};
|
||||
};
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemJerryMixed3: CA_Magazine {
|
||||
@@ -110,15 +122,21 @@ class ItemJerryMixed3: CA_Magazine {
|
||||
picture = "\dayz_equip\textures\equip_jerrycan_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_CHAINSAW_MIXEDGAS12L_CAN_DESC;
|
||||
sfx = "refuel";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Crafting {
|
||||
text = $STR_EPOCH_CHAINSAW_MIXEDGAS_CAN_ACTION;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemToolbox"};
|
||||
requiretools[] = {"ItemToolbox","ChainSaw"};
|
||||
output[] = {{"CSGAS",1},{"ItemJerryMixed2",1}};
|
||||
input[] = {{"ItemJerryMixed3",1}};
|
||||
};
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemJerryMixed2: CA_Magazine {
|
||||
@@ -130,15 +148,21 @@ class ItemJerryMixed2: CA_Magazine {
|
||||
picture = "\dayz_equip\textures\equip_jerrycan_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_CHAINSAW_MIXEDGAS8L_CAN_DESC;
|
||||
sfx = "refuel";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Crafting {
|
||||
text = $STR_EPOCH_CHAINSAW_MIXEDGAS_CAN_ACTION;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemToolbox"};
|
||||
requiretools[] = {"ItemToolbox","ChainSaw"};
|
||||
output[] = {{"CSGAS",1},{"ItemJerryMixed1",1}};
|
||||
input[] = {{"ItemJerryMixed2",1}};
|
||||
};
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemJerryMixed1: CA_Magazine {
|
||||
@@ -150,15 +174,21 @@ class ItemJerryMixed1: CA_Magazine {
|
||||
picture = "\dayz_equip\textures\equip_jerrycan_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_CHAINSAW_MIXEDGAS4L_CAN;
|
||||
sfx = "refuel";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Crafting {
|
||||
text = $STR_EPOCH_CHAINSAW_MIXEDGAS_CAN_ACTION;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemToolbox"};
|
||||
requiretools[] = {"ItemToolbox","ChainSaw"};
|
||||
output[] = {{"CSGAS",1},{"ItemJerrycanEmpty",1}};
|
||||
input[] = {{"ItemJerryMixed1",1}};
|
||||
};
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -274,6 +274,14 @@ class ItemOilBarrel: CA_Magazine
|
||||
model = "\z\addons\dayz_epoch\models\oil_drum_model.p3d";
|
||||
picture = "\z\addons\dayz_epoch\pictures\equip_oil_drum_model_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_OILBARREL_DESC;
|
||||
containerEmpty = "ItemOilBarrelEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemFuelBarrel: CA_Magazine
|
||||
{
|
||||
@@ -286,7 +294,14 @@ class ItemFuelBarrel: CA_Magazine
|
||||
picture = "\z\addons\dayz_epoch\pictures\equip_oil_drum_model_ca.paa";
|
||||
descriptionShort = $STR_EPOCH_FUELBARREL_DESC;
|
||||
fireIntensity = 6; //used for tent burning
|
||||
emptycan = "ItemFuelBarrelEmpty";
|
||||
containerEmpty = "ItemFuelBarrelEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemFuelBarrelEmpty: ItemFuelBarrel
|
||||
{
|
||||
@@ -1198,6 +1213,14 @@ class ItemMethylaminBarrel : ItemOilBarrel
|
||||
{
|
||||
displayName = $STR_EPOCH_METHYLAMINEBARREL;
|
||||
descriptionShort = $STR_EPOCH_METHYLAMINEBARREL_DESC;
|
||||
containerEmpty = "ItemMethylaminBarrelEmpty";
|
||||
|
||||
class ItemActions {
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ItemC4Charge : CA_Magazine
|
||||
|
||||
656
SQF/dayz_code/Configs/CfgMagazines/DZE/PlasticWaterbottle.hpp
Normal file
656
SQF/dayz_code/Configs/CfgMagazines/DZE/PlasticWaterbottle.hpp
Normal file
@@ -0,0 +1,656 @@
|
||||
class ItemPlasticWaterbottleUnfilled : CA_Magazine
|
||||
{
|
||||
scope = public;
|
||||
count = 1;
|
||||
type = WeaponSlotItem;
|
||||
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottleEmpty.paa";
|
||||
displayName = $STR_EQUIP_NAME_WBPET_01;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_01;
|
||||
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
|
||||
class ItemActions
|
||||
{
|
||||
class Fill
|
||||
{
|
||||
text = $STR_ACTIONS_FILL_W;
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ItemPlasticWaterbottleDmg : CA_Magazine
|
||||
{
|
||||
scope = public;
|
||||
count = 1;
|
||||
type = WeaponSlotItem;
|
||||
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle_damaged.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottleDamaged.paa";
|
||||
displayName = $STR_EQUIP_NAME_WBPET_02;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_02;
|
||||
sfx = "bandage";
|
||||
|
||||
class ItemActions
|
||||
{
|
||||
class Crafting {
|
||||
text = $STR_ACTIONS_FIX_W;
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {};
|
||||
output[] = {{"ItemPlasticWaterbottleUnfilled",1}};
|
||||
input[] = {{"ItemPlasticWaterbottleDmg",1},{"equip_duct_tape",1}};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ItemPlasticWaterBottle : ItemWaterBottle {
|
||||
scope = public;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle10oz.paa";
|
||||
displayName = $STR_EQUIP_NAME_WBPET_03;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_03;
|
||||
Nutrition[] = {0,0,1000,0};
|
||||
infectionChance = 0.3;
|
||||
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
|
||||
class ItemPlasticWaterBottleInfected : ItemWaterBottle
|
||||
{
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle10oz.paa";
|
||||
infectionChance = 1;
|
||||
displayName = $STR_EQUIP_NAME_WBPET_03;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_03;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
|
||||
class ItemPlasticWaterBottleSafe : ItemWaterBottle
|
||||
{
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle10oz.paa";
|
||||
infectionChance = 0;
|
||||
displayName = $STR_EQUIP_NAME_WBPET_03;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_03;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
|
||||
class ItemPlasticWaterBottleBoiled : ItemWaterBottle
|
||||
{
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle10oz.paa";
|
||||
displayName = $STR_EQUIP_NAME_WBPET_04;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_04;
|
||||
|
||||
infectionChance = 0;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
|
||||
class ItemPlasticWaterBottleHerbal : ItemWaterBottle
|
||||
{
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle10oz.paa";
|
||||
displayName = $STR_EQUIP_NAME_WBPET_05;
|
||||
descriptionShort = $STR_EQUIP_DESC_WBPET_05;
|
||||
|
||||
infectionChance = -0.5;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
|
||||
class ItemPlasticWaterbottle1oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE1OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE1OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle1oz.paa";
|
||||
wateroz = 1;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,100,0};
|
||||
infectionChance = 0.03;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle2oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE2OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE2OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle2oz.paa";
|
||||
wateroz = 2;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,200,0};
|
||||
infectionChance = 0.06;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle3oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE3OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE3OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle3oz.paa";
|
||||
wateroz = 3;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,300,0};
|
||||
infectionChance = 0.09;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle4oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE4OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE4OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle4oz.paa";
|
||||
wateroz = 4;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,400,0};
|
||||
infectionChance = 0.12;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle5oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE5OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE5OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle5oz.paa";
|
||||
wateroz = 5;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,500,0};
|
||||
infectionChance = 0.15;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle6oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE6OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE6OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle6oz.paa";
|
||||
wateroz = 6;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,600,0};
|
||||
infectionChance = 0.18;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle7oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE7OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE7OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle7oz.paa";
|
||||
wateroz = 7;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,700,0};
|
||||
infectionChance = 0.21;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle8oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE8OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE8OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle8oz.paa";
|
||||
wateroz = 8;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,800,0};
|
||||
infectionChance = 0.24;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
class ItemPlasticWaterbottle9oz : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE9OZ;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE9OZ_DESC;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle9oz.paa";
|
||||
wateroz = 9;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,900,0};
|
||||
infectionChance = 0.27;
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
//inherit from ItemWaterBottle because that's how the crafting script checks required input
|
||||
class ItemPlasticWaterbottle1ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE1OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE1OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle1oz.paa";
|
||||
wateroz = 1;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,100,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle2ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE2OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE2OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle2oz.paa";
|
||||
wateroz = 2;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,200,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle3ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE3OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE3OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle3oz.paa";
|
||||
wateroz = 3;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,300,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle4ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE4OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE4OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle4oz.paa";
|
||||
wateroz = 4;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,400,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle5ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE5OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE5OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle5oz.paa";
|
||||
wateroz = 5;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,500,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle6ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE6OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE6OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle6oz.paa";
|
||||
wateroz = 6;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,600,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle7ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE7OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE7OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle7oz.paa";
|
||||
wateroz = 7;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,700,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle8ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE8OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE8OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle8oz.paa";
|
||||
wateroz = 8;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,800,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class ItemPlasticWaterbottle9ozBoiled : ItemWaterBottle {
|
||||
displayName = $STR_EPOCH_PET_WATERBOTTLE9OZBOILED;
|
||||
descriptionShort = $STR_EPOCH_PET_WATERBOTTLE9OZBOILED_DESC;
|
||||
infectionChance = 0;
|
||||
model = "z\addons\dayz_communityassets\models\waterbottle.p3d";
|
||||
picture = "\dayz_epoch_c\icons\plasticwaterbottle\PETwaterbottle9oz.paa";
|
||||
wateroz = 9;
|
||||
containerWater = "ItemPlasticWaterbottle";
|
||||
containerWaterSafe = "ItemPlasticWaterbottleSafe";
|
||||
containerWaterInfected = "ItemPlasticWaterbottleInfected";
|
||||
Nutrition[] = {0,0,900,0};
|
||||
consumeOutput = "ItemPlasticWaterbottleUnfilled";
|
||||
containerEmpty = "ItemPlasticWaterbottleUnfilled";
|
||||
class ItemActions {
|
||||
class Consume
|
||||
{
|
||||
text = $STR_ACTIONS_DRINK2;
|
||||
script = "spawn player_consume";
|
||||
};
|
||||
class Empty
|
||||
{
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
class Fill {
|
||||
text = "$STR_ACTIONS_FILL_W";
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,21 +0,0 @@
|
||||
class ItemCanteenEmpty : CA_Magazine
|
||||
{
|
||||
scope = public;
|
||||
count = 1;
|
||||
type = WeaponSlotItem;
|
||||
|
||||
model = "\dayz_equip\models\waterbottle_gear.p3d";
|
||||
picture = "\dayz_equip\textures\equip_waterbottle_empty_ca.paa";
|
||||
displayName = $STR_ITEM_CANTEEN_EMPTY_NAME;
|
||||
descriptionShort = $STR_ITEM_CANTEEN_DESC;
|
||||
|
||||
//TODO
|
||||
/*class ItemActions
|
||||
{
|
||||
class Fill
|
||||
{
|
||||
text = $STR_ACTIONS_FILL_W;
|
||||
script = "spawn player_fillWater;";
|
||||
};
|
||||
};*/
|
||||
};
|
||||
@@ -20,10 +20,17 @@ class ItemJerrycan : ItemJerrycanEmpty
|
||||
descriptionShort = $STR_ITEM_DESC_JERRYCAN;
|
||||
|
||||
fuelQuantity = 20;
|
||||
emptycan = "ItemJerrycanEmpty";
|
||||
containerEmpty = "ItemJerrycanEmpty";
|
||||
|
||||
//used for tent burning
|
||||
fireIntensity = 6;
|
||||
|
||||
class ItemActions {
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ItemFuelcanEmpty : ItemJerrycanEmpty
|
||||
@@ -46,8 +53,15 @@ class ItemFuelcan : ItemFuelcanEmpty
|
||||
descriptionShort = $STR_ITEM_DESC_FUELCAN;
|
||||
|
||||
fuelQuantity = 5;
|
||||
emptycan = "ItemFuelcanEmpty";
|
||||
containerEmpty = "ItemFuelcanEmpty";
|
||||
|
||||
//used for tent burning
|
||||
fireIntensity = 4;
|
||||
|
||||
class ItemActions {
|
||||
class Empty {
|
||||
text = $STR_EQUIP_NAME_13_EMPTY;
|
||||
script = "spawn player_emptyContainer";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -23,5 +23,4 @@
|
||||
#include "equip_brick.hpp"
|
||||
#include "equip_lever.hpp"
|
||||
#include "WaterBottle.hpp"
|
||||
//#include "Canteen.hpp"
|
||||
#include "Explosives.hpp"
|
||||
@@ -33,13 +33,17 @@ class ItemWaterBottleDmg : CA_Magazine //We don't have a damaged canteen image/m
|
||||
picture = "\dayz_equip\textures\equip_waterbottle_empty_ca.paa";
|
||||
displayName = $STR_ITEMWATERBOTTLEDMG_CODE_NAME;
|
||||
descriptionShort = $STR_ITEMWATERBOTTLEDMG_CODE_DESC;
|
||||
sfx = "bandage";
|
||||
|
||||
class ItemActions
|
||||
{
|
||||
class Repair
|
||||
{
|
||||
class Crafting {
|
||||
text = $STR_ACTIONS_FIX_W;
|
||||
script = "spawn player_fixBottle;";
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {};
|
||||
output[] = {{"ItemWaterbottleUnfilled",1}};
|
||||
input[] = {{"ItemWaterBottleDmg",1},{"equip_duct_tape",1}};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -13,12 +13,21 @@ class ItemLog : CA_Magazine
|
||||
class Crafting
|
||||
{
|
||||
text = $STR_BLD_craft_ItemLog;//"Wooden Plank"
|
||||
script = "spawn player_craftItem;";
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemHatchet"};
|
||||
output[] = {{"ItemPlank","CfgMagazines",2}};
|
||||
input[] = {{"ItemLog","CfgMagazines",1}};
|
||||
output[] = {{"ItemPlank",2}};
|
||||
input[] = {{"ItemLog",1}};
|
||||
};
|
||||
class Crafting1
|
||||
{
|
||||
text = $STR_EQUIP_NAME_40;//"Wood Piles"
|
||||
script = ";['Crafting1','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemHatchet"};
|
||||
output[] = {{"PartWoodPile",4}};
|
||||
input[] = {{"ItemLog",1}};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -36,12 +45,12 @@ class ItemPlank : CA_Magazine
|
||||
{
|
||||
class Crafting
|
||||
{
|
||||
text = $STR_BLD_craft_ItemPlank;//"Wood Piles"
|
||||
script = "spawn player_craftItem;";
|
||||
text = $STR_EQUIP_NAME_40;//"Wood Piles"
|
||||
script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemHatchet"};
|
||||
output[] = {{"PartWoodPile","CfgMagazines",2}};
|
||||
input[] = {{"ItemPlank","CfgMagazines",1}};
|
||||
output[] = {{"PartWoodPile",2}};
|
||||
input[] = {{"ItemPlank",1}};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -77,8 +86,8 @@ class PartWoodPile : CA_Magazine
|
||||
script = ";['Crafting1','CfgMagazines', _id] spawn player_craftItem;";
|
||||
neednearby[] = {};
|
||||
requiretools[] = {"ItemKnife"};
|
||||
output[] = {{"WoodenArrow",3}};
|
||||
input[] = {{"PartWoodPile",1},{"ItemTrashRazor",1}};
|
||||
output[] = {{"1Rnd_Arrow_Wood",5}};
|
||||
input[] = {{"PartWoodPile",1},{"equip_feathers",2}};
|
||||
|
||||
};
|
||||
class Crafting2
|
||||
|
||||
@@ -2,6 +2,7 @@ class 30Rnd_545x39_AK : CA_Magazine
|
||||
{
|
||||
picture = "\z\addons\dayz_communityweapons\magazines\data\m_ak74_ca.paa";
|
||||
displayName = $STR_DZ_MAG_30RND_545x39_AK_NAME;
|
||||
descriptionShort = $STR_DZ_MAG_30RND_AK74_DESC;
|
||||
cartridgeName = "545x39";
|
||||
|
||||
class ItemActions
|
||||
@@ -27,7 +28,7 @@ class 75Rnd_545x39_RPK : CA_Magazine
|
||||
model = "\ca\weapons\mag_univ.p3d";
|
||||
picture = "\CA\weapons\AK\data\equip\M_RPK_74_CA.paa";
|
||||
displayName = $STR_DZ_MAG_75RND_545X39_RPK_NAME;
|
||||
descriptionShort = $STR_DSS_75Rnd_RPK;
|
||||
descriptionShort = $STR_DZ_MAG_75RND_RPK74_DESC;
|
||||
|
||||
count = 75;
|
||||
tracersEvery = 4;
|
||||
|
||||
@@ -19,7 +19,7 @@ class 100Rnd_556x45_M249 : 200Rnd_556x45_M249
|
||||
|
||||
class 100Rnd_556x45_BetaCMag: CA_Magazine {
|
||||
scope = public;
|
||||
displayName = "MG36 Mag.";
|
||||
displayName = $STR_DZ_MAG_100RND_556x45_MG36_NAME;
|
||||
ammo = "B_556x45_Ball";
|
||||
count = 100;
|
||||
initSpeed = 920;
|
||||
@@ -27,7 +27,7 @@ class 100Rnd_556x45_BetaCMag: CA_Magazine {
|
||||
type="256";
|
||||
tracersEvery = 4;
|
||||
lastRoundsTracer = 4;
|
||||
descriptionShort = "Caliber: 5.56x45 mm NATO Rounds: 100 Used in: MG36, X8 SAW";
|
||||
descriptionShort = $STR_DZ_MAG_100RND_MG36_DESC;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -78,4 +78,88 @@ class NLAW : CA_LauncherMagazine {
|
||||
|
||||
class Dragon_EP1 : CA_LauncherMagazine {
|
||||
type = WeaponSlotItem;
|
||||
};
|
||||
|
||||
//M32 grenades
|
||||
|
||||
class 1Rnd_HE_M203;
|
||||
class 6Rnd_HE_M203: 1Rnd_HE_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_HE_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_HE_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmHP_CA.paa";
|
||||
};
|
||||
class FlareWhite_M203;
|
||||
class 6Rnd_FlareWhite_M203: FlareWhite_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_FlareWhite_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_FlareWhite_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmFlare_CA.paa";
|
||||
};
|
||||
class FlareGreen_M203;
|
||||
class 6Rnd_FlareGreen_M203: FlareGreen_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_FlareGreen_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_FlareGreen_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmFlare_CA.paa";
|
||||
};
|
||||
class FlareRed_M203;
|
||||
class 6Rnd_FlareRed_M203: FlareRed_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_FlareRed_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_FlareRed_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmFlare_CA.paa";
|
||||
};
|
||||
class FlareYellow_M203;
|
||||
class 6Rnd_FlareYellow_M203: FlareYellow_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_FlareYellow_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_FlareYellow_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmFlare_CA.paa";
|
||||
};
|
||||
class 1Rnd_Smoke_M203;
|
||||
class 6Rnd_Smoke_M203: 1Rnd_Smoke_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_Smoke_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_Smoke_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmSmoke_CA.paa";
|
||||
};
|
||||
class 1Rnd_SmokeRed_M203;
|
||||
class 6Rnd_SmokeRed_M203: 1Rnd_SmokeRed_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_SmokeRed_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_SmokeRed_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmSmoke_CA.paa";
|
||||
};
|
||||
class 1Rnd_SmokeGreen_M203;
|
||||
class 6Rnd_SmokeGreen_M203: 1Rnd_SmokeGreen_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_SmokeGreen_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_SmokeGreen_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmSmoke_CA.paa";
|
||||
};
|
||||
class 1Rnd_SmokeYellow_M203;
|
||||
class 6Rnd_SmokeYellow_M203: 1Rnd_SmokeYellow_M203
|
||||
{
|
||||
count = 6;
|
||||
displayName = "$STR_EP1_DN_6Rnd_SmokeYellow_M203";
|
||||
descriptionShort = "$STR_EP1_DSS_6Rnd_SmokeYellow_M203";
|
||||
type = 256;
|
||||
picture = "\CA\weapons_E\Data\icons\m_6x40mmSmoke_CA.paa";
|
||||
};
|
||||
@@ -769,6 +769,36 @@ class Category_485 {
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {1,"ItemGoldBar10oz"};
|
||||
};
|
||||
class AK107_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {2,"ItemGoldBar"};
|
||||
sell[] = {1,"ItemGoldBar"};
|
||||
};
|
||||
class AK107_Kobra_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {3,"ItemGoldBar"};
|
||||
};
|
||||
class AK107_PSO1_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {5,"ItemGoldBar"};
|
||||
};
|
||||
class AK107_GL_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {3,"ItemGoldBar"};
|
||||
};
|
||||
class AK107_GL_Kobra_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {5,"ItemGoldBar"};
|
||||
};
|
||||
class AK107_GL_PSO1_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {-1,"ItemGoldBar"}; // Sell only
|
||||
sell[] = {7,"ItemGoldBar"};
|
||||
};
|
||||
class FNFAL_DZ {
|
||||
type = "trade_weapons";
|
||||
buy[] = {8,"ItemGoldBar"};
|
||||
|
||||
@@ -4,6 +4,11 @@ class Category_601 {
|
||||
buy[] = {3,"ItemSilverBar"};
|
||||
sell[] = {1,"ItemSilverBar"};
|
||||
};
|
||||
class ItemPlasticWaterbottleUnfilled {
|
||||
type = "trade_items";
|
||||
buy[] = {2,"ItemSilverBar"};
|
||||
sell[] = {1,"ItemSilverBar"};
|
||||
};
|
||||
class ItemSodaCoke {
|
||||
type = "trade_items";
|
||||
buy[] = {2,"ItemSilverBar"};
|
||||
|
||||
@@ -62,7 +62,7 @@ class DZ_Czech_Vest_Pouch: Bag_Base_EP1
|
||||
picture = "\ca\weapons_e\data\icons\backpack_ACR_small_CA.paa";
|
||||
scope = 2;
|
||||
transportmaxmagazines = 12;
|
||||
transportmaxweapons = 0;
|
||||
transportmaxweapons = 1;
|
||||
class eventHandlers
|
||||
{
|
||||
init="[(_this select 0),'CfgVehicles','DZ_Czech_Vest_Pouch'] execVM '\z\addons\dayz_code\init\object_BackpackAction.sqf';";
|
||||
@@ -158,6 +158,7 @@ class DZ_LargeGunBag_EP1: Bag_Base_EP1
|
||||
{
|
||||
scope = public;
|
||||
displayName = $STR_EPOCH_PACK_LGB;
|
||||
descriptionShort = $STR_EPOCH_PACK_DESC_LGB;
|
||||
model = "\ca\weapons_e\AmmoBoxes\StaticX.p3d";
|
||||
picture = "\ca\weapons_e\data\icons\staticX_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
@@ -173,6 +174,7 @@ class DZ_GunBag_EP1: Bag_Base_EP1
|
||||
{
|
||||
scope = public;
|
||||
displayName = $STR_EPOCH_PACK_GB;
|
||||
descriptionShort = $STR_EPOCH_PACK_DESC_GB;
|
||||
model = "\ca\weapons_e\AmmoBoxes\StaticY.p3d";
|
||||
picture = "\ca\weapons_e\data\icons\staticY_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
@@ -188,6 +190,7 @@ class DZ_CompactPack_EP1: Bag_Base_EP1
|
||||
{
|
||||
scope = public;
|
||||
displayName = $STR_EPOCH_PACK_COMPACT;
|
||||
descriptionShort = $STR_EPOCH_PACK_DESC_COMPACT;
|
||||
picture = "\ca\weapons_e\data\icons\backpack_RPG_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapsize = 2;
|
||||
@@ -203,6 +206,7 @@ class DZ_TerminalPack_EP1: Bag_Base_EP1
|
||||
{
|
||||
scope = public;
|
||||
displayName = $STR_EPOCH_PACK_TERMINAL;
|
||||
descriptionShort = $STR_EPOCH_PACK_DESC_TERMINAL;
|
||||
picture = "\ca\weapons_e\data\icons\backpack_US_ASSAULT_CA.paa";
|
||||
icon = "\ca\weapons_e\data\icons\mapIcon_backpack_CA.paa";
|
||||
mapSize = 2;
|
||||
|
||||
@@ -493,7 +493,7 @@ class ArmoredSUV_PMC_DZE2: ArmoredSUV_PMC_DZE1
|
||||
};
|
||||
class Upgrades
|
||||
{
|
||||
ItemLRK[] = {"ArmoredSUV_PMC_DZE4",{},{{"ItemLRK",1},{"PartGeneric",1},{"ItemTent",1}}};
|
||||
ItemLRK[] = {"ArmoredSUV_PMC_DZE3",{},{{"ItemLRK",1},{"PartGeneric",1},{"ItemTent",1}}};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -110,10 +110,10 @@ class Offroad_DSHKM_Gue_DZE1: Offroad_DSHKM_Gue_DZE
|
||||
maxspeed = 170; // Offroad_DSHKM_base 150 | car 100
|
||||
class Upgrades
|
||||
{
|
||||
ItemLRK[] = {"Offroad_DSHKM_Gue_DZE2",
|
||||
ItemAVE[] = {"Offroad_DSHKM_Gue_DZE2",
|
||||
{ },
|
||||
{
|
||||
{ "ItemLRK",1 },
|
||||
{ "ItemAVE",1 },
|
||||
{ "PartGeneric",2 },
|
||||
{ "ItemTent",1 } }};
|
||||
};
|
||||
|
||||
@@ -125,7 +125,7 @@ class Pickup_PK_GUE_DZE1: Pickup_PK_GUE_DZE {
|
||||
terrainCoef = 1.8;
|
||||
|
||||
class Upgrades {
|
||||
ItemAVE[] = {"Pickup_PK_GUE_DZE1",{},{{"ItemAVE",1},{"PartGeneric",4},{"ItemTankTrap",2}}};
|
||||
ItemAVE[] = {"Pickup_PK_GUE_DZE2",{},{{"ItemAVE",1},{"PartGeneric",4},{"ItemTankTrap",2}}};
|
||||
};
|
||||
};
|
||||
class Pickup_PK_TK_GUE_EP1_DZE1: Pickup_PK_TK_GUE_EP1_DZE {
|
||||
|
||||
@@ -24,18 +24,21 @@ class CrashSite : House
|
||||
class CrashSite_RU : CrashSite
|
||||
{
|
||||
scope = public;
|
||||
displayname = $STR_EPOCH_CRASHSITE1;
|
||||
model = "\z\addons\dayz_communityassets\crashsite\mi8\mi8_ru.p3d";
|
||||
lootParams[] = {{0.6, -4.5, 0}, 7, 2.5, 5, 7};
|
||||
};
|
||||
|
||||
class CrashSite_UN : CrashSite_RU
|
||||
{
|
||||
displayname = $STR_EPOCH_CRASHSITE2;
|
||||
model = "\z\addons\dayz_communityassets\crashsite\mi8\mi8_un.p3d";
|
||||
};
|
||||
|
||||
class CrashSite_US : CrashSite
|
||||
{
|
||||
scope = public;
|
||||
displayname = $STR_EPOCH_CRASHSITE3;
|
||||
model = "\ca\air2\uh1y\uh1y_crashed.p3d";
|
||||
hiddenSelections[] = {"zasleh"};
|
||||
smoke[] = {-0.8,-2.3,2};
|
||||
@@ -45,6 +48,7 @@ class CrashSite_US : CrashSite
|
||||
class CrashSite_EU : CrashSite
|
||||
{
|
||||
scope = public;
|
||||
displayname = $STR_EPOCH_CRASHSITE4;
|
||||
model = "\z\addons\dayz_communityassets\crashsite\hc3\hc3.p3d";
|
||||
lootParams[] = {{-0.4, -0.5, 0}, 4, 2.5, 7.5, 7};
|
||||
};
|
||||
@@ -22,6 +22,27 @@ class WeaponHolder_ItemCrowbar: WeaponHolderBase
|
||||
init="[(_this select 0),'cfgWeapons','ItemCrowbar'] execVM '\z\addons\dayz_code\init\object_pickupAction.sqf';";
|
||||
};
|
||||
};
|
||||
class WeaponHolder_ItemPickaxe: WeaponHolderBase
|
||||
{
|
||||
scope=2;
|
||||
displayName = $STR_EQUIP_NAME_PICKAXE;
|
||||
model = "z\addons\dayz_communityweapons\models\pickaxe\pickaxe.p3d";
|
||||
destrType = "DestructNo";
|
||||
|
||||
class eventHandlers
|
||||
{
|
||||
init="[(_this select 0),'cfgWeapons','ItemPickaxe'] execVM '\z\addons\dayz_code\init\object_pickupAction.sqf';";
|
||||
};
|
||||
};
|
||||
class WeaponHolder_ItemPickaxeBroken: WeaponHolder_ItemPickaxe
|
||||
{
|
||||
displayName = $STR_name_ItemPickaxeBroken;
|
||||
|
||||
class eventHandlers
|
||||
{
|
||||
init="[(_this select 0),'cfgWeapons','ItemPickaxeBroken'] execVM '\z\addons\dayz_code\init\object_pickupAction.sqf';";
|
||||
};
|
||||
};
|
||||
class WeaponHolder_ItemSledge : WeaponHolderBase { // Epoch class. Needed for player_dropWeapon
|
||||
scope = public;
|
||||
displayName = $STR_EQUIP_NAME_SledgeHammer;
|
||||
|
||||
@@ -20,6 +20,7 @@ class Swarm_Base : Citizen1 {
|
||||
damageScale = 200;
|
||||
sepsisChance = 10;
|
||||
forcedSpeed = 6;
|
||||
canCarryBackPack = 1;
|
||||
|
||||
class Eventhandlers {
|
||||
init = "_this call zombie_initialize;";
|
||||
@@ -126,4 +127,4 @@ class swarm_newBase : Swarm_Base {
|
||||
// tex[] = {};
|
||||
// mat[] = {"Ca\characters_E\Overall\Data\Overall.rvmat", "Ca\characters_E\Overall\Data\W1_Overall.rvmat", "Ca\characters_E\Overall\Data\W2_Overall.rvmat"};
|
||||
//};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -28,6 +28,7 @@ class Zed_Base : Citizen1 {
|
||||
class HitDamage {};
|
||||
armor = 3;
|
||||
agentTasks[] = {};
|
||||
canCarryBackPack = 1;
|
||||
};
|
||||
class zZombie_Base : Zed_Base {
|
||||
scope = public;
|
||||
|
||||
@@ -29,6 +29,8 @@ class CfgWeapons
|
||||
#include "Weapon\Sniper\M4SPR.hpp"
|
||||
#include "Weapon\Sniper\VSSVintorez.hpp"
|
||||
|
||||
//Ak107
|
||||
#include "Weapon\Assault\AK107.hpp"
|
||||
|
||||
//each include is preceded by its required external references.
|
||||
|
||||
|
||||
@@ -5,13 +5,14 @@ class AK74_Kobra_DZ : AK_74
|
||||
model = "z\addons\dayz_communityweapons\ak74\ak74_kobra.p3d";
|
||||
picture = "\z\addons\dayz_communityweapons\ak74\data\w_ak74_kobra_ca.paa";
|
||||
displayName = $STR_DZ_WPN_AK74_KOBRA_NAME;
|
||||
/* //Allow default A2 mags
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
*/
|
||||
|
||||
class Attachments
|
||||
{
|
||||
Attachment_GP25 = "AK74_GL_Kobra_DZ";
|
||||
|
||||
@@ -7,7 +7,8 @@ class AKS74U_Kobra_DZ : AKS_74_U
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments
|
||||
@@ -34,7 +35,8 @@ class AKS74U_Kobra_SD_DZ : AKS_74_UN_kobra
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AKSD,
|
||||
30Rnd_545x39_AK //Allow both SD and non-SD
|
||||
30Rnd_545x39_AK, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class ItemActions
|
||||
|
||||
@@ -18,6 +18,8 @@ class ItemKnife_Base : ItemCore
|
||||
class ItemKnife : ItemKnife_Base
|
||||
{
|
||||
scope = public;
|
||||
model = "\dayz_equip\models\knife_gear.p3d"; // Some mods override this. We leave this here just to be sure.
|
||||
picture = "\dayz_equip\textures\equip_knife_ca.paa";
|
||||
descriptionShort = $STR_EQUIP_DESC_4;
|
||||
sharpnessRemaining = "ItemKnife5";
|
||||
};
|
||||
|
||||
@@ -18,6 +18,8 @@ class ItemMatchboxEmpty : ItemMatchbox_base
|
||||
class ItemMatchbox : ItemMatchbox_base
|
||||
{
|
||||
scope = public;
|
||||
model = "\dayz_equip\models\matchbox_gear.p3d"; // Some mods override this. We leave this here just to be sure.
|
||||
picture = "\dayz_equip\textures\equip_matchbox_ca.paa";
|
||||
matches = -1;
|
||||
qtyRemaining = "Item5Matchbox";
|
||||
|
||||
@@ -29,6 +31,10 @@ class ItemMatchbox : ItemMatchbox_base
|
||||
script = "spawn player_makeFire;"; //Do not use player_build because we have no ghost preview model for Land_Fire_DZ yet
|
||||
use[] = {"PartWoodPile"};
|
||||
};
|
||||
class Combine {
|
||||
text = $STR_ANTIBIOTICS_COMBINE;
|
||||
script = "spawn player_combineMatches;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
157
SQF/dayz_code/Configs/CfgWeapons/Weapon/Assault/AK107.hpp
Normal file
157
SQF/dayz_code/Configs/CfgWeapons/Weapon/Assault/AK107.hpp
Normal file
@@ -0,0 +1,157 @@
|
||||
class AK_107_kobra;
|
||||
class AK107_Kobra_DZ : AK_107_kobra
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_KOBRA_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments
|
||||
{
|
||||
Attachment_GP25 = "AK107_GL_Kobra_DZ";
|
||||
};
|
||||
|
||||
class ItemActions
|
||||
{
|
||||
class RemoveKobra
|
||||
{
|
||||
text = $STR_DZ_ATT_KOBRA_RMVE;
|
||||
script = "; ['Attachment_Kobra',_id,'AK107_DZ'] call player_removeAttachment";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class AK_107_CP;
|
||||
class AK107_DZ : AK_107_CP
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments
|
||||
{
|
||||
Attachment_Kobra = "AK107_Kobra_DZ";
|
||||
Attachment_PSO1 = "AK107_PSO_DZ";
|
||||
Attachment_GP25 = "AK107_GL_DZ";
|
||||
};
|
||||
|
||||
class ItemActions {};
|
||||
};
|
||||
|
||||
class AK_107_GL_CP;
|
||||
class AK107_GL_DZ : AK_107_GL_CP
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_GL_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments
|
||||
{
|
||||
Attachment_Kobra = "AK107_GL_Kobra_DZ";
|
||||
Attachment_PSO1 = "AK107_GL_PSO_DZ";
|
||||
};
|
||||
class ItemActions
|
||||
{
|
||||
class RemoveGL
|
||||
{
|
||||
text = $STR_DZ_ATT_GP25_RMVE;
|
||||
script = "; ['Attachment_GP25',_id,'AK107_DZ'] call player_removeAttachment";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class AK_107_pso;
|
||||
class AK107_PSO_DZ : AK_107_pso
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_PSO1_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments
|
||||
{
|
||||
Attachment_GP25 = "AK107_GL_PSO_DZ";
|
||||
};
|
||||
class ItemActions
|
||||
{
|
||||
class RemovePSO1
|
||||
{
|
||||
text = $STR_DZ_ATT_PSO1_RMVE;
|
||||
script = "; ['Attachment_PSO1',_id,'AK107_DZ'] call player_removeAttachment";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class AK_107_GL_pso;
|
||||
class AK107_GL_PSO_DZ : AK_107_GL_pso
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_GL_PSO1_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments {};
|
||||
class ItemActions
|
||||
{
|
||||
class RemovePSO1
|
||||
{
|
||||
text = $STR_DZ_ATT_PSO1_RMVE;
|
||||
script = "; ['Attachment_PSO1',_id,'AK107_GL_DZ'] call player_removeAttachment";
|
||||
};
|
||||
class RemoveGL
|
||||
{
|
||||
text = $STR_DZ_ATT_GP25_RMVE;
|
||||
script = "; ['Attachment_GP25',_id,'AK107_PSO_DZ'] call player_removeAttachment";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class AK_107_GL_kobra;
|
||||
class AK107_GL_Kobra_DZ : AK_107_GL_kobra
|
||||
{
|
||||
displayName = $STR_DZ_WPN_AK107_GL_KOBRA_NAME;
|
||||
|
||||
magazines[] =
|
||||
{
|
||||
30Rnd_545x39_AK,
|
||||
30Rnd_545x39_AKSD, //Allow both SD and non-SD
|
||||
75Rnd_545x39_RPK
|
||||
};
|
||||
|
||||
class Attachments {};
|
||||
class ItemActions
|
||||
{
|
||||
class RemoveKobra
|
||||
{
|
||||
text = $STR_DZ_ATT_KOBRA_RMVE;
|
||||
script = "; ['Attachment_Kobra',_id,'AK107_GL_DZ'] call player_removeAttachment";
|
||||
};
|
||||
class RemoveGL
|
||||
{
|
||||
text = $STR_DZ_ATT_GP25_RMVE;
|
||||
script = "; ['Attachment_GP25',_id,'AK107_Kobra_DZ'] call player_removeAttachment";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -328,7 +328,7 @@ class AdvancedTrading
|
||||
x = 0.46 * safezoneW + safezoneX;
|
||||
y = 0.77 * safezoneH + safezoneY;
|
||||
w = 0.13 * safezoneW;
|
||||
onButtonClick = "call Z_SellItems;";
|
||||
onButtonClick = "closeDialog 0; call Z_SellItems;";
|
||||
};
|
||||
class ZSC_RscButtonMenu_AT27: ZSC_RscButtonMenu
|
||||
{
|
||||
@@ -338,7 +338,7 @@ class AdvancedTrading
|
||||
y = 0.77 * safezoneH + safezoneY;
|
||||
w = 0.13 * safezoneW;
|
||||
onload = "ctrlShow [_this,false]";
|
||||
onButtonClick = "call Z_BuyItems;";
|
||||
onButtonClick = "closeDialog 0; call Z_BuyItems;";
|
||||
};
|
||||
class ZSC_RscButtonMenu_AT28: ZSC_RscButtonMenu
|
||||
{
|
||||
|
||||
@@ -303,7 +303,7 @@ class SafeKeyPad
|
||||
colorText[] = {0,1,0,1};
|
||||
colorBackground[] = {0,0,0,0};
|
||||
colorBackgroundActive[] = {0,0,0,0};
|
||||
onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak; keypadCancel = false; ((ctrlParent (_this select 0)) closeDisplay 2); if(!isNull dayz_selectedVault and (typeOf dayz_selectedVault) in DZE_LockedStorage) then {dayz_selectedVault spawn player_unlockVault;};";
|
||||
onButtonClick = "[player,""keypad_tick"",0,false] call dayz_zombieSpeak; keypadCancel = false; ((ctrlParent (_this select 0)) closeDisplay 2); if(!isNull dayz_selectedVault) then {dayz_selectedVault spawn player_unlockVault;};";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -458,7 +458,7 @@ class ComboLockUI
|
||||
y = 0.762017;
|
||||
w = 0.201064;
|
||||
h = 0.233964;
|
||||
onButtonClick = "keypadCancel = false; call player_unlockDoor";
|
||||
onButtonClick = "keypadCancel = false; if (!isNull dayz_selectedDoor) then {call player_unlockDoor;};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,61 +1,84 @@
|
||||
private ["_bottletext","_tin1text","_tin2text","_tintext","_hastinitem","_qty","_dis","_sfx","_WB2Add","_finished"];
|
||||
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_bottletext","_hastinitem","_qty","_dis","_sfx","_bottle","_finished","_waterbottles","_platicBottles","_magsPlayer","_bottles"];
|
||||
|
||||
_bottletext = getText (configFile >> "CfgMagazines" >> "ItemWaterBottle" >> "displayName");
|
||||
_tin1text = getText (configFile >> "CfgMagazines" >> "TrashTinCan" >> "displayName");
|
||||
_tin2text = getText (configFile >> "CfgMagazines" >> "ItemSodaEmpty" >> "displayName");
|
||||
_tintext = format["%1 / %2",_tin1text,_tin2text];
|
||||
_qty = {_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz"]} count magazines player;
|
||||
_waterbottles = ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz","ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterbottle1oz","ItemPlasticWaterbottle2oz","ItemPlasticWaterbottle3oz","ItemPlasticWaterbottle4oz","ItemPlasticWaterbottle5oz","ItemPlasticWaterbottle6oz","ItemPlasticWaterbottle7oz","ItemPlasticWaterbottle8oz","ItemPlasticWaterbottle9oz"];
|
||||
_platicBottles = ["ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterbottle1oz","ItemPlasticWaterbottle2oz","ItemPlasticWaterbottle3oz","ItemPlasticWaterbottle4oz","ItemPlasticWaterbottle5oz","ItemPlasticWaterbottle6oz","ItemPlasticWaterbottle7oz","ItemPlasticWaterbottle8oz","ItemPlasticWaterbottle9oz"];
|
||||
_magsPlayer = magazines player;
|
||||
_qty = {_x in _waterbottles} count _magsPlayer;
|
||||
_hastinitem = true;
|
||||
a_player_boil = true;
|
||||
player removeAction s_player_boil;
|
||||
//s_player_boil = -1;
|
||||
|
||||
/* //canteens are metal, we only use canteens in Epoch
|
||||
_hastinitem = {_x in magazines player} count boil_tin_cans > 0;
|
||||
if (!_hastinitem) exitWith {format[localize "str_player_31",_tintext,localize "str_player_31_fill"] call dayz_rollingMessages; a_player_boil = false; dayz_actionInProgress = false;};
|
||||
*/
|
||||
if ({_x in _platicBottles} count _magsPlayer > 0) then {
|
||||
_hastinitem = {_x in _magsPlayer} count boil_tin_cans > 0;
|
||||
};
|
||||
|
||||
if !(_hastinitem) exitWith {
|
||||
private ["_tin1text","_tin2text","_tintext"];
|
||||
|
||||
_tin1text = getText (configFile >> "CfgMagazines" >> "TrashTinCan" >> "displayName");
|
||||
_tin2text = getText (configFile >> "CfgMagazines" >> "ItemSodaEmpty" >> "displayName");
|
||||
_tintext = format["%1 / %2",_tin1text,_tin2text];
|
||||
format[localize "str_player_31",_tintext,localize "str_player_31_fill"] call dayz_rollingMessages;
|
||||
a_player_boil = false;
|
||||
dayz_actionInProgress = false;
|
||||
};
|
||||
|
||||
if (_qty > 0) then {
|
||||
_dis=10;
|
||||
_sfx = "cook";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] call player_alertZombies;
|
||||
|
||||
_finished = ["Medic",1] call fn_loopAction;
|
||||
|
||||
// Double check player did not drop item
|
||||
_qty = {_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz"]} count magazines player;
|
||||
|
||||
if (_qty == 0 or !_finished) exitWith {};
|
||||
|
||||
for "_x" from 1 to _qty do {
|
||||
_WB2Add = "ItemWaterBottleBoiled";
|
||||
switch (true) do {
|
||||
case ("ItemWaterBottleInfected" in magazines player): { player removeMagazine "ItemWaterBottleInfected"; };
|
||||
case ("ItemWaterBottleSafe" in magazines player): { player removeMagazine "ItemWaterBottleSafe"; };
|
||||
case ("ItemWaterBottle" in magazines player): { player removeMagazine "ItemWaterBottle"; };
|
||||
case ("ItemWaterbottle1oz" in magazines player): { player removeMagazine "ItemWaterbottle1oz"; _WB2Add = "ItemWaterbottle1ozBoiled"; };
|
||||
case ("ItemWaterbottle2oz" in magazines player): { player removeMagazine "ItemWaterbottle2oz"; _WB2Add = "ItemWaterbottle2ozBoiled"; };
|
||||
case ("ItemWaterbottle3oz" in magazines player): { player removeMagazine "ItemWaterbottle3oz"; _WB2Add = "ItemWaterbottle3ozBoiled"; };
|
||||
case ("ItemWaterbottle4oz" in magazines player): { player removeMagazine "ItemWaterbottle4oz"; _WB2Add = "ItemWaterbottle4ozBoiled"; };
|
||||
case ("ItemWaterbottle5oz" in magazines player): { player removeMagazine "ItemWaterbottle5oz"; _WB2Add = "ItemWaterbottle5ozBoiled"; };
|
||||
case ("ItemWaterbottle6oz" in magazines player): { player removeMagazine "ItemWaterbottle6oz"; _WB2Add = "ItemWaterbottle6ozBoiled"; };
|
||||
case ("ItemWaterbottle7oz" in magazines player): { player removeMagazine "ItemWaterbottle7oz"; _WB2Add = "ItemWaterbottle7ozBoiled"; };
|
||||
case ("ItemWaterbottle8oz" in magazines player): { player removeMagazine "ItemWaterbottle8oz"; _WB2Add = "ItemWaterbottle8ozBoiled"; };
|
||||
case ("ItemWaterbottle9oz" in magazines player): { player removeMagazine "ItemWaterbottle9oz"; _WB2Add = "ItemWaterbottle9ozBoiled"; };
|
||||
_finished = ["Medic",1] call fn_loopAction;
|
||||
|
||||
// Double check player did not drop item
|
||||
_bottles = [];
|
||||
|
||||
{
|
||||
if (_x in _waterbottles) then {
|
||||
_bottles set [count _bottles, _x];
|
||||
};
|
||||
} count magazines player;
|
||||
|
||||
_qty = count _bottles;
|
||||
|
||||
if (_qty < 1 || !_finished) exitWith {};
|
||||
|
||||
{
|
||||
_bottle = _x;
|
||||
player removeMagazine _bottle;
|
||||
if (dayz_waterBottleBreaking && {[0.1] call fn_chance}) then {
|
||||
player addMagazine "ItemWaterBottleDmg";
|
||||
if (_bottle in _platicBottles) then {
|
||||
player addMagazine "ItemPlasticWaterbottleDmg";
|
||||
} else {
|
||||
player addMagazine "ItemWaterBottleDmg";
|
||||
};
|
||||
localize "str_waterbottle_broke" call dayz_rollingMessages;
|
||||
} else {
|
||||
player addMagazine _WB2Add;
|
||||
if (_bottle in _platicBottles) then {
|
||||
if (_bottle in ["ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe"]) then {
|
||||
player addMagazine "ItemPlasticWaterbottleBoiled";
|
||||
} else {
|
||||
player addMagazine (_bottle + "Boiled");
|
||||
};
|
||||
} else {
|
||||
if (_bottle in ["ItemWaterBottleInfected","ItemWaterBottleSafe"]) then {
|
||||
player addMagazine "ItemWaterBottleBoiled";
|
||||
} else {
|
||||
player addMagazine (_bottle + "Boiled");
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} count _bottles;
|
||||
format [localize "str_player_boiledwater",_qty] call dayz_rollingMessages;
|
||||
} else {
|
||||
format[localize "str_player_31",_bottletext,localize "str_player_31_fill"] call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
a_player_boil = false;
|
||||
dayz_actionInProgress = false;
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
private ["_array","_handle","_type","_onLadder","_removed","_itemIn","_countIn"];
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_array","_handle","_type","_onLadder","_removed","_itemIn","_countIn","_bottles"];
|
||||
|
||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||
if (_onLadder) exitWith {dayz_actionInProgress = false;localize "str_player_21" call dayz_rollingMessages;};
|
||||
|
||||
_array = _this select 3;
|
||||
_handle = _array select 0;
|
||||
_type = _array select 1;
|
||||
|
||||
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
|
||||
if (_onLadder) exitWith {localize "str_player_21" call dayz_rollingMessages;};
|
||||
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
player playActionNow "PutDown";
|
||||
|
||||
switch (_type) do {
|
||||
@@ -17,7 +18,7 @@ switch (_type) do {
|
||||
_removed = 0;
|
||||
_itemIn = "FoodRaw";
|
||||
_countIn = 1;
|
||||
{
|
||||
{
|
||||
if( (_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then {
|
||||
_removed = _removed + ([player,_x] call BIS_fnc_invRemove);
|
||||
};
|
||||
@@ -30,13 +31,21 @@ switch (_type) do {
|
||||
|
||||
};
|
||||
case 1: {
|
||||
if(([player,"ItemWaterbottle"] call BIS_fnc_invRemove) == 1) then {
|
||||
player addMagazine "ItemWaterbottleUnfilled";
|
||||
};
|
||||
_handle setFSMVariable ["_thirst",0];
|
||||
_bottles = ["ItemWaterBottle","ItemWaterBottleInfected","ItemWaterBottleSafe","ItemWaterBottleBoiled","ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterBottleBoiled"];
|
||||
{
|
||||
if (_x in _bottles) exitwith {
|
||||
if (_x in ["ItemWaterBottle","ItemWaterBottleInfected","ItemWaterBottleSafe","ItemWaterBottleBoiled"]) then {
|
||||
player addMagazine "ItemWaterbottleUnfilled";
|
||||
} else {
|
||||
player addMagazine "ItemPlasticWaterbottleUnfilled";
|
||||
};
|
||||
player removeMagazine _x;
|
||||
};
|
||||
} count magazines player;
|
||||
_handle setFSMVariable ["_thirst",0];
|
||||
player removeAction s_player_waterdog;
|
||||
s_player_waterdog = -1;
|
||||
};
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
private ["_vehicle","_finished","_soundSource","_fuelCan","_emptyCan"];
|
||||
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_vehicle","_finished","_soundSource","_fuelCan","_emptyCan"];
|
||||
|
||||
player removeAction s_player_fillgen;
|
||||
s_player_fillgen = 1;
|
||||
|
||||
@@ -24,16 +24,16 @@ _fuelCan = nil;
|
||||
|
||||
if (_finished) then {
|
||||
// take fuel can and replace with empty
|
||||
|
||||
|
||||
if(!(_vehicle getVariable ["GeneratorFilled", false]) && !isNil "_fuelCan") then {
|
||||
|
||||
|
||||
if(([player,_fuelCan] call BIS_fnc_invRemove) == 1) then {
|
||||
_emptyCan = getText (configFile >> "CfgMagazines" >> _fuelCan >> "emptycan");
|
||||
_emptyCan = getText (configFile >> "CfgMagazines" >> _fuelCan >> "containerEmpty");
|
||||
player addMagazine _emptyCan;
|
||||
|
||||
// mark as once filled
|
||||
_vehicle setVariable ["GeneratorFilled", true,true];
|
||||
|
||||
|
||||
// Start generator
|
||||
_vehicle setVariable ["GeneratorRunning", true,true];
|
||||
|
||||
@@ -46,7 +46,7 @@ if (_finished) then {
|
||||
localize "str_epoch_player_28" call dayz_rollingMessages;
|
||||
["Working",0,[0,1,3,0]] call dayz_NutritionSystem;
|
||||
};
|
||||
} else {
|
||||
} else {
|
||||
// Start generator
|
||||
_vehicle setVariable ["GeneratorRunning", true,true];
|
||||
|
||||
@@ -63,4 +63,4 @@ if (_finished) then {
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
s_player_fillgen = -1;
|
||||
s_player_fillgen = -1;
|
||||
|
||||
16
SQF/dayz_code/actions/hide_body.sqf
Normal file
16
SQF/dayz_code/actions/hide_body.sqf
Normal file
@@ -0,0 +1,16 @@
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private "_body";
|
||||
|
||||
player removeAction s_player_hide_body;
|
||||
s_player_hide_body = -1;
|
||||
|
||||
closeDialog 0;
|
||||
|
||||
_body = _this select 3;
|
||||
if (isNull _body) exitWith { dayz_actionInProgress = false;};
|
||||
|
||||
player action ["hideBody", _body];
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
@@ -66,7 +66,7 @@ _needNear = getArray (configFile >> "CfgMagazines" >> DZE_buildItem >> "ItemActi
|
||||
_isNear = count (nearestObjects [_pos, ["Wooden_shed_DZ","WoodShack_DZ","WorkBench_DZ"], _distance]);
|
||||
if(_isNear == 0) then {
|
||||
_abort = true;
|
||||
_reason = localize "STR_BLD_name_ItemWorkshop";
|
||||
_reason = localize "STR_EPOCH_WORKBENCH_NEARBY";
|
||||
};
|
||||
};
|
||||
case "fueltank":
|
||||
|
||||
@@ -66,7 +66,7 @@ _needNear = getArray (configFile >> "CfgMagazines" >> _item >> "ItemActions" >>
|
||||
_isNear = count (nearestObjects [_pos, ["Wooden_shed_DZ","WoodShack_DZ","WorkBench_DZ"], _distance]);
|
||||
if(_isNear == 0) then {
|
||||
_abort = true;
|
||||
_reason = localize "STR_BLD_name_ItemWorkshop";
|
||||
_reason = localize "STR_EPOCH_WORKBENCH_NEARBY";
|
||||
};
|
||||
};
|
||||
case "fueltank":
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
if (dayz_actionInProgress) exitWith { localize "str_player_actionslimit" call dayz_rollingMessages; };
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_total", "_full", "_remain", "_amount"];
|
||||
|
||||
_total = 0;
|
||||
{
|
||||
if(configName inheritsFrom (configfile >> "CfgMagazines" >> _x) == "ItemAntibiotic") then {
|
||||
if (configName inheritsFrom (configfile >> "CfgMagazines" >> _x) == "ItemAntibiotic") then {
|
||||
_amount = getNumber(configFile >> "CfgMagazines" >> _x >> "medical" >> "amount");
|
||||
if(_amount > 0) then {
|
||||
_total = _total + _amount;
|
||||
@@ -9,8 +13,10 @@ _total = 0;
|
||||
};
|
||||
};
|
||||
} count (magazines player);
|
||||
|
||||
_full = floor(_total / 6);
|
||||
_remain = _total % 6;
|
||||
|
||||
for "_i" from 1 to _full do
|
||||
{
|
||||
player addMagazine "ItemAntibiotic6";
|
||||
@@ -19,3 +25,5 @@ for "_i" from 1 to _full do
|
||||
if(_remain > 0 ) then {
|
||||
player addMagazine "ItemAntibiotic" + str(_remain);
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
33
SQF/dayz_code/actions/player_combineMatches.sqf
Normal file
33
SQF/dayz_code/actions/player_combineMatches.sqf
Normal file
@@ -0,0 +1,33 @@
|
||||
if (dayz_actionInProgress) exitWith { localize "str_player_actionslimit" call dayz_rollingMessages; };
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_total", "_full", "_remain", "_amount"];
|
||||
|
||||
_total = 0;
|
||||
{
|
||||
if (configName inheritsFrom (configfile >> "CfgWeapons" >> _x) == "ItemMatchbox") then {
|
||||
_amount = getNumber(configFile >> "CfgWeapons" >> _x >> "matches");
|
||||
if(_amount > 0) then {
|
||||
_total = _total + _amount;
|
||||
player removeWeapon _x;
|
||||
};
|
||||
};
|
||||
} count (weapons player);
|
||||
|
||||
_full = floor(_total / 5);
|
||||
_remain = _total % 5;
|
||||
|
||||
for "_i" from 1 to _full do
|
||||
{
|
||||
if ("Item5Matchbox" in weapons player) then {
|
||||
"Item5Matchbox" call player_addDuplicateTool;
|
||||
} else {
|
||||
player addWeapon "Item5Matchbox";
|
||||
};
|
||||
};
|
||||
|
||||
if(_remain > 0 ) then {
|
||||
player addWeapon "Item"+ str(_remain)+"Matchbox";
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
@@ -23,11 +23,11 @@ class ItemActions
|
||||
};
|
||||
};
|
||||
*/
|
||||
private ["_tradeComplete","_onLadder","_canDo","_selectedRecipeOutput","_boiled","_proceed","_itemIn","_countIn","_missing","_missingQty","_qty","_itemOut","_countOut","_finished","_removed","_tobe_removed_total","_textCreate","_textMissing","_selectedRecipeInput","_selectedRecipeInputStrict","_num_removed","_removed_total","_temp_removed_array","_abort","_waterLevel","_waterLevel_lowest","_reason","_isNear","_selectedRecipeTools","_distance","_crafting","_needNear","_item","_baseClass","_num_removed_weapons","_outputWeapons","_inputWeapons","_randomOutput","_craft_doLoop","_selectedWeapon","_selectedMag","_sfx"];
|
||||
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_tradeComplete","_onLadder","_canDo","_selectedRecipeOutput","_boiled","_proceed","_itemIn","_countIn","_missing","_missingQty","_qty","_itemOut","_countOut","_finished","_removed","_tobe_removed_total","_textCreate","_textMissing","_selectedRecipeInput","_selectedRecipeInputStrict","_num_removed","_removed_total","_temp_removed_array","_abort","_waterLevel","_waterLevel_lowest","_reason","_isNear","_selectedRecipeTools","_distance","_crafting","_needNear","_item","_baseClass","_num_removed_weapons","_outputWeapons","_inputWeapons","_randomOutput","_craft_doLoop","_selectedWeapon","_selectedMag","_sfx","_configParent","_pPos"];
|
||||
|
||||
// This is used to find correct recipe based what itemaction was click allows multiple recipes per item.
|
||||
_crafting = _this select 0;
|
||||
|
||||
@@ -53,14 +53,14 @@ if ("fire" in _needNear) then {
|
||||
_isNear = {inflamed _x} count (_pPos nearObjects _distance);
|
||||
if(_isNear == 0) then {
|
||||
_abort = true;
|
||||
_reason = "fire";
|
||||
_reason = localize "STR_EPOCH_FIRE";
|
||||
};
|
||||
};
|
||||
if ("workshop" in _needNear) then {
|
||||
_isNear = count (nearestObjects [player, ["Wooden_shed_DZ","WoodShack_DZ","WorkBench_DZ"], _distance]);
|
||||
if(_isNear == 0) then {
|
||||
_abort = true;
|
||||
_reason = "workshop";
|
||||
_reason = localize "STR_EPOCH_WORKBENCH_NEARBY";
|
||||
};
|
||||
};
|
||||
if (_abort) exitWith {
|
||||
@@ -102,10 +102,8 @@ if (_canDo) then {
|
||||
_itemIn = _x select 0;
|
||||
_countIn = _x select 1;
|
||||
|
||||
_qty = { (_x == _itemIn) || (!_selectedRecipeInputStrict && configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn) } count magazines player;
|
||||
|
||||
_qty = { (_x == _itemIn) || (!_selectedRecipeInputStrict && configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)} count magazines player;
|
||||
if (_qty < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _qty); _proceed = false; };
|
||||
|
||||
} forEach _selectedRecipeInput;
|
||||
};
|
||||
|
||||
@@ -127,7 +125,7 @@ if (_canDo) then {
|
||||
_removed = 0;
|
||||
_itemIn = _x select 0;
|
||||
_countIn = _x select 1;
|
||||
// diag_log format["Recipe Finish: %1 %2", _itemIn,_countIn];
|
||||
//diag_log format["Recipe Finish: %1 %2", _itemIn,_countIn];
|
||||
_tobe_removed_total = _tobe_removed_total + _countIn;
|
||||
|
||||
// Preselect the item
|
||||
@@ -135,7 +133,7 @@ if (_canDo) then {
|
||||
_configParent = configName(inheritsFrom(configFile >> "cfgMagazines" >> _x));
|
||||
if ((_x == _itemIn) || (!_selectedRecipeInputStrict && _configParent == _itemIn)) then {
|
||||
// Get lowest waterlevel
|
||||
if ((_x == "ItemWaterbottle") ||( _configParent == "ItemWaterbottle")) then {
|
||||
if ((_x == "ItemWaterbottle") || (_configParent == "ItemWaterbottle")) then {
|
||||
_waterLevel = getNumber(configFile >> "CfgMagazines" >> _x >> "wateroz");
|
||||
if (_waterLevel_lowest == 0 || _waterLevel < _waterLevel_lowest) then {
|
||||
_waterLevel_lowest = _waterLevel;
|
||||
@@ -157,9 +155,9 @@ if (_canDo) then {
|
||||
_removed_total = _removed_total + _num_removed;
|
||||
if (_num_removed >= 1) then {
|
||||
//diag_log format["debug remove: %1 of: %2", _configParent, _x];
|
||||
if (_x == "ItemWaterbottle" || _configParent == "ItemWaterbottle") then {
|
||||
if ((_x == "ItemWaterbottle") || (_configParent == "ItemWaterbottle")) then {
|
||||
_waterLevel = floor((getNumber(configFile >> "CfgMagazines" >> _x >> "wateroz")) - 1);
|
||||
if (_x in ["ItemWaterbottle9ozBoiled","ItemWaterbottle8ozBoiled","ItemWaterbottle7ozBoiled","ItemWaterbottle6ozBoiled","ItemWaterbottle5ozBoiled","ItemWaterbottle4ozBoiled","ItemWaterbottle3ozBoiled","ItemWaterbottle2ozBoiled","ItemWaterBottleBoiled"]) then {
|
||||
if (_x in ["ItemWaterbottle9ozBoiled","ItemWaterbottle8ozBoiled","ItemWaterbottle7ozBoiled","ItemWaterbottle6ozBoiled","ItemWaterbottle5ozBoiled","ItemWaterbottle4ozBoiled","ItemWaterbottle3ozBoiled","ItemWaterbottle2ozBoiled","ItemWaterBottleBoiled","ItemPlasticWaterbottle9ozBoiled","ItemPlasticWaterbottle8ozBoiled","ItemPlasticWaterbottle7ozBoiled","ItemPlasticWaterbottle6ozBoiled","ItemPlasticWaterbottle5ozBoiled","ItemPlasticWaterbottle4ozBoiled","ItemPlasticWaterbottle3ozBoiled","ItemPlasticWaterbottle2ozBoiled","ItemPlasticWaterBottleBoiled"]) then {
|
||||
_boiled = true;
|
||||
};
|
||||
};
|
||||
@@ -202,14 +200,28 @@ if (_canDo) then {
|
||||
_itemOut = _x select 0;
|
||||
_countOut = _x select 1;
|
||||
if (_itemOut == "ItemWaterbottleUnfilled") then {
|
||||
if (_waterLevel > 0) then {
|
||||
if (_boiled) then {
|
||||
_itemOut = format["ItemWaterbottle%1ozBoiled",_waterLevel];
|
||||
{
|
||||
if (_x in ["ItemPlasticWaterbottle","ItemPlasticWaterbottleInfected","ItemPlasticWaterbottleSafe","ItemPlasticWaterBottleBoiled","ItemPlasticWaterbottle1oz","ItemPlasticWaterbottle2oz","ItemPlasticWaterbottle3oz","ItemPlasticWaterbottle4oz","ItemPlasticWaterbottle5oz","ItemPlasticWaterbottle6oz","ItemPlasticWaterbottle7oz","ItemPlasticWaterbottle8oz","ItemPlasticWaterbottle9oz","ItemPlasticWaterbottle1ozBoiled","ItemPlasticWaterbottle2ozBoiled","ItemPlasticWaterbottle3ozBoiled","ItemPlasticWaterbottle4ozBoiled","ItemPlasticWaterbottle5ozBoiled","ItemPlasticWaterbottle6ozBoiled","ItemPlasticWaterbottle7ozBoiled","ItemPlasticWaterbottle8ozBoiled","ItemPlasticWaterbottle9ozBoiled"]) then {
|
||||
_itemOut = "ItemPlasticWaterbottleUnfilled";
|
||||
if (_waterLevel > 0) then {
|
||||
if (_boiled) then {
|
||||
_itemOut = format["ItemPlasticWaterbottle%1ozBoiled",_waterLevel];
|
||||
} else {
|
||||
_itemOut = format["ItemPlasticWaterbottle%1oz",_waterLevel];
|
||||
};
|
||||
};
|
||||
} else {
|
||||
_itemOut = format["ItemWaterbottle%1oz",_waterLevel];
|
||||
if (_waterLevel > 0) then {
|
||||
if (_boiled) then {
|
||||
_itemOut = format["ItemWaterbottle%1ozBoiled",_waterLevel];
|
||||
} else {
|
||||
_itemOut = format["ItemWaterbottle%1oz",_waterLevel];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} foreach _temp_removed_array;
|
||||
};
|
||||
|
||||
// diag_log format["Checking for water level: %1", _waterLevel];
|
||||
for "_x" from 1 to _countOut do {
|
||||
player addMagazine _itemOut;
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
if (dayz_actionInProgress) exitWith { localize "str_player_actionslimit" call dayz_rollingMessages; };
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_emptycan","_objectID","_objectUID","_obj","_fuelArray","_matchArray","_randomJerryCan","_fireIntensity","_dis","_sfx","_finished"];
|
||||
|
||||
//Tent Object
|
||||
@@ -24,11 +27,8 @@ _matchArray = [];
|
||||
} count DayZ_fuelCans;
|
||||
|
||||
//Make sure we have both components to create the fire.
|
||||
if ((count _fuelArray == 0)) exitwith { systemChat (localize ("str_setFireFuel")); };
|
||||
if ((count _matchArray == 0)) exitwith { systemChat (localize ("str_setFireMatches")); };
|
||||
|
||||
if (dayz_actionInProgress) exitWith { localize "str_player_actionslimit" call dayz_rollingMessages; };
|
||||
dayz_actionInProgress = true;
|
||||
if ((count _fuelArray == 0)) exitwith { dayz_actionInProgress = false; systemChat (localize ("str_setFireFuel")); };
|
||||
if ((count _matchArray == 0)) exitwith { dayz_actionInProgress = false; systemChat (localize ("str_setFireMatches")); };
|
||||
|
||||
//Actionmenu tools
|
||||
player removeAction s_player_destroytent;
|
||||
@@ -46,10 +46,9 @@ if (!_finished or (isNull _obj)) exitWith {
|
||||
|
||||
//Jerry can system ** Needs redoing
|
||||
//Select random can from array
|
||||
_randomJerryCan = _fuelArray call BIS_fnc_selectRandom;
|
||||
_randomJerryCan = _fuelArray call BIS_fnc_selectRandom;
|
||||
|
||||
_name = getText (configFile >> "CfgMagazines" >> _randomJerryCan >> "displayName");
|
||||
_emptycan = getText (configFile >> "CfgMagazines" >> _randomJerryCan >> "emptycan");
|
||||
_emptycan = getText (configFile >> "CfgMagazines" >> _randomJerryCan >> "containerEmpty");
|
||||
_fireIntensity = getNumber (configFile >> "CfgMagazines" >> _randomJerryCan >> "fireIntensity");
|
||||
|
||||
if !(_randomJerryCan in magazines player) exitWith {
|
||||
@@ -81,4 +80,4 @@ _obj inflame true;
|
||||
//_obj spawn player_fireMonitor;
|
||||
|
||||
localize "str_success_tent_destroyed" call dayz_rollingMessages;
|
||||
dayz_actionInProgress = false;
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
private ["_bottle","_tape","_fixedBottle","_finished"];
|
||||
|
||||
_bottle = _this;
|
||||
_tape = "equip_duct_tape";
|
||||
_fixedBottle = "ItemWaterBottleUnfilled";
|
||||
|
||||
if (dayz_actionInProgress) exitWith { localize "str_player_actionslimit" call dayz_rollingMessages; };
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
call gear_ui_init;
|
||||
closeDialog 0;
|
||||
|
||||
// Check if the player has the tape
|
||||
if (_tape in magazines player) then {
|
||||
[player,"bandage",0,false] call dayz_zombieSpeak;
|
||||
_finished = ["Medic",1] call fn_loopAction;
|
||||
if (!_finished) exitWith {};
|
||||
|
||||
// Check again to make sure player didn't drop item
|
||||
if (_tape in magazines player) then {
|
||||
player removeMagazine _bottle;
|
||||
player removeMagazine _tape;
|
||||
player addMagazine _fixedBottle;
|
||||
localize "str_fix_water_bottle" call dayz_rollingMessages;
|
||||
};
|
||||
} else { //If the player doesn't have the tape
|
||||
localize "str_fix_water_bottle_fail" call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_nearPlayers","_object"];
|
||||
private ["_nearPlayers","_object","_pos"];
|
||||
_object = _this select 3;
|
||||
|
||||
_nearPlayers = {(isPlayer _x && _x != player)} count (player nearEntities ["CAManBase",8]);
|
||||
@@ -11,10 +11,12 @@ if (!(_object isKindOf "ATV_Base_EP1") && _nearPlayers < 1) exitWith {
|
||||
player playMove "amovpknlmstpslowwrfldnon_amovpercmstpsraswrfldnon";
|
||||
waitUntil { animationState player != "amovpknlmstpslowwrfldnon_amovpercmstpsraswrfldnon"};
|
||||
|
||||
_pos = getposATL _object;
|
||||
_object setVectorUp [0,0,1];
|
||||
_object setposATL _pos;
|
||||
|
||||
// Alert Zombies
|
||||
[player,20,true,(getPosATL player)] call player_alertZombies;
|
||||
|
||||
// Added Nutrition-Factor for work
|
||||
["Working",0,[20,40,15,0]] call dayz_NutritionSystem;
|
||||
["Working",0,[20,40,15,0]] call dayz_NutritionSystem;
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_item","_use","_repair","_waterUsed","_displayName"];
|
||||
|
||||
//['ItemKnifeBlunt','ItemKnife']
|
||||
_item = _this select 0; //Item to be sharpened
|
||||
_repair = _this select 1; //Item to be given back.
|
||||
|
||||
_use = ["ItemWaterBottle","ItemWaterBottleInfected","ItemWaterBottleSafe","ItemWaterBottleBoiled","ItemWaterBottleHerbal","ItemCanteen","ItemCanteenInfected","ItemCanteenSafe","ItemCanteenBoiled","ItemCanteenHerbal"];
|
||||
_use = ["ItemWaterBottle","ItemWaterBottleInfected","ItemWaterBottleSafe","ItemWaterBottleBoiled","ItemWaterBottleHerbal","ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterBottleBoiled","ItemPlasticWaterBottleHerbal"];
|
||||
_waterUsed = nil;
|
||||
|
||||
call gear_ui_init;
|
||||
@@ -18,20 +21,22 @@ closeDialog 1;
|
||||
if (isNil "_waterUsed") exitWith {
|
||||
//_displayName = getText (configFile >> "CfgMagazines" >> _use >> "displayName");
|
||||
localize "str_sharpen_missing_water" call dayz_rollingMessages;
|
||||
dayz_actionInProgress = false;
|
||||
};
|
||||
|
||||
// item is missing or tools are missing
|
||||
if !("equip_brick" IN magazines player) exitWith {
|
||||
_displayName = getText (configFile >> "CfgMagazines" >> "equip_brick" >> "displayName");
|
||||
format [localize "str_missing_to_do_this",_displayName] call dayz_rollingMessages;
|
||||
dayz_actionInProgress = false;
|
||||
};
|
||||
|
||||
if (player hasWeapon _item) then {
|
||||
_displayName = getText (configFile >> "CfgWeapons" >> _item >> "displayName");
|
||||
|
||||
|
||||
player removeMagazine _waterUsed;
|
||||
player removeWeapon _item;
|
||||
|
||||
|
||||
if !(player hasWeapon _repair) then {
|
||||
player addWeapon _repair;
|
||||
} else {
|
||||
@@ -39,11 +44,13 @@ if (player hasWeapon _item) then {
|
||||
[_repair,2,1] call fn_dropItem;
|
||||
format[localize "str_actions_noroom",_repair] call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
|
||||
player addMagazine (getText(configFile >> "CfgMagazines" >> _waterUsed >> "containerEmpty"));
|
||||
|
||||
|
||||
//Remove Later
|
||||
player removeMagazine "equip_brick";
|
||||
|
||||
format [localize "str_sharpen_success",_displayName] call dayz_rollingMessages;
|
||||
};
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
@@ -27,6 +27,7 @@ dz_fn_switchWeapon =
|
||||
if (vehicle player != player) exitWith {};
|
||||
if Player_IsOnLadder() exitWith {};
|
||||
if (dayz_autoRun) then {call dayz_autoRunOff;};
|
||||
if (dayz_isSwimming) exitWith {};
|
||||
|
||||
private ["_current","_primary","_secondary","_swapWeapons"];
|
||||
|
||||
@@ -289,4 +290,4 @@ dz_fn_switchWeapon_animDone =
|
||||
if (IS_MELEE(primaryWeapon player)) then
|
||||
{ call dayz_meleeMagazineCheck; };
|
||||
#endif
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,81 +1,55 @@
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
private ["_vehicle","_canSize","_configVeh","_capacity","_nameType","_curFuel","_newFuel","_dis","_sfx","_fueling","_array","_cantype",
|
||||
"_emptycan","_started","_finished","_animState","_isRefuel","_type"];
|
||||
|
||||
private ["_vehicle","_canSize","_configVeh","_capacity","_nameType","_curFuel","_newFuel","_dis","_sfx","_array","_cantype",
|
||||
"_emptycan","_finished","_type"];
|
||||
|
||||
_array = _this select 3;
|
||||
_cantype = _array select 0;
|
||||
_vehicle = _array select 1;
|
||||
_type = typeOf _vehicle;
|
||||
_canSize = getNumber(configFile >> "cfgMagazines" >> _cantype >> "fuelQuantity");
|
||||
_emptycan = getText(configFile >> "cfgMagazines" >> _cantype >> "emptycan");
|
||||
_emptycan = getText(configFile >> "cfgMagazines" >> _cantype >> "containerEmpty");
|
||||
_configVeh = configFile >> "cfgVehicles" >> _type;
|
||||
_capacity = getNumber(_configVeh >> "fuelCapacity");
|
||||
_nameType = getText(_configVeh >> "displayName");
|
||||
_curFuel = ((fuel _vehicle) * _capacity);
|
||||
_newFuel = (_curFuel + _canSize);
|
||||
_fueling = player getVariable ["fueling",false];
|
||||
|
||||
if (fuel _vehicle == 1 || !(_canType in magazines player)) exitWith {dayz_actionInProgress = false;};
|
||||
if (fuel _vehicle == 1 || {!(_canType in magazines player)}) exitWith {dayz_actionInProgress = false;};
|
||||
|
||||
player removeAction s_player_fillfuel + _capacity;
|
||||
player setVariable ["fueling", true];
|
||||
|
||||
if (!_fueling) then {
|
||||
[player] allowGetIn false;
|
||||
_dis=5;
|
||||
_sfx = "refuel";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] call player_alertZombies;
|
||||
|
||||
_finished = ["Medic",1] call fn_loopAction;
|
||||
|
||||
if (_finished) then {
|
||||
if (_newFuel > _capacity) then {_newFuel = _capacity};
|
||||
_newFuel = (_newFuel / _capacity);
|
||||
|
||||
player removeMagazine _cantype;
|
||||
player addMagazine _emptycan;
|
||||
player playActionNow "Medic";
|
||||
|
||||
_dis=5;
|
||||
_sfx = "refuel";
|
||||
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
|
||||
[player,_dis,true,(getPosATL player)] call player_alertZombies;
|
||||
|
||||
// Added Nutrition-Factor for work
|
||||
["Working",0,[0,1,3,0]] call dayz_NutritionSystem;
|
||||
|
||||
r_doLoop = true;
|
||||
_started = false;
|
||||
_finished = false;
|
||||
while {r_doLoop} do {
|
||||
_animState = animationState player;
|
||||
_isRefuel = ["medic",_animState] call fnc_inString;
|
||||
if (_isRefuel or dayz_isSwimming) then {
|
||||
_started = true;
|
||||
};
|
||||
if (_started and !_isRefuel) then {
|
||||
r_doLoop = false;
|
||||
_finished = true;
|
||||
};
|
||||
uiSleep 0.1;
|
||||
if ((_type == "Generator_DZ") && {!(_vehicle getVariable ["GeneratorFilled", false])}) then {
|
||||
_vehicle setVariable ["GeneratorFilled", true, true];
|
||||
};
|
||||
r_doLoop = false;
|
||||
|
||||
if (_finished) then {
|
||||
if ((_type == "Generator_DZ") && {!(_vehicle getVariable ["GeneratorFilled", false])}) then {
|
||||
_vehicle setVariable ["GeneratorFilled", true, true];
|
||||
};
|
||||
if (local _vehicle) then {
|
||||
[_vehicle,_newFuel] call local_setFuel;
|
||||
} else {
|
||||
PVDZ_send = [_vehicle,"SetFuel",[_vehicle,_newFuel]];
|
||||
publicVariableServer "PVDZ_send";
|
||||
};
|
||||
|
||||
format[localize "str_player_05",_nameType,_canSize] call dayz_rollingMessages;
|
||||
uiSleep 1;
|
||||
call fnc_usec_medic_removeActions;
|
||||
if (local _vehicle) then {
|
||||
[_vehicle,_newFuel] call local_setFuel;
|
||||
} else {
|
||||
PVDZ_send = [_vehicle,"SetFuel",[_vehicle,_newFuel]];
|
||||
publicVariableServer "PVDZ_send";
|
||||
};
|
||||
[player] allowGetIn true;
|
||||
|
||||
format[localize "str_player_05",_nameType,_canSize] call dayz_rollingMessages;
|
||||
uiSleep 1;
|
||||
call fnc_usec_medic_removeActions;
|
||||
} else {
|
||||
localize "str_refuel_fail" call dayz_rollingMessages;
|
||||
localize "str_epoch_player_26" call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
r_action = false;
|
||||
player setVariable ["fueling", false];
|
||||
dayz_actionInProgress = false;
|
||||
|
||||
@@ -4,7 +4,7 @@ dayz_actionInProgress = true;
|
||||
delete object from db with extra waiting by [VB]AWOL
|
||||
parameters: _obj
|
||||
*/
|
||||
private ["_obj","_objectID","_objectUID","_finished","_isOk","_proceed","_counter","_limit","_objType","_itemOut","_countOut","_selectedRemoveOutput","_nearestPole","_ownerID","_refundpart","_isWreck","_IsNearPlot","_brokenTool","_removeTool","_isDestructable","_isRemovable","_objOwnerID","_isOwnerOfObj","_preventRefund","_ipos","_item","_radius","_isWreckBuilding","_nameVehicle","_isModular","_success","_lootGroupIndex","_output"];
|
||||
private ["_plotcheck","_PlayerNear","_isMine","_obj","_objectID","_objectUID","_finished","_isOk","_proceed","_counter","_limit","_objType","_itemOut","_countOut","_selectedRemoveOutput","_nearestPole","_refundpart","_isWreck","_IsNearPlot","_brokenTool","_removeTool","_isDestructable","_isRemovable","_objOwnerID","_isOwnerOfObj","_preventRefund","_ipos","_item","_isWreckBuilding","_nameVehicle","_isModular","_success","_lootGroupIndex","_output"];
|
||||
|
||||
player removeAction s_player_deleteBuild;
|
||||
s_player_deleteBuild = 1;
|
||||
@@ -38,7 +38,6 @@ _isRemovable = _objType in DZE_isRemovable;
|
||||
_isWreckBuilding = _objType in DZE_isWreckBuilding;
|
||||
_isMine = _objType in ["Land_iron_vein_wreck","Land_silver_vein_wreck","Land_gold_vein_wreck"];
|
||||
_isModular = _obj isKindOf "ModularItems";
|
||||
_distance = DZE_PlotPole select 0;
|
||||
|
||||
_PlayerNear = {isPlayer _x} count (([_obj] call FNC_GetPos) nearEntities ["CAManBase", 10]) > 1;
|
||||
if (_PlayerNear && (_isMine or _objType == "Land_ammo_supply_wreck")) exitWith {dayz_actionInProgress = false; localize "str_pickup_limit_5" call dayz_rollingMessages;};
|
||||
@@ -58,6 +57,8 @@ _IsNearPlot = _plotcheck select 1;
|
||||
_nearestPole = _plotcheck select 2;
|
||||
|
||||
if(_IsNearPlot >= 1) then {
|
||||
private ["_buildcheck","_isowner","_isfriendly"];
|
||||
|
||||
// Since there are plot poles nearby we need to check ownership && friend status
|
||||
_buildcheck = [player, _nearestPole] call FNC_check_access;
|
||||
_isowner = _buildcheck select 0;
|
||||
@@ -89,7 +90,7 @@ while {_isOk} do {
|
||||
_isOk = false;
|
||||
_proceed = false;
|
||||
};
|
||||
|
||||
|
||||
format[localize "str_epoch_player_163",_nameVehicle,(_counter + 1),_limit] call dayz_rollingMessages;
|
||||
|
||||
[player,"repair",0,false,20] call dayz_zombieSpeak;
|
||||
@@ -150,7 +151,7 @@ if (_proceed && _success) then {
|
||||
// Double check that object is not null
|
||||
if(!isNull(_obj)) then {
|
||||
_ipos = getPosATL _obj;
|
||||
|
||||
|
||||
if(!_isWreck && !_isWreckBuilding) then {
|
||||
//Server performs deleteVehicle
|
||||
PVDZ_obj_Destroy = [_objectID,_objectUID,player,_obj,dayz_authKey];
|
||||
@@ -158,7 +159,7 @@ if (_proceed && _success) then {
|
||||
} else {
|
||||
deleteVehicle _obj;
|
||||
};
|
||||
|
||||
|
||||
if (_isWreckBuilding) then {
|
||||
PVDZ_send = [player,"RemoveObject",_ipos];
|
||||
publicVariableServer "PVDZ_send";
|
||||
@@ -194,10 +195,10 @@ if (_proceed && _success) then {
|
||||
if ({_objType in _x} count DZE_modularConfig > 0) then {
|
||||
{
|
||||
private ["_class", "_refund"];
|
||||
|
||||
|
||||
_class = _x select 0;
|
||||
_refund = _x select 1;
|
||||
|
||||
|
||||
if (_objType == _class) then {
|
||||
{_selectedRemoveOutput set [count _selectedRemoveOutput,_x];} forEach _refund;
|
||||
};
|
||||
@@ -214,14 +215,10 @@ if (_proceed && _success) then {
|
||||
[localize "str_epoch_player_90",1] call dayz_rollingMessages;
|
||||
};
|
||||
|
||||
if (_ipos select 2 < 0) then {
|
||||
_ipos set [2,0];
|
||||
};
|
||||
|
||||
_radius = 1;
|
||||
|
||||
if (_isMine) then {
|
||||
if((random 10) <= 4) then {
|
||||
private ["_gems","_weights","_gemSelected"];
|
||||
|
||||
_gems = [];
|
||||
_weights = [];
|
||||
{
|
||||
@@ -235,7 +232,16 @@ if (_proceed && _success) then {
|
||||
|
||||
// give refund items
|
||||
if((count _selectedRemoveOutput) > 0 && !_preventRefund) then {
|
||||
_item = createVehicle ["WeaponHolder", _iPos, [], _radius, "CAN_COLLIDE"];
|
||||
private "_posPlayer";
|
||||
|
||||
_posPlayer = getPosATL player;
|
||||
_iPos set [2,_posPlayer select 2];
|
||||
|
||||
if (_iPos select 2 < 0) then {
|
||||
_iPos set [2,0];
|
||||
};
|
||||
|
||||
_item = "WeaponHolder" createVehicle [0,0,0];
|
||||
{
|
||||
_itemOut = _x select 0;
|
||||
_countOut = _x select 1;
|
||||
@@ -254,7 +260,6 @@ if (_proceed && _success) then {
|
||||
} count _selectedRemoveOutput;
|
||||
|
||||
_item setposATL _iPos;
|
||||
|
||||
player reveal _item;
|
||||
DZE_GearCheckBypass = true; //Bypass gear menu checks since dialog will always open on item
|
||||
player action ["Gear", _item];
|
||||
@@ -265,4 +270,4 @@ if (_proceed && _success) then {
|
||||
};
|
||||
|
||||
dayz_actionInProgress = false;
|
||||
s_player_deleteBuild = -1;
|
||||
s_player_deleteBuild = -1;
|
||||
|
||||
@@ -34,7 +34,7 @@ if (_hasToolbox) then {
|
||||
_hits = [_vehicle,_hitpoint] call object_getHit;
|
||||
_damage = _hits select 0;
|
||||
if (_damage < 1 && {_damage > 0}) then { //Tempfix for issue where certain hitpoints on some vehicles do not get damaged and allow infinite removal
|
||||
_BreakableParts = ["HitGlass1","HitGlass2","HitGlass3","HitGlass4","HitGlass5","HitGlass6","HitLGlass","HitRGlass","HitEngine","HitFuel","HitHRotor"];
|
||||
_BreakableParts = ["HitLFWheel","HitRFWheel","HitLBWheel","HitRBWheel","HitLF2Wheel","HitRF2Wheel","HitLMWheel","HitRMWheel","HitLFWheel","HitRFWheel","HitLBWheel","HitRBWheel","HitLF2Wheel","HitRF2Wheel","HitLMWheel","HitRMWheel","HitGlass1","HitGlass2","HitGlass3","HitGlass4","HitGlass5","HitGlass6","HitLGlass","HitRGlass","HitEngine","HitFuel","HitHRotor"];
|
||||
if (_hitpoint in _BreakableParts) then {
|
||||
if ((random 1) < (_damage * 0.9)) then { //max 90% chance to break
|
||||
_isOK = true;
|
||||
|
||||
@@ -13,26 +13,30 @@ _weapons = weapons player;
|
||||
{
|
||||
_weapon = _x;
|
||||
_hastoolweapon = _x in _weapons;
|
||||
|
||||
|
||||
if (_x == "ItemKnife") then {
|
||||
{if (_x in Dayz_Gutting) exitWith {_hastoolweapon = true};} forEach _items;
|
||||
{if (_x in Dayz_Gutting) exitWith {_hastoolweapon = true};} count _items;
|
||||
};
|
||||
if (_x == "ItemMatchbox") then {
|
||||
{if (_x in DayZ_Ignitors) exitWith {_hastoolweapon = true};} forEach _items;
|
||||
{if (_x in DayZ_Ignitors) exitWith {_hastoolweapon = true};} count _items;
|
||||
};
|
||||
if (_x == "ChainSaw") then {
|
||||
{if (_x in ["ChainSaw","ChainSawB","ChainSawG","ChainSawG","ChainSawR"]) exitWith {_hastoolweapon = true};} count _weapons;
|
||||
};
|
||||
|
||||
{
|
||||
_melee = format ["Melee%1",_x];
|
||||
if (_weapon == format["Item%1",_x] && {(_melee in _weapons) or (dayz_onBack == _melee)}) then {
|
||||
if (_weapon == format["Item%1",_x] && {(_melee in _weapons) || {dayz_onBack == _melee}}) then {
|
||||
_hastoolweapon = true;
|
||||
};
|
||||
} forEach ["Crowbar","Hatchet","Sledge"];
|
||||
|
||||
} count ["Crowbar","Hatchet","Sledge"];
|
||||
|
||||
if (!_hastoolweapon) then {
|
||||
_missingText = getText (configFile >> "cfgWeapons" >> _x >> "displayName");
|
||||
_missing set [count _missing, _missingText];
|
||||
_hasrequireditem = false;
|
||||
};
|
||||
} forEach _require;
|
||||
} count _require;
|
||||
|
||||
_missingText = "";
|
||||
{
|
||||
@@ -48,8 +52,8 @@ _missingText = "";
|
||||
} forEach _missing;
|
||||
|
||||
_hasbuilditem = _item in magazines player;
|
||||
if (!_hasbuilditem && _text != "") exitWith {dayz_actionInProgress = false; format[localize "str_player_31",_text,"build"] call dayz_rollingMessages; false;};
|
||||
if (!_hasbuilditem && {_text != ""}) exitWith {dayz_actionInProgress = false; format[localize "str_player_31",_text,"build"] call dayz_rollingMessages; false;};
|
||||
if (!_hasrequireditem) exitWith {dayz_actionInProgress = false; format[localize "str_epoch_player_137",_missingText] call dayz_rollingMessages; false;};
|
||||
|
||||
//When calling this function in another script use a silent exitWith, unless you have something special to say. i.e. if (!_hasrequireditem) exitWith{};
|
||||
_hasrequireditem;
|
||||
_hasrequireditem;
|
||||
|
||||
@@ -8,7 +8,7 @@ scriptName "Functions\misc\fn_damageActions.sqf";
|
||||
- [] call fnc_usec_damageActions;
|
||||
************************************************************/
|
||||
|
||||
private ["_menClose","_hasPatient","_vehicle","_inVehicle","_isClose","_assignedRole","_driver","_action","_turret","_weapons","_weaponName","_crew","_unconscious_crew","_patients","_vehType","_unit","_antibiotics","_bloodBags","_unconscious","_lowBlood","_injured","_hasSepsis","_inPain","_legsBroke","_armsBroke","_infected","_hasBandage","_hasSepsisBandage","_hasEpi","_hasMorphine","_hasSplint","_hasPainkillers","_hasEmptyBag","_hasTester","_hasAntibiotics","_hasBloodBag","_vehClose","_action1","_action2","_action3","_playerMagazines","_isFriendly"];
|
||||
private ["_menClose","_hasPatient","_vehicle","_inVehicle","_isClose","_assignedRole","_driver","_action","_turret","_weapons","_weaponName","_crew","_unconscious_crew","_patients","_vehType","_unit","_antibiotics","_bloodBags","_unconscious","_lowBlood","_injured","_hasSepsis","_inPain","_legsBroke","_armsBroke","_infected","_hasBandage","_hasSepsisBandage","_hasEpi","_hasMorphine","_hasSplint","_hasPainkillers","_hasAntibiotics","_hasBloodBag","_vehClose","_action1","_action2","_action3","_playerMagazines","_isFriendly"];
|
||||
|
||||
_menClose = cursorTarget;
|
||||
_hasPatient = alive _menClose;
|
||||
@@ -29,9 +29,9 @@ if (_inVehicle) then {
|
||||
};
|
||||
if (!r_player_unconscious && !r_action2) then {
|
||||
r_player_lastSeat = _assignedRole;
|
||||
if (_vehicle isKindOf "helicopter" || (_inVehicle && ({(isPlayer _x) && (alive _x)} count (crew _vehicle) > 1))) then {
|
||||
if (_vehicle isKindOf "helicopter" || {_inVehicle && {{(isPlayer _x) && (alive _x)} count (crew _vehicle) > 1}}) then {
|
||||
//allow switch to pilot
|
||||
if (((_assignedRole select 0) != "driver") && ((!alive _driver) or ((_vehicle emptyPositions "Driver") > 0))) then {
|
||||
if (((_assignedRole select 0) != "driver") && {(!alive _driver) || {(_vehicle emptyPositions "Driver") > 0}}) then {
|
||||
if (_vehicle isKindOf "helicopter") then {
|
||||
_action = _vehicle addAction [localize "str_actions_helipilotseat", "\z\addons\dayz_code\actions\veh_seatActions.sqf",["MoveToPilot",_driver], 0, false, true];
|
||||
} else {
|
||||
@@ -41,25 +41,25 @@ if (_inVehicle) then {
|
||||
r_action2 = true;
|
||||
};
|
||||
//allow switch to cargo
|
||||
if (((_assignedRole select 0) != "cargo") && ((_vehicle emptyPositions "Cargo") > 0)) then {
|
||||
if (((_assignedRole select 0) != "cargo") && {(_vehicle emptyPositions "Cargo") > 0}) then {
|
||||
_action = _vehicle addAction [localize "str_actions_helibackseat", "\z\addons\dayz_code\actions\veh_seatActions.sqf",["MoveToCargo",_driver], 0, false, true];
|
||||
r_player_actions2 set [count r_player_actions2,_action];
|
||||
r_action2 = true;
|
||||
};
|
||||
//allow switch to gunner
|
||||
if (((_assignedRole select 0) != "Turret") && ((_vehicle emptyPositions "Gunner") > 0)) then {
|
||||
if (((_assignedRole select 0) != "Turret") && {(_vehicle emptyPositions "Gunner") > 0}) then {
|
||||
_action = _vehicle addAction [localize "str_actions_heligunnerseat", "\z\addons\dayz_code\actions\veh_seatActions.sqf",["MoveToTurret",_driver], 0, false, true];
|
||||
r_player_actions2 set [count r_player_actions2,_action];
|
||||
r_action2 = true;
|
||||
};
|
||||
//allow switch to commander
|
||||
if (((assignedCommander _vehicle) != player) && ((_vehicle emptyPositions "Commander") > 0)) then {
|
||||
if (((assignedCommander _vehicle) != player) && {(_vehicle emptyPositions "Commander") > 0}) then {
|
||||
_action = _vehicle addAction[localize "STR_EPOCH_PLAYER_311", "\z\addons\dayz_code\actions\veh_seatActions.sqf", ["MoveToTurret", _driver], 0, false, true];
|
||||
r_player_actions2 set [count r_player_actions2,_action];
|
||||
r_action2 = true;
|
||||
};
|
||||
};
|
||||
if ((count _assignedRole) > 1 || ((_assignedRole select 0) == "driver")) then {
|
||||
if ((count _assignedRole) > 1 || {(_assignedRole select 0) == "driver"}) then {
|
||||
_turret = [-1];
|
||||
if ((count _assignedRole) > 1) then {
|
||||
_turret = _assignedRole select 1;
|
||||
@@ -113,14 +113,14 @@ if (r_player_unconscious) then {
|
||||
|
||||
//Lets make sure the player is looking at the target
|
||||
if (isPlayer cursorTarget) then {
|
||||
if (!r_drag_sqf && !r_action && !_inVehicle && !r_player_unconscious && (player distance _menClose < 3)) then {
|
||||
if (!r_drag_sqf && {!r_action} && {!_inVehicle} && {!r_player_unconscious} && {player distance _menClose < 3}) then {
|
||||
_unit = cursorTarget;
|
||||
player reveal _unit;
|
||||
|
||||
|
||||
//Arrays
|
||||
_antibiotics =["ItemAntibiotic","ItemAntibiotic1","ItemAntibiotic2","ItemAntibiotic3","ItemAntibiotic4","ItemAntibiotic5","ItemAntibiotic6"];
|
||||
_bloodBags = ["ItemBloodbag","bloodBagANEG","bloodBagAPOS","bloodBagBNEG","bloodBagBPOS","bloodBagABNEG","bloodBagABPOS","bloodBagONEG","bloodBagOPOS"];
|
||||
|
||||
|
||||
//Var checks
|
||||
_unconscious = _unit getVariable ["NORRN_unconscious", false];
|
||||
_lowBlood = _unit getVariable ["USEC_lowBlood", false];
|
||||
@@ -130,7 +130,7 @@ if (isPlayer cursorTarget) then {
|
||||
_legsBroke = _unit getVariable ["hit_legs", 0] >= 1;
|
||||
_armsBroke = _unit getVariable ["hit_hands", 0] >= 1;
|
||||
_infected = _unit getVariable ["USEC_infected", false];
|
||||
|
||||
|
||||
//Magazine checks
|
||||
_playerMagazines = magazines player;
|
||||
_hasBandage = "ItemBandage" in _playerMagazines;
|
||||
@@ -139,12 +139,9 @@ if (isPlayer cursorTarget) then {
|
||||
_hasMorphine = "ItemMorphine" in _playerMagazines;
|
||||
_hasSplint = "equip_woodensplint" in _playerMagazines;
|
||||
_hasPainkillers = "ItemPainkiller" in _playerMagazines;
|
||||
//_hasEmptyBag = "emptyBloodBag" in _playerMagazines;
|
||||
//_hasTester = "bloodTester" in _playerMagazines;
|
||||
|
||||
_hasAntibiotics = Array_Any(_playerMagazines, {_this in _antibiotics});
|
||||
_hasBloodBag = Array_Any(_playerMagazines, {_this in _bloodBags});
|
||||
|
||||
|
||||
_vehClose = (getPosATL player) nearEntities [["Car","Tank","Helicopter","Plane","StaticWeapon","Ship"],5];
|
||||
|
||||
if (_hasPatient) then {
|
||||
@@ -168,49 +165,49 @@ if (isPlayer cursorTarget) then {
|
||||
r_player_actions set [count r_player_actions,NORRN_loadWoundedAction];
|
||||
};
|
||||
//Allow player to bandage
|
||||
if(_injured && _hasBandage) then {
|
||||
if(_injured && {_hasBandage}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_04", "\z\addons\dayz_code\medical\bandage.sqf",[_unit,"ItemBandage"], 0, true, true, "", "'ItemBandage' in magazines player"];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Sepsis
|
||||
if(_hasSepsis && _hasSepsisBandage) then {
|
||||
if(_hasSepsis && {_hasSepsisBandage}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_04", "\z\addons\dayz_code\medical\bandage.sqf",[_unit,"ItemSepsisBandage"], 0, true, true, "", "'ItemBandage' in magazines player"];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to give Epinephrine
|
||||
if(_unconscious && _hasEpi) then {
|
||||
if(_unconscious && {_hasEpi}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_05", "\z\addons\dayz_code\medical\epinephrine.sqf",[_unit], 0, true, true];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to give Morphine
|
||||
if((_legsBroke or _armsBroke) && _hasMorphine) then {
|
||||
if((_legsBroke || {_armsBroke}) && {_hasMorphine}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_06", "\z\addons\dayz_code\medical\brokeBones.sqf",[_unit,"ItemMorphine"], 0, true, true, "", "'ItemMorphine' in magazines player"];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to give equip_woodensplint
|
||||
if((_legsBroke or _armsBroke) && _hasSplint) then {
|
||||
if((_legsBroke || {_armsBroke}) && {_hasSplint}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_06_splint", "\z\addons\dayz_code\medical\brokeBones.sqf",[_unit,"equip_woodensplint"], 0, true, true, "", "'equip_woodensplint' in magazines player"];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to give Painkillers
|
||||
if(_inPain && _hasPainkillers) then {
|
||||
if(_inPain && {_hasPainkillers}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_07", "\z\addons\dayz_code\medical\painkiller.sqf",[_unit], 0, true, true, "", "'ItemPainkiller' in magazines player"];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to transfuse blood
|
||||
if(_lowBlood && _hasBloodBag) then {
|
||||
if(_lowBlood && {_hasBloodBag}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_08", "\z\addons\dayz_code\medical\transfusion.sqf",[_unit], 0, true, true];
|
||||
r_player_actions set [count r_player_actions,_action];
|
||||
};
|
||||
//Allow player to give antibiotics
|
||||
if (_infected && _hasAntibiotics) then {
|
||||
if (_infected && {_hasAntibiotics}) then {
|
||||
r_action = true;
|
||||
_action = _unit addAction [localize "str_actions_medical_give_antibiotics", "\z\addons\dayz_code\medical\antibiotics.sqf",[_unit], 0, true, true];
|
||||
r_player_actions set [count r_player_actions, _action];
|
||||
@@ -233,7 +230,7 @@ if (isPlayer cursorTarget) then {
|
||||
};
|
||||
|
||||
//Remove Actions
|
||||
if ((!_isClose or !_hasPatient) && r_action) then {
|
||||
if ((!_isClose || {!_hasPatient}) && {r_action}) then {
|
||||
call fnc_usec_medic_removeActions;
|
||||
r_action = false;
|
||||
};
|
||||
|
||||
@@ -17,15 +17,18 @@ _nearByPile= nearestObjects [_pos, ["WeaponHolder","WeaponHolderBase"],PILE_SEAR
|
||||
|
||||
if (count _nearByPile == 0) then {
|
||||
//No weapon holders found in the radius, spawn a new one
|
||||
_holder = createVehicle ["WeaponHolder", _pos, [], 0, "CAN_COLLIDE"];
|
||||
_holder = "WeaponHolder" createVehicle [0,0,0];
|
||||
_holder setPosATL _pos;
|
||||
} else {
|
||||
//Found a near by weapon holder lets select it.
|
||||
_holder = _nearByPile select 0;
|
||||
|
||||
|
||||
if (!_manualPos) then {
|
||||
private "_objects";
|
||||
|
||||
//check to make sure the player can see the selected weapon holder.
|
||||
_objects = lineIntersectsWith [(_holder modeltoWorld PILE_OFFSET), _pos, player, _holder, true];
|
||||
|
||||
|
||||
//Can you see the current selected weapon holder
|
||||
if (count _objects > 0) then {
|
||||
//Unable to see the current selected weapon holder within the radius lets create a new one.
|
||||
@@ -42,4 +45,4 @@ switch _type do {
|
||||
};
|
||||
|
||||
//Revel the item
|
||||
player reveal _holder;
|
||||
player reveal _holder;
|
||||
|
||||
@@ -13,7 +13,7 @@ private ["_canPickLight","_text","_unlock","_lock","_totalKeys","_temp_keys","_t
|
||||
"_isModular","_isModularDoor","_isHouse","_isGateOperational","_isGateLockable","_isFence","_isLockableGate","_isUnlocked","_isOpen","_isClosed","_ownerArray","_ownerBuildLock",
|
||||
"_ownerPID","_speed","_dog","_vehicle","_inVehicle","_cursorTarget","_primaryWeapon","_currentWeapon","_magazinesPlayer","_onLadder","_canDo",
|
||||
"_nearLight","_vehicleOwnerID","_hasHotwireKit","_isPZombie","_dogHandle","_allowedDistance","_id","_upgrade","_weaponsPlayer","_hasCrowbar",
|
||||
"_allowed","_hasAccess","_uid","_myCharID","_isLocked","_isClose"];
|
||||
"_allowed","_hasAccess","_uid","_myCharID","_isLocked","_isClose","_hasunboiledwater","_characterID","_text2"];
|
||||
|
||||
_vehicle = vehicle player;
|
||||
_inVehicle = (_vehicle != player);
|
||||
@@ -40,7 +40,7 @@ if (!isNull _nearLight) then {
|
||||
};
|
||||
|
||||
//Grab Flare
|
||||
if (_canPickLight && !dayz_hasLight && !_isPZombie) then {
|
||||
if (_canPickLight && {!dayz_hasLight} && {!_isPZombie}) then {
|
||||
if (s_player_grabflare < 0) then {
|
||||
_text = getText (configFile >> "CfgAmmo" >> (typeOf _nearLight) >> "displayName");
|
||||
s_player_grabflare = player addAction [format[localize "str_actions_medical_15",_text], "\z\addons\dayz_code\actions\flare_pickup.sqf",_nearLight, 1, false, true];
|
||||
@@ -112,14 +112,14 @@ if (_canDo && !_inVehicle && !dayz_isSwimming && ((call fn_nearWaterHole) select
|
||||
|
||||
if (_inVehicle) then {
|
||||
DZE_myVehicle = _vehicle;
|
||||
if (_vehicleOwnerID != "0" && _canDo) then {
|
||||
if ((_vehicleOwnerID != "0") && {_canDo}) then {
|
||||
if (s_player_lockUnlockInside_ctrl < 0) then {
|
||||
_totalKeys = call epoch_tempKeys;
|
||||
_temp_keys = _totalKeys select 0;
|
||||
_temp_keys_names = _totalKeys select 1;
|
||||
_temp_keys_names = _totalKeys select 1;
|
||||
_hasKey = _vehicleOwnerID in _temp_keys;
|
||||
_oldOwner = (_vehicleOwnerID == _uid);
|
||||
|
||||
|
||||
_text = getText (configFile >> "CfgVehicles" >> (typeOf DZE_myVehicle) >> "displayName");
|
||||
if (locked DZE_myVehicle) then {
|
||||
if (_hasKey || _oldOwner) then {
|
||||
@@ -178,7 +178,7 @@ if (DZE_HaloJump) then {
|
||||
};
|
||||
|
||||
if (DZE_NameTags > 0) then {
|
||||
if (s_player_showname < 0 && !_isPZombie) then {
|
||||
if (s_player_showname < 0 && {!_isPZombie}) then {
|
||||
if (DZE_NameTags < 2) then {
|
||||
s_player_showname = 1;
|
||||
player setVariable["DZE_display_name",true,true];
|
||||
@@ -199,11 +199,11 @@ if (_isPZombie) then {
|
||||
if (s_player_pzombiesvision < 0) then {
|
||||
s_player_pzombiesvision = player addAction [localize "STR_EPOCH_ACTIONS_NIGHTVIS", "\z\addons\dayz_code\actions\pzombie\pz_vision.sqf", [], 4, false, true, "nightVision", "_this == _target"];
|
||||
};
|
||||
if (!isNull _cursorTarget && _isClose) then {
|
||||
if (!isNull _cursorTarget && {_isClose}) then {
|
||||
_isZombie = _cursorTarget isKindOf "zZombie_base";
|
||||
_isHarvested = _cursorTarget getVariable["meatHarvested",false];
|
||||
_isMan = _cursorTarget isKindOf "Man"; //includes animals and zombies
|
||||
if (!alive _cursorTarget && _isMan && !_isZombie && !_isHarvested) then {
|
||||
if (!alive _cursorTarget && {_isMan} && {!_isZombie} && {!_isHarvested}) then {
|
||||
if (s_player_pzombiesfeed < 0) then {
|
||||
s_player_pzombiesfeed = player addAction [localize "STR_EPOCH_ACTIONS_FEED", "\z\addons\dayz_code\actions\pzombie\pz_feed.sqf",_cursorTarget, 3, true, false];
|
||||
};
|
||||
@@ -218,9 +218,9 @@ if (_isPZombie) then {
|
||||
};
|
||||
|
||||
// Increase distance only if AIR or SHIP
|
||||
_allowedDistance = if ((_cursorTarget isKindOf "Air") or (_cursorTarget isKindOf "Ship")) then {8} else {4};
|
||||
_allowedDistance = [4, 8] select ((_cursorTarget isKindOf "Air") || (_cursorTarget isKindOf "Ship"));
|
||||
|
||||
if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cursorTarget < _allowedDistance) && _canDo) then {
|
||||
if (!isNull _cursorTarget && {!_inVehicle} && {!_isPZombie} && {player distance _cursorTarget < _allowedDistance} && {_canDo}) then {
|
||||
//Has some kind of target
|
||||
_typeOfCursorTarget = typeOf _cursorTarget;
|
||||
_isVehicle = _cursorTarget isKindOf "AllVehicles";
|
||||
@@ -239,14 +239,13 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
_weaponsPlayer = weapons player;
|
||||
_hasCrowbar = "ItemCrowbar" in _itemsPlayer or "MeleeCrowbar" in _weaponsPlayer or dayz_onBack == "MeleeCrowbar";
|
||||
_hasToolbox = "ItemToolbox" in _itemsPlayer;
|
||||
_hasbottleitem = (("ItemWaterBottle" in _magazinesPlayer) || {"ItemWaterBottleInfected" in _magazinesPlayer} || {"ItemWaterBottleSafe" in _magazinesPlayer} || {"ItemWaterBottleBoiled" in _magazinesPlayer});
|
||||
_isAlive = alive _cursorTarget;
|
||||
_text = getText (configFile >> "CfgVehicles" >> _typeOfCursorTarget >> "displayName");
|
||||
_isPlant = _typeOfCursorTarget in Dayz_plants;
|
||||
_istypeTent = (_cursorTarget isKindOf "TentStorage_base") or (_cursorTarget isKindOf "IC_Tent");
|
||||
_upgradeItems = ["TentStorage","TentStorage0","TentStorage1","TentStorage2","TentStorage3","StashSmall","StashSmall1","StashSmall2","StashSmall3","StashSmall4","StashMedium","StashMedium1","StashMedium2","StashMedium3","DomeTentStorage","DomeTentStorage0","DomeTentStorage1","DomeTentStorage2","DomeTentStorage3","DesertTentStorage","DesertTentStorage0","DesertTentStorage1","DesertTentStorage2","DesertTentStorage3"];
|
||||
_characterID = _cursorTarget getVariable ["CharacterID","0"];
|
||||
|
||||
|
||||
if (DZE_permanentPlot) then {
|
||||
_id = _uid;
|
||||
_ownerID = _cursorTarget getVariable ["ownerPUID","0"];
|
||||
@@ -255,13 +254,13 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
_ownerID = _characterID;
|
||||
};
|
||||
|
||||
_isDisallowRefuel = _typeOfCursorTarget in ["M240Nest_DZ","MMT_Civ","MMT_USMC","Old_bike_TK_CIV_EP1","Old_bike_TK_INS_EP1"];
|
||||
_isDisallowRefuel = _typeOfCursorTarget in ["M240Nest_DZ","MMT_Civ","MMT_USMC","Old_bike_TK_CIV_EP1","Old_bike_TK_INS_EP1"];
|
||||
_isDog = (_cursorTarget isKindOf "Pastor" || _cursorTarget isKindOf "Fin");
|
||||
_isModular = _cursorTarget isKindOf "ModularItems";
|
||||
_isModularDoor = _typeOfCursorTarget in ["Land_DZE_WoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_GarageWoodDoor","CinderWallDoor_DZ","CinderWallDoorSmall_DZ"];
|
||||
_player_deleteBuild = false;
|
||||
_player_lockUnlock_crtl = false;
|
||||
|
||||
|
||||
//fuel tanks
|
||||
if (_hasEmptyFuelCan) then {
|
||||
{
|
||||
@@ -283,9 +282,9 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_flipveh;
|
||||
s_player_flipveh = -1;
|
||||
};
|
||||
|
||||
|
||||
//Allow player to fill Fuel can
|
||||
if (_hasEmptyFuelCan && _isFuel && _isAlive) then {
|
||||
if (_hasEmptyFuelCan && {_isFuel} && {_isAlive}) then {
|
||||
if (s_player_fillfuel < 0) then {
|
||||
s_player_fillfuel = player addAction [localize "str_actions_self_10", "\z\addons\dayz_code\actions\jerry_fill.sqf",_cursorTarget, 1, false, true];
|
||||
};
|
||||
@@ -293,7 +292,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_fillfuel;
|
||||
s_player_fillfuel = -1;
|
||||
};
|
||||
|
||||
|
||||
if (damage _cursorTarget < 1) then {
|
||||
//Allow player to fill vehicle 210L
|
||||
if (_hasBarrel && {!_isMan} && {_isVehicle} && {fuel _cursorTarget < 1} && {!_isDisallowRefuel}) then {
|
||||
@@ -304,7 +303,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_fillfuel210;
|
||||
s_player_fillfuel210 = -1;
|
||||
};
|
||||
|
||||
|
||||
//Allow player to fill vehicle 20L
|
||||
if (_hasFuel20 && {!_isMan} && {_isVehicle} && {fuel _cursorTarget < 1} && {!_isDisallowRefuel}) then {
|
||||
if (s_player_fillfuel20 < 0) then {
|
||||
@@ -348,22 +347,22 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_siphonfuel;
|
||||
s_player_siphonfuel = -1;
|
||||
};
|
||||
|
||||
|
||||
//Fireplace Actions check
|
||||
if ((_cursorTarget call isInflamed) or (inflamed _cursorTarget)) then {
|
||||
_hasRawMeat = {_x in Dayz_meatraw} count _magazinesPlayer > 0;
|
||||
//_hastinitem = {_x in boil_tin_cans} count _magazinesPlayer > 0;
|
||||
_hasunboiledwater = {_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz"]} count _magazinesPlayer > 0;
|
||||
_hasunboiledwater = {_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz","ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterbottle1oz","ItemPlasticWaterbottle2oz","ItemPlasticWaterbottle3oz","ItemPlasticWaterbottle4oz","ItemPlasticWaterbottle5oz","ItemPlasticWaterbottle6oz","ItemPlasticWaterbottle7oz","ItemPlasticWaterbottle8oz","ItemPlasticWaterbottle9oz"]} count _magazinesPlayer > 0;
|
||||
|
||||
|
||||
//Cook Meat
|
||||
if (_hasRawMeat && !a_player_cooking) then {
|
||||
|
||||
//Cook Meat
|
||||
if (_hasRawMeat && {!a_player_cooking}) then {
|
||||
if (s_player_cook < 0) then {
|
||||
s_player_cook = player addAction [localize "str_actions_self_05", "\z\addons\dayz_code\actions\cook.sqf",_cursorTarget, 3, true, true];
|
||||
};
|
||||
};
|
||||
};
|
||||
//Boil Water
|
||||
if (_hasunboiledwater && !a_player_boil) then {
|
||||
if (_hasunboiledwater && {!a_player_boil}) then {
|
||||
if (s_player_boil < 0) then {
|
||||
s_player_boil = player addAction [localize "str_actions_boilwater", "\z\addons\dayz_code\actions\boil.sqf",_cursorTarget, 3, true, true];
|
||||
};
|
||||
@@ -378,32 +377,32 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_boil = -1;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
if (_isAlive) then {
|
||||
_restrict = _typeOfCursorTarget in DZE_restrictRemoval;
|
||||
|
||||
//Allow player to remove objects with no ownership or access required
|
||||
if (!_restrict && (_isDestructable || _typeOfCursorTarget in DZE_isWreck || _typeOfCursorTarget in DZE_isWreckBuilding || _typeOfCursorTarget in DZE_isRemovable)) then {
|
||||
if (_hasToolbox && _hasCrowbar) then {
|
||||
if (!_restrict && {_isDestructable || {_typeOfCursorTarget in DZE_isWreck} || {_typeOfCursorTarget in DZE_isWreckBuilding} || {_typeOfCursorTarget in DZE_isRemovable}}) then {
|
||||
if (_hasToolbox && {_hasCrowbar}) then {
|
||||
_player_deleteBuild = true;
|
||||
};
|
||||
};
|
||||
//Allow player to remove objects only if they have proper ownership or access
|
||||
if (_restrict || _isModular || _isModularDoor || _isGenerator || _typeOfCursorTarget in DZE_isDestroyableStorage) then {
|
||||
if (_hasToolbox && _hasCrowbar) then {
|
||||
if (_restrict || {_isModular} || {_isModularDoor} || {_isGenerator} || {_typeOfCursorTarget in DZE_isDestroyableStorage}) then {
|
||||
if (_hasToolbox && {_hasCrowbar}) then {
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
if ((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3)) then {
|
||||
if ((_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3}) then {
|
||||
_player_deleteBuild = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
if (_isVehicle) then {
|
||||
if ((_characterID != "0") && {!_isMan}) then {
|
||||
_player_lockUnlock_crtl = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
if (_player_deleteBuild) then {
|
||||
if (s_player_deleteBuild < 0) then {
|
||||
s_player_deleteBuild = player addAction [format[localize "STR_EPOCH_REMOVE",_text], "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, false, true];
|
||||
@@ -443,14 +442,14 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
//other tents
|
||||
if (_istypeTent) then {
|
||||
_hasIgnitors = {_x in DayZ_Ignitors} count _itemsPlayer > 0;
|
||||
if ((_hasFuel20 or _hasFuel5 or _hasBarrel) && _hasIgnitors) then {
|
||||
if ((_hasFuel20 || {_hasFuel5} || {_hasBarrel}) && {_hasIgnitors}) then {
|
||||
if (s_player_destroytent < 0) then {
|
||||
s_player_destroytent = player addAction [localize "str_actions_self_destroytent", "\z\addons\dayz_code\actions\player_destroyTent.sqf",_cursorTarget, 0, false, true];
|
||||
};
|
||||
} else {
|
||||
player removeAction s_player_destroytent;
|
||||
s_player_destroytent = -1;
|
||||
};
|
||||
};
|
||||
if (_typeOfCursorTarget in ["IC_DomeTent","IC_Tent"]) then {
|
||||
if (s_player_packtentinfected < 0) then {
|
||||
s_player_packtentinfected = player addAction [localize "str_actions_self_07", "\z\addons\dayz_code\actions\tent_pack.sqf",_cursorTarget, 0, false, true];
|
||||
@@ -467,7 +466,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_sleep;
|
||||
s_player_sleep = -1;
|
||||
};
|
||||
|
||||
|
||||
//Study Body
|
||||
if (_cursorTarget getVariable["bodyName",""] != "") then {
|
||||
if (s_player_studybody < 0) then {
|
||||
@@ -477,7 +476,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_studybody;
|
||||
s_player_studybody = -1;
|
||||
};
|
||||
/*
|
||||
/*
|
||||
//Carbomb
|
||||
_hasCarBomb = "ItemCarBomb" in _magazinesPlayer;
|
||||
if (((_cursorTarget isKindOf "Car") || (_cursorTarget isKindOf "Air") || (_cursorTarget isKindOf "Motorcycle")) && _hasCarBomb) then {
|
||||
@@ -523,18 +522,18 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
//Only the owners can lock the gates
|
||||
_isLockableGate = _typeOfCursorTarget in ["WoodenGate_2","WoodenGate_3","WoodenGate_4","MetalGate_2","MetalGate_3","MetalGate_4"];
|
||||
_isUnlocked = _cursorTarget getVariable ["isOpen","0"] == "1";
|
||||
|
||||
|
||||
_isActionInProgress = _cursorTarget getVariable ["actionInProgress",false];
|
||||
|
||||
//Allow the gates to be opened when not locked by anyone
|
||||
_isOpen = ((_cursorTarget animationPhase "DoorL") == 1) || ((_cursorTarget animationPhase "DoorR") == 1);
|
||||
_isClosed = ((_cursorTarget animationPhase "DoorL") == 0) || ((_cursorTarget animationPhase "DoorR") == 0);
|
||||
|
||||
|
||||
//[["ownerArray",["PID"]]]
|
||||
_ownerArray = _cursorTarget getVariable ["ownerArray",["0"]];
|
||||
_ownerBuildLock = _cursorTarget getVariable ["BuildLock",false];
|
||||
_ownerBuildLock = _cursorTarget getVariable ["BuildLock",false];
|
||||
_ownerPID = (_ownerArray select 0);
|
||||
|
||||
|
||||
// open Gate
|
||||
if (_isGateOperational && _isClosed && _isUnlocked) then {
|
||||
if (s_player_openGate < 0) then {
|
||||
@@ -607,11 +606,11 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_breakinhouse;
|
||||
s_player_breakinhouse = -1;
|
||||
};*/
|
||||
if (_typeOfCursorTarget == "Plastic_Pole_EP1_DZ" && {speed player <= 1}) then {
|
||||
if ((_typeOfCursorTarget == "Plastic_Pole_EP1_DZ") && {speed player <= 1}) then {
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
_allowed = ((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3) or (_hasAccess select 4));
|
||||
_allowed = ((_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3} || {_hasAccess select 4});
|
||||
if (DZE_permanentPlot) then {
|
||||
if (s_player_plotManagement < 0 && _allowed) then {
|
||||
if (s_player_plotManagement < 0 && {_allowed}) then {
|
||||
s_player_plotManagement = player addAction [format["<t color='#b3e6ff'>%1</t>",localize "STR_EPOCH_ACTIONS_MANAGEPLOT"], "\z\addons\dayz_code\actions\plotManagement\initPlotManagement.sqf", [], 5, false];
|
||||
};
|
||||
} else {
|
||||
@@ -621,7 +620,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_maintain_area_preview = player addAction [format["<t color='#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTPREV"], "\z\addons\dayz_code\actions\maintain_area.sqf", "preview", 5, false];
|
||||
};
|
||||
};
|
||||
if (s_player_plot_boundary < 0 && (_allowed or (_hasAccess select 1))) then {
|
||||
if (s_player_plot_boundary < 0 && {_allowed || (_hasAccess select 1)}) then {
|
||||
s_player_plot_boundary = player addAction [localize "STR_EPOCH_PLOTMANAGEMENT_SHOW_BOUNDARY", "\z\addons\dayz_code\actions\plotManagement\plotToggleMarkers.sqf", "", 1, false];
|
||||
};
|
||||
} else {
|
||||
@@ -636,10 +635,10 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_plot_boundary;
|
||||
s_player_plot_boundary = -1;
|
||||
};
|
||||
|
||||
|
||||
if (DZE_HeliLift) then {
|
||||
_liftHeli = objNull;
|
||||
_found = false;
|
||||
_found = false;
|
||||
_allowTow = false;
|
||||
if ((count (crew _cursorTarget)) == 0) then {
|
||||
{
|
||||
@@ -676,8 +675,8 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_heli_lift = -1;
|
||||
};
|
||||
};
|
||||
|
||||
// Allow Owner to lock and unlock vehicle
|
||||
|
||||
// Allow Owner to lock and unlock vehicle
|
||||
if (_player_lockUnlock_crtl) then {
|
||||
if (s_player_lockUnlock_crtl < 0) then {
|
||||
_totalKeys = call epoch_tempKeys;
|
||||
@@ -686,7 +685,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
_hasKey = _characterID in _temp_keys;
|
||||
_oldOwner = (_characterID == _uid);
|
||||
if (_isLocked) then {
|
||||
if (_hasKey || _oldOwner) then {
|
||||
if (_hasKey || {_oldOwner}) then {
|
||||
_unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\unlock_veh.sqf",[_cursorTarget,(_temp_keys_names select (_temp_keys find _characterID))], 2, true, true];
|
||||
s_player_lockunlock set [count s_player_lockunlock,_unlock];
|
||||
s_player_lockUnlock_crtl = 1;
|
||||
@@ -700,18 +699,27 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_lockUnlock_crtl = 1;
|
||||
};
|
||||
} else {
|
||||
if (_hasKey || _oldOwner) then {
|
||||
if (_hasKey || {_oldOwner}) then {
|
||||
_lock = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\lock_veh.sqf",_cursorTarget, 1, true, true];
|
||||
s_player_lockunlock set [count s_player_lockunlock,_lock];
|
||||
s_player_lockUnlock_crtl = 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} else {
|
||||
{player removeAction _x} count s_player_lockunlock;s_player_lockunlock = [];
|
||||
s_player_lockUnlock_crtl = -1;
|
||||
};
|
||||
|
||||
|
||||
if (DZE_Hide_Body && {_isMan} && {!_isAlive}) then {
|
||||
if (s_player_hide_body < 0) then {
|
||||
s_player_hide_body = player addAction [localize "str_action_hide_body", "\z\addons\dayz_code\actions\hide_body.sqf",_cursorTarget, 1, true, true];
|
||||
};
|
||||
} else {
|
||||
player removeAction s_player_hide_body;
|
||||
s_player_hide_body = -1;
|
||||
};
|
||||
|
||||
// gear access on surrendered player
|
||||
if (isPlayer _cursorTarget && {_isAlive} && {_cursorTarget getVariable ["DZE_Surrendered",false]}) then {
|
||||
if (s_player_SurrenderedGear < 0) then {
|
||||
@@ -723,10 +731,10 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
|
||||
// Allow manage door
|
||||
if (DZE_doorManagement && (_typeOfCursorTarget in DZE_DoorsLocked)) then {
|
||||
if (DZE_doorManagement && {_typeOfCursorTarget in DZE_DoorsLocked}) then {
|
||||
// Check player access
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
if (s_player_manageDoor < 0 && ((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3) or (_hasAccess select 4) or (_hasAccess select 5) or (_hasAccess select 6))) then {
|
||||
if (s_player_manageDoor < 0 && {(_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3} || {_hasAccess select 4} || {_hasAccess select 5} || {_hasAccess select 6}}) then {
|
||||
s_player_manageDoor = player addAction [format["<t color='#b3e6ff'>%1</t>", localize "STR_EPOCH_ACTIONS_MANAGEDOOR"], "\z\addons\dayz_code\actions\doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false];
|
||||
};
|
||||
} else {
|
||||
@@ -738,7 +746,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
if ((_typeOfCursorTarget in DZE_LockableStorage) && {_characterID != "0"} && {_isClose} && {!keypadCancel}) then {
|
||||
if (s_player_unlockvault < 0) then {
|
||||
if (_typeOfCursorTarget in DZE_LockedStorage) then {
|
||||
if (_characterID == dayz_combination || _ownerID == _uid) then {
|
||||
if ((_characterID == dayz_combination) || {_ownerID == _uid}) then {
|
||||
_combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true];
|
||||
s_player_combi set [count s_player_combi,_combi];
|
||||
} else {
|
||||
@@ -747,7 +755,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
s_player_unlockvault = 1;
|
||||
} else {
|
||||
if (_characterID != dayz_combination && _ownerID != _uid) then {
|
||||
if ((_characterID != dayz_combination) && {_ownerID != _uid}) then {
|
||||
_combi = player addAction [localize "STR_EPOCH_ACTIONS_RECOMBO", "\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;
|
||||
@@ -762,11 +770,11 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
//Allow owner to pack vault
|
||||
if ((_typeOfCursorTarget in DZE_UnLockedStorage) && {_characterID != "0"} && {_isClose} && {!keypadCancel}) then {
|
||||
if (s_player_lockvault < 0) then {
|
||||
if (_characterID == dayz_combination || _ownerID == _uid) then {
|
||||
if ((_characterID == dayz_combination) || {_ownerID == _uid}) then {
|
||||
s_player_lockvault = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true];
|
||||
};
|
||||
};
|
||||
if (s_player_packvault < 0 && (_characterID == dayz_combination || _ownerID == _uid)) then {
|
||||
if (s_player_packvault < 0 && {(_characterID == dayz_combination) || (_ownerID == _uid)}) then {
|
||||
s_player_packvault = player addAction [format["<t color='#ff0000'>%1</t>",(format[localize "STR_EPOCH_ACTIONS_PACK",_text])], "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true];
|
||||
};
|
||||
} else {
|
||||
@@ -785,13 +793,13 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_information;
|
||||
s_player_information = -1;
|
||||
};
|
||||
|
||||
|
||||
//Fuel Pump
|
||||
if (_typeOfCursorTarget in dayz_fuelpumparray) then {
|
||||
if (s_player_fuelauto < 0) then {
|
||||
if (s_player_fuelauto < 0) then {
|
||||
// check if Generator_DZ is running within 30 meters
|
||||
_findNearestGen = {((alive _x) && (_x getVariable ["GeneratorRunning",false]))} count (([player] call FNC_getPos) nearObjects ["Generator_DZ",30]);
|
||||
|
||||
|
||||
// show that pump needs power if no generator nearby.
|
||||
if (_findNearestGen > 0) then {
|
||||
s_player_fuelauto = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",objNull, 0, false, true];
|
||||
@@ -805,7 +813,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
|
||||
//Fuel Pump on truck
|
||||
if (_typeOfCursorTarget in DZE_fueltruckarray && _isAlive) then {
|
||||
if (_typeOfCursorTarget in DZE_fueltruckarray && {_isAlive}) then {
|
||||
if (s_player_fuelauto2 < 0) then {
|
||||
// show that fuel truck pump needs power.
|
||||
if (isEngineOn _cursorTarget) then {
|
||||
@@ -820,7 +828,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
|
||||
// inplace upgrade tool
|
||||
if ((_cursorTarget isKindOf "ModularItems") || (_cursorTarget isKindOf "Land_DZE_WoodDoor_Base") || (_cursorTarget isKindOf "CinderWallDoor_DZ_Base")) then {
|
||||
if ((_cursorTarget isKindOf "ModularItems") || {_cursorTarget isKindOf "Land_DZE_WoodDoor_Base"} || {_cursorTarget isKindOf "CinderWallDoor_DZ_Base"}) then {
|
||||
if ((s_player_lastTarget select 0) != _cursorTarget) then {
|
||||
if (s_player_upgrade_build > 0) then {
|
||||
player removeAction s_player_upgrade_build;
|
||||
@@ -830,7 +838,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
if (s_player_upgrade_build < 0) then {
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
_upgrade = getArray (configFile >> "CfgVehicles" >> (typeOf _cursorTarget) >> "upgradeBuilding");
|
||||
if (((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3)) && (count _upgrade) > 0) then {
|
||||
if (((_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3}) && {(count _upgrade) > 0}) then {
|
||||
s_player_lastTarget set [0,_cursorTarget];
|
||||
s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_UPGRADE",_text], "\z\addons\dayz_code\actions\player_upgrade.sqf",_cursorTarget, -1, false, true];
|
||||
};
|
||||
@@ -839,18 +847,18 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_upgrade_build;
|
||||
s_player_upgrade_build = -1;
|
||||
};
|
||||
|
||||
|
||||
// downgrade system
|
||||
if (DZE_Lock_Door == _characterID && {!keypadCancel} && {_cursorTarget isKindOf "Land_DZE_WoodDoorLocked_Base" || _cursorTarget isKindOf "CinderWallDoorLocked_DZ_Base"}) then {
|
||||
if ((s_player_lastTarget select 1) != _cursorTarget) then {
|
||||
if (s_player_downgrade_build > 0) then {
|
||||
if (s_player_downgrade_build > 0) then {
|
||||
player removeAction s_player_downgrade_build;
|
||||
s_player_downgrade_build = -1;
|
||||
};
|
||||
};
|
||||
if (s_player_downgrade_build < 0) then {
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
if ((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3)) then {
|
||||
if ((_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3}) then {
|
||||
s_player_lastTarget set [1,_cursorTarget];
|
||||
s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "\z\addons\dayz_code\actions\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true];
|
||||
};
|
||||
@@ -861,7 +869,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
|
||||
// inplace maintenance tool
|
||||
if ((damage _cursorTarget >= DZE_DamageBeforeMaint) && {_cursorTarget isKindOf "ModularItems" || _cursorTarget isKindOf "DZE_Housebase" || _typeOfCursorTarget == "LightPole_DZ"}) then {
|
||||
if ((damage _cursorTarget >= DZE_DamageBeforeMaint) && {_cursorTarget isKindOf "ModularItems" || {_cursorTarget isKindOf "DZE_Housebase"} || {_typeOfCursorTarget == "LightPole_DZ"}}) then {
|
||||
if ((s_player_lastTarget select 2) != _cursorTarget) then {
|
||||
if (s_player_maint_build > 0) then {
|
||||
player removeAction s_player_maint_build;
|
||||
@@ -870,7 +878,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
};
|
||||
if (s_player_maint_build < 0) then {
|
||||
_hasAccess = [player, _cursorTarget] call FNC_check_access;
|
||||
if ((_hasAccess select 0) or (_hasAccess select 2) or (_hasAccess select 3)) then {
|
||||
if ((_hasAccess select 0) || {_hasAccess select 2} || {_hasAccess select 3}) then {
|
||||
_text2 = _text + " (" + str(round ((damage _cursorTarget) * 100)) + "% damaged)";
|
||||
s_player_lastTarget set [2,_cursorTarget];
|
||||
s_player_maint_build = player addAction [format["%1 %2",localize "STR_EPOCH_ACTIONS_MAINTAIN",_text2], "\z\addons\dayz_code\actions\player_buildingMaint.sqf",_cursorTarget, -2, false, true];
|
||||
@@ -883,16 +891,16 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
|
||||
//Start Generator
|
||||
if (_isGenerator) then {
|
||||
if (s_player_fillgen < 0) then {
|
||||
// check if not running
|
||||
if (s_player_fillgen < 0) then {
|
||||
// check if not running
|
||||
if (_cursorTarget getVariable ["GeneratorRunning", false]) then {
|
||||
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR1", "\z\addons\dayz_code\actions\stopGenerator.sqf",_cursorTarget, 0, false, true];
|
||||
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR1", "\z\addons\dayz_code\actions\stopGenerator.sqf",_cursorTarget, 0, false, true];
|
||||
} else {
|
||||
// check if not filled and player has jerry.
|
||||
if (_cursorTarget getVariable ["GeneratorFilled", false]) then {
|
||||
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR2", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true];
|
||||
} else {
|
||||
if (_hasFuel20 or _hasFuel5 or _hasBarrel) then {
|
||||
if (_hasFuel20 || {_hasFuel5} || {_hasBarrel}) then {
|
||||
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR3", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true];
|
||||
};
|
||||
};
|
||||
@@ -908,9 +916,9 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
if(_typeOfCursorTarget == "TOW_DZE") then {
|
||||
if (s_player_towing < 0) then {
|
||||
if(!(_cursorTarget getVariable ["DZEinTow", false])) then {
|
||||
s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true];
|
||||
s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true];
|
||||
} else {
|
||||
s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true];
|
||||
s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true];
|
||||
};
|
||||
};
|
||||
} else {
|
||||
@@ -923,7 +931,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
if (_isMan && {!(isPlayer _cursorTarget)} && {_typeOfCursorTarget in serverTraders}) then {
|
||||
if (s_player_parts_crtl < 0) then {
|
||||
_humanity = player getVariable ["humanity",0];
|
||||
_traderMenu = call compile format["menu_%1;",_typeOfCursorTarget];
|
||||
_traderMenu = call compile format["menu_%1;",_typeOfCursorTarget];
|
||||
_low_high = localize "STR_EPOCH_ACTIONS_HUMANITY_LOW";
|
||||
_humanity_logic = false;
|
||||
if ((_traderMenu select 2) == "friendly") then {
|
||||
@@ -943,7 +951,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
// Static Menu
|
||||
{
|
||||
_buy = player addAction [format["Trade %1 %2 for %3 %4",(_x select 3),(_x select 5),(_x select 2),(_x select 6)], "\z\addons\dayz_code\actions\trade_items_wo_db.sqf",[(_x select 0),(_x select 1),(_x select 2),(_x select 3),(_x select 4),(_x select 5),(_x select 6)], (_x select 7), true, true];
|
||||
s_player_parts set [count s_player_parts,_buy];
|
||||
s_player_parts set [count s_player_parts,_buy];
|
||||
} count (_traderMenu select 1);
|
||||
if (DZE_ConfigTrader) then {
|
||||
_buyV = player addAction [localize "STR_EPOCH_PLAYER_289", "\z\addons\dayz_code\actions\AdvancedTrading\init.sqf",(_traderMenu select 0), 999, true, false];
|
||||
@@ -954,16 +962,17 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_parts set [count s_player_parts,_buy];
|
||||
};
|
||||
};
|
||||
s_player_parts_crtl = 1;
|
||||
s_player_parts_crtl = 1;
|
||||
};
|
||||
} else {
|
||||
{player removeAction _x} count s_player_parts;s_player_parts = [];
|
||||
s_player_parts_crtl = -1;
|
||||
};
|
||||
|
||||
|
||||
//Dog
|
||||
if (dayz_tameDogs) then {
|
||||
//Dog
|
||||
_hasRawMeat = {_x in Dayz_meatraw} count _magazinesPlayer > 0;
|
||||
|
||||
if (_isDog && {_hasRawMeat} && {_isAlive} && {_ownerID == "0"} && {player getVariable ["dogID",0] == 0}) then {
|
||||
if (s_player_tamedog < 0) then {
|
||||
s_player_tamedog = player addAction [localize "str_actions_tamedog", "\z\addons\dayz_code\actions\dog\tame_dog.sqf", _cursorTarget, 1, false, true];
|
||||
@@ -973,10 +982,12 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_tamedog = -1;
|
||||
};
|
||||
if (_isDog && {_ownerID == _id} && {_isAlive}) then {
|
||||
if (s_player_feeddog < 0 && _hasRawMeat) then {
|
||||
_hasbottleitem = ({_x in ["ItemWaterBottle","ItemWaterBottleInfected","ItemWaterBottleSafe","ItemWaterBottleBoiled","ItemPlasticWaterBottle","ItemPlasticWaterBottleInfected","ItemPlasticWaterBottleSafe","ItemPlasticWaterBottleBoiled"]} count _magazinesPlayer) > 0;
|
||||
|
||||
if (s_player_feeddog < 0 && {_hasRawMeat}) then {
|
||||
s_player_feeddog = player addAction [localize "str_actions_feeddog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,0], 0, false, true];
|
||||
};
|
||||
if (s_player_waterdog < 0 && _hasbottleitem) then {
|
||||
if (s_player_waterdog < 0 && {_hasbottleitem}) then {
|
||||
s_player_waterdog = player addAction [localize "str_actions_waterdog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,1], 0, false, true];
|
||||
};
|
||||
if (s_player_staydog < 0) then {
|
||||
@@ -992,7 +1003,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
if (s_player_warndog < 0) then {
|
||||
_warn = _dogHandle getFSMVariable "_watchDog";
|
||||
if (_warn) then { _text = localize "str_epoch_player_247"; _warn = false; } else { _text = localize "str_epoch_player_248"; _warn = true; };
|
||||
s_player_warndog = player addAction [format[localize "str_actions_warndog",_text],"\z\addons\dayz_code\actions\dog\warn.sqf",[_dogHandle, _warn], 2, false, true];
|
||||
s_player_warndog = player addAction [format[localize "str_actions_warndog",_text],"\z\addons\dayz_code\actions\dog\warn.sqf",[_dogHandle, _warn], 2, false, true];
|
||||
};
|
||||
if (s_player_followdog < 0) then {
|
||||
s_player_followdog = player addAction [localize "str_actions_followdog","\z\addons\dayz_code\actions\dog\follow.sqf",[_dogHandle,true], 6, false, true];
|
||||
@@ -1078,7 +1089,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_BuildUnLock = -1;
|
||||
player removeAction s_player_BuildLock;
|
||||
s_player_BuildLock = -1;*/
|
||||
{player removeAction _x} count s_player_combi;s_player_combi = [];
|
||||
{player removeAction _x} count s_player_combi;s_player_combi = [];
|
||||
s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull];
|
||||
{player removeAction _x} count s_player_parts;s_player_parts = [];
|
||||
s_player_parts_crtl = -1;
|
||||
@@ -1091,7 +1102,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
player removeAction s_player_maintain_area_force;
|
||||
s_player_maintain_area_force = -1;
|
||||
player removeAction s_player_maintain_area_preview;
|
||||
s_player_maintain_area_preview = -1;
|
||||
s_player_maintain_area_preview = -1;
|
||||
player removeAction s_player_tamedog;
|
||||
s_player_tamedog = -1;
|
||||
player removeAction s_player_feeddog;
|
||||
@@ -1132,6 +1143,8 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
|
||||
s_player_fuelauto2 = -1;
|
||||
player removeAction s_player_manageDoor;
|
||||
s_player_manageDoor = -1;
|
||||
player removeAction s_player_hide_body;
|
||||
s_player_hide_body = -1;
|
||||
};
|
||||
|
||||
//Dog actions on player self
|
||||
@@ -1139,7 +1152,7 @@ if (_dogHandle > 0) then {
|
||||
_dog = _dogHandle getFSMVariable "_dog";
|
||||
if (isNil "_dog") exitWith {};
|
||||
if (isNil "_ownerID") then {_ownerID = "0"};
|
||||
if (_canDo && !_inVehicle && alive _dog && !(_ownerID in [_myCharID,_uid])) then {
|
||||
if (_canDo && {!_inVehicle} && {alive _dog} && {!(_ownerID in [_myCharID,_uid])}) 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];
|
||||
};
|
||||
@@ -1154,7 +1167,7 @@ if (_dogHandle > 0) then {
|
||||
};
|
||||
};
|
||||
} else {
|
||||
player removeAction s_player_movedog;
|
||||
player removeAction s_player_movedog;
|
||||
s_player_movedog = -1;
|
||||
player removeAction s_player_speeddog;
|
||||
s_player_speeddog = -1;
|
||||
|
||||
@@ -90,8 +90,10 @@ if (player == vehicle player) then {
|
||||
"dynamicBlur" ppEffectAdjust [0]; "dynamicBlur" ppEffectCommit 5;
|
||||
"colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1], [1, 1, 1, 1]];"colorCorrections" ppEffectCommit 5;
|
||||
|
||||
//Prevent firing while weapon is still shown on back. AmovPpneMstpSnonWnonDnon_healed has disableWeapons=0 in config (should be =1)
|
||||
waitUntil {uiSleep 1; !(animationState player in ["ainjppnemstpsnonwnondnon_rolltofront","amovppnemstpsnonwnondnon_healed","amovppnemstpsnonwnondnon"])};
|
||||
if ({getNumber (configFile >> "CfgWeapons" >> _x >> "type") in [1,2]} count (weapons player) > 0) then {
|
||||
//Prevent firing while weapon is still shown on back or holstered. AmovPpneMstpSnonWnonDnon_healed has disableWeapons=0 in config (should be 1)
|
||||
waitUntil {uiSleep 1; !(animationState player in ["ainjppnemstpsnonwnondnon_rolltofront","amovppnemstpsnonwnondnon_healed","amovppnemstpsnonwnondnon"])};
|
||||
};
|
||||
|
||||
//once more to be safe
|
||||
disableUserInput false; disableUserInput false;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
private["_unit","_hp","_selection","_strH","_dam"];
|
||||
_unit = _this select 0;
|
||||
_hp = _this select 1;
|
||||
|
||||
_selection = getText (configFile >> "CfgVehicles" >> (typeOf _unit) >> "HitPoints" >> _hp >> "name");
|
||||
_dam = _unit getHit _selection;
|
||||
|
||||
[_dam, _selection];
|
||||
[_dam, _selection];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
private ["_type","_local","_unit"];
|
||||
private ["_chance","_dis","_isWoman","_local","_num","_rnd","_sound","_type","_unit"];
|
||||
|
||||
_unit = _this select 0;
|
||||
_type = _this select 1;
|
||||
|
||||
@@ -4,13 +4,14 @@
|
||||
return all player magazines with ammo count
|
||||
*/
|
||||
|
||||
private ["_dialog","_created","_magazineArray"];
|
||||
private ["_control","_created","_dialog","_i","_item","_magazineArray","_max","_val"];
|
||||
|
||||
disableSerialization;
|
||||
|
||||
_dialog = findDisplay 106;
|
||||
_created = false;
|
||||
|
||||
if ( isNull _dialog ) then {
|
||||
if (isNull _dialog) then {
|
||||
//Load Minimal gearMenu
|
||||
createGearDialog [player, "RscDisplayGearMinimal"];
|
||||
_dialog = findDisplay 106;
|
||||
@@ -19,8 +20,7 @@ if ( isNull _dialog ) then {
|
||||
|
||||
_magazineArray = [];
|
||||
|
||||
for "_i" from 109 to 120 do
|
||||
{
|
||||
for "_i" from 109 to 120 do {
|
||||
_control = _dialog displayCtrl _i;
|
||||
_item = gearSlotData _control;
|
||||
_val = gearSlotAmmoCount _control;
|
||||
@@ -34,8 +34,7 @@ for "_i" from 109 to 120 do
|
||||
};
|
||||
};
|
||||
|
||||
for "_i" from 122 to 129 do
|
||||
{
|
||||
for "_i" from 122 to 129 do {
|
||||
_control = _dialog displayCtrl _i;
|
||||
_item = gearSlotData _control;
|
||||
_val = gearSlotAmmoCount _control;
|
||||
@@ -49,8 +48,8 @@ for "_i" from 122 to 129 do
|
||||
};
|
||||
};
|
||||
|
||||
if ( _created ) then {
|
||||
if (_created) then {
|
||||
closeDialog 0;
|
||||
};
|
||||
|
||||
_magazineArray
|
||||
_magazineArray
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
return all player magazines with ammo count
|
||||
Modified to save backpack magazine count by icomrade - Base for fix by Ziellos2k
|
||||
*/
|
||||
private ["_control","_item","_val","_max","_count","_magazineArray","_dialog"];
|
||||
private ["_control","_count","_dialog","_i","_item","_magazineArray","_max","_val"];
|
||||
|
||||
disableUserInput true;
|
||||
disableUserInput true;
|
||||
disableSerialization;
|
||||
@@ -49,7 +50,7 @@ if ((typeOf (unitBackPack player)) != "") then {
|
||||
ctrlActivate (_dialog displayCtrl 157);
|
||||
if (gear_done) then {
|
||||
waitUntil {ctrlShown (_dialog displayCtrl 159)};
|
||||
sleep 0.001;
|
||||
uiSleep 0.001;
|
||||
};
|
||||
|
||||
for "_i" from 5000 to (5000 + _count) do {
|
||||
@@ -68,6 +69,6 @@ if ((typeOf (unitBackPack player)) != "") then {
|
||||
};
|
||||
|
||||
(findDisplay 106) closeDisplay 0;
|
||||
if (gear_done) then {sleep 0.001;};
|
||||
if (gear_done) then {uiSleep 0.001;};
|
||||
|
||||
_magazineArray;
|
||||
_magazineArray
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
private ["_alreadyPacking","_backpacks","_bag","_campItems","_dir","_holder","_magazines","_obj","_objectID","_objectUID","_ownerID","_packobj","_playerNear","_pos","_weapons","_finished"];
|
||||
private ["_alreadyPacking","_backpacks","_bag","_campItems","_dir","_holder","_magazines","_obj","_objectID","_objectUID","_ownerID","_packobj","_playerNear","_pos","_weapons","_finished","_posPlayer"];
|
||||
|
||||
_obj = _this;
|
||||
_ownerID = _obj getVariable["CharacterID","0"];
|
||||
@@ -42,13 +42,21 @@ if (_ownerID in [dayz_characterID,dayz_playerUID] or typeOf _obj in _campItems)
|
||||
if (isNull _obj) exitWith {};
|
||||
if (!_finished) exitWith {_obj setVariable["packing",0,true];};
|
||||
|
||||
_posPlayer = getPosATL player;
|
||||
_pos set [2,_posPlayer select 2];
|
||||
|
||||
if (_pos select 2 < 0) then {
|
||||
_pos set [2,0];
|
||||
};
|
||||
|
||||
//place tent (local)
|
||||
_bag = createVehicle [_packobj, _pos, [], 0, "CAN_COLLIDE"];
|
||||
_bag = _packobj createVehicle [0,0,0];
|
||||
_bag setDir _dir;
|
||||
player reveal _bag;
|
||||
|
||||
_holder = createVehicle ["WeaponHolder", _pos, [], 0, "CAN_COLLIDE"];
|
||||
_bag setPosATL _pos;
|
||||
|
||||
_holder = "WeaponHolder" createVehicle [0,0,0];
|
||||
_holder setPosATL _pos;
|
||||
|
||||
_weapons = getWeaponCargo _obj;
|
||||
_magazines = getMagazineCargo _obj;
|
||||
_backpacks = getBackpackCargo _obj;
|
||||
@@ -59,6 +67,8 @@ if (_ownerID in [dayz_characterID,dayz_playerUID] or typeOf _obj in _campItems)
|
||||
|
||||
[_weapons,_magazines,_backpacks,_holder] call fn_addCargo;
|
||||
|
||||
player reveal _holder;
|
||||
|
||||
localize "str_success_tent_pack" call dayz_rollingMessages;
|
||||
} else {
|
||||
localize "str_fail_tent_pack" call dayz_rollingMessages;
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
|
||||
/*
|
||||
[_obj] spawn player_packVault;
|
||||
*/
|
||||
private ["_obj","_ownerID","_objectID","_objectUID","_location1","_location2","_packedClass","_text","_playerNear","_finished"];
|
||||
|
||||
if (dayz_actionInProgress) exitWith {localize "str_player_actionslimit" call dayz_rollingMessages;};
|
||||
dayz_actionInProgress = true;
|
||||
private ["_obj","_ownerID","_objectID","_objectUID","_location1","_location2","_packedClass","_text","_playerNear","_finished","_ComboMatch"];
|
||||
|
||||
_obj = _this;
|
||||
_packedClass = getText (configFile >> "CfgVehicles" >> (typeOf _obj) >> "packedClass");
|
||||
@@ -31,11 +32,11 @@ if (_objectID == "0" && _objectUID == "0") exitWith {dayz_actionInProgress = fal
|
||||
if (!_ComboMatch && (_ownerID != dayz_playerUID)) exitWith { dayz_actionInProgress = false; s_player_packvault = -1; format[localize "str_epoch_player_119",_text] call dayz_rollingMessages;};
|
||||
|
||||
format[localize "str_epoch_player_121",_text] call dayz_rollingMessages;
|
||||
uiSleep 1;
|
||||
uiSleep 1;
|
||||
_location1 = getPosATL player;
|
||||
uiSleep 5;
|
||||
_location2 = getPosATL player;
|
||||
|
||||
|
||||
if(_location1 distance _location2 > 0.1) exitWith {
|
||||
format[localize "str_epoch_player_122",_text] call dayz_rollingMessages;
|
||||
s_player_packvault = -1;
|
||||
@@ -44,22 +45,22 @@ if(_location1 distance _location2 > 0.1) exitWith {
|
||||
|
||||
if (!isNull _obj && alive _obj) then {
|
||||
[player,"tentpack",0,false] call dayz_zombieSpeak;
|
||||
|
||||
|
||||
_finished = ["Medic",1] call fn_loopAction;
|
||||
if (isNull _obj or !_finished) exitWith {};
|
||||
|
||||
|
||||
["Working",0,[3,2,4,0]] call dayz_NutritionSystem;
|
||||
|
||||
|
||||
(findDisplay 106) closeDisplay 0; // Close gear
|
||||
dze_waiting = nil;
|
||||
|
||||
|
||||
[_packedClass,objNull] call fn_waitForObject;
|
||||
|
||||
|
||||
PVDZE_handleSafeGear = [player,_obj,2];
|
||||
publicVariableServer "PVDZE_handleSafeGear";
|
||||
publicVariableServer "PVDZE_handleSafeGear";
|
||||
//wait for response from server to verify pack was logged and gear added before proceeding
|
||||
waitUntil {!isNil "dze_waiting"};
|
||||
|
||||
|
||||
format[localize "str_epoch_player_123",_text] call dayz_rollingMessages;
|
||||
};
|
||||
s_player_packvault = -1;
|
||||
|
||||
@@ -79,6 +79,8 @@ if (_isArray) then {
|
||||
_newUnit setDir _dir;
|
||||
{_newUnit removeMagazine _x;} count magazines _newUnit;
|
||||
removeAllWeapons _newUnit;
|
||||
removeAllItems _newUnit;
|
||||
removebackpack _newUnit;
|
||||
|
||||
//Equip New Character
|
||||
{
|
||||
|
||||
@@ -86,6 +86,7 @@ class CfgAddons
|
||||
"redryder",
|
||||
"Anzio_20",
|
||||
"dayz_epoch_b",
|
||||
"dayz_epoch_c",
|
||||
"CfgVehicles"
|
||||
};
|
||||
};
|
||||
|
||||
@@ -34,6 +34,7 @@ DZE_DisabledChannels = [(localize "str_channel_side"),(localize "str_channel_glo
|
||||
DZE_NutritionDivisor = [1, 1, 1, 1]; //array of DIVISORS that regulate the rate of [calories, thirst, hunger, temperature] use when "working" (keep in mind that temperature raises with actions) - min values 0.1 - Larger values slow the effect, smaller values accelerate it
|
||||
DZE_ZombieSpeed = [0,0]; //Default agro speed is 6 per zombie config, set array elements 0 and 1 the same for non-variable speed, set to 0 to disable. array format = [min, max]; Ex: [2, 6]; results in a range of speed between 2 and 6 (2 is the old DZE_slowZombies hard-coded speed)
|
||||
DZE_lockablesHarderPenalty = true; // Enforce an exponential wait on attempts between unlocking a safe/lockbox from a failed code.
|
||||
DZE_Hide_Body = true; //Enable hide dead bodies. Hiding a dead body removes the corpse marker from the map too. Default = true
|
||||
|
||||
// SafeZone
|
||||
DZE_SafeZoneZombieLoot = false; // Enable spawning of Zombies and loot in positions listed in DZE_SafeZonePosArray?
|
||||
|
||||
@@ -41,7 +41,7 @@ feature.
|
||||
* [Sharkiller](https://github.com/Sharkiller) (Spanish Tranlations)
|
||||
* [Defwen](https://github.com/Defwen) (Czech Translations)
|
||||
* [[VB]AWOL](https://github.com/vbawol)
|
||||
* [Paul Tomany](https://github.com/Sequisha)
|
||||
* [Sequisha](https://github.com/Sequisha)
|
||||
* [M1lkM8n](https://github.com/M1lkm8n)
|
||||
* [JST](https://github.com/Cybersam248)
|
||||
* [NonovUrbizniz](https://github.com/NonovUrbizniz)
|
||||
|
||||
@@ -7,57 +7,205 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
@version 1.00
|
||||
@date 20101006
|
||||
*****************************************************************************/
|
||||
class ItemCanteen
|
||||
{
|
||||
weight = 0.25;
|
||||
};
|
||||
class ItemCanteenInfected
|
||||
{
|
||||
weight = 0.25;
|
||||
};
|
||||
class ItemCanteenSafe
|
||||
{
|
||||
weight = 0.25;
|
||||
};
|
||||
class ItemCanteenBoiled
|
||||
{
|
||||
weight = 0.25;
|
||||
};
|
||||
class ItemCanteenHerbal
|
||||
{
|
||||
weight = 0.25;
|
||||
};
|
||||
class ItemCanteenEmpty
|
||||
{
|
||||
weight = 0.05;
|
||||
};
|
||||
class ItemWaterbottle
|
||||
{
|
||||
weight = 0.25;
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemWaterbottleBoiled
|
||||
{
|
||||
weight = 0.25;
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemWaterBottleInfected
|
||||
{
|
||||
weight = 0.25;
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemWaterBottleSafe
|
||||
{
|
||||
weight = 0.25;
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemWaterBottleHerbal
|
||||
{
|
||||
weight = 0.25;
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemWaterbottleUnfilled
|
||||
class ItemWaterBottleUnfilled
|
||||
{
|
||||
weight = 0.05;
|
||||
weight = 0.02;
|
||||
};
|
||||
class ItemWaterBottleDmg
|
||||
{
|
||||
weight = 0.05;
|
||||
weight = 0.02;
|
||||
};
|
||||
class ItemWaterbottle1oz
|
||||
{
|
||||
weight = 0.04;
|
||||
};
|
||||
class ItemWaterbottle2oz
|
||||
{
|
||||
weight = 0.06;
|
||||
};
|
||||
class ItemWaterbottle3oz
|
||||
{
|
||||
weight = 0.08;
|
||||
};
|
||||
class ItemWaterbottle4oz
|
||||
{
|
||||
weight = 0.1;
|
||||
};
|
||||
class ItemWaterbottle5oz
|
||||
{
|
||||
weight = 0.12;
|
||||
};
|
||||
class ItemWaterbottle6oz
|
||||
{
|
||||
weight = 0.14;
|
||||
};
|
||||
class ItemWaterbottle7oz
|
||||
{
|
||||
weight = 0.16;
|
||||
};
|
||||
class ItemWaterbottle8oz
|
||||
{
|
||||
weight = 0.17;
|
||||
};
|
||||
class ItemWaterbottle9oz
|
||||
{
|
||||
weight = 0.2;
|
||||
};
|
||||
class ItemWaterbottle1ozBoiled
|
||||
{
|
||||
weight = 0.04;
|
||||
};
|
||||
class ItemWaterbottle2ozBoiled
|
||||
{
|
||||
weight = 0.06;
|
||||
};
|
||||
class ItemWaterbottle3ozBoiled
|
||||
{
|
||||
weight = 0.08;
|
||||
};
|
||||
class ItemWaterbottle4ozBoiled
|
||||
{
|
||||
weight = 0.1;
|
||||
};
|
||||
class ItemWaterbottle5ozBoiled
|
||||
{
|
||||
weight = 0.12;
|
||||
};
|
||||
class ItemWaterbottle6ozBoiled
|
||||
{
|
||||
weight = 0.14;
|
||||
};
|
||||
class ItemWaterbottle7ozBoiled
|
||||
{
|
||||
weight = 0.16;
|
||||
};
|
||||
class ItemWaterbottle8ozBoiled
|
||||
{
|
||||
weight = 0.17;
|
||||
};
|
||||
class ItemWaterbottle9ozBoiled
|
||||
{
|
||||
weight = 0.2;
|
||||
};
|
||||
class ItemPlasticWaterBottle
|
||||
{
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemPlasticWaterBottleBoiled
|
||||
{
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemPlasticWaterBottleInfected
|
||||
{
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemPlasticWaterBottleSafe
|
||||
{
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemPlasticWaterBottleHerbal
|
||||
{
|
||||
weight = 0.22;
|
||||
};
|
||||
class ItemPlasticWaterbottleUnfilled
|
||||
{
|
||||
weight = 0.02;
|
||||
};
|
||||
class ItemPlasticWaterbottleDmg
|
||||
{
|
||||
weight = 0.02;
|
||||
};
|
||||
class ItemPlasticWaterbottle1oz
|
||||
{
|
||||
weight = 0.04;
|
||||
};
|
||||
class ItemPlasticWaterbottle2oz
|
||||
{
|
||||
weight = 0.06;
|
||||
};
|
||||
class ItemPlasticWaterbottle3oz
|
||||
{
|
||||
weight = 0.08;
|
||||
};
|
||||
class ItemPlasticWaterbottle4oz
|
||||
{
|
||||
weight = 0.1;
|
||||
};
|
||||
class ItemPlasticWaterbottle5oz
|
||||
{
|
||||
weight = 0.12;
|
||||
};
|
||||
class ItemPlasticWaterbottle6oz
|
||||
{
|
||||
weight = 0.14;
|
||||
};
|
||||
class ItemPlasticWaterbottle7oz
|
||||
{
|
||||
weight = 0.16;
|
||||
};
|
||||
class ItemPlasticWaterbottle8oz
|
||||
{
|
||||
weight = 0.17;
|
||||
};
|
||||
class ItemPlasticWaterbottle9oz
|
||||
{
|
||||
weight = 0.2;
|
||||
};
|
||||
class ItemPlasticWaterbottle1ozBoiled
|
||||
{
|
||||
weight = 0.04;
|
||||
};
|
||||
class ItemPlasticWaterbottle2ozBoiled
|
||||
{
|
||||
weight = 0.06;
|
||||
};
|
||||
class ItemPlasticWaterbottle3ozBoiled
|
||||
{
|
||||
weight = 0.08;
|
||||
};
|
||||
class ItemPlasticWaterbottle4ozBoiled
|
||||
{
|
||||
weight = 0.1;
|
||||
};
|
||||
class ItemPlasticWaterbottle5ozBoiled
|
||||
{
|
||||
weight = 0.12;
|
||||
};
|
||||
class ItemPlasticWaterbottle6ozBoiled
|
||||
{
|
||||
weight = 0.14;
|
||||
};
|
||||
class ItemPlasticWaterbottle7ozBoiled
|
||||
{
|
||||
weight = 0.16;
|
||||
};
|
||||
class ItemPlasticWaterbottle8ozBoiled
|
||||
{
|
||||
weight = 0.17;
|
||||
};
|
||||
class ItemPlasticWaterbottle9ozBoiled
|
||||
{
|
||||
weight = 0.2;
|
||||
};
|
||||
class ItemSodaMdew
|
||||
{
|
||||
|
||||
@@ -23,6 +23,30 @@ class AK_107_GL_pso
|
||||
{
|
||||
weight = 5.5;
|
||||
};
|
||||
class AK107_Kobra_DZ
|
||||
{
|
||||
weight = 3.8;
|
||||
};
|
||||
class AK107_GL_Kobra_DZ
|
||||
{
|
||||
weight = 5.3;
|
||||
};
|
||||
class AK107_PSO_DZ
|
||||
{
|
||||
weight = 4;
|
||||
};
|
||||
class AK107_GL_PSO_DZ
|
||||
{
|
||||
weight = 5.5;
|
||||
};
|
||||
class AK107_DZ
|
||||
{
|
||||
weight = 3;
|
||||
};
|
||||
class AK107_GL_DZ
|
||||
{
|
||||
weight = 4.5;
|
||||
};
|
||||
class AKS_74_U
|
||||
{
|
||||
weight = 2.7;
|
||||
|
||||
@@ -109,13 +109,13 @@ if (!isDedicated) then {
|
||||
//player_sleep = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_sleep.sqf";
|
||||
player_combineMag = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_combineMags.sqf";
|
||||
player_combineAntibiotics = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_combineAntibiotics.sqf";
|
||||
player_combineMatches = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_combineMatches.sqf";
|
||||
player_createquiver = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_createQuiver.sqf";
|
||||
player_fillquiver = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_fillQuiver.sqf";
|
||||
//player_takearrow = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_takeArrow.sqf";
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_switchWeapon.sqf";
|
||||
//player_goFishing = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_goFishing.sqf";
|
||||
player_gather = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_gather.sqf";
|
||||
player_fixBottle = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_fixBottle.sqf";
|
||||
player_tearClothes = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_tearClothes.sqf";
|
||||
//object_remove = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\remove.sqf";
|
||||
player_fixHatchet = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\player_fixTools.sqf";
|
||||
@@ -205,6 +205,7 @@ if (!isDedicated) then {
|
||||
player_manageDoor = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\doorManagement\initDoorManagement.sqf";
|
||||
player_enterCode = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\doorManagement\player_enterCode.sqf";
|
||||
FNC_check_access = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_check_access.sqf";
|
||||
fnc_usec_damageHandler = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandler.sqf"; //Event handler run on damage
|
||||
|
||||
// Advanced trading default inits for maintaining, Advanced Trading and custom scripts to utilize gem based currency.
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\AdvancedTrading\defaultInit.sqf";
|
||||
@@ -612,6 +613,80 @@ if (!isDedicated) then {
|
||||
if (!DZE_ConfigTrader) then {call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_hiveTrading.sqf";};
|
||||
// recent murders menu
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\player_murderBoard.sqf";
|
||||
|
||||
dayz_inflame_showMenu = {
|
||||
private ["_object","_ret","_flame","_islit","_hasTool","_whatIwant"];
|
||||
|
||||
_object = _this select 0;
|
||||
_whatIwant = _this select 1;
|
||||
_ret = false;
|
||||
|
||||
_islit = (inflamed _object);
|
||||
|
||||
_hasTool = false;
|
||||
if (!_islit) then {
|
||||
{
|
||||
if (_x in items player) exitWith { _hasTool = true; };
|
||||
} count DayZ_Ignitors;
|
||||
};
|
||||
_ret = (_whatIwant && !_islit && _hasTool) or (!_whatIwant && _isLit);
|
||||
|
||||
_ret
|
||||
};
|
||||
|
||||
dayz_reduceItems = {
|
||||
private ["_item","_class","_amount","_qtyRemaining"];
|
||||
|
||||
_item = _this select 0; //Item in current inventory.
|
||||
_class = _this select 1; //Class type to use.
|
||||
|
||||
//Does player have the original item? (Not Really needed player_useMeds checks)
|
||||
if (_item in magazines player) exitWith {
|
||||
//Amount in current box (will be -1 for a random chance to start the reducing)
|
||||
_amount = getNumber(configfile >> "CfgMagazines" >> _item >> _class >> "amount");
|
||||
|
||||
//Item to move too if there is some left
|
||||
_qtyRemaining = getText(configfile >> "CfgMagazines" >> _item >> _class >> "qtyRemaining");
|
||||
|
||||
//Only run for the random amount.
|
||||
if (_amount == -1) then {
|
||||
//Chance to start the reduction
|
||||
if ([getNumber(configfile >> "CfgMagazines" >> _item >> _class >> "chance")] call fn_chance) then {
|
||||
player removeMagazine _item;
|
||||
player addMagazine _qtyRemaining;
|
||||
};
|
||||
} else {
|
||||
player removeMagazine _item;
|
||||
player addMagazine _qtyRemaining;
|
||||
};
|
||||
};
|
||||
true
|
||||
};
|
||||
|
||||
dayz_inflame_showMenu_other = {
|
||||
private ["_fireplace","_ret","_flame","_islit","_hasTool","_whatIwant"];
|
||||
|
||||
_fireplace = _this select 0;
|
||||
_whatIwant = _this select 1;
|
||||
_ret = false;
|
||||
// return a boolean. true <=> player can put out the lit fire, can light a fire with match
|
||||
_flame = nearestObjects [_fireplace, ["flamable_DZ"], 1];
|
||||
_flame = if (count _flame > 0) then { _flame select 0 } else { objNull };
|
||||
_islit = !(isNull _flame) && {(inflamed _flame)};
|
||||
_hasTool = false;
|
||||
if (!_islit) then {
|
||||
{
|
||||
if (_x in items player) exitWith { _hasTool = true; };
|
||||
} count DayZ_Ignitors;
|
||||
};
|
||||
_ret = (_whatIwant && !_islit && _hasTool) or (!_whatIwant && _isLit);
|
||||
//systemChat str [_flame, _hasTool, _islit, _ret];
|
||||
|
||||
_ret
|
||||
};
|
||||
|
||||
DZ_KeyDown_EH = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\keyboard.sqf";
|
||||
dayz_EjectPlayer = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\dze_ejectPlayer.sqf";
|
||||
};
|
||||
|
||||
//Both
|
||||
@@ -628,7 +703,6 @@ object_getHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\o
|
||||
object_setHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_setHit.sqf"; //process the hit as a NORMAL damage (useful for persistent vehicles)
|
||||
object_processHit = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_processHit.sqf"; //process the hit in the REVO damage system (records and sets hit)
|
||||
//object_cargoCheck = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_cargoCheck.sqf"; //Run by the player or server to monitor changes in cargo contents
|
||||
fnc_usec_damageHandler = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_damageHandler.sqf"; //Event handler run on damage
|
||||
// Vehicle damage fix
|
||||
fnc_veh_handleDam = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\veh_handleDam.sqf";
|
||||
fnc_veh_handleKilled = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\veh_handleKilled.sqf";
|
||||
@@ -662,10 +736,10 @@ fn_getModelName = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile
|
||||
fn_niceSpot = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_niceSpot.sqf";
|
||||
fnc_Obj_FenceHandleDam = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fence_handleDam.sqf";
|
||||
object_roadFlare = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\object_roadFlare.sqf";
|
||||
DZ_KeyDown_EH = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\keyboard.sqf";
|
||||
fn_shuffleArray = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_shuffleArray.sqf";
|
||||
zombie_initialize = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\zombie_initialize.sqf";
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\traps\init.sqf";
|
||||
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\achievements_init.sqf"; //start achievements_init
|
||||
|
||||
if (dayz_townGenerator) then {
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\psrnd.sqf"; // pseudo random for plantSpanwer
|
||||
@@ -681,7 +755,6 @@ BIS_fnc_numberDigits = compile preprocessFileLineNumbers "\z\addons\dayz_code\co
|
||||
BIS_fnc_numberText = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_numberText.sqf";
|
||||
local_lockUnlock = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle
|
||||
FNC_GetSetPos = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fnc_getSetPos.sqf";
|
||||
dayz_EjectPlayer = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\dze_ejectPlayer.sqf";
|
||||
dayz_groupInvite = compile preprocessFileLineNumbers "\z\addons\dayz_code\groups\handleInvite.sqf";
|
||||
|
||||
player_sumMedical = {
|
||||
@@ -718,35 +791,6 @@ player_sumMedical = {
|
||||
_medical
|
||||
};
|
||||
|
||||
dayz_reduceItems = {
|
||||
private ["_item","_class","_amount","_qtyRemaining"];
|
||||
|
||||
_item = _this select 0; //Item in current inventory.
|
||||
_class = _this select 1; //Class type to use.
|
||||
|
||||
//Does player have the original item? (Not Really needed player_useMeds checks)
|
||||
if (_item in magazines player) exitWith {
|
||||
//Amount in current box (will be -1 for a random chance to start the reducing)
|
||||
_amount = getNumber(configfile >> "CfgMagazines" >> _item >> _class >> "amount");
|
||||
|
||||
//Item to move too if there is some left
|
||||
_qtyRemaining = getText(configfile >> "CfgMagazines" >> _item >> _class >> "qtyRemaining");
|
||||
|
||||
//Only run for the random amount.
|
||||
if (_amount == -1) then {
|
||||
//Chance to start the reduction
|
||||
if ([getNumber(configfile >> "CfgMagazines" >> _item >> _class >> "chance")] call fn_chance) then {
|
||||
player removeMagazine _item;
|
||||
player addMagazine _qtyRemaining;
|
||||
};
|
||||
} else {
|
||||
player removeMagazine _item;
|
||||
player addMagazine _qtyRemaining;
|
||||
};
|
||||
};
|
||||
true
|
||||
};
|
||||
|
||||
dayz_inflame = {
|
||||
private "_object";
|
||||
_object = _this select 0;
|
||||
@@ -758,26 +802,6 @@ dayz_inflame = {
|
||||
};
|
||||
};
|
||||
|
||||
dayz_inflame_showMenu = {
|
||||
private ["_object","_ret","_flame","_islit","_hasTool","_whatIwant"];
|
||||
|
||||
_object = _this select 0;
|
||||
_whatIwant = _this select 1;
|
||||
_ret = false;
|
||||
|
||||
_islit = (inflamed _object);
|
||||
|
||||
_hasTool = false;
|
||||
if (!_islit) then {
|
||||
{
|
||||
if (_x in items player) exitWith { _hasTool = true; };
|
||||
} count DayZ_Ignitors;
|
||||
};
|
||||
_ret = (_whatIwant && !_islit && _hasTool) or (!_whatIwant && _isLit);
|
||||
|
||||
_ret
|
||||
};
|
||||
|
||||
dayz_inflame_other = {
|
||||
private ["_fireplace","_ret","_flame","_islit","_isLit","_pos"];
|
||||
|
||||
@@ -805,28 +829,6 @@ dayz_inflame_other = {
|
||||
};
|
||||
};
|
||||
|
||||
dayz_inflame_showMenu_other = {
|
||||
private ["_fireplace","_ret","_flame","_islit","_hasTool","_whatIwant"];
|
||||
|
||||
_fireplace = _this select 0;
|
||||
_whatIwant = _this select 1;
|
||||
_ret = false;
|
||||
// return a boolean. true <=> player can put out the lit fire, can light a fire with match
|
||||
_flame = nearestObjects [_fireplace, ["flamable_DZ"], 1];
|
||||
_flame = if (count _flame > 0) then { _flame select 0 } else { objNull };
|
||||
_islit = !(isNull _flame) && {(inflamed _flame)};
|
||||
_hasTool = false;
|
||||
if (!_islit) then {
|
||||
{
|
||||
if (_x in items player) exitWith { _hasTool = true; };
|
||||
} count DayZ_Ignitors;
|
||||
};
|
||||
_ret = (_whatIwant && !_islit && _hasTool) or (!_whatIwant && _isLit);
|
||||
//systemChat str [_flame, _hasTool, _islit, _ret];
|
||||
|
||||
_ret
|
||||
};
|
||||
|
||||
isInflamed = {
|
||||
private "_flame";
|
||||
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
"PVCDZ_obj_GutBody" addPublicVariableEventHandler {(_this select 1) spawn local_gutObject};
|
||||
"PVCDZ_veh_SetFuel" addPublicVariableEventHandler {(_this select 1) spawn local_setFuel};
|
||||
"PVCDZ_veh_engineSwitch" addPublicVariableEventHandler {(_this select 1) spawn dayz_engineSwitch};
|
||||
"PVCDZ_OpenTarget_Reset" addPublicVariableEventHandler { OpenTarget_Time = diag_tickTime; }; //reset OpenTarget timer
|
||||
|
||||
// EPOCH ADDITIONS
|
||||
"PVDZE_veh_Lock" addPublicVariableEventHandler {(_this select 1) call local_lockUnlock};
|
||||
@@ -268,6 +267,7 @@ if (!isDedicated) then {
|
||||
"PVCDZ_hlt_Transfuse_completed" addPublicVariableEventHandler {player setVariable["TransfusionCompleted",true]; };
|
||||
"PVCDZ_hlt_PainK" addPublicVariableEventHandler {(_this select 1) call player_medPainkiller};
|
||||
"PVCDZ_hlt_AntiB" addPublicVariableEventHandler {(_this select 1) call player_medAntiBiotics};
|
||||
"PVCDZ_OpenTarget_Reset" addPublicVariableEventHandler { OpenTarget_Time = diag_tickTime; }; //reset OpenTarget timer
|
||||
|
||||
"PVCDZ_plr_Legs" addPublicVariableEventHandler {
|
||||
_entity = (_this select 1) select 0;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1311,22 +1311,6 @@
|
||||
<French>Vous avez bu quelque chose.</French>
|
||||
<German>Du hast etwas getrunken.</German>
|
||||
</Key>
|
||||
<Key ID="str_fix_water_bottle">
|
||||
<English>You have successfully fixed a water bottle!</English>
|
||||
<Russian>Вы успешно починили бутылку с водой!</Russian>
|
||||
<Spanish>Usted ha resuelto con éxito una botella de agua!</Spanish>
|
||||
<Czech>Úspěšně jste spravili láhev na vodu!</Czech>
|
||||
<French>Vous avez bien réparé la bouteille d'eau!</French>
|
||||
<German>Du hast die Wasserflasche erfolgreich repariert!</German>
|
||||
</Key>
|
||||
<Key ID="str_fix_water_bottle_fail">
|
||||
<English>You think you need Duct Tape to fix the bottle.</English>
|
||||
<Russian>Похоже, нужен скотч, чтобы починить бутылку.</Russian>
|
||||
<Spanish>Usted cree que necesita cinta para conductos para fijar la botella.</Spanish>
|
||||
<Czech>Ke spravení láhve bude zřejmě třeba lepící páska.</Czech>
|
||||
<French>Vous pensez que vous avez besoin de ruban adhésif pour réparer la bouteille.</French>
|
||||
<German>Du könntest Klebeband gebrauchen, um die Flasche zu reparieren.</German>
|
||||
</Key>
|
||||
<Key ID="STR_TEAR_CLOTHES">
|
||||
<English>Tear Clothes</English>
|
||||
<German>Kleidung zerreißen</German>
|
||||
@@ -3537,7 +3521,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_12">
|
||||
<English>A bottle of water that has been filled and can be consumed.</English>
|
||||
<German>Eine Flasche, gefüllt mit Trinkwasser.</German>
|
||||
<German>Eine Flasche gefüllt mit Trinkwasser.</German>
|
||||
<Russian>Наполненная водой пластиковая бутылка. Вода сомнительного качества.</Russian>
|
||||
<Spanish>Una botella de agua llena que puede consumirse.</Spanish>
|
||||
<French>Bouteille (pleine)</French>
|
||||
@@ -3545,7 +3529,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_NAME_13">
|
||||
<English>Water Bottle (Empty)</English>
|
||||
<German>Leere Wasserflasche</German>
|
||||
<German>Wasserflasche (Leer)</German>
|
||||
<Russian>Бутылка (пустая)</Russian>
|
||||
<Spanish>Cantimplora (Vacía)</Spanish>
|
||||
<French>Bouteille (vide)</French>
|
||||
@@ -3557,7 +3541,7 @@
|
||||
<German>Ausleeren</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_13">
|
||||
<English>A bottle of water that is Empty. It might be useful to fill it with water again.</English>
|
||||
<English>A bottle of water that is empty. It might be useful to fill it with water again.</English>
|
||||
<German>Eine leere Wasserflasche. Sie könnte nützlich sein, um sie wieder mit Wasser zu füllen.</German>
|
||||
<Russian>Пустая бутылка, которую можно наполнить водой.</Russian>
|
||||
<Spanish>Una botella de agua vacía. Puede ser útil si se la llena con agua de nuevo.</Spanish>
|
||||
@@ -5027,39 +5011,9 @@
|
||||
<French>Un Bar cuit (valeur:1400).</French>
|
||||
<German>Ein gebratener Wolfsbarsch, welcher reich an Eiweiß und Omega-3-Fettsäuren ist.</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_NAME">
|
||||
<English>Canteen</English>
|
||||
<Russian>Котелок</Russian>
|
||||
<German>Feldflasche</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_DESC">
|
||||
<English>A sturdy military canteen used to hold liquids for consumption.</English>
|
||||
<Russian>Армейский котелок для хранения жидкостей и еды.</Russian>
|
||||
<German>Eine stabile Feldflasche, um Wasser zu transportieren.</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_EMPTY">
|
||||
<English>Empty</English>
|
||||
<Russian>Пустой</Russian>
|
||||
<German>Ausleeren</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_EMPTY_NAME">
|
||||
<English>Canteen (empty)</English>
|
||||
<Russian>Котелок (Пустой)</Russian>
|
||||
<German>Feldflasche (leer)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_BOILED_NAME">
|
||||
<English>Canteen (boiled)</English>
|
||||
<Russian>Котелок (Прокипяченый)</Russian>
|
||||
<German>Feldflasche (abgekocht)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_CANTEEN_HERBAL_NAME">
|
||||
<English>Canteen (herbal drink)</English>
|
||||
<Russian>Котелок (Травяной напиток)</Russian>
|
||||
<German>Feldflasche (Kräutertrunk)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEMWATERBOTTLEBOILED_CODE_NAME">
|
||||
<English>Water Bottle (Boiled)</English>
|
||||
<German>Wasserflasche (abgekocht)</German>
|
||||
<German>Wasserflasche (Abgekocht)</German>
|
||||
<Russian>Бутылка (чистая вода)</Russian>
|
||||
<Spanish>Cantimplora con Agua Hervida</Spanish>
|
||||
<French>Bouteille (Eau bouillie)</French>
|
||||
@@ -5075,7 +5029,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ITEMWATERBOTTLEDMG_CODE_NAME">
|
||||
<English>Water Bottle (Broken)</English>
|
||||
<German>Wasserflasche (undicht)</German>
|
||||
<German>Wasserflasche (Undicht)</German>
|
||||
<Russian>Бутылка (испорчена)</Russian>
|
||||
<Czech>Láhev na vodu (děravá)</Czech>
|
||||
</Key>
|
||||
@@ -6048,12 +6002,12 @@
|
||||
<Dutch>Patrouillerugzak (coyote)</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_PATROL">
|
||||
<English>Patrol Pack (coyote)</English>
|
||||
<French>Sac de patrouille (coyote). <br/>Taille: 8</French>
|
||||
<Russian>Рюкзак на (8 слотов)</Russian>
|
||||
<Spanish>Mochila de patrullaje de tamaño pequeño.</Spanish>
|
||||
<Czech>Malý batůžek na kratší výlety.</Czech>
|
||||
<German>Einfacher Trekkingrucksack von "Coyote". Volumen: 8 Liter.</German>
|
||||
<English>Patrol Pack (coyote). <br/>Capacity: 10 items</English>
|
||||
<French>Sac de patrouille (coyote). <br/>Taille: 10</French>
|
||||
<Russian>Рюкзак на (10 слотов)</Russian>
|
||||
<Spanish>Mochila de patrullaje de tamaño pequeño: <br/>10 litros</Spanish>
|
||||
<Czech>Malý batůžek na kratší výlety. <br/>Objem: 10 litrů</Czech>
|
||||
<German>Einfacher Trekkingrucksack von "Coyote". <br/>Volumen: 10 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_ACU">
|
||||
<English>Assault Pack (ACU)</English>
|
||||
@@ -6065,12 +6019,12 @@
|
||||
<Dutch>Aanvalsrugzak (ACU)</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_ACU">
|
||||
<English>Assault Pack (ACU)</English>
|
||||
<English>Assault Pack (ACU). <br/>Capacity: 12 items</English>
|
||||
<French>Sac d'assault (ACU). <br/>Taille: 12</French>
|
||||
<Russian>Рюкзак на (12 слотов)</Russian>
|
||||
<Spanish>Mochila de asalto de tamaño intermedio.</Spanish>
|
||||
<Czech>Klasický batoh americké armády.</Czech>
|
||||
<German>Kleiner taktischer Rucksack mit ACU-Tarnschema. Volumen: 12 Liter.</German>
|
||||
<Spanish>Mochila de asalto de tamaño intermedio. <br/>12 litros</Spanish>
|
||||
<Czech>Klasický batoh americké armády. <br/>Objem: 12 litrů</Czech>
|
||||
<German>Kleiner taktischer Rucksack mit ACU-Tarnschema. <br/>Volumen: 12 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_VEST">
|
||||
<English>Czech Vest Pouch</English>
|
||||
@@ -6082,12 +6036,12 @@
|
||||
<Dutch>Tsjechische Borstzak</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_VEST">
|
||||
<English>Czech Vest Pouch</English>
|
||||
<English>Czech Vest Pouch. <br/>Capacity: 12 items</English>
|
||||
<French>Sac tchèque. <br/>Taille: 12</French>
|
||||
<Russian>Рюкзак на (12 слотов)</Russian>
|
||||
<Spanish>Bolsa en forma de chaleco de pequeño tamaño y poca visibilidad.</Spanish>
|
||||
<Czech>Česká vesta, která unese jen pár věcí.</Czech>
|
||||
<German>Kleiner Rucksack des tschechischen Militärs, der eng am Rücken anliegt. Volumen: 12 Liter.</German>
|
||||
<Spanish>Bolsa en forma de chaleco de pequeño tamaño y poca visibilidad. <br/>12 litros</Spanish>
|
||||
<Czech>Česká vesta, která unese jen pár věcí. <br/>Objem: 12 litrů</Czech>
|
||||
<German>Kleiner Rucksack des tschechischen Militärs, der eng am Rücken anliegt. <br/>Volumen: 12 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_ALICE">
|
||||
<English>Alice pack</English>
|
||||
@@ -6099,12 +6053,12 @@
|
||||
<Dutch>ALICE Rugzak</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_ALICE">
|
||||
<English>Alice pack</English>
|
||||
<French>Sac Alice. <br/>Taille: 16</French>
|
||||
<Russian>Рюкзак на (16 слотов)</Russian>
|
||||
<Spanish>Mochila Alice de tamaño medio.</Spanish>
|
||||
<Czech>Jeden z nejlepších vojenských batohů, který byl kdy vyroben.</Czech>
|
||||
<German>Mittlerer Trekkingrucksack von "Alice". Volumen: 16 Liter</German>
|
||||
<English>Alice pack. <br/>Capacity: 20 items</English>
|
||||
<French>Sac Alice. <br/>Taille: 20</French>
|
||||
<Russian>Рюкзак на (20 слотов)</Russian>
|
||||
<Spanish>Mochila Alice de tamaño medio. <br/>20 litros</Spanish>
|
||||
<Czech>Jeden z nejlepších vojenských batohů, který byl kdy vyroben. <br/>Objem: 20 litrů</Czech>
|
||||
<German>Mittlerer Trekkingrucksack von "Alice". <br/>Volumen: 20 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_SURVACU">
|
||||
<English>Survival ACU</English>
|
||||
@@ -6116,12 +6070,12 @@
|
||||
<Dutch>Overlevings ACU</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_SURVACU">
|
||||
<English>Survival ACU</English>
|
||||
<French>ACU de survie<br/>Taille: 16</French>
|
||||
<Russian>Рюкзак на (16 слотов)</Russian>
|
||||
<Spanish>Mochila de supervivencia de tamaño medio.</Spanish>
|
||||
<Czech>Větší batoh z obchodu Přežiju s.r.o.</Czech>
|
||||
<German>Mittlerer Kampfrucksack mit Woodland-Tarnschema. Volumen: 16 Liter.</German>
|
||||
<English>Survival ACU. <br/>Capacity: 22 items</English>
|
||||
<French>ACU de survie<br/>Taille: 22</French>
|
||||
<Russian>Рюкзак на (22 слота)</Russian>
|
||||
<Spanish>Mochila de supervivencia de tamaño medio. <br/>22 litros</Spanish>
|
||||
<Czech>Větší batoh z obchodu Přežiju s.r.o. <br/>Objem: 22 litrů</Czech>
|
||||
<German>Mittlerer Kampfrucksack mit Woodland-Tarnschema. <br/>Volumen: 22 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_BRITISH">
|
||||
<English>British Assault Pack</English>
|
||||
@@ -6133,12 +6087,12 @@
|
||||
<Dutch>Britse Aanvalsrugzak</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_BRITISH">
|
||||
<English>British Assault Pack</English>
|
||||
<French>Sac d'assault britannique. <br/>Taille: 18</French>
|
||||
<Russian>Рюкзак на (18 слотов)</Russian>
|
||||
<Spanish>Mochila de asalto británica de tamaño medio.</Spanish>
|
||||
<Czech>Moderní a stylový batoh britské armády.</Czech>
|
||||
<German>Großer Kampfrucksack der britischen Streitkräfte. Volumen: 18 Liter.</German>
|
||||
<English>British Assault Pack. <br/>Capacity: 30 items</English>
|
||||
<French>Sac d'assault britannique. <br/>Taille: 30</French>
|
||||
<Russian>Рюкзак на (30 слотов)</Russian>
|
||||
<Spanish>Mochila de asalto británica de tamaño medio. <br/>30 litros</Spanish>
|
||||
<Czech>Moderní a stylový batoh britské armády. <br/>Objem: 30 litrů</Czech>
|
||||
<German>Großer Kampfrucksack der britischen Streitkräfte. <br/>Volumen: 30 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_CZECH">
|
||||
<English>Czech Backpack</English>
|
||||
@@ -6150,12 +6104,12 @@
|
||||
<Dutch>Tsjechische Rugzak</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_CZECH">
|
||||
<English>Czech Backpack</English>
|
||||
<French>Sac-à-dos tchèque. <br/>Taille: 24</French>
|
||||
<Russian>Рюкзак на (24 слота)</Russian>
|
||||
<Spanish>Mochila checa de gran tamaño y difícil de ocultar.</Spanish>
|
||||
<Czech>Vojenská krosna pro nošení nejen českých věcí.</Czech>
|
||||
<German>Großer tschechischer Trekkingrucksack. Volumen: 24 Liter.</German>
|
||||
<English>Czech Backpack. <br/>Capacity: 40 items</English>
|
||||
<French>Sac-à-dos tchèque. <br/>Taille: 40</French>
|
||||
<Russian>Рюкзак на (40 слотов)</Russian>
|
||||
<Spanish>Mochila checa de gran tamaño y difícil de ocultar. <br/>40 litros</Spanish>
|
||||
<Czech>Vojenská krosna pro nošení nejen českých věcí. <br/>Objem: 40 litrů</Czech>
|
||||
<German>Großer tschechischer Trekkingrucksack. <br/>Volumen: 40 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_NAME_COYOTE">
|
||||
<English>Backpack (coyote)</English>
|
||||
@@ -6167,12 +6121,12 @@
|
||||
<Dutch>Rugzak (Coyote)</Dutch>
|
||||
</Key>
|
||||
<Key ID="STR_BACKPACK_DESC_COYOTE">
|
||||
<English>Backpack (coyote)</English>
|
||||
<French>Sac-à-dos (coyote). <br/>Taille: 24</French>
|
||||
<Russian>Рюкзак на (24 слота)</Russian>
|
||||
<Spanish>Mochila coyote de gran tamaño y difícil de ocultar.</Spanish>
|
||||
<Czech>Batoh větších rozměrů, který je schopen unést kromě zásob i zbraně.</Czech>
|
||||
<German>Großer Kampfrucksack von "Coyote". Volumen: 24 Liter.</German>
|
||||
<English>Backpack (coyote). <br/>Capacity: 50 items</English>
|
||||
<French>Sac-à-dos (coyote). <br/>Taille: 50</French>
|
||||
<Russian>Рюкзак на (50 слотов)</Russian>
|
||||
<Spanish>Mochila coyote de gran tamaño y difícil de ocultar. <br/>50 litros</Spanish>
|
||||
<Czech>Batoh větších rozměrů, který je schopen unést kromě zásob i zbraně. <br/>Objem: 50 litrů</Czech>
|
||||
<German>Großer Kampfrucksack von "Coyote". <br/>Volumen: 50 Liter</German>
|
||||
</Key>
|
||||
<Key ID="STR_ITEM_NAME_WIPES">
|
||||
<English>Wipes</English>
|
||||
@@ -6508,7 +6462,7 @@
|
||||
<Czech>Při stavbě %1 došlo k chybě.</Czech>
|
||||
</Key>
|
||||
<Key ID="str_fireplace_02">
|
||||
<English>You cannot make a fireplace here. The area must be flat, and free of other objects</English>
|
||||
<English>You cannot make a fireplace here. The area must be flat, and free of other objects.</English>
|
||||
<German>Du kannst hier kein Feuer machen. Der Untergrund muss flach und frei von Hindernissen sein.</German>
|
||||
<Russian>Костер нужно разводить на ровной поверхности, без объектов поблизости.</Russian>
|
||||
<Spanish>No puedes hacer una fogata aquí. El área debe ser plana y libre de otros objetos.</Spanish>
|
||||
@@ -6516,8 +6470,8 @@
|
||||
<Czech>Ohniště zde nelze postavit. Plocha musí být rovná a dostatečně veliká.</Czech>
|
||||
</Key>
|
||||
<Key ID="str_success_gutted_animal">
|
||||
<English>%1 has been gutted, %2 meat steaks now on the carcass</English>
|
||||
<German>Du hast das Tier (%1) ausgenommen. Vom verbleibenden Fleisch kannst du %2 Stücke abschneiden.</German>
|
||||
<English>%1 has been gutted, %2 meat steaks now on the carcass.</English>
|
||||
<German>Du hast %1 ausgenommen und kannst nun %2 Stück(e) Fleisch aus dem Kadavar nehmen.</German>
|
||||
<Russian>Вы разделали: %1. Доступно кусков мяса: %2</Russian>
|
||||
<Spanish>Un %1 fue achurado, dejando %2 trozos de carne en el cuerpo.</Spanish>
|
||||
<French>%1 a été dépecé, %2 morceaux de viande sont maintenant dans la carcasse.</French>
|
||||
@@ -13361,6 +13315,13 @@
|
||||
<Dutch>Grote Wapenzak</Dutch>
|
||||
<French>Grand Fourreau</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_DESC_LGB">
|
||||
<English>Large Gunbag <br/>Capacity: 60 items</English>
|
||||
<German>Große Waffentasche <br/>Volumen: 60 Liter</German>
|
||||
<Russian>Большая оружейная сумка (60 слотов)</Russian>
|
||||
<Dutch>Grote Wapenzak <br/>Inhoud: 60 liter</Dutch>
|
||||
<French>Grand Fourreau <br/>Taille: 60</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_GB">
|
||||
<English>Gunbag</English>
|
||||
<German>Waffentasche</German>
|
||||
@@ -13368,6 +13329,13 @@
|
||||
<Dutch>Wapenzak</Dutch>
|
||||
<French>Fourreau</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_DESC_GB">
|
||||
<English>Gunbag <br/>Capacity: 35 items</English>
|
||||
<German>Waffentasche <br/>Volumen: 35 Liter</German>
|
||||
<Russian>Оружейная сумка (35 слотов)</Russian>
|
||||
<Dutch>Wapenzak <br/>Inhoud: 35 liter</Dutch>
|
||||
<French>Fourreau<br/>Taille: 35</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_COMPACT">
|
||||
<English>Compact Pack</English>
|
||||
<German>Compact Rucksack</German>
|
||||
@@ -13375,6 +13343,13 @@
|
||||
<Dutch>Compacte Rugzak</Dutch>
|
||||
<French>Sac Compact</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_DESC_COMPACT">
|
||||
<English>Compact Pack <br/>Capacity: 25 items</English>
|
||||
<German>Compact Rucksack <br/>Volumen: 25 Liter</German>
|
||||
<Russian>Компактный рюкзак (25 слотов)</Russian>
|
||||
<Dutch>Compacte Rugzak <br/>Inhoud: 25 liter</Dutch>
|
||||
<French>Sac Compact <br/>Taille: 25</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_TERMINAL">
|
||||
<English>Terminal Pack</English>
|
||||
<German>Terminal Rucksack</German>
|
||||
@@ -13382,6 +13357,13 @@
|
||||
<Dutch>Terminal Rugzak</Dutch>
|
||||
<French>Sac à Dos (terminal)</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PACK_DESC_TERMINAL">
|
||||
<English>Terminal Pack <br/>Capacity: 15 items</English>
|
||||
<German>Terminal Rucksack <br/>Volumen: 15 Liter</German>
|
||||
<Russian>Вокзальный рюкзак (15 слотов)</Russian>
|
||||
<Dutch>Terminal Rugzak <br/>Inhoud: 15 liter</Dutch>
|
||||
<French>Sac à Dos (terminal) <br/>Taille: 15</French>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_ACTIONS_HALO">
|
||||
<English>HALO Jump</English>
|
||||
<German>Fallschirm Sprung</German>
|
||||
@@ -14798,7 +14780,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_LUMBERPACK">
|
||||
<English>Lumber Pack</English>
|
||||
<German>Bauholzstapel</German>
|
||||
<German>Bauholzpaket</German>
|
||||
<Russian>Упаковка пиломатериалов</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_LUMBERPACK_DESC">
|
||||
@@ -14833,7 +14815,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PLYWOODPACK_DESC">
|
||||
<English>Plywood in a stack.</English>
|
||||
<German>Sperrholzstapel.</German>
|
||||
<German>Sperrholz, gestapelt und zusammengebunden.</German>
|
||||
<Russian>Упакованная фанера.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_LUMBER">
|
||||
@@ -14968,92 +14950,92 @@
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE1OZBOILED">
|
||||
<English>Water Bottle (Boiled 1oz)</English>
|
||||
<German>Wasserflasche (abgekocht 100ml)</German>
|
||||
<German>Wasserflasche (Abgek. 100ml)</German>
|
||||
<Russian>Бутылка (чистая вода 1 унция)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE1OZBOILED_DESC">
|
||||
<English>Water Bottle with 1oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 100ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 1oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 100ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 1 унцией чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE2OZBOILED">
|
||||
<English>Water Bottle (Boiled 2oz)</English>
|
||||
<German>Wasserflasche (abgekocht 200ml)</German>
|
||||
<German>Wasserflasche (Abgek. 200ml)</German>
|
||||
<Russian>Бутылка (чистая вода 2 унции)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE2OZBOILED_DESC">
|
||||
<English>Water Bottle with 2oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 200ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 2oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 200ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 2 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE3OZBOILED">
|
||||
<English>Water Bottle (Boiled 3oz)</English>
|
||||
<German>Wasserflasche (abgekocht 300ml)</German>
|
||||
<German>Wasserflasche (Abgek. 300ml)</German>
|
||||
<Russian>Бутылка (чистая вода 3 унции)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE3OZBOILED_DESC">
|
||||
<English>Water Bottle with 3oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 300ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 3oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 300ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 3 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE4OZBOILED">
|
||||
<English>Water Bottle (Boiled 4oz)</English>
|
||||
<German>Wasserflasche (abgekocht 400ml)</German>
|
||||
<German>Wasserflasche (Abgek. 400ml)</German>
|
||||
<Russian>Бутылка (чистая вода 4 унции)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE4OZBOILED_DESC">
|
||||
<English>Water Bottle with 4oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 400ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 4oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 400ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 4 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE5OZBOILED">
|
||||
<English>Water Bottle (Boiled 5oz)</English>
|
||||
<German>Wasserflasche (abgekocht 500ml)</German>
|
||||
<German>Wasserflasche (Abgek. 500ml)</German>
|
||||
<Russian>Бутылка (чистая вода 5 унций)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE5OZBOILED_DESC">
|
||||
<English>Water Bottle with 5oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 500ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 5oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 500ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 5 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE6OZBOILED">
|
||||
<English>Water Bottle (Boiled 6oz)</English>
|
||||
<German>Wasserflasche (abgekocht 600ml)</German>
|
||||
<German>Wasserflasche (Abgek. 600ml)</German>
|
||||
<Russian>Бутылка (чистая вода 6 унций)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE6OZBOILED_DESC">
|
||||
<English>Water Bottle with 6oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 600ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 6oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 600ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 6 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE7OZBOILED">
|
||||
<English>Water Bottle (Boiled 7oz)</English>
|
||||
<German>Wasserflasche (abgekocht 700ml)</German>
|
||||
<German>Wasserflasche (Abgek. 700ml)</German>
|
||||
<Russian>Бутылка (чистая вода 7 унций)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE7OZBOILED_DESC">
|
||||
<English>Water Bottle with 7oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 700ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 7oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 700ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 7 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE8OZBOILED">
|
||||
<English>Water Bottle (Boiled 8oz)</English>
|
||||
<German>Wasserflasche (abgekocht 800ml)</German>
|
||||
<German>Wasserflasche (Abgek. 800ml)</German>
|
||||
<Russian>Бутылка (чистая вода 8 унций)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE8OZBOILED_DESC">
|
||||
<English>Water Bottle with 8oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 800ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 8oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 800ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 8 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE9OZBOILED">
|
||||
<English>Water Bottle (Boiled 9oz)</English>
|
||||
<German>Wasserflasche (abgekocht 900ml)</German>
|
||||
<German>Wasserflasche (Abgek. 900ml)</German>
|
||||
<Russian>Бутылка (чистая вода 9 унций)</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WATERBOTTLE9OZBOILED_DESC">
|
||||
<English>Water Bottle with 9oz of water (Boiled).</English>
|
||||
<German>Wasserflasche mit 900ml Wasser (abgekocht).</German>
|
||||
<English>Water Bottle with 9oz of boiled water.</English>
|
||||
<German>Wasserflasche mit 900ml abgekochtem Wasser.</German>
|
||||
<Russian>Бутылка с 9 унциями чистой кипяченой воды.</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_BRIEFCASE">
|
||||
@@ -16853,6 +16835,10 @@
|
||||
<German>Feuer (angezündet)</German>
|
||||
<Czech>Ohniště (hořící)</Czech>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_WORKBENCH_NEARBY">
|
||||
<English>Workbench, Wooden Shed or Wood Shack</English>
|
||||
<German>Werkbank, Holzschuppen oder Holzhütte</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_HUMANS_NEARBY">
|
||||
<English>Humans Nearby</English>
|
||||
<German>Spieler in der Nähe</German>
|
||||
@@ -17257,7 +17243,278 @@
|
||||
<English>Leaf of a tobacco plant</English>
|
||||
<German>Blatt einer Tabakpflanze</German>
|
||||
<Russian>Лист табака с табачной плантации</Russian>
|
||||
</Key>
|
||||
|
||||
<!--New Epoch 1.0.6.3 weapon, attachment and magazine strings-->
|
||||
<Key ID="STR_DZ_MAG_30RND_AK74_DESC">
|
||||
<German>Kaliber: 5,45x39mm <br/>Schuss: 30 <br/>Eingesetzt in: AK-74, AK-74 Kobra, AKS-74U, AK-107 und RPK-74</German>
|
||||
<English>Caliber: 5.45x39mm <br/>Rounds: 30 <br/>Used in: AK-74, AK-74 Kobra, AKS-74U, AK-107 and RPK-74</English>
|
||||
<Italian>Calibro: 5,45x39 mm <br/>Munizioni: 30 <br/>Si usa in: AK-74, AK-74 Kobra, AKS-74U, AK-107 e RPK-74</Italian>
|
||||
<Spanish>Calibre: 5,45x39 mm <br/>Cargas: 30 <br/>Uso: AK-74, AK-74 Kobra, AKS-74U, AK-107 y RPK-74</Spanish>
|
||||
<French>Calibre : 5.45x39 mm <br/>Munitions : 30 <br/>Utilisé avec : AK-74, AK-74 Kobra, AKS-74U, AK-107 et RPK-74</French>
|
||||
<Czech>Kalibr: 5,45x39mm <br/>Nábojů: 30 <br/>Pro: AK-74, AK-74 Kobra, AKS-74U, AK-107 a RPK-74</Czech>
|
||||
<Russian>Патрон: 5.45x39 мм <br/>Количество: 30 <br/>Используется в: АК-74, АКС-74, АКС-74У, АК-107, РПК-74</Russian>
|
||||
<Polish>Kaliber: 5,45x39mm <br/>Naboje: 30 <br/>Używane w: AK-74, AK-74 Kobra, AKS-74U, AK-107 i RPK-74</Polish>
|
||||
<Hungarian>Kaliber: 5.45x39mm <br/> Töltények: 30 <br/> Hozzá tartozó fegyver: AK-74, AK-74 Kobra, AKS-74U, AK-107 and RPK-74</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_MAG_75RND_RPK74_DESC">
|
||||
<German>Kaliber: 5,45x39mm <br/>Schuss: 75 <br/>Eingesetzt in: AK-74, AK-74 Kobra, AKS-74U, AK-107 und RPK-74</German>
|
||||
<English>Caliber: 5.45x39mm <br/>Rounds: 75 <br/>Used in: AK-74, AK-74 Kobra, AKS-74U, AK-107 and RPK-74</English>
|
||||
<Italian>Calibro: 5,45x39 mm <br/>Munizioni: 75 <br/>Si usa in: AK-74, AK-74 Kobra, AKS-74U, AK-107 e RPK-74</Italian>
|
||||
<Spanish>Calibre: 5,45x39 mm <br/>Cargas: 75 <br/>Uso: AK-74, AK-74 Kobra, AKS-74U, AK-107 y RPK-74</Spanish>
|
||||
<French>Calibre : 5.45x39 mm <br/>Munitions : 75 <br/>Utilisé avec : AK-74, AK-74 Kobra, AKS-74U, AK-107 et RPK-74</French>
|
||||
<Czech>Kalibr: 5,45x39mm <br/>Nábojů: 75 <br/>Pro: AK-74, AK-74 Kobra, AKS-74U, AK-107 a RPK-74</Czech>
|
||||
<Russian>Патрон: 5.45x39 мм <br/>Количество: 75 <br/>Используется в: АК-74, АКС-74, АКС-74У, АК-107, РПК-74</Russian>
|
||||
<Polish>Kaliber: 5,45x39mm <br/>Naboje: 75 <br/>Używane w: AK-74, AK-74 Kobra, AKS-74U, AK-107 i RPK-74</Polish>
|
||||
<Hungarian>Kaliber: 5.45x39mm <br/> Töltények: 75 <br/> Hozzá tartozó fegyver: AK-74, AK-74 Kobra, AKS-74U, AK-107 and RPK-74</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_MAG_100RND_556x45_MG36_NAME">
|
||||
<English>100Rnd. MG36 drum mag.</English>
|
||||
<German>100 Schuss MG36 Trommelmagazin</German>
|
||||
<Russian>100п. МГ-36 барабан</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_MAG_100RND_MG36_DESC">
|
||||
<German>Kaliber: 5.56x45mm <br/>Schuss: 100 <br/>Eingesetzt in: G36, MG36, M16, M4, M249, MK-12, M8 und L110</German>
|
||||
<English>Caliber: 5.56x45mm <br/>Rounds: 100 <br/>Used in: G36, MG36, M16, M4, M249, MK-12, M8 and L110</English>
|
||||
<Italian>Calibro: 5.56x45mm <br/>Munizioni: 100 <br/>Si usa in: G36, MG36, M16, M4, M249, MK-12, M8 e L110</Italian>
|
||||
<Spanish>Calibre: 5.56x45mm <br/>Cargas: 100 <br/>Uso: G36, MG36, M16, M4, M249, MK-12, M8 y L110</Spanish>
|
||||
<French>Calibre : 5.56x45mm <br/>Munitions : 100 <br/>Utilisé avec : G36, MG36, M16, M4, M249, MK-12, M8 et L110</French>
|
||||
<Czech>Kalibr: 5.56x45mm <br/>Nábojů: 100 <br/>Pro: G36, MG36, M16, M4, M249, MK-12, M8 a L110</Czech>
|
||||
<Russian>Патрон: 5.56x45 мм <br/>Количество: 100 <br/>Используется в: G36, MG36, M16, M4, M249, MK-12, M8, L110</Russian>
|
||||
<Polish>Kaliber: 5.56x45mm <br/>Naboje: 100 <br/>Używane w: G36, MG36, M16, M4, M249, MK-12, M8 i L110</Polish>
|
||||
<Hungarian>Kaliber: 5.56x45mm <br/> Töltények: 100 <br/> Hozzá tartozó fegyver: G36, MG36, M16, M4, M249, MK-12, M8 and L110</Hungarian>
|
||||
</Key>
|
||||
|
||||
<!-- AK107 -->
|
||||
<Key ID="STR_DZ_WPN_AK107_NAME">
|
||||
<English>AK-107</English>
|
||||
<Russian>АК-107</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_WPN_AK107_GL_NAME">
|
||||
<English>AK-107 GP-25</English>
|
||||
<Russian>АК-107 ГП-25</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_WPN_AK107_KOBRA_NAME">
|
||||
<English>AK-107 Kobra</English>
|
||||
<Russian>АК-107 Кобра</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_WPN_AK107_GL_KOBRA_NAME">
|
||||
<English>AK-107 GP-25 Kobra</English>
|
||||
<Russian>АК-107 ГП-25 Кобра</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_WPN_AK107_PSO1_NAME">
|
||||
<English>AK-107 PSO-1</English>
|
||||
<Russian>АК-107 ПСО-1</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_DZ_WPN_AK107_GL_PSO1_NAME">
|
||||
<English>AK-107 GP-25 PSO-1</English>
|
||||
<Russian>АК-107 ГП-25 ПСО-1</Russian>
|
||||
</Key>
|
||||
|
||||
<!--PET waterbottles -->
|
||||
<Key ID="STR_EQUIP_NAME_WBPET_01">
|
||||
<English>Water Bottle PET (Empty)</English>
|
||||
<German>Wasserflasche PET (Leer)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_WBPET_01">
|
||||
<English>A PET bottle of water that is empty. It might be useful to fill it with water again.</English>
|
||||
<German>Eine leere Plastik-Wasserflasche. Sie könnte nützlich sein, um sie wieder mit Wasser zu füllen.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_NAME_WBPET_02">
|
||||
<English>Water Bottle PET (Broken)</English>
|
||||
<German>Wasserflasche PET (Undicht)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_WBPET_02">
|
||||
<English>Broken PET Water Bottle that might be repairable.</English>
|
||||
<German>Eine undichte Plastik-Wasserflasche, die repariert werden kann.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_NAME_WBPET_03">
|
||||
<English>Water Bottle PET</English>
|
||||
<German>Wasserflasche PET</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_WBPET_03">
|
||||
<English>A PET bottle of water that has been filled and can be consumed.</English>
|
||||
<German>Eine Plastik-Wasserflasche, gefüllt mit nicht abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_NAME_WBPET_04">
|
||||
<English>Water Bottle PET (Boiled)</English>
|
||||
<German>Wasserflasche PET (Abgekocht)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_WBPET_04">
|
||||
<English>A PET bottle of boiled water that has been filled and can be consumed.</English>
|
||||
<German>Eine Plastik-Wasserflasche gefüllt mit abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_NAME_WBPET_05">
|
||||
<English>Herbal Drink (PET)</English>
|
||||
<German>Kräutertrunk (PET)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EQUIP_DESC_WBPET_05">
|
||||
<English>A drink mixed with herbs that may help heal infection.</English>
|
||||
<German>Ein Getränk aus Kräutern, welches bei Infektionen helfen könnte.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE1OZ">
|
||||
<English>Water Bottle PET (1oz)</English>
|
||||
<German>Wasserflasche PET (100ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE1OZ_DESC">
|
||||
<English>Water Bottle PET with 1oz of water.</English>
|
||||
<German>Wasserflasche PET mit 100ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE2OZ">
|
||||
<English>Water Bottle PET (2oz)</English>
|
||||
<German>Wasserflasche PET (200ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE2OZ_DESC">
|
||||
<English>Water Bottle PET with 2oz of water.</English>
|
||||
<German>Wasserflasche PET mit 200ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE3OZ">
|
||||
<English>Water Bottle PET (3oz)</English>
|
||||
<German>Wasserflasche PET (300ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE3OZ_DESC">
|
||||
<English>Water Bottle PET with 3oz of water.</English>
|
||||
<German>Wasserflasche PET mit 300ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE4OZ">
|
||||
<English>Water Bottle PET (4oz)</English>
|
||||
<German>Wasserflasche PET (400ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE4OZ_DESC">
|
||||
<English>Water Bottle PET with 4oz of water.</English>
|
||||
<German>Wasserflasche PET mit 400ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE5OZ">
|
||||
<English>Water Bottle PET (5oz)</English>
|
||||
<German>Wasserflasche PET (500ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE5OZ_DESC">
|
||||
<English>Water Bottle PET with 5oz of water.</English>
|
||||
<German>Wasserflasche PET mit 500ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE6OZ">
|
||||
<English>Water Bottle PET (6oz)</English>
|
||||
<German>Wasserflasche PET (600ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE6OZ_DESC">
|
||||
<English>Water Bottle PET with 6oz of water.</English>
|
||||
<German>Wasserflasche PET mit 600ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE7OZ">
|
||||
<English>Water Bottle PET (7oz)</English>
|
||||
<German>Wasserflasche PET (700ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE7OZ_DESC">
|
||||
<English>Water Bottle PET with 7oz of water.</English>
|
||||
<German>Wasserflasche PET mit 700ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE8OZ">
|
||||
<English>Water Bottle PET (8oz)</English>
|
||||
<German>Wasserflasche PET (800ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE8OZ_DESC">
|
||||
<English>Water Bottle PET with 8oz of water.</English>
|
||||
<German>Wasserflasche PET mit 800ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE9OZ">
|
||||
<English>Water Bottle PET (9oz)</English>
|
||||
<German>Wasserflasche PET (900ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE9OZ_DESC">
|
||||
<English>Water Bottle PET with 9oz of water.</English>
|
||||
<German>Wasserflasche PET mit 900ml Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE1OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 1oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 100ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE1OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 1oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 100ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE2OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 2oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 200ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE2OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 2oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 200ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE3OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 3oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 300ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE3OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 3oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 300ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE4OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 4oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 400ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE4OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 4oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 400ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE5OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 5oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 500ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE5OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 5oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 500ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE6OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 6oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 600ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE6OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 6oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 600ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE7OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 7oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 700ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE7OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 7oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 700ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE8OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 8oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 800ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE8OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 8oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 800ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE9OZBOILED">
|
||||
<English>Water Bottle PET (Boiled 9oz)</English>
|
||||
<German>Wasserflasche PET (Abgek. 900ml)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_PET_WATERBOTTLE9OZBOILED_DESC">
|
||||
<English>Water Bottle PET with 9oz of boiled water.</English>
|
||||
<German>Wasserflasche PET mit 900ml abgekochtem Wasser.</German>
|
||||
</Key>
|
||||
|
||||
<!--dayz mod crash site display names-->
|
||||
<Key ID="STR_EPOCH_CRASHSITE1">
|
||||
<English>Mi-8 Wreck (Military)</English>
|
||||
<German>Mi-8 Wrack (Militär)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_CRASHSITE2">
|
||||
<English>Mi-8 Wreck (Civil)</English>
|
||||
<German>Mi-8 Wrack (Zivil)</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_CRASHSITE3">
|
||||
<English>UH-1Y Wreck</English>
|
||||
<German>UH-1Y Wrack</German>
|
||||
</Key>
|
||||
<Key ID="STR_EPOCH_CRASHSITE4">
|
||||
<English>HC3 Merlin Wreck</English>
|
||||
<German>HC3 Merlin Wrack</German>
|
||||
</Key>
|
||||
|
||||
<!--Namalsk compatibility-->
|
||||
<Key ID="STR_EQUIP_NAME_43">
|
||||
<English>Winter Ghillie Suit</English>
|
||||
|
||||
@@ -97,6 +97,13 @@ _isMagazine = {
|
||||
_return
|
||||
};
|
||||
|
||||
_isBackpack = {
|
||||
private ["_item","_return"];
|
||||
_item = _this select 0;
|
||||
_return = (str(configfile >> "cfgVehicles" >> _item) != "");
|
||||
_return
|
||||
};
|
||||
|
||||
_IDCsArray = [
|
||||
[107],
|
||||
[121],
|
||||
@@ -421,6 +428,11 @@ private ["_inputItem","_return"];
|
||||
_return = (_name);
|
||||
};
|
||||
|
||||
if ([_inputItem] call _isBackpack) then {
|
||||
_name = getText(configfile >> "cfgVehicles" >> _inputItem >> "descriptionShort");
|
||||
_return = ( _name);
|
||||
};
|
||||
|
||||
_return
|
||||
};
|
||||
|
||||
@@ -439,6 +451,11 @@ _itemName = {
|
||||
_return = ( _name);
|
||||
};
|
||||
|
||||
if ([_item] call _isBackpack) then {
|
||||
_name = getText(configfile >> "cfgVehicles" >> _item >> "displayName");
|
||||
_return = ( _name);
|
||||
};
|
||||
|
||||
_return
|
||||
};
|
||||
|
||||
|
||||
@@ -1144,7 +1144,7 @@ class FSM
|
||||
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Initialize'];};" \n
|
||||
"" \n
|
||||
"//Medical" \n
|
||||
"dayz_medicalH = [] execVM ""\z\addons\dayz_code\medical\init_medical.sqf""; //Medical Monitor Script (client only)" \n
|
||||
"//dayz_medicalH = [] execVM ""\z\addons\dayz_code\medical\init_medical.sqf""; //Medical Monitor Script (client only)" \n
|
||||
"[player] call fnc_usec_damageHandle;" \n
|
||||
"" \n
|
||||
"if (r_player_unconscious) then {" \n
|
||||
|
||||
@@ -7,7 +7,7 @@ sched_medical_slow = { // 10 seconds
|
||||
//Do not global send
|
||||
player setVariable["USEC_BloodQty", r_player_blood, false];
|
||||
player setVariable["medForceUpdate", true, false];
|
||||
//Send only to server
|
||||
//Send only to server
|
||||
PVDZ_serverStoreVar = [player, "USEC_BloodQty", r_player_blood];
|
||||
publicVariableServer "PVDZ_serverStoreVar";
|
||||
};
|
||||
@@ -18,7 +18,9 @@ sched_medical_slow = { // 10 seconds
|
||||
sched_medical_init = { [ []spawn{} ] };
|
||||
sched_medical = { // 1 second
|
||||
HIDE_FSM_VARS
|
||||
private "_unconHdlr";
|
||||
|
||||
private ["_unconHdlr","_lowBlood"];
|
||||
|
||||
_unconHdlr = _this select 0;
|
||||
|
||||
if (r_player_blood == r_player_bloodTotal) then {
|
||||
@@ -26,7 +28,7 @@ sched_medical = { // 1 second
|
||||
};
|
||||
|
||||
//r_player_unconscious = getVariable ["NORRN_unconscious", true];
|
||||
|
||||
|
||||
if (r_player_blood <= 0) then {
|
||||
[dayz_sourceBleeding,"find"] call player_death;
|
||||
};
|
||||
@@ -38,14 +40,29 @@ sched_medical = { // 1 second
|
||||
};
|
||||
};
|
||||
|
||||
if ((r_player_blood <= 3000) and !r_player_unconscious) then {
|
||||
if (random 100 > 99) then {
|
||||
if (!r_player_unconscious && {(r_player_blood/r_player_bloodTotal) < 0.35}) then {
|
||||
r_player_lowblood = true;
|
||||
playSound "heartbeat_1";
|
||||
addCamShake [2, 0.5, 25];
|
||||
if (r_player_lowblood) then {
|
||||
if (!dayz_soundMuted) then {
|
||||
// muted is 0.25, so this is always higher
|
||||
0 fadeSound ((r_player_blood/r_player_bloodTotal) + 0.5);
|
||||
};
|
||||
"dynamicBlur" ppEffectEnable true;"dynamicBlur" ppEffectAdjust [random 4]; "dynamicBlur" ppEffectCommit 0.2;
|
||||
};
|
||||
_lowBlood = player getVariable ["USEC_lowBlood", false];
|
||||
if ((r_player_blood < r_player_bloodTotal) and {!_lowBlood}) then {
|
||||
player setVariable["USEC_lowBlood",true,true];
|
||||
};
|
||||
|
||||
if (r_player_blood <= 3000 && {random 100 > 99}) then {
|
||||
[player, ((random 0.1) + 0.2)] call fnc_usec_damageUnconscious;
|
||||
};
|
||||
};
|
||||
|
||||
//Handle Unconscious player
|
||||
if ((r_player_unconscious) and (!r_player_unconsciousInProgress) and (scriptDone _unconHdlr)) then {
|
||||
if ((r_player_unconscious) and {!r_player_unconsciousInProgress} and {scriptDone _unconHdlr}) then {
|
||||
//localize "CLIENT: Start Unconscious Function";
|
||||
_unconHdlr = [] spawn fnc_usec_unconscious;
|
||||
};
|
||||
@@ -62,7 +79,7 @@ sched_medical = { // 1 second
|
||||
[_unconHdlr]
|
||||
};
|
||||
|
||||
sched_medical_effects_init = {
|
||||
sched_medical_effects_init = {
|
||||
private ["_hndCC", "_hndDB", "_hndRB"];
|
||||
|
||||
_hndCC = ppEffectCreate ["colorCorrections", 3];
|
||||
@@ -72,17 +89,18 @@ sched_medical_effects_init = {
|
||||
_hndRB = ppEffectCreate ["radialBlur", 1];
|
||||
_hndRB ppEffectEnable true;
|
||||
_hndRB ppEffectAdjust [0, 0, 0.5, 0.5];
|
||||
_hndRB ppEffectCommit 0;
|
||||
|
||||
_hndRB ppEffectCommit 0;
|
||||
|
||||
[ _hndCC, _hndDB, _hndRB ]
|
||||
};
|
||||
|
||||
sched_medical_effects = {
|
||||
sched_medical_effects = {
|
||||
// every 2 seconds:
|
||||
// change saturation, blur and vignetting according to blood level
|
||||
// Shivering if character temperature is near the minimum
|
||||
|
||||
private ["_hndCC", "_hndDB", "_tmp1", "_tmp2", "_tmp3"];
|
||||
|
||||
private ["_hndCC", "_hndDB", "_tmp1", "_tmp2", "_tmp3","_hndRB"];
|
||||
|
||||
_hndCC = _this select 0;
|
||||
_hndDB = _this select 1;
|
||||
_hndRB = _this select 2;
|
||||
@@ -114,7 +132,7 @@ sched_medical_effects = {
|
||||
[_hndCC, _hndDB, _hndRB] ppEffectCommit 1.5;
|
||||
|
||||
//Add Shivering
|
||||
if (dayz_temperatur <= (0.125 * (dayz_temperaturmax - dayz_temperaturmin) + dayz_temperaturmin) and ((vehicle player == player and speed player < 5) or (vehicle player != player))) then {
|
||||
if (dayz_temperatur <= (0.125 * (dayz_temperaturmax - dayz_temperaturmin) + dayz_temperaturmin) and {(vehicle player == player and speed player < 5) or (vehicle player != player)}) then {
|
||||
addCamShake [0.6 * (dayz_temperaturmin / dayz_temperatur), 2, 30];
|
||||
};
|
||||
|
||||
@@ -125,15 +143,15 @@ sched_medical_effectsSlow = {
|
||||
// every 10 seconds
|
||||
HIDE_FSM_VARS
|
||||
|
||||
if (!r_player_unconscious && (r_player_infected or r_player_inpain)) then {
|
||||
if (!r_player_unconscious && {r_player_infected or r_player_inpain}) then {
|
||||
//Original pain shake was stronger [2, 1, 25]
|
||||
//Low blood still uses strong shake in init_medical.sqf
|
||||
addCamShake [1, 1, 20];
|
||||
|
||||
|
||||
if (!r_player_infected) then {
|
||||
playSound "breath_1"; //In pain
|
||||
} else {
|
||||
if (1 > random 2 && (speed player < 5 or {vehicle player != player})) then {
|
||||
if ((1 > random 2) && {speed player < 5 or {vehicle player != player}}) then {
|
||||
[player,"cough",1,false] call dayz_zombieSpeak;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -85,7 +85,7 @@ if (_characterID != "?") then {
|
||||
};
|
||||
} else {
|
||||
//Done in server_playerSync above if player is alive
|
||||
{[_x,"gear"] call server_updateObject} count (nearestObjects [_playerPos,DayZ_GearedObjects,10]);
|
||||
{[_x,"gear"] call server_updateObject} count (nearestObjects [[_playerObj] call FNC_GetPos,DayZ_GearedObjects,10]);
|
||||
};
|
||||
|
||||
[_playerUID,_characterID,3,_playerName,(_playerPos call fa_coor2str)] call dayz_recordLogin;
|
||||
@@ -95,4 +95,4 @@ missionNamespace setVariable [_playerUID,nil];
|
||||
|
||||
if (alive _playerObj) then {
|
||||
_playerObj call sched_co_deleteVehicle;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -230,4 +230,4 @@ if (Z_SingleCurrency) then { //update global coins
|
||||
};
|
||||
|
||||
// Force gear updates for nearby vehicles/tents
|
||||
{[_x,"gear"] call server_updateObject;} count nearestObjects [_charPos,DayZ_GearedObjects,10];
|
||||
{[_x,"gear"] call server_updateObject;} count nearestObjects [[_character] call FNC_GetPos,DayZ_GearedObjects,10];
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
// [_object,_type] spawn server_updateObject;
|
||||
#include "\z\addons\dayz_server\compile\server_toggle_debug.hpp"
|
||||
if (isNil "sm_done") exitWith {};
|
||||
private ["_class","_objectID","_objectUID","_object_position","_isNotOk","_object","_type","_recorddmg","_forced","_lastUpdate","_needUpdate","_object_inventory","_object_damage","_objWallDamage","_object_killed","_object_maintenance","_object_variables","_totalDmg"];
|
||||
private ["_class","_objectID","_objectUID","_isNotOk","_object","_type","_forced","_totalDmg"];
|
||||
|
||||
_object = _this select 0;
|
||||
_type = _this select 1;
|
||||
_recorddmg = false;
|
||||
_isNotOk = false;
|
||||
_forced = if (count _this > 2) then {_this select 2} else {false};
|
||||
_totalDmg = if (count _this > 3) then {_this select 3} else {false};
|
||||
_isNotOk = false;
|
||||
_objectID = "0";
|
||||
_objectUID = "0";
|
||||
|
||||
@@ -17,7 +16,7 @@ _objectID = _object getVariable ["ObjectID","0"];
|
||||
_objectUID = _object getVariable ["ObjectUID","0"];
|
||||
_class = typeOf _object;
|
||||
|
||||
if (typeName _objectID != "STRING" or (typeName _objectUID != "STRING")) then {
|
||||
if (typeName _objectID != "STRING" || {typeName _objectUID != "STRING"}) then {
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log (format["Non-string Object: ID %1 UID %2", _objectID, _objectUID]);
|
||||
#endif
|
||||
@@ -26,17 +25,16 @@ if (typeName _objectID != "STRING" or (typeName _objectUID != "STRING")) then {
|
||||
_objectUID = nil;
|
||||
};
|
||||
|
||||
if (!(_class in DZE_safeVehicle) && !locked _object) then {
|
||||
if (!(_class in DZE_safeVehicle) && {!locked _object}) then {
|
||||
//diag_log format["Object: %1, ObjectID: %2, ObjectUID: %3",_object,_objectID,_objectUID];
|
||||
if (!(_objectID in dayz_serverIDMonitor) && isNil {_objectUID}) then {
|
||||
if (!(_objectID in dayz_serverIDMonitor) && {isNil "_objectUID"}) then {
|
||||
//force fail
|
||||
_objectID = nil;
|
||||
_objectUID = nil;
|
||||
_objectUID = nil;
|
||||
};
|
||||
if ((isNil {_objectID}) && (isNil {_objectUID})) then {
|
||||
_object_position = getPosATL _object;
|
||||
if (isNil "_objectID" && {isNil "_objectUID"}) then {
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log format["Object %1 with invalid ID at pos %2",_class,_object_position];
|
||||
diag_log format["Object %1 with invalid ID at pos %2",_class,getPosATL _object];
|
||||
#endif
|
||||
_isNotOk = true;
|
||||
};
|
||||
@@ -46,263 +44,36 @@ if (_isNotOk) exitWith {
|
||||
//deleteVehicle _object;
|
||||
};
|
||||
|
||||
_lastUpdate = _object getVariable ["lastUpdate",diag_tickTime];
|
||||
_needUpdate = _object in needUpdate_objects;
|
||||
|
||||
// TODO ----------------------
|
||||
_object_position = {
|
||||
private ["_position","_worldspace","_fuel","_key"];
|
||||
_position = getPosATL _object;
|
||||
//_worldspace = [round (direction _object),_position];
|
||||
_worldspace = [getDir _object, _position] call AN_fnc_formatWorldspace; // Precise Base Building 1.0.5
|
||||
_fuel = if (_class isKindOf "AllVehicles") then {fuel _object} else {0};
|
||||
|
||||
_key = format["CHILD:305:%1:%2:%3:",_objectID,_worldspace,_fuel];
|
||||
_key call server_hiveWrite;
|
||||
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
};
|
||||
|
||||
_object_inventory = {
|
||||
private ["_inventory","_key","_isNormal","_coins"];
|
||||
if (_class isKindOf "TrapItems") then {
|
||||
_inventory = [["armed",_object getVariable ["armed",false]]];
|
||||
} else {
|
||||
_isNormal = true;
|
||||
|
||||
if (DZE_permanentPlot && (_class == "Plastic_Pole_EP1_DZ")) then {
|
||||
_isNormal = false;
|
||||
_inventory = _object getVariable ["plotfriends", []]; //We're replacing the inventory with UIDs for this item
|
||||
};
|
||||
|
||||
if (DZE_doorManagement && (_class in DZE_DoorsLocked)) then {
|
||||
_isNormal = false;
|
||||
_inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item
|
||||
};
|
||||
|
||||
if (_isNormal) then {
|
||||
_inventory = [getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object];
|
||||
};
|
||||
};
|
||||
|
||||
_previous = str(_object getVariable["lastInventory",[]]);
|
||||
if (str _inventory != _previous) then {
|
||||
_object setVariable["lastInventory",_inventory];
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:309:%1:",_objectUID] + str _inventory + ":";
|
||||
} else {
|
||||
_key = format["CHILD:303:%1:",_objectID] + str _inventory + ":";
|
||||
};
|
||||
if (Z_SingleCurrency) then {
|
||||
_coins = _object getVariable [Z_MoneyVariable, -1]; //set to invalid value if getVariable fails to prevent overwriting of coins in DB
|
||||
_key = _key + str _coins + ":";
|
||||
};
|
||||
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
};
|
||||
|
||||
_object_damage = {
|
||||
//Allow dmg process
|
||||
private ["_hitpoints","_array","_hit","_selection","_key","_damage","_allFixed"];
|
||||
_hitpoints = _object call vehicle_getHitpoints;
|
||||
_damage = damage _object;
|
||||
_array = [];
|
||||
_allFixed = true;
|
||||
|
||||
{
|
||||
_hit = [_object,_x] call object_getHit;
|
||||
if ((_hit select 0) > 0) then {
|
||||
|
||||
_allFixed = false;
|
||||
_array set [count _array,[(_hit select 1),(_hit select 0)]];
|
||||
//diag_log format ["Section Part: %1, Dmg: %2",(_hit select 1),(_hit select 0)];
|
||||
} else {
|
||||
_array set [count _array,[(_hit select 1),0]];
|
||||
};
|
||||
} forEach _hitpoints;
|
||||
|
||||
if (_allFixed && !_totalDmg) then {_object setDamage 0;};
|
||||
|
||||
if (_forced) then {
|
||||
if (_object in needUpdate_objects) then {needUpdate_objects = needUpdate_objects - [_object];};
|
||||
_recorddmg = true;
|
||||
} else {
|
||||
//Prevent damage events for the first 10 seconds of the servers live.
|
||||
if (diag_ticktime - _lastUpdate > 10) then {
|
||||
if !(_object in needUpdate_objects) then {
|
||||
//diag_log format["DEBUG: Monitoring: %1",_object];
|
||||
needUpdate_objects set [count needUpdate_objects, _object];
|
||||
_recorddmg = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
if (_recorddmg) then {
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:306:%1:",_objectUID] + str _array + ":" + str _damage + ":";
|
||||
} else {
|
||||
_key = format["CHILD:306:%1:",_objectID] + str _array + ":" + str _damage + ":";
|
||||
};
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
};
|
||||
|
||||
//Walls
|
||||
_objWallDamage = {
|
||||
private ["_key","_damage"];
|
||||
_damage = (damage _object);
|
||||
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectUID,[],_damage];
|
||||
} else {
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectID,[],_damage];
|
||||
};
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
|
||||
_object_killed = {
|
||||
private ["_clientKey","_exitReason","_index","_key","_playerUID"];
|
||||
|
||||
if (count _this != 6) exitWith {
|
||||
diag_log "Server_UpdateObject error: wrong parameter format";
|
||||
};
|
||||
|
||||
_playerUID = _this select 4;
|
||||
_clientKey = _this select 5;
|
||||
_index = dayz_serverPUIDArray find _playerUID;
|
||||
|
||||
_exitReason = switch true do {
|
||||
//Can't use owner because player may already be dead, can't use distance because player may be far from vehicle wreck
|
||||
case (_clientKey == dayz_serverKey): {""};
|
||||
case (_index < 0): {
|
||||
format["Server_UpdateObject error: PUID NOT FOUND ON SERVER. PV ARRAY: %1",_this]
|
||||
};
|
||||
case ((dayz_serverClientKeys select _index) select 1 != _clientKey): {
|
||||
format["Server_UpdateObject error: CLIENT AUTH KEY INCORRECT OR UNRECOGNIZED. PV ARRAY: %1",_this]
|
||||
};
|
||||
case (alive _object && {!(_class isKindOf "TentStorage_base" or _class isKindOf "IC_Tent")}): {
|
||||
format["Server_UpdateObject error: object kill request on living object. PV ARRAY: %1",_this]
|
||||
};
|
||||
default {""};
|
||||
};
|
||||
|
||||
if (_exitReason != "") exitWith {diag_log _exitReason};
|
||||
_object setDamage 1;
|
||||
|
||||
if (_objectID == "0") then {
|
||||
//Need to update hive to make a new call to allow UID to be updated for a killed event
|
||||
//_key = format["CHILD:306:%1:%2:%3:",_objectUID,[],1];
|
||||
_key = format["CHILD:310:%1:",_objectUID];
|
||||
} else {
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectID,[],1];
|
||||
};
|
||||
_key call server_hiveWrite;
|
||||
|
||||
if (_playerUID == "SERVER") then {
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log format["DELETE: Server requested destroy on object %1 ID:%2 UID:%3",_class,_objectID,_objectUID];
|
||||
#endif
|
||||
} else {
|
||||
diag_log format["DELETE: PUID(%1) requested destroy on object %2 ID:%3 UID:%4",_playerUID,_class,_objectID,_objectUID];
|
||||
};
|
||||
|
||||
if (_class in DayZ_removableObjects or (_class in DZE_isRemovable)) then {[_objectID,_objectUID] call server_deleteObjDirect;};
|
||||
};
|
||||
|
||||
_object_maintenance = {
|
||||
private ["_ownerArray","_key"];
|
||||
|
||||
_ownerArray = _object getVariable ["ownerArray",[]];
|
||||
_accessArray = _object getVariable ["dayz_padlockCombination",[]];
|
||||
_variables set [count _variables, ["ownerArray", _ownerArray]];
|
||||
_variables set [count _variables, ["padlockCombination", _accessArray]];
|
||||
|
||||
_object setDamage 0;
|
||||
|
||||
if (_objectID == "0") then {
|
||||
//_key = format["CHILD:309:%1:%2:",_objectUID,_ownerArray];
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectUID,[],0]; //Wont work just now.
|
||||
} else {
|
||||
//_key = format["CHILD:303:%1:%2:",_objectID,_ownerArray];
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectID,[],0];
|
||||
};
|
||||
|
||||
// #ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: Maintenance, "+ str(_key));
|
||||
// #endif
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
|
||||
_object_variables = {
|
||||
private ["_ownerArray","_key","_accessArray","_variables","_coins"];
|
||||
|
||||
_ownerArray = _object getVariable ["ownerArray",[]];
|
||||
_accessArray = _object getVariable ["dayz_padlockCombination",[]];
|
||||
_lockedArray = _object getVariable ["BuildLock",false];
|
||||
|
||||
//diag_log format ["[%1,%2]",_ownerArray,_accessArray];
|
||||
_variables = [];
|
||||
_variables set [count _variables, ["ownerArray", _ownerArray]];
|
||||
_variables set [count _variables, ["padlockCombination", _accessArray]];
|
||||
_variables set [count _variables, ["BuildLock", _lockedArray]];
|
||||
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:309:%1:%2:",_objectUID,_variables];
|
||||
} else {
|
||||
_key = format["CHILD:303:%1:%2:",_objectID,_variables];
|
||||
};
|
||||
if (Z_SingleCurrency) then {
|
||||
_coins = _object getVariable [Z_MoneyVariable, -1];
|
||||
_key = _key + str _coins + ":";
|
||||
};
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
|
||||
_object setVariable ["lastUpdate",diag_ticktime,true];
|
||||
switch (_type) do {
|
||||
case "all": {
|
||||
call _object_position;
|
||||
call _object_inventory;
|
||||
call _object_damage;
|
||||
|
||||
call {
|
||||
if (_type == "all") exitwith {
|
||||
[_object,_objectID] call server_obj_pos;
|
||||
[_object,_objectID,_objectUID] call server_obj_inv;
|
||||
[_object,_objectID,_objectUID,_forced,_totalDmg] call server_obj_dam;
|
||||
};
|
||||
case "position": {
|
||||
call _object_position;
|
||||
if (_type == "position") exitwith {
|
||||
[_object,_objectID] call server_obj_pos;
|
||||
};
|
||||
case "gear": {
|
||||
call _object_inventory;
|
||||
if (_type == "gear") exitwith {
|
||||
[_object,_objectID,_objectUID] call server_obj_inv;
|
||||
};
|
||||
case "maintenance": {
|
||||
call _object_maintenance;
|
||||
if (_type == "damage" || {_type == "repair"}) exitwith {
|
||||
[_object,_objectID,_objectUID,_forced,_totalDmg] call server_obj_dam;
|
||||
};
|
||||
case "damage"; case "repair" : {
|
||||
call _object_damage;
|
||||
if (_type == "killed") exitwith {
|
||||
private ["_playerUID", "_clientKey"];
|
||||
|
||||
if (count _this != 6) exitWith {
|
||||
diag_log "Server_UpdateObject error: wrong parameter format";
|
||||
};
|
||||
|
||||
_playerUID = _this select 4;
|
||||
_clientKey = _this select 5;
|
||||
[_object,_objectID,_objectUID,_playerUID,_clientKey] call server_obj_killed;
|
||||
};
|
||||
case "killed": {
|
||||
_this call _object_killed;
|
||||
};
|
||||
case "accessCode"; case "buildLock" : {
|
||||
call _object_variables;
|
||||
};
|
||||
case "objWallDamage": {
|
||||
call _objWallDamage;
|
||||
};
|
||||
case "coins": {
|
||||
if (_type == "coins") exitwith {
|
||||
_object setVariable ["lastInventory",["forceUpdate"]];
|
||||
call _object_inventory;
|
||||
[_object,_objectID,_objectUID] call server_obj_inv;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -21,7 +21,7 @@ _exitReason = switch true do {
|
||||
//If object or player was moved with setPos on client, position takes a second to update on server
|
||||
//Coordinates can be used in place of object
|
||||
case (_objPos distance _player > (Z_VehicleDistance + 10)): {
|
||||
format["%1 error: Verification failed, player is too far from object. PV ARRAY: %2",_function,_params]
|
||||
format["%1 error: Verification failed, player is too far from object. Distance: %2m/%3m limit PV ARRAY: %4",_function,round (_objPos distance _player),Z_VehicleDistance + 10,_params]
|
||||
};
|
||||
case (_index < 0): {
|
||||
format["%1 error: PUID NOT FOUND ON SERVER. PV ARRAY: %2",_function,_params]
|
||||
|
||||
180
SQF/dayz_server/compile/updateObject_functions.sqf
Normal file
180
SQF/dayz_server/compile/updateObject_functions.sqf
Normal file
@@ -0,0 +1,180 @@
|
||||
#include "\z\addons\dayz_server\compile\server_toggle_debug.hpp"
|
||||
|
||||
server_obj_pos = {
|
||||
private ["_object","_objectID","_class","_position","_worldspace","_fuel","_key"];
|
||||
|
||||
_object = _this select 0;
|
||||
_objectID = _this select 1;
|
||||
_class = typeOf _object;
|
||||
|
||||
_position = getPosATL _object;
|
||||
//_worldspace = [round (direction _object),_position];
|
||||
_worldspace = [getDir _object, _position] call AN_fnc_formatWorldspace; // Precise Base Building 1.0.5
|
||||
_fuel = [0, fuel _object] select (_class isKindOf "AllVehicles");
|
||||
|
||||
_key = format["CHILD:305:%1:%2:%3:",_objectID,_worldspace,_fuel];
|
||||
_key call server_hiveWrite;
|
||||
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
};
|
||||
|
||||
server_obj_inv = {
|
||||
private ["_object","_objectID", "_objectUID", "_class","_inventory","_key","_isNormal","_coins","_previous"];
|
||||
|
||||
_object = _this select 0;
|
||||
_objectID = _this select 1;
|
||||
_objectUID = _this select 2;
|
||||
_class = typeOf _object;
|
||||
|
||||
if (_class isKindOf "TrapItems") then {
|
||||
_inventory = [["armed",_object getVariable ["armed",false]]];
|
||||
} else {
|
||||
_isNormal = true;
|
||||
|
||||
if (DZE_permanentPlot && {_class == "Plastic_Pole_EP1_DZ"}) then {
|
||||
_isNormal = false;
|
||||
_inventory = _object getVariable ["plotfriends", []]; //We're replacing the inventory with UIDs for this item
|
||||
};
|
||||
|
||||
if (DZE_doorManagement && {_class in DZE_DoorsLocked}) then {
|
||||
_isNormal = false;
|
||||
_inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item
|
||||
};
|
||||
|
||||
if (_isNormal) then {
|
||||
_inventory = [getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object];
|
||||
};
|
||||
};
|
||||
|
||||
_previous = str(_object getVariable["lastInventory",[]]);
|
||||
if (str _inventory != _previous) then {
|
||||
_object setVariable ["lastInventory",_inventory];
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:309:%1:",_objectUID] + str _inventory + ":";
|
||||
} else {
|
||||
_key = format["CHILD:303:%1:",_objectID] + str _inventory + ":";
|
||||
};
|
||||
|
||||
if (Z_SingleCurrency) then {
|
||||
_coins = _object getVariable [Z_MoneyVariable, -1]; //set to invalid value if getVariable fails to prevent overwriting of coins in DB
|
||||
_key = _key + str _coins + ":";
|
||||
};
|
||||
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
};
|
||||
|
||||
server_obj_dam = {
|
||||
//Allow dmg process
|
||||
private ["_object","_objectID", "_objectUID","_forced","_totalDmg","_recorddmg","_hitpoints","_array","_hit","_key","_damage","_allFixed","_lastUpdate"];
|
||||
|
||||
_object = _this select 0;
|
||||
_objectID = _this select 1;
|
||||
_objectUID = _this select 2;
|
||||
_forced = _this select 3;
|
||||
_totalDmg = _this select 4;
|
||||
|
||||
_recorddmg = false;
|
||||
_hitpoints = _object call vehicle_getHitpoints;
|
||||
_damage = damage _object;
|
||||
_array = [];
|
||||
_allFixed = true;
|
||||
_lastUpdate = _object getVariable ["lastUpdate",diag_tickTime];
|
||||
|
||||
{
|
||||
_hit = [_object,_x] call object_getHit;
|
||||
if ((_hit select 0) > 0) then {
|
||||
|
||||
_allFixed = false;
|
||||
_array set [count _array,[(_hit select 1),(_hit select 0)]];
|
||||
//diag_log format ["Section Part: %1, Dmg: %2",(_hit select 1),(_hit select 0)];
|
||||
} else {
|
||||
_array set [count _array,[(_hit select 1),0]];
|
||||
};
|
||||
} count _hitpoints;
|
||||
|
||||
if (_allFixed && {!_totalDmg}) then {_object setDamage 0;};
|
||||
|
||||
if (_forced) then {
|
||||
if (_object in needUpdate_objects) then {needUpdate_objects = needUpdate_objects - [_object];};
|
||||
_recorddmg = true;
|
||||
} else {
|
||||
//Prevent damage events for the first 10 seconds of the servers live.
|
||||
if (diag_ticktime - _lastUpdate > 10) then {
|
||||
if !(_object in needUpdate_objects) then {
|
||||
//diag_log format["DEBUG: Monitoring: %1",_object];
|
||||
needUpdate_objects set [count needUpdate_objects, _object];
|
||||
_recorddmg = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
if (_recorddmg) then {
|
||||
if (_objectID == "0") then {
|
||||
_key = format["CHILD:306:%1:",_objectUID] + str _array + ":" + str _damage + ":";
|
||||
} else {
|
||||
_key = format["CHILD:306:%1:",_objectID] + str _array + ":" + str _damage + ":";
|
||||
};
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log ("HIVE: WRITE: "+ str(_key));
|
||||
#endif
|
||||
|
||||
_key call server_hiveWrite;
|
||||
};
|
||||
};
|
||||
|
||||
server_obj_killed = {
|
||||
private ["_object", "_objectID", "_objectUID", "_class","_clientKey","_exitReason","_index","_key","_playerUID"];
|
||||
|
||||
_object = _this select 0;
|
||||
_objectID = _this select 1;
|
||||
_objectUID = _this select 2;
|
||||
_playerUID = _this select 3;
|
||||
_clientKey = _this select 4;
|
||||
|
||||
_class = typeOf _object;
|
||||
_index = dayz_serverPUIDArray find _playerUID;
|
||||
|
||||
_exitReason = call {
|
||||
//Can't use owner because player may already be dead, can't use distance because player may be far from vehicle wreck
|
||||
if (_clientKey == dayz_serverKey) exitwith {""};
|
||||
if (_index < 0) exitwith {
|
||||
format["Server_UpdateObject error: PUID NOT FOUND ON SERVER. PV ARRAY: %1",_this]
|
||||
};
|
||||
if ((dayz_serverClientKeys select _index) select 1 != _clientKey) exitwith {
|
||||
format["Server_UpdateObject error: CLIENT AUTH KEY INCORRECT OR UNRECOGNIZED. PV ARRAY: %1",_this]
|
||||
};
|
||||
if (alive _object && {!(_class isKindOf "TentStorage_base" or _class isKindOf "IC_Tent")}) exitwith {
|
||||
format["Server_UpdateObject error: object kill request on living object. PV ARRAY: %1",_this]
|
||||
};
|
||||
if (1==1) exitwith {""};
|
||||
};
|
||||
|
||||
if (_exitReason != "") exitWith {diag_log _exitReason};
|
||||
_object setDamage 1;
|
||||
|
||||
if (_objectID == "0") then {
|
||||
//Need to update hive to make a new call to allow UID to be updated for a killed event
|
||||
//_key = format["CHILD:306:%1:%2:%3:",_objectUID,[],1];
|
||||
_key = format["CHILD:310:%1:",_objectUID];
|
||||
} else {
|
||||
_key = format["CHILD:306:%1:%2:%3:",_objectID,[],1];
|
||||
};
|
||||
_key call server_hiveWrite;
|
||||
|
||||
if (_playerUID == "SERVER") then {
|
||||
#ifdef OBJECT_DEBUG
|
||||
diag_log format["DELETE: Server requested destroy on object %1 ID:%2 UID:%3",_class,_objectID,_objectUID];
|
||||
#endif
|
||||
} else {
|
||||
diag_log format["DELETE: PUID(%1) requested destroy on object %2 ID:%3 UID:%4",_playerUID,_class,_objectID,_objectUID];
|
||||
};
|
||||
|
||||
if (_class in DayZ_removableObjects || {_class in DZE_isRemovable}) then {[_objectID,_objectUID] call server_deleteObjDirect;};
|
||||
};
|
||||
@@ -21,6 +21,7 @@ dayz_serverKey = toString dayz_serverKey;
|
||||
server_playerLogin = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerLogin.sqf";
|
||||
server_playerSetup = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerSetup.sqf";
|
||||
server_onPlayerDisconnect = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_onPlayerDisconnect.sqf";
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\updateObject_functions.sqf";
|
||||
server_updateObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateObject.sqf";
|
||||
server_playerDied = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerDied.sqf";
|
||||
server_publishObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishObject.sqf"; //Creates the object in DB
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
//new
|
||||
5 \{
|
||||
5 \(
|
||||
5 ;
|
||||
5 &
|
||||
5 %
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
5 attachTo !"(_variation * 2)) - _variation)];\n_bolt attachTo [_hitObject,_val,_hitMemoryPt];" !"player playActionNow \"PutDown\";\nuiSleep 2;\n_flare attachTo [player,[0,0,0],\"granat2\"];" !"tchmove \"ainjpfalmstpsnonwrfldnon_carried_still\";\n_dragee attachto [_unit,[-0.2, 0.2, 0]];" !"_source setDropInterval 0.02;\n_point attachTo [_unit,_modelPos,_wound];" !" attachto [_v,[0,0,0],\"destructionEffect" !"publicVariable \"PVDZ_drg_RaDrag\";\n\n_dragee attachto [_unit,[0.1, 1.01, 0]];" !="_l1 attachTo [_lh,[0,0,0],\"light\"];" !"_objectHelper attachTo [player,_offset];" !"_object attachTo [player,_offset];\n\n_position = getPosATL _object;" !="_vehicle attachTo [_liftHeli,[0,0,-7]];" !="_obj attachTo [_axis];" !"_objectSnapGizmo attachTo [_object,[_x select 0,_x select 1,_x select 2]];" !="_vehicle attachTo [_towTruck,[1.3,-2,2.3]];" !"localize \"STR_EPOCH_ACTIONS_ATTACHTOHELI\","
|
||||
5 buttonSetAction
|
||||
5 callExtension
|
||||
5 camCreate !"camCreate (player modeltoWorld [0,0,2]);\n0.2 fadeSound 0.1;\nDayz_" !"_body;\n_playerID = getPlayerUID player;\n\n\n_camera = \"camera\" camCreate _death" !="_camera = \"camera\" camCreate [12222.323, 3415.7791, -0.059190542]"
|
||||
5 cameraEffect !"0.2 fadeSound 0.1;\nDayz_BuildCamera cameraeffect [\"External\", \"TOP\"];" !"cameraEffect [\"Internal\",\"TOP\"];\n_camera camSetTarget _deathPos;\n_camera camSetPos [_deathPos select" !"r_Simulation\";\n\n_camera cameraEffect [\"Terminate" !"cameraEffect [\"internal\",\"back\"]\n\n_camera camPrepareTarget [6433.5"
|
||||
5 camCreate !"camCreate (player modeltoWorld [0,0,2]);\n0.2 fadeSound 0.1;\nDayz_" !"_body;\n_playerID = getPlayerUID player;\n\n\n_camera = \"camera\" camCreate _death" !="_camera = \"camera\" camCreate [12222.323, 3415.7791, -0.059190542]" !"kdy = cos _dir * _size;\n_kdz = _size;\n\n\n_camera ="
|
||||
5 cameraEffect !"0.2 fadeSound 0.1;\nDayz_BuildCamera cameraeffect [\"External\", \"TOP\"];" !"cameraEffect [\"Internal\",\"TOP\"];\n_camera camSetTarget _deathPos;\n_camera camSetPos [_deathPos select" !"r_Simulation\";\n\n_camera cameraEffect [\"Terminate" !"cameraEffect [\"internal\",\"back\"]\n\n_camera camPrepareTarget [6433.5" !"kdy = cos _dir * _size;\n_kdz = _size;\n\n\n_camera ="
|
||||
5 closeDisplay !"'closeDisplay'" !"closeDisplay 0" !"closeDisplay 2" !"if (!isNil \"closeDisplay\") then {"
|
||||
1 compile !"ca\\communityconfiguration" !"ca\\Data\\" !"ca\\missions" !"ca\\modules" !"ca\\ui\\" !"ca\\Warfare2\\" !"scriptName \"Functions\\systems\\fn_inv" !"scriptName \"MP\\data\\script" !"code = compile preprocessFileLineNumbers (BIS_PathMPscriptCommands" !"t = missionConfigFile >> \"onMinimapScript" !="_this call (call compile GetText (configFile >> \"CfgAmmo\" >> _amm >> \"muzzleEffect\"));" !"z\\addons\\dayz_code\\" !"_menu ctrlSetEventHandler [\"ButtonClick\",_compile];\n};\n_pos set [3" !"{ _x set [1, compile (_x select 1)]; }" !"silver_1oz_b);\n\n{ \nif (!isNil {call compile" !"Var = compile format[\"epoch_death_board_record_"
|
||||
5 createAgent !="_agent = createAgent [_type, _position, [], _radius, \"CAN_COLLIDE\"];" !="_agent = if (_type == \"Pastor\") then {createAgent [_type, _Pos, [], 0, \"NONE\"]} else {createAgent [_type, _Pos, [], 0, \"FORM\"]};" !="_dog = createAgent [_type, _Pos, [], 0, \"NONE\"];"
|
||||
@@ -68,7 +68,7 @@
|
||||
5 setVehicle !"if(_status) then {\n_vehicle setVehicleLock \"LOCKED\";\n} else {\n_vehicle setVehicleLock \"UNLOCKED\";\n};"
|
||||
5 setViewDistance
|
||||
5 sideLogic !"publicVariable \"BIS_MPF_logic\";"
|
||||
5 switchCamera !"\"switchCamera\", " !"rswitchCamera" !="player switchCamera (Dayz_constructionContext select 2);" !"player switchCamera _currentCamera;\nif (_currentWpn !="
|
||||
5 switchCamera !"\"switchCamera\", " !"rswitchCamera" !="player switchCamera (Dayz_constructionContext select 2);" !"player switchCamera _currentCamera;\nif (_currentWpn !=" !"< 150) && random 1 > 0.5) then {\n_killer switchcamera"
|
||||
5 systemChat !="systemChat format[localize \"str_missing_to_do_this\", _x];" !"systemChat (localize " !"systemChat format[localize \"STR_EPOCH_" !"systemChat localize \"STR_EPOCH_" !"case \"system\": {systemChat _message;};"
|
||||
5 title !"titleCut [\"\", \"BLACK " !"\"titleCut\", " !"\"titleText\"" !="rtitleCut = 'titleCut'" !"rtitleCutc" !="rtitleText = 'titleText'" !"rtitleTextc" !"(_missionTextListPath >> \"titles\")" !"(_display displayCtrl _titleIDC) ctrlShow false;" !"titleText [format[localize \"str_return_lobby\", _x" !",\"_titleText\"" !"localize 'STR_UI_GENDER_TITLE';\n_timeNem" !="scriptName \"MP\\data\\scriptCommands\\titleText.sqf\";" !_fillTradeTitle !_bldTxtStringTitle !"localize \"str_halo_altitude_speed"
|
||||
5 toString !"_animCheck = toString ([(_animStateArray select 0),(_animStateArray select 1)" !="_skinToModel = toString (_finalArray);" !="{_textArrayTemp = _textArrayTemp + [tostring [_x]]} foreach _line;" !="_cmpt = toString _cmpt;" !="_objName = toLower(toString(_objName));" !"if (toString _hayArr != _needle) then {" !="_type = toString _typeA;" !="_anim4 = toString _anim4;" !"{(count _stance>17)}) then {toString [_stance select 17]}" !"BIS_fnc_timeToString" !"02, if (typeName _name == \"ARRAY\") then {toString _name} else {_name}];"
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
-- ----------------------------
|
||||
DROP FUNCTION IF EXISTS `FindVehicleKeysCount`;
|
||||
DELIMITER ;;
|
||||
CREATE FUNCTION `FindVehicleKeysCount`(`keyId` INT) RETURNS int(11)
|
||||
CREATE FUNCTION `FindVehicleKeysCount`(`keyId` INT)
|
||||
RETURNS int(11)
|
||||
DETERMINISTIC
|
||||
BEGIN
|
||||
DECLARE totalKeys INT DEFAULT 0;
|
||||
DECLARE keyName VARCHAR(32) DEFAULT "";
|
||||
@@ -37,7 +39,9 @@ DELIMITER ;
|
||||
-- ----------------------------
|
||||
DROP FUNCTION IF EXISTS `DeleteNonKeyVehicles`;
|
||||
DELIMITER ;;
|
||||
CREATE FUNCTION `DeleteNonKeyVehicles`() RETURNS int(11)
|
||||
CREATE FUNCTION `DeleteNonKeyVehicles`()
|
||||
RETURNS int(11)
|
||||
DETERMINISTIC
|
||||
BEGIN
|
||||
DELETE FROM
|
||||
`Object_DATA`
|
||||
|
||||
Reference in New Issue
Block a user