diff --git a/.github/workflows/UpdateDevBuild.yml b/.github/workflows/UpdateDevBuild.yml index 3bc764e7f1..ccaee4d55e 100644 --- a/.github/workflows/UpdateDevBuild.yml +++ b/.github/workflows/UpdateDevBuild.yml @@ -27,7 +27,7 @@ jobs: run: '.\tools\Builder\buildAddons.ps1 -WorkshopID ${{github.event.inputs.workshopid}} -modFileName mod_dev.cpp' - name: Upload build addon artifact - uses: actions/upload-artifact@v3.1.2 + uses: actions/upload-artifact@v4 with: name: A3A path: build\A3A @@ -38,7 +38,7 @@ jobs: needs: [build] steps: - name: Download addon artifact - uses: actions/download-artifact@v3.0.2 + uses: actions/download-artifact@v4 with: name: A3A path: A3A diff --git a/.github/workflows/publishBranchToSteam.yml b/.github/workflows/publishBranchToSteam.yml index 49a2c65c96..cc8e01368d 100644 --- a/.github/workflows/publishBranchToSteam.yml +++ b/.github/workflows/publishBranchToSteam.yml @@ -10,7 +10,7 @@ jobs: timeout-minutes: 5 steps: - name: Checkout the code - uses: actions/checkout@v2 + uses: actions/checkout@v3.3.0 - name: Increment version locally run: chmod +x ./tools/incrementVersion.js && @@ -20,7 +20,7 @@ jobs: run: '.\tools\Builder\buildAddons.ps1 -WorkshopID ${{secrets.WORKSHOPID}}' - name: Upload build addon artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: A3A path: build\A3A @@ -31,13 +31,13 @@ jobs: needs: [build] steps: - name: Download addon artifact - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: name: A3A path: A3A - name: Publish to Steam Workshop - uses: arma-actions/workshop-upload@v1 + uses: arma-actions/workshop-upload@v1.0.2 with: appId: '107410' # default itemId: ${{ secrets.WORKSHOPID }} # https://steamcommunity.com/sharedfiles/filedetails/?id=[...]] diff --git a/.github/workflows/syncStringtables.yml b/.github/workflows/syncStringtables.yml index 20b7442206..c72edc4cbc 100644 --- a/.github/workflows/syncStringtables.yml +++ b/.github/workflows/syncStringtables.yml @@ -28,7 +28,7 @@ jobs: python-version: "3.11" - name: Install antistasi_translation_sync package - run: pip install "Tools/antistasi_translation_sync-0.5.0-py3-none-any.whl" + run: pip install "Tools/antistasi_translation_sync-0.6.1-py3-none-any.whl" - name: actual syncing diff --git a/A3A/addons/config_fixes/3CB/CfgWeapons.hpp b/A3A/addons/config_fixes/3CB/CfgWeapons.hpp index d62622d799..5470523f0e 100644 --- a/A3A/addons/config_fixes/3CB/CfgWeapons.hpp +++ b/A3A/addons/config_fixes/3CB/CfgWeapons.hpp @@ -12,5 +12,18 @@ class CfgWeapons magazineWell[] = {"CBA_792x57_K98"}; recoil = "recoil_dmr_01"; }; + + class UK3CB_MG3; + class UK3CB_MG3_KWS_T : UK3CB_MG3{ + BaseWeapon = "UK3CB_MG3_KWS_T"; + }; + class UK3CB_M21; + class UK3CB_M21_Bipod_Railed : UK3CB_M21{ + BaseWeapon = "UK3CB_M21_Bipod_Railed"; + }; + class uk3cb_auga2_sr_carb; + class uk3cb_auga2_sr_carb_tan : uk3cb_auga2_sr_carb{ + BaseWeapon = "uk3cb_auga2_sr_carb_tan"; + }; }; diff --git a/A3A/addons/config_fixes/3CB/config.cpp b/A3A/addons/config_fixes/3CB/config.cpp index 4739442d53..c97f55ce27 100644 --- a/A3A/addons/config_fixes/3CB/config.cpp +++ b/A3A/addons/config_fixes/3CB/config.cpp @@ -11,7 +11,8 @@ class CfgPatches units[] = {}; weapons[] = {}; requiredVersion = REQUIRED_VERSION; - requiredAddons[] = {"A3_Data_F_AoW_Loadorder","UK3CB_Factions_Vehicles_SUV"}; + requiredAddons[] = {"A3_Data_F_AoW_Loadorder","UK3CB_Factions_Vehicles_SUV", + "UK3CB_Factions_Weapons_AUG","UK3CB_Factions_Weapons_M14","UK3CB_Factions_Weapons_MG3"}; author = AUTHOR; authors[] = { AUTHORS }; authorUrl = ""; diff --git a/A3A/addons/config_fixes/CUP/CfgVehicles.hpp b/A3A/addons/config_fixes/CUP/CfgVehicles.hpp new file mode 100644 index 0000000000..d55ae8ac1e --- /dev/null +++ b/A3A/addons/config_fixes/CUP/CfgVehicles.hpp @@ -0,0 +1,38 @@ +//Vanilla - CfgVehicles.hpp + +class CfgVehicles +{ + #include "sfp_air.hpp" + + // Nose-fall tweaks to make planes turn at a semi-decent rate when flown by AI + class Plane_Base_F; + class CUP_A10_Base : Plane_Base_F + { + draconicTorqueXCoef = 2; + }; + class CUP_L39_base : Plane_base_F + { + draconicTorqueXCoef = 2; + }; + + // The faster planes benefit slightly from more torque, so we use the array form + class Plane; + class CUP_AV8B_Base : Plane + { + draconicTorqueXCoef[] = {2,3,4,5,6,7,8,9,10,10.1,10.2}; + }; + class CUP_Su25_base : Plane + { + draconicTorqueXCoef[] = {2,3,4,5,6,7,8,9,10,10.1,10.2}; + //speeds in m/s: {0, 37.5, 75, 112.5, 150, 187.5, 225, 262.5, 300, 337.5, 375m/s} + }; + class CUP_F35B_base : Plane + { + draconicTorqueXCoef[] = {2,3.5,5,6.5,8,9,10,11,12,12.1,12.2}; + //speeds in m/s: {0, 58.3, 117, 175, 233, 292, 350, 408, 467, 525, 583m/s} + }; + class CUP_SU34_BASE : Plane + { + draconicTorqueXCoef[] = {2,3.5,5,6.5,8,9,10,11,12,12.1,12.2}; + }; +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/CUP/config.cpp b/A3A/addons/config_fixes/CUP/config.cpp index 5154929737..53aba264e8 100644 --- a/A3A/addons/config_fixes/CUP/config.cpp +++ b/A3A/addons/config_fixes/CUP/config.cpp @@ -2,8 +2,6 @@ #include "..\script_component.hpp" -#if __has_include("\CUP\Vehicles\CUP_Vehicles_LoadOrder\config.bin") - class CfgPatches { class PATCHNAME(CUP) @@ -16,13 +14,12 @@ class CfgPatches author = AUTHOR; authors[] = { AUTHORS }; authorUrl = ""; + skipWhenMissingDependencies = 1; VERSION_CONFIG; }; }; // Uncomment when needed //#include "CfgMagazines.hpp" -//#include "CfgVehicles.hpp" +#include "CfgVehicles.hpp" //#include "CfgWeapons.hpp" - -#endif // __has_include("\CUP\Vehicles\CUP_Vehicles_LoadOrder\config.bin") \ No newline at end of file diff --git a/A3A/addons/config_fixes/CUP/sfp_air.hpp b/A3A/addons/config_fixes/CUP/sfp_air.hpp new file mode 100644 index 0000000000..63a806a35a --- /dev/null +++ b/A3A/addons/config_fixes/CUP/sfp_air.hpp @@ -0,0 +1,24 @@ +//CUP-SFP - sfp_air.hpp + +class CUP_B_UH60S_USN; +class CUP_MH60S_Unarmed_USN; +class CUP_MH60S_Unarmed_FFV_USN; + +class a3a_SFP_B_UH60S_USN : CUP_B_UH60S_USN +{ + displayName = "UH-60M (M3M)"; + textureList[] = {"Black", 1}; + animationList[] = {"Navyclan_hide",1,"Navyclan2_hide",1,"Filters_Hide",1,"mainRotor_folded",1,"mainRotor_unfolded",0,"Hide_ESSS2x",1,"Hide_ESSS4x",1,"Hide_Nose",0,"Blackhawk_Hide",0,"Hide_FlirTurret",1,"Hide_Probe",1,"Doorcock_Hide",0}; +}; +class a3a_SFP_MH60S_Unarmed_USN : CUP_MH60S_Unarmed_USN +{ + displayName = "UH-60M (Unarmed)"; + textureList[] = {"Black", 1}; + animationList[] = {"Navyclan_hide",1,"Navyclan2_hide",1,"Filters_Hide",1,"mainRotor_folded",1,"mainRotor_unfolded",0,"Hide_ESSS2x",1,"Hide_ESSS4x",1,"Hide_Nose",0,"Blackhawk_Hide",0,"Hide_FlirTurret",0,"Hide_Probe",1,"Doorcock_Hide",0}; +}; +class a3a_SFP_MH60S_Unarmed_FFV_USN : CUP_MH60S_Unarmed_FFV_USN +{ + displayName = "UH-60M (Unarmed/FFV)"; + textureList[] = {"Black", 1}; + animationList[] = {"Navyclan_hide",1,"Navyclan2_hide",1,"Filters_Hide",1,"mainRotor_folded",1,"mainRotor_unfolded",0,"Hide_ESSS2x",1,"Hide_ESSS4x",1,"Hide_Nose",0,"Blackhawk_Hide",0,"Hide_FlirTurret",0,"Hide_Probe",1,"Doorcock_Hide",0}; +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/IFA/CfgAmmo.hpp b/A3A/addons/config_fixes/IFA/CfgAmmo.hpp new file mode 100644 index 0000000000..c325483f60 --- /dev/null +++ b/A3A/addons/config_fixes/IFA/CfgAmmo.hpp @@ -0,0 +1,15 @@ +// IFA - CfgAmmo.hpp + +class CfgAmmo { + // Buffs to bring mortar effectiveness against unarmoured somewhere near vanilla against armoured + class Sh_82mm_AMOS; + class LIB_Sh_82_HE : Sh_82mm_AMOS { + indirectHitRange = 13; + }; + class LIB_Sh_81_HE : LIB_Sh_82_HE { + indirectHitRange = 12.6; + }; + class LIB_Sh_60_HE : LIB_Sh_82_HE { + indirectHitRange = 11; + }; +}; diff --git a/A3A/addons/config_fixes/IFA/CfgVehicles.hpp b/A3A/addons/config_fixes/IFA/CfgVehicles.hpp new file mode 100644 index 0000000000..f4c440e5d6 --- /dev/null +++ b/A3A/addons/config_fixes/IFA/CfgVehicles.hpp @@ -0,0 +1,87 @@ +//IFA - CfgVehicles.hpp + +class DefaultEventHandlers; +class CfgVehicles +{ + class LIB_US_Willys_MB_M1919; + class a3a_LIB_Willys_MB_M1919 : LIB_US_Willys_MB_M1919{ + hiddenSelectionsTextures[] = {"WW2\Assets_t\Vehicles\Cars_t\IF_Willys_MB\Willys_co.paa","\WW2\Assets_t\Vehicles\Cars_t\IF_Willys_MB\Willys_Additional_co.paa"}; + typicalCargo[] = {"LIB_SOV_AT_soldier"}; + crew = "LIB_SOV_unequip"; + faction = "LIB_RKKA"; + side = 0; + }; + class LIB_DAK_PzKpfwIV_H; + class a3a_lib_PzKpfwIV_noShield : LIB_DAK_PzKpfwIV_H{ + faction = "LIB_WEHRMACHT"; + hiddenSelectionsTextures[] = {"\WW2\Assets_t\Vehicles\Tanks_t\IF_PzKpfwIV_H\Body_co.paa","\WW2\Assets_t\Vehicles\Tanks_t\IF_PzKpfwIV_H\Turret_co.paa","\WW2\Assets_t\Vehicles\Tanks_t\IF_PzKpfwIV_H\Wheels_co.paa","\WW2\Assets_t\Vehicles\Tanks_t\IF_PzKpfwIV_H\Tracks_co.paa"}; + }; + class LIB_Zis6_Parm; + class a3a_lib_Zis6_BOX : LIB_Zis6_Parm { + displayName = "ZIS-5V (Box)"; + transportRepair = 0; + typicalCargo[] = {"LIB_FFI_LAT_Soldier"}; + faction = "LIB_FFI"; + side = 2; + }; + + class B_HMG_02_high_weapon_F; + class I_G_HMG_02_high_weapon_F : B_HMG_02_high_weapon_F{ + class assembleInfo; + }; + class a3a_hmg_02_high_weapon : I_G_HMG_02_high_weapon_F{ + class assembleInfo : assembleInfo { + assembleTo = "a3a_hmg_02_high"; + }; + }; + class HMG_02_high_base_F; + class B_G_HMG_02_high_F : HMG_02_high_base_F{ + class AnimationSources; + }; + class a3a_hmg_02_high : B_G_HMG_02_high_F{ + displayName = ".50 M2HB (Raised)"; + class AnimationSources : AnimationSources{ + class Hide_Shield { + animPeriod = 0.01; + initPhase = 1; + source = "user"; + useSource = 1; + }; + class Hide_Rail { + animPeriod = 0.01; + initPhase = 1; + source = "user"; + useSource = 1; + }; + }; + animationList[] ={}; + }; + + // CBA event handlers fix + class Tank; + class LIB_Armored_Target_Dummy : Tank { + delete EventHandlers; + }; + + // Nose-fall tweaks to make planes turn at a semi-decent rate when flown by AI + // Note: LIB_Ju87 not adjusted because planes with low maxSpeed use different AI logic + class LIB_GER_Plane_base; + class LIB_FW190F8 : LIB_GER_Plane_base + { + draconicTorqueXCoef = 2; + }; + class LIB_SU_Plane_base; + class LIB_P39 : LIB_SU_Plane_base + { + draconicTorqueXCoef = 2; + }; + class LIB_Pe2 : LIB_SU_Plane_base + { + draconicTorqueXCoef = 2; + }; + class LIB_US_Plane_base; + class LIB_P47 : LIB_US_Plane_base + { + draconicTorqueXCoef = 2; + }; +}; diff --git a/A3A/addons/config_fixes/IFA/CfgWeapons.hpp b/A3A/addons/config_fixes/IFA/CfgWeapons.hpp new file mode 100644 index 0000000000..b2b443be2a --- /dev/null +++ b/A3A/addons/config_fixes/IFA/CfgWeapons.hpp @@ -0,0 +1,122 @@ +//IFA - CfgWeapons.hpp + +//Fun weapons for finding in lootcrates or on SF +class Mode_SemiAuto; +class CfgWeapons +{ + class ItemCore; + class LIB_M1918A2_BAR_Bipod : ItemCore{ + picture = "\WW2\Assets_t\Weapons\Equipment_t\Weapons\MuzzleItem\Gear_ACC_BAR_Bipod_ca.paa"; + }; + class LIB_M1918A2_BAR_Handle : ItemCore{ + picture = "\WW2\Assets_t\Weapons\Equipment_t\Weapons\MuzzleItem\Gear_ACC_BAR_Handle_ca.paa"; + }; + class LIB_RIFLE; + class LIB_PISTOL; + class LIB_M1_Carbine : LIB_RIFLE { + class Short; + }; + class LIB_SVT_40 : LIB_RIFLE { + class Short; + }; + class LIB_M1896 : LIB_PISTOL{ + class Single; + }; + class a3a_lib_M712 : LIB_M1896{ + displayName = "M712 Mauser"; + descriptionShort = "9x19mm machine pistol"; + recoil = "recoil_pistol_4five"; + recoilProne = "recoil_pistol_4five"; + changeFiremodeSound[] = {"A3\sounds_f\weapons\closure\firemode_changer_2.wss",0.1778,1,5}; + class Full : Single{ + aiDispersionCoefX = 2; + aiDispersionCoefY = 3; + displayName = "Full"; + autoFire = 1; + textureType = "fullAuto"; + reloadTime = 0.066; + maxRange = 25; + maxRangeProbab = 0.05; + midRange = 12.5; + midRangeProbab = 0.5; + minRange = 0; + minRangeProbab = 1.0; + showToPlayer = 1; + }; + modes[] = {"Single", "Full"}; + }; + class a3a_lib_AVT_40 : LIB_SVT_40 { + displayName = "AVT-40"; + descriptionShort = "AVT-40 Automatic rifle"; + changeFiremodeSound[] = {"A3\sounds_f\weapons\closure\firemode_changer_2.wss",0.1778,1,5}; + class Full : Short{ + aiDispersionCoefX = 2; + aiDispersionCoefY = 3; + displayName = "Full"; + autoFire = 1; + textureType = "fullAuto"; + reloadTime = 0.08; + maxRangeProbab = 0.05; + midRangeProbab = 0.2; + minRangeProbab = 0.7; + minRange = 0; + showToPlayer = 1; + }; + modes[] = {"Single","Full","Far","Medium","Short"}; + }; + class a3a_lib_M2_Carbine : LIB_M1_Carbine{ + displayName = "M2 Carbine"; + descriptionShort = "M2 Carbine .30 Automatic rifle"; + changeFiremodeSound[] = {"A3\sounds_f\weapons\closure\firemode_changer_2.wss",0.1778,1,5}; + class Full : Short{ + aiDispersionCoefX = 2; + aiDispersionCoefY = 3; + displayName = "Full"; + autoFire = 1; + textureType = "fullAuto"; + reloadTime = 0.08; + maxRangeProbab = 0.05; + midRangeProbab = 0.2; + minRangeProbab = 0.7; + minRange = 0; + showToPlayer = 1; + }; + modes[] = {"Single","Full","Far","Medium","Short"}; + }; + + // Adjust so that the mortars aren't wildly inaccurate at longer ranges + class LIB_MortarCannon_base; + class LIB_GRWR34 : LIB_MortarCannon_base { + class Single1 : Mode_SemiAuto { + artilleryDispersion = 4; + }; + class Single2 : Single1 { + artilleryDispersion = 4; + }; + class Single3 : Single1 { + artilleryDispersion = 4; + }; + }; + class LIB_BM37 : LIB_MortarCannon_base { + class Single1 : Mode_SemiAuto { + artilleryDispersion = 4; + }; + class Single2 : Single1 { + artilleryDispersion = 4; + }; + class Single3 : Single1 { + artilleryDispersion = 4; + }; + }; + class LIB_M2_60 : LIB_MortarCannon_base { + class Single1 : Mode_SemiAuto { + artilleryDispersion = 4; + }; + class Single2 : Single1 { + artilleryDispersion = 4; + }; + class Single3 : Single1 { + artilleryDispersion = 4; + }; + }; +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/IFA/config.cpp b/A3A/addons/config_fixes/IFA/config.cpp new file mode 100644 index 0000000000..1520afe930 --- /dev/null +++ b/A3A/addons/config_fixes/IFA/config.cpp @@ -0,0 +1,26 @@ +//IFA - config.cpp + +#include "..\script_component.hpp" + + +class CfgPatches +{ + class PATCHNAME(IFA) + { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"IFA3_Core","WW2_Core_c_IF_ZZZ_LastLoaded_c"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +// Uncomment when needed +#include "CfgVehicles.hpp" +#include "CfgWeapons.hpp" +#include "CfgAmmo.hpp" diff --git a/A3A/addons/config_fixes/RF/CfgVehicles.hpp b/A3A/addons/config_fixes/RF/CfgVehicles.hpp new file mode 100644 index 0000000000..f113862ba6 --- /dev/null +++ b/A3A/addons/config_fixes/RF/CfgVehicles.hpp @@ -0,0 +1,310 @@ +//RF - CfgVehicles.hpp + +class CfgVehicles +{ + class C_IDAP_Pickup_fuel_rf; // Parent is Pickup_fuel_base_rf + class C_Pickup_rf; + class I_E_Pickup_covered_rf; + class I_G_Pickup_mmg_rf; + class I_G_Pickup_hmg_rf; + class B_Pickup_comms_rf; + class B_Pickup_rf; + class I_G_Pickup_rf; + class Heli_light_03_base_F; + class B_Heli_light_03_unarmed_rf; + class Heli_EC_01_base_rf; + class B_Heli_EC_04_military_rf; + class B_Heli_EC_03_rf; + class I_Pickup_aat_rf; + + class a3a_armored_Pickup_rf : I_G_Pickup_rf { + animationList[] = {"hide_bullbar",0.2,"hide_fuel_tank",1,"hide_snorkel",1,"hide_antenna",1,"hide_trunk_cover",1,"hide_trunk_door",0,"trunk_door_open",0,"hide_armor_window_armor_top",0,"window_armor_hatch_L_rot",1,"window_armor_hatch_R_rot",0,"door_F_L_open",0,"door_F_R_open",0,"door_R_L_open",0,"door_R_R_open",0,"hide_rack",1,"hide_rack_spotlights",1,"hide_frame",1,"hide_sidesteps",0.5}; + }; + class a3a_FIA_Pickup_rf : a3a_armored_Pickup_rf { + textureList[] = {"Guerilla_01",1,"Guerilla_02",1,"Guerilla_03",1,"Guerilla_04",1,"Guerilla_05",1,"Guerilla_06",0.1,"Guerilla_07",0.1,"Guerilla_08",0.1,"Guerilla_09",0.1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_fia_02_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_fia_02_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_fia_02_co.paa"}; + }; + class a3a_ION_Pickup_rf : a3a_armored_Pickup_rf { + textureList[] = {"ION",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_ion_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_black_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_armored_Pickup_mmg_rf : I_G_Pickup_mmg_rf { + scope = 2; + animationList[] = {"hide_trunk_cover",1,"hide_frame_full",1,"hide_bullbar",0.2,"hide_snorkel",1,"hide_antenna",1,"hide_trunk_door",0,"trunk_door_open",0,"hide_armor_window_armor_top",0,"window_armor_hatch_L_rot",1,"window_armor_hatch_R_rot",0,"door_F_L_open",0,"door_F_R_open",0,"door_R_L_open",0,"door_R_R_open",0,"hide_frame",0,"hide_sidesteps",0.5}; + }; + class a3a_FIA_Pickup_mmg_rf : a3a_armored_Pickup_mmg_rf { + textureList[] = {"Guerilla_01",1,"Guerilla_02",1,"Guerilla_03",1,"Guerilla_04",1,"Guerilla_05",1,"Guerilla_06",0.1,"Guerilla_07",0.1,"Guerilla_08",0.1,"Guerilla_09",0.1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_fia_02_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_fia_02_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_fia_02_co.paa"}; + }; + class a3a_ION_Pickup_mmg_rf : a3a_armored_Pickup_mmg_rf { + textureList[] = {"ION",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_ion_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_black_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_armored_Pickup_hmg_rf : I_G_Pickup_hmg_rf { + animationList[] = {"Hide_Shield",1,"Hide_Rail",1,"hide_bullbar",0.2,"hide_snorkel",1,"hide_antenna",1,"hide_trunk_door",0,"trunk_door_open",0,"hide_armor_window_armor_top",0,"window_armor_hatch_L_rot",1,"window_armor_hatch_R_rot",0,"door_F_L_open",0,"door_F_R_open",0,"door_R_L_open",0,"door_R_R_open",0,"hide_rack",1,"hide_rack_spotlights",1,"hide_frame",0,"hide_sidesteps",0.5}; + }; + class a3a_FIA_Pickup_hmg_rf : a3a_armored_Pickup_hmg_rf { + textureList[] = {"Guerilla_01",1,"Guerilla_02",1,"Guerilla_03",1,"Guerilla_04",1,"Guerilla_05",1,"Guerilla_06",0.1,"Guerilla_07",0.1,"Guerilla_08",0.1,"Guerilla_09",0.1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_fia_02_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_fia_02_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_fia_02_co.paa"}; + }; + class a3a_ION_Pickup_hmg_rf : a3a_armored_Pickup_hmg_rf { + textureList[] = {"ION",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_ion_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_black_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_armored_Pickup_covered_rf : I_E_Pickup_covered_rf { + animationList[] = {"hide_rack",1,"hide_rack_antenna",1,"hide_frame",1,"hide_frame_full",1,"hide_frame_full_panel",1,"hide_box",0,"hide_box_door",0,"hide_trunk_door",0,"trunk_door_open",0,"box_door_open",0,"hide_police",1,"hide_Services",1,"BeaconsServicesStart",0,"hide_bullbar",0.2,"hide_snorkel",0,"hide_antenna",1,"hide_armor_window_armor_top",0,"window_armor_hatch_L_rot",1,"window_armor_hatch_R_rot",0,"door_F_L_open",0,"door_F_R_open",0,"door_R_L_open",0,"door_R_R_open",0,"hide_rack_spotlights",0,"hide_sidesteps",0.5}; + }; + class a3a_FIA_Pickup_covered_rf : a3a_armored_Pickup_covered_rf { + textureList[] = {"Guerilla_01",1,"Guerilla_02",1,"Guerilla_03",1,"Guerilla_04",1,"Guerilla_05",1,"Guerilla_06",0.1,"Guerilla_07",0.1,"Guerilla_08",0.1,"Guerilla_09",0.1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_fia_02_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_fia_02_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_fia_02_co.paa"}; + }; + class a3a_ION_Pickup_AAT_rf : I_Pickup_aat_rf { + textureList[] = {}; + hiddenSelectionTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_ion_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_black_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + animationList[] = {"hide_frame",0,"hide_frame_full",1,"hide_bullbar",0,"hide_snorkel",0,"hide_antenna",1,"hide_trunk_door",0,"trunk_door_open",0,"hide_armor_window_armor_top",0,"window_armor_hatch_L_rot",1,"window_armor_hatch_R_rot",0,"door_F_L_open",0,"door_F_R_open",0,"door_R_L_open",0,"door_R_R_open",0,"hide_rack",0,"hide_rack_spotlights",0,"hide_sidesteps",0}; + }; + class a3a_black_Pickup_rf : a3a_FIA_Pickup_rf + { + textureList[] = {"Black",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_white_tank_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_black_Pickup_mmg_rf : a3a_FIA_Pickup_mmg_rf + { + textureList[] = {"Black",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_white_tank_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_black_Pickup_hmg_rf : a3a_FIA_Pickup_hmg_rf + { + textureList[] = {"Black",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_white_tank_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_black_Pickup_covered_rf : a3a_FIA_Pickup_covered_rf + { + textureList[] = {"Black",1}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_white_tank_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_black_co.paa"}; + }; + class a3a_LDF_Pickup_mmg_rf : I_G_Pickup_mmg_rf + { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_ldf_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_ldf_co.paa"}; + }; + class a3a_hex_Pickup_mmg_rf : I_G_Pickup_mmg_rf + { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_csat_hex_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_csat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_tan_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_csat_hex_co.paa"}; + }; + class a3a_ghex_Pickup_mmg_rf : I_G_Pickup_mmg_rf + { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_csat_ghex_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_nato_pacific_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_csat_ghex_co.paa"}; + }; + class a3a_civ_Pickup_fuel_rf : C_IDAP_Pickup_fuel_rf + { + textureList[] = {"Red",1,"Tan",1,"White",1,"Blue",1,"Gray",1,"Black",1,"Brown",1,"Olive",1,"Orange",1,"Yellow",1}; + hiddenSelectionsTextures[] = {"lxrf\vehicles_rf\pickup_01\data\pickup_01_ext_white_co.paa","lxrf\vehicles_rf\pickup_01\data\pickup_01_adds_black_tank_co.paa","lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","lxrf\vehicles_rf\pickup_01\data\pickup_01_aat_co.paa","lxrf\vehicles_rf\pickup_01\data\pickup_01_launcher_co.paa","lxrf\vehicles_rf\pickup_01\data\pickup_01_service_white_co.paa"}; + }; + class a3a_police_Pickup_comms_rf : B_Pickup_comms_rf + { + textureList[] = {}; + hiddenSelectionstextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_gendarmerie_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_gendarmerie_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_gendarmerie_co.paa"}; + }; + class a3a_police_Pickup_rf : B_Pickup_rf + { + textureList[] = {}; + hiddenSelectionstextures[] = {"\lxRF\vehicles_rf\pickup_01\Data\pickup_01_ext_gendarmerie_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_adds_gendarmerie_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_ext2_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_AAT_olive_co.paa","\lxrf\vehicles_rf\pickup_01\data\pickup_01_Launcher_black_co.paa","\lxRF\vehicles_rf\pickup_01\Data\pickup_01_service_gendarmerie_co.paa"}; + }; + + class Heli_light_03_dynamicLoadout_base_F: Heli_light_03_base_F { + class Components; + }; + class B_Heli_light_03_dynamicLoadout_rf: Heli_light_03_dynamicLoadout_base_F { + class Components : Components { + class TransportPylonsComponent; + }; + }; + class a3a_Heli_light_03_dynamicLoadout_rf : B_Heli_light_03_dynamicLoadout_rf { // !!!! This is the Olive paint by default. It's more of a bluish-gray though + class Components : Components { + class TransportPylonsComponent : TransportPylonsComponent { + class Presets { + class Default { + attachment[] = {"PylonRack_19Rnd_missiles_gray_RF","PylonWeapon_1000Rnd_20x102mm_shells_gray_RF","PylonRack_19Rnd_missiles_gray_RF","PylonWeapon_1000Rnd_20x102mm_shells_gray_RF"}; + displayName = "Default"; + }; + class Empty { + attachment[] = {}; + displayName = "Empty"; + }; + }; + class Pylons { + class PylonLeft1 { + attachment = "PylonRack_19Rnd_missiles_gray_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 5; + turret[] = {0}; + UIposition[] = {"0.06 + 0.02",0.4}; + }; + class PylonLeft2 { + attachment = "PylonWeapon_1000Rnd_20x102mm_shells_gray_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 4; + turret[] = {0}; + UIposition[] = {"0.08 + 0.02",0.35}; + }; + class PylonRight1 { + attachment = "PylonRack_19Rnd_missiles_gray_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 5; + mirroredMissilePos = 1; + turret[] = {0}; + UIposition[] = {"0.59 + 0.04",0.4}; + }; + class PylonRight2 { + attachment = "PylonWeapon_1000Rnd_20x102mm_shells_gray_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 4; + mirroredMissilePos = 2; + turret[] = {0}; + UIposition[] = {"0.57 + 0.04",0.35}; + }; + + }; + }; + }; + }; + class a3a_AAF_Heli_light_03_dynamicLoadout_rf : a3a_Heli_light_03_dynamicLoadout_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\A3\Air_F_EPB\Heli_Light_03\data\Heli_Light_03_base_INDP_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_INDP_co.paa"}; + }; + class a3a_LDF_Heli_light_03_dynamicLoadout_rf : a3a_Heli_light_03_dynamicLoadout_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\A3\Air_F_Enoch\Heli_Light_03\data\Heli_Light_03_base_EAF_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_LDF_co.paa"}; + }; + class a3a_black_Heli_light_03_dynamicLoadout_rf : a3a_Heli_light_03_dynamicLoadout_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\Heli_Light_03\data\Heli_Light_03_base_black_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_black_co.paa"}; + }; + class a3a_tan_Heli_light_03_dynamicLoadout_rf : a3a_Heli_light_03_dynamicLoadout_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\Heli_Light_03\data\Heli_Light_03_base_tan_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_tan_co.paa"}; + }; + class a3a_green_Heli_light_03_dynamicLoadout_rf : a3a_Heli_light_03_dynamicLoadout_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\A3\Air_F_EPB\Heli_Light_03\data\Heli_Light_03_base_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_green_co.paa"}; + }; + class a3a_AAF_Heli_light_03_unarmed_rf : B_Heli_light_03_unarmed_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\A3\Air_F_EPB\Heli_Light_03\data\Heli_Light_03_base_INDP_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_INDP_co.paa"}; + }; + class a3a_black_Heli_light_03_unarmed_rf : B_Heli_light_03_unarmed_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\Heli_Light_03\data\Heli_Light_03_base_black_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_black_co.paa"}; + }; + class a3a_green_Heli_light_03_unarmed_rf : B_Heli_light_03_unarmed_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\A3\Air_F_EPB\Heli_Light_03\data\Heli_Light_03_base_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_green_co.paa"}; + }; + class a3a_tan_Heli_light_03_unarmed_rf : B_Heli_light_03_unarmed_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\Heli_Light_03\data\Heli_Light_03_base_tan_CO.paa","\lxRF\air_rf\Heli_Light_03\data\wildcat_addons_tan_co.paa"}; + }; + + class Heli_EC_02_base_rf: Heli_EC_01_base_rf { + class Components; + }; + class a3a_Heli_EC_02_rf : Heli_EC_02_base_rf { // Default camo is a lovely tan, perfect for patrolling your local desert + scope = 2; + faction = "IND_F"; + side = 2; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + class Components : Components { + class TransportPylonsComponent { + uiPicture = "\lxRF\air_rf\heli_medium_ec\data\UI\heli_medium_ec_02_3DEN_CA.paa"; + class Presets { + class AT { + attachment[] = {"PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel"}; + displayName = "AT"; + }; + class Default { + attachment[] = {"PylonRack_19Rnd_missiles_olive_rf","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_19Rnd_missiles_olive_rf"}; + displayName = "Default"; + }; + class Empty { + attachment[] = {}; + displayName = "Empty"; + }; + }; + class Pylons { + class PylonLeft1 { + attachment = "PylonRack_19Rnd_missiles_olive_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 5; + turret[] = {0}; + UIposition[] = {0.06,0.4}; + }; + class PylonLeft2 { + attachment = "PylonRack_4Rnd_LG_scalpel"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 4; + turret[] = {0}; + UIposition[] = {0.08,0.35}; + }; + class PylonRight1 { + attachment = "PylonRack_4Rnd_LG_scalpel"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 5; + mirroredMissilePos = 2; + turret[] = {0}; + UIposition[] = {0.57,0.35}; + }; + class PylonRight2 { + attachment = "PylonRack_19Rnd_missiles_olive_RF"; + hardpoints[] = {"DAR","DAGR","B_SHIEKER","UNI_SCALPEL","20MM_TWIN_CANNON","B_ASRRAM_EJECTOR","WEAPON_PODS_RF","B_BOMB_PYLON"}; + priority = 4; + mirroredMissilePos = 1; + turret[] = {0}; + UIposition[] = {0.59,0.4}; + }; + }; + }; + }; + }; + class a3a_LDF_Heli_EC_02_rf : a3a_Heli_EC_02_rf { + factions = "IND_E_F"; + side = 2; + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_03_ldf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_03_ldf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_03_ldf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_AAF_Heli_EC_02_rf : a3a_Heli_EC_02_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_02_aaf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_02_aaf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_02_aaf_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_black_Heli_EC_02_rf : a3a_Heli_EC_02_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_34_dark_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_light_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_34_dark_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_34_dark_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_light_co.paa"}; + }; + class a3a_sfia_Heli_EC_02_rf : a3a_Heli_EC_02_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_01_sfia_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_01_sfia_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_01_sfia_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_tan_Heli_EC_04_military_rf : B_Heli_EC_04_military_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_tan_Heli_EC_03_rf : B_Heli_EC_03_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_09_tan_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_ION_Heli_EC_04_military_rf : B_Heli_EC_04_military_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_ION_Heli_EC_03_rf : B_Heli_EC_03_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + class a3a_ION_Heli_EC_02_rf : a3a_Heli_EC_02_rf { + textureList[] = {}; + hiddenSelectionsTextures[] = {"\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa","#(rgb,1024,1024,1)ui('lxRF_MFDMinimap','lxRF_MFDMinimap')","\lxRF\air_rf\heli_medium_ec\data\as332_adds_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_exterior_06_ion_co.paa","\lxRF\air_rf\heli_medium_ec\data\as332_int_cargo_co.paa"}; + }; + +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/RF/config.cpp b/A3A/addons/config_fixes/RF/config.cpp new file mode 100644 index 0000000000..4d0979c2b8 --- /dev/null +++ b/A3A/addons/config_fixes/RF/config.cpp @@ -0,0 +1,25 @@ +//RF - config.cpp + +#include "..\script_component.hpp" + +class CfgPatches +{ + class PATCHNAME(RF) + { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"A3_Data_F_AoW_Loadorder","RF_Vehicles"}; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + skipWhenMissingDependencies = 1; + }; +}; + +// Uncomment when needed +#include "CfgVehicles.hpp" +//#include "CfgMarkers.hpp" +//#include "CfgWeapons.hpp" diff --git a/A3A/addons/config_fixes/RHS/CfgVehicles.hpp b/A3A/addons/config_fixes/RHS/CfgVehicles.hpp index 2a720234bc..d83c2ce206 100644 --- a/A3A/addons/config_fixes/RHS/CfgVehicles.hpp +++ b/A3A/addons/config_fixes/RHS/CfgVehicles.hpp @@ -3,5 +3,6 @@ class CfgVehicles { #include "chdkz_rhs.hpp" -}; - + #include "tla_rhs.hpp" + #include "hidf_rhs.hpp" +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/RHS/CfgWeapons.hpp b/A3A/addons/config_fixes/RHS/CfgWeapons.hpp new file mode 100644 index 0000000000..7ac65d7547 --- /dev/null +++ b/A3A/addons/config_fixes/RHS/CfgWeapons.hpp @@ -0,0 +1,38 @@ +//RHS - CfgWeapons.hpp + +class CfgWeapons +{ + class Rifle_Base_F; + class rhs_weap_m3a1_base : Rifle_Base_F { + class FullAuto; + }; + class rhs_weap_m3a1 : rhs_weap_m3a1_base { + class Ai_Burst : FullAuto { + aiRateOfFire = 1; + aiRateOfFireDistance = 100; + maxRange = 300; + midRange = 150; + minRange = 30; + burst = 3; + burstRangeMax=6; + showToPlayer = 0; + aiBurstTerminable = 1; + }; + modes[] = {"FullAuto","Ai_Burst"}; + }; + class rhs_weap_m3a1_specops : rhs_weap_m3a1_base { + class Ai_Burst : FullAuto { + aiRateOfFire = 1; + aiRateOfFireDistance = 100; + maxRange = 300; + midRange = 150; + minRange = 30; + burst = 3; + burstRangeMax=6; + showToPlayer = 0; + aiBurstTerminable = 1; + }; + modes[] = {"FullAuto","Ai_Burst"}; + }; +}; + diff --git a/A3A/addons/config_fixes/RHS/chdkz_rhs.hpp b/A3A/addons/config_fixes/RHS/chdkz_rhs.hpp index f00fd33b19..d43034921b 100644 --- a/A3A/addons/config_fixes/RHS/chdkz_rhs.hpp +++ b/A3A/addons/config_fixes/RHS/chdkz_rhs.hpp @@ -1,26 +1,25 @@ //RHS - chdkz_rhs.hpp //Armour -class rhsgref_ins_t72ba; -class rhsgref_ins_t72bb; -class rhsgref_ins_t72bc; +class rhs_t72ba_tv; +class rhs_t72bb_tv; +class rhs_t72bc_tv; +class rhsgref_ins_t72ba : rhs_t72ba_tv {class EventHandlers; }; +class rhsgref_ins_t72bb : rhs_t72bb_tv {class EventHandlers; }; +class rhsgref_ins_t72bc : rhs_t72bc_tv {class EventHandlers; }; class a3a_rhs_chdkz_72a : rhsgref_ins_t72ba { - class EventHandlers + class EventHandlers : EventHandlers { - fired = "_this call (uinamespace getvariable 'BIS_fnc_effectFired');"; - init = ""; - killed = "_this call (uinamespace getvariable 'BIS_fnc_effectKilled');"; + class rhs_flag_init{}; }; }; class a3a_rhs_chdkz_72b : rhsgref_ins_t72bb { - class EventHandlers + class EventHandlers : EventHandlers { - fired = "_this call (uinamespace getvariable 'BIS_fnc_effectFired');"; - init = ""; - killed = "_this call (uinamespace getvariable 'BIS_fnc_effectKilled');"; + class rhs_flag_init{}; }; }; class a3a_rhs_chdkz_72c : rhsgref_ins_t72bc @@ -33,11 +32,9 @@ class a3a_rhs_chdkz_72c : rhsgref_ins_t72bc "rhsafrf\addons\rhs_t72\data\rhs_t72b_04_co.paa", "rhsafrf\addons\rhs_t72\data\rhs_t72b_05_co.paa" }; - class EventHandlers + class EventHandlers : EventHandlers { - fired = "_this call (uinamespace getvariable 'BIS_fnc_effectFired');"; - init = ""; - killed = "_this call (uinamespace getvariable 'BIS_fnc_effectKilled');"; + class rhs_flag_init{}; }; }; diff --git a/A3A/addons/config_fixes/RHS/config.cpp b/A3A/addons/config_fixes/RHS/config.cpp index b56b23c301..8581a6218b 100644 --- a/A3A/addons/config_fixes/RHS/config.cpp +++ b/A3A/addons/config_fixes/RHS/config.cpp @@ -2,8 +2,6 @@ #include "..\script_component.hpp" -#if __has_include("\rhsgref\addons\rhsgref_main\config.bin") - class CfgPatches { class PATCHNAME(RHS) @@ -16,6 +14,7 @@ class CfgPatches author = AUTHOR; authors[] = { AUTHORS }; authorUrl = ""; + skipWhenMissingDependencies = 1; VERSION_CONFIG; }; }; @@ -23,6 +22,4 @@ class CfgPatches // Uncomment when needed //#include "CfgMagazines.hpp" #include "CfgVehicles.hpp" -//#include "CfgWeapons.hpp" - -#endif // __has_include("\rhsgref\addons\rhsgref_main\config.bin" \ No newline at end of file +#include "CfgWeapons.hpp" diff --git a/A3A/addons/config_fixes/RHS/hidf_rhs.hpp b/A3A/addons/config_fixes/RHS/hidf_rhs.hpp new file mode 100644 index 0000000000..f33e2e1458 --- /dev/null +++ b/A3A/addons/config_fixes/RHS/hidf_rhs.hpp @@ -0,0 +1,74 @@ +//RHS - hidf_rhs.hpp + +class rhsusf_m966_w; +class a3a_rhs_m966_olive : rhsusf_m966_w{ + crew = "rhsgref_hidf_rifleman"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_hidf"; + animationList[] = {"hide_CIP",1,"hide_A2_Parts",1,"Hide_A2Bumper",1,"Hide_Brushguard",0.5}; + HiddenSelectionsTextures[] = {"rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\m998_exterior_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\m998_interior_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\A2_parts_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\wheel_wranglermt_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\m998_mainbody_lg_co.paa","rhsusf\addons\rhsusf_hmmwv\textures\gratting_w_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\tile_exmetal_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\m1025_lg_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\hmmwv\mk64mount_lg_co.paa","",""}; +}; + +class rhsusf_m113tank_base; +class rhsusf_m113_usarmy_unarmed : rhsusf_m113tank_base{ + class AnimationSources; +}; +class rhsusf_m113_usarmy_medical : rhsusf_m113_usarmy_unarmed{ + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide; + }; +}; +class a3a_rhs_m113_olive_medical : rhsusf_m113_usarmy_medical{ + crew = "rhsgref_hidf_crewman"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_hidf"; + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide : IFF_Panels_Hide{ + initPhase = 1; + }; + }; + hiddenSelectionsTextures[] = {"rhsusf\addons\rhsusf_m113\data_new\m113a3_01_od_med_co.paa","rhsusf\addons\rhsusf_m113\data_new\m113a3_02_od_l_co.paa","rhsusf\addons\rhsusf_m113\data_new\m113a3_03_wd_co.paa","rhsusf\addons\rhsusf_m113\data_new\m113a3_int03_wd_co.paa"}; +}; + +class rhsusf_m113_usarmy_M240 : rhsusf_m113tank_base{ + class AnimationSources; +}; +class a3a_rhs_m113_hidf_M240_base : rhsusf_m113_usarmy_M240{ + scope = 0; + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide; + }; +}; +class a3a_rhs_m113_hidf_M240 : a3a_rhs_m113_hidf_M240_base{ + crew = "rhsgref_hidf_crewman"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_hidf"; + scope = 2; + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide : IFF_Panels_Hide{ + initPhase = 1; + }; + }; + hiddenSelectionsTextures[] = {"rhsgref\addons\rhsgref_vehicles_ret\data\hidf\m113a3_01_lg_l_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\m113a3_02_lg_l_co.paa","rhsgref\addons\rhsgref_vehicles_ret\data\hidf\m113a3_03_lg_co.paa","rhsusf\addons\rhsusf_m113\data_new\m113a3_int03_wd_co.paa","rhsusf\addons\rhsusf_m113\data_new\m23_pintle_wd_co.paa",""}; +}; + +class APC_Tracked_03_base_F; +class RHS_M2A2_Base : APC_Tracked_03_base_F{ + class AnimationSources; +}; +class RHS_M2A2 : RHS_M2A2_Base{ + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide; + }; +}; +class a3a_RHS_M2A2_olive : RHS_M2A2{ + crew = "rhsgref_hidf_crewman"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_hidf"; + class AnimationSources : AnimationSources{ + class IFF_Panels_Hide : IFF_Panels_Hide{ + initPhase = 1; + }; + }; + hiddenSelectionsTextures[] = {"rhsusf\addons\rhsusf_a2port_armor\m2a2_bradley\data\woodland\m6_base_co.paa","rhsusf\addons\rhsusf_a2port_armor\m2a2_bradley\data\woodland\m6_a3_co.paa","rhsusf\addons\rhsusf_a2port_armor\m2a2_bradley\data\woodland\ultralp_co.paa","rhsusf\addons\rhsusf_a2port_armor\m2a2_bradley\data\woodland\m6_base_co.paa","rhsusf\addons\rhsusf_a2port_armor\m2a2_bradley\data\woodland\m6_base_co.paa"}; +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/RHS/tla_rhs.hpp b/A3A/addons/config_fixes/RHS/tla_rhs.hpp new file mode 100644 index 0000000000..3702e2257f --- /dev/null +++ b/A3A/addons/config_fixes/RHS/tla_rhs.hpp @@ -0,0 +1,24 @@ +//RHS - tla_rhs.hpp + +//Air +class a3a_rhs_Mi8MTV3_tla : RHS_Mi8MTV3_vvsc +{ + crew = "rhsgref_ins_pilot"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_chdkz"; + hiddenSelectionsTextures[] ={"rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi8_body_g_camo3_co.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi8_det_g_camo_mvd_co.paa","a3\data_f\clear_empty.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\mi8_decals_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\5_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\0_ca.paa","rhsafrf\addons\rhs_decals\data\labels\aviation\vvs_ca.paa"}; +}; +class a3a_rhs_Mi8MTV3_heavy_tla : RHS_Mi8MTV3_heavy_vvsc +{ + crew = "rhsgref_ins_pilot"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_chdkz"; + hiddenSelectionsTextures[] ={"rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi8_body_g_camo3_co.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi8_det_g_camo_mvd_co.paa","a3\data_f\clear_empty.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\mi8_decals_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\7_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\5_ca.paa","rhsafrf\addons\rhs_decals\data\labels\aviation\vvs_ca.paa"}; +}; +class a3a_rhs_Mi8AMTSh_tla : RHS_Mi8AMTSh_vvsc +{ + crew = "rhsgref_ins_pilot"; + dlc = "RHS_GREF"; + faction = "rhsgref_faction_chdkz"; + hiddenSelectionsTextures[] ={"rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi_171_camo_mvd_co.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\camo\mi8_det_g_camo_mvd_co.paa","a3\data_f\clear_empty.paa","rhsafrf\addons\rhs_a2port_air\mi17\data\mi8_decals_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\6_ca.paa","rhsafrf\addons\rhs_decals\data\numbers\aviared\7_ca.paa","rhsafrf\addons\rhs_decals\data\labels\aviation\vvs_ca.paa"}; +}; \ No newline at end of file diff --git a/A3A/addons/config_fixes/WS/CfgWeapons.hpp b/A3A/addons/config_fixes/WS/CfgWeapons.hpp index 2e2b1ddfb9..594b461756 100644 --- a/A3A/addons/config_fixes/WS/CfgWeapons.hpp +++ b/A3A/addons/config_fixes/WS/CfgWeapons.hpp @@ -7,4 +7,8 @@ class CfgWeapons { baseWeapon = "arifle_VelkoR5_GL_lxWS"; }; + class srifle_GM6_F; + class srifle_GM6_snake_lxWS : srifle_GM6_F { + baseWeapon = "srifle_GM6_snake_lxWS"; + }; }; diff --git a/A3A/addons/core/CfgFunctions.hpp b/A3A/addons/core/CfgFunctions.hpp index 8446453d1e..7ad4bf2c35 100644 --- a/A3A/addons/core/CfgFunctions.hpp +++ b/A3A/addons/core/CfgFunctions.hpp @@ -135,6 +135,7 @@ class CfgFunctions class getAggroLevelString {}; class getRecentDamage {}; class getVehiclesAirSupport {}; + class getVehicleSellPrice {}; class getVehiclesGroundSupport {}; class getVehiclesGroundTransport {}; class vehicleBoxRestore {}; @@ -159,6 +160,8 @@ class CfgFunctions class placementSelection {}; class playableUnits {}; class getSideRadioTowerInfluence {}; + class postmortem {}; + class postmortemLoop {}; class powerReorg {}; class radioCheck {}; class rebuildAssets {}; @@ -294,11 +297,13 @@ class CfgFunctions class prepFunctions {}; class spawnDebuggingLoop {}; class spawnSelectedTemplateAI {}; - class debugSpawnVics {}; + class debugSpawnVics {}; }; class Dialogs { file = QPATHTOFOLDER(functions\Dialogs); + class canFastTravel {}; + class calculateFastTravelCost {}; class clearForest {}; class createDialog_shouldLoadPersonalSave {}; class dialogHQ {}; @@ -306,7 +311,6 @@ class CfgFunctions class HQGameOptions {}; class loadPreviousSession {}; class mineDialog {}; - class moveHQObject {}; class persistentSave {}; class skiptime {}; class squadOptions {}; @@ -445,6 +449,10 @@ class CfgFunctions class OrgPlayers { file = QPATHTOFOLDER(functions\OrgPlayers); class donateMoney {}; + class sendMoney {}; + class isClientAdmin {}; + class isLocalAdmin {}; + class isLocalAdminOrServer {}; class isMember {}; class makePlayerBossIfEligible {}; class memberAdd {}; @@ -532,6 +540,7 @@ class CfgFunctions class buildMinefield {}; class controlHCsquad {}; class controlunit {}; + class convertToSquad {}; class dismissPlayerGroup {}; class dismissSquad {}; class enemyNearCheck {}; @@ -541,7 +550,6 @@ class CfgFunctions class garrisonAdd {}; class garrisonDialog {}; class NATObomb {}; - class postmortem {}; class reDress {}; class reinfPlayer {}; class spawnHCGroup {}; @@ -665,6 +673,9 @@ class CfgFunctions class SUP_SAM {}; class SUP_SAMAvailable {}; class SUP_SAMRoutine {}; + class SUP_tank {}; + class SUP_tankAvailable {}; + class SUP_tankRoutine {}; class SUP_UAV {}; class SUP_UAVRoutine {}; }; @@ -722,6 +733,7 @@ class CfgFunctions class secondsToTimeSpan {}; class systemTime_format_S {}; class timeSpan_format {}; + class systemTimeDurationToTimeSpan {}; }; class UI { @@ -779,9 +791,10 @@ class CfgFunctions class attachedObjects {}; class buyItem {}; class carryItem {}; - class dropObject {}; + class dropItem {}; class initObject {}; class initObjectRemote {}; + class isCarrying {}; class remainingFuel {}; class rotateItem {}; }; diff --git a/A3A/addons/core/CfgMarkers.hpp b/A3A/addons/core/CfgMarkers.hpp index 2b396c12c5..5ae3a24fc5 100644 --- a/A3A/addons/core/CfgMarkers.hpp +++ b/A3A/addons/core/CfgMarkers.hpp @@ -34,4 +34,36 @@ class CfgMarkers icon = "\A3\Data_F\Flags\flag_ion_CO.paa"; texture = "\A3\Data_F\Flags\flag_ion_CO.paa"; //TODO: rectangularize marker texture }; + + //TODO: makes these only load when IFA is loaded? + class a3a_flag_FFI : flag_NATO + { + name = "FFI"; + icon = QPATHTOFOLDER(Pictures\Markers\ifa_ffi.paa); + texture = QPATHTOFOLDER(Pictures\Markers\ifa_ffi.paa); + }; + class a3a_flag_AK : flag_NATO + { + name = "AK"; + icon = QPATHTOFOLDER(Pictures\Markers\ifa_ak.paa); + texture = QPATHTOFOLDER(Pictures\Markers\ifa_ak.paa); + }; + class a3a_flag_ALLIES : flag_NATO + { + name = "ALLIES"; + icon = QPATHTOFOLDER(Pictures\Markers\ifa_allies.paa); + texture = QPATHTOFOLDER(Pictures\Markers\ifa_allies.paa); + }; + class a3a_flag_WEH : flag_NATO + { + name = "WEH"; + icon = QPATHTOFOLDER(Pictures\Markers\ifa_weh.paa); + texture = QPATHTOFOLDER(Pictures\Markers\ifa_weh.paa); + }; + class a3a_flag_SOV : flag_NATO + { + name = "SOV"; + icon = QPATHTOFOLDER(Pictures\Markers\ifa_sov.paa); + texture = QPATHTOFOLDER(Pictures\Markers\ifa_sov.paa); + }; }; \ No newline at end of file diff --git a/A3A/addons/core/CfgVehicles.hpp b/A3A/addons/core/CfgVehicles.hpp new file mode 100644 index 0000000000..434a2d42bf --- /dev/null +++ b/A3A/addons/core/CfgVehicles.hpp @@ -0,0 +1,150 @@ +class CfgVehicles +{ + // Unbreak the vanilla inheritance chain + class Man; + class CAManBase : Man { + class EventHandlers; + }; + class SoldierGB : CAManBase { + class EventHandlers : EventHandlers {}; + }; + class I_G_Soldier_base_F : SoldierGB { + class EventHandlers : EventHandlers + { + init = "if (local (_this select 0)) then {[(_this select 0), [], []] call BIS_fnc_unitHeadgear;};"; + //init line to perserve the behaviour BI intended for the I_G_Soldier_base_F classs + }; + }; + + // Rebel AI unit types + + //don't need to change this one? + class I_G_Survivor_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_unarmed : I_G_Survivor_F {}; + + class I_G_Soldier_F : I_G_Soldier_base_F{}; + class a3a_unit_reb : I_G_Soldier_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_medic_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_medic : I_G_medic_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Sharpshooter_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_sniper : I_G_Sharpshooter_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_M_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_marksman : I_G_Soldier_M_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_LAT_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_lat : I_G_Soldier_LAT_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_AR_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_mg : I_G_Soldier_AR_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_exp_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_exp : I_G_Soldier_exp_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_GL_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_gl : I_G_Soldier_GL_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_Soldier_SL_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_sl : I_G_Soldier_SL_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_engineer_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_eng : I_G_engineer_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_Soldier_AT_F; + class a3a_unit_reb_at : I_Soldier_AT_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_Soldier_AA_F; + class a3a_unit_reb_aa : I_Soldier_AA_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class I_G_officer_F : I_G_Soldier_base_F{}; + class a3a_unit_reb_petros : I_G_officer_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + // Base side types + + class B_G_Soldier_F : I_G_Soldier_base_F{}; + class a3a_unit_west : B_G_Soldier_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class O_G_Soldier_F : I_G_Soldier_base_F{}; + class a3a_unit_east : O_G_Soldier_F { + backpack = ""; + linkedItems[] = {"ItemMap","ItemCompass","ItemWatch"}; + magazines[] = {}; + weapons[] = {"Throw","Put"}; + }; + + class C_Man_1; + class a3a_unit_civ : C_Man_1 {}; + +}; diff --git a/A3A/addons/core/Includes/script_version.hpp b/A3A/addons/core/Includes/script_version.hpp index c0e57b4182..e9f89a06a5 100644 --- a/A3A/addons/core/Includes/script_version.hpp +++ b/A3A/addons/core/Includes/script_version.hpp @@ -1,4 +1,4 @@ #define MAJOR 3 -#define MINOR 5 -#define PATCHLVL 1 +#define MINOR 7 +#define PATCHLVL 0 #define BUILD 0 diff --git a/A3A/addons/core/Params.hpp b/A3A/addons/core/Params.hpp index 5bf02c0c9a..a5f1700f30 100644 --- a/A3A/addons/core/Params.hpp +++ b/A3A/addons/core/Params.hpp @@ -31,8 +31,8 @@ class Params class limitedFT { title = $STR_A3A_Params_limitedFT_title; - values[] = {0,1}; - texts[] = {$STR_A3A_Params_limitedFT_any, $STR_A3A_Params_limitedFT_hq}; + values[] = {0,1,2}; + texts[] = {$STR_A3A_Params_limitedFT_any, $STR_A3A_Params_limitedFT_hq, $STR_A3A_Params_generic_none}; default = 1; }; class civTraffic @@ -105,6 +105,13 @@ class Params texts[] = {$STR_A3A_Params_generic_2min, $STR_A3A_Params_generic_5min, $STR_A3A_Params_generic_15min, $STR_A3A_Params_generic_30min, $STR_A3A_Params_generic_disabled}; default = 900; }; + class A3A_gcMaxObjects + { + title = $STR_A3A_Params_gcMaxObjects_title; + values[] = {50,100,150,200,300}; + texts[] = {"50","100","150","200","300"}; + default = 150; + }; class A3A_GCThreshold { title = $STR_A3A_Params_GCThreshold_title; @@ -133,6 +140,13 @@ class Params texts[] = {$STR_A3A_Params_builderPermissions_tl, $STR_A3A_Params_builderPermissions_engi, $STR_A3A_Params_builderPermissions_both}; default = 3; }; + class A3A_removeRestore + { + title = $STR_A3A_Params_removeRestore_title; + values[] = {0,1}; + texts[] = {$STR_antistasi_dialogs_generic_button_no_tooltip,$STR_antistasi_dialogs_generic_button_yes_text}; + default = 0; + }; class SpacerMembership { @@ -221,6 +235,14 @@ class Params texts[] = {"1.0x","1.1x","1.2x","1.3x","1.4x","1.5x"}; default = 12; }; + class A3A_enemyResponseTime + { + attr[] = {"server"}; + title = $STR_A3A_Params_enemyResponseTime_title; + values[] = {20,15,10,7,5}; + texts[] = {$STR_A3A_Params_generic_veryslow, $STR_A3A_Params_generic_slow, $STR_A3A_Params_generic_normal, $STR_A3A_Params_generic_fast, $STR_A3A_Params_generic_veryfast}; + default = 10; + }; class A3A_attackHQProximityMul { attr[] = {"server"}; @@ -301,7 +323,7 @@ class Params title = $STR_A3A_Params_guestItemLimit_title; values[] = {0,10,15,25,40}; texts[] = {$STR_A3A_Params_generic_nolimit,"10","15","25","40"}; - default = 25; + default = 0; }; class unlockedUnlimitedAmmo { diff --git a/A3A/addons/core/Pictures/Flags/ifa_ak.paa b/A3A/addons/core/Pictures/Flags/ifa_ak.paa new file mode 100644 index 0000000000..6b566e9e3f Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_ak.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_allies.paa b/A3A/addons/core/Pictures/Flags/ifa_allies.paa new file mode 100644 index 0000000000..285e0cc20f Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_allies.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_ffi.paa b/A3A/addons/core/Pictures/Flags/ifa_ffi.paa new file mode 100644 index 0000000000..8cf742fbad Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_ffi.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_fr.paa b/A3A/addons/core/Pictures/Flags/ifa_fr.paa new file mode 100644 index 0000000000..f1f5dee111 Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_fr.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_pl.paa b/A3A/addons/core/Pictures/Flags/ifa_pl.paa new file mode 100644 index 0000000000..fe2cc886c1 Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_pl.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_sov.paa b/A3A/addons/core/Pictures/Flags/ifa_sov.paa new file mode 100644 index 0000000000..cb872aaaa1 Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_sov.paa differ diff --git a/A3A/addons/core/Pictures/Flags/ifa_weh.paa b/A3A/addons/core/Pictures/Flags/ifa_weh.paa new file mode 100644 index 0000000000..6540d21fe7 Binary files /dev/null and b/A3A/addons/core/Pictures/Flags/ifa_weh.paa differ diff --git a/A3A/addons/core/Pictures/Markers/ifa_ak.paa b/A3A/addons/core/Pictures/Markers/ifa_ak.paa new file mode 100644 index 0000000000..7166441c93 Binary files /dev/null and b/A3A/addons/core/Pictures/Markers/ifa_ak.paa differ diff --git a/A3A/addons/core/Pictures/Markers/ifa_allies.paa b/A3A/addons/core/Pictures/Markers/ifa_allies.paa new file mode 100644 index 0000000000..4003b8c82c Binary files /dev/null and b/A3A/addons/core/Pictures/Markers/ifa_allies.paa differ diff --git a/A3A/addons/core/Pictures/Markers/ifa_ffi.paa b/A3A/addons/core/Pictures/Markers/ifa_ffi.paa new file mode 100644 index 0000000000..511d2ce200 Binary files /dev/null and b/A3A/addons/core/Pictures/Markers/ifa_ffi.paa differ diff --git a/A3A/addons/core/Pictures/Markers/ifa_sov.paa b/A3A/addons/core/Pictures/Markers/ifa_sov.paa new file mode 100644 index 0000000000..3cad7d49d9 Binary files /dev/null and b/A3A/addons/core/Pictures/Markers/ifa_sov.paa differ diff --git a/A3A/addons/core/Pictures/Markers/ifa_weh.paa b/A3A/addons/core/Pictures/Markers/ifa_weh.paa new file mode 100644 index 0000000000..b168b3e521 Binary files /dev/null and b/A3A/addons/core/Pictures/Markers/ifa_weh.paa differ diff --git a/A3A/addons/core/Scripts/fn_advancedTowingInit.sqf b/A3A/addons/core/Scripts/fn_advancedTowingInit.sqf index aae1e045ba..4a6f96243f 100644 --- a/A3A/addons/core/Scripts/fn_advancedTowingInit.sqf +++ b/A3A/addons/core/Scripts/fn_advancedTowingInit.sqf @@ -663,7 +663,7 @@ SA_Pickup_Tow_Ropes_Action_Check = { }; SA_Can_Pickup_Tow_Ropes = { - isNull (player getVariable ["SA_Tow_Ropes_Vehicle", objNull]) && count (missionNamespace getVariable ["SA_Nearby_Tow_Vehicles",[]]) > 0 && vehicle player == player; + isNull (player getVariable ["SA_Tow_Ropes_Vehicle", objNull]) && count (missionNamespace getVariable ["SA_Nearby_Tow_Vehicles",[]]) > 0 && vehicle player == player && !(call A3A_fnc_isCarrying); }; SA_TOW_SUPPORTED_VEHICLES = [ diff --git a/A3A/addons/core/Stringtable.xml b/A3A/addons/core/Stringtable.xml index d5656907d9..64e2364ca5 100644 --- a/A3A/addons/core/Stringtable.xml +++ b/A3A/addons/core/Stringtable.xml @@ -46,11 +46,18 @@ - Artillery Strike + Mortar Strike Frappe d'artillerie 포병 타격 + Артиллерийский удар 重炮投送 + + Mortar barrage is inbound, starting grid %1. + + + Smoke barrage is inbound, starting grid %1. + Selected battery is busy right now. La batteria selezionata è occupata. @@ -81,6 +88,7 @@ Requesting a mortar strike on Grid %1. %2 %3. Demande d'attaque au mortier sur la grille %1. %2 %3. 좌표 %1에 %2 %3의 박격포 포격을 요청한다. + Запрос на минометный удар по сетке %1. %2 %3. 请求迫击炮打击于坐标 %1.%2 %3. @@ -97,28 +105,37 @@ 你当前的模式设定不支持这种类型的火力支援. - Artillery Barrage Begin + Mortar Barrage Begin Début du barrage d'artillerie 포병 연발타격 시작 + Начало огня 重炮火力投送开始 - Artillery Barrage End + Mortar Barrage End Fin du barrage d'artillerie 포병 연발타격 끝 + Конец огня 重炮火力投送结束 Rounds Obus + Кол-во 多发着弹 The mortar has run out of rounds. Wait a few minutes to restock it. Il mortaio non ha munizioni. Aspetta alcuni minuti per ricaricarlo. + Esta batería de artillería no tiene munición para disparar. Recárgala en el CG. + L'artillerie n'a aucune munition à tirer. Rechargez la au QG. 박격포에 탄약이 부족합니다. 다시 채우려면 몇 분 정도 기다리십시오. + У батареи закончились боеприпасы. Перезарядите её в штабе + Ta bateria nie ma amunicji. Uzupełnij ją w Kwaterze Głównej. Dělostřelectvu došla munice. Vyčkej pár minut než se doplní. + A bateria não tem munições para disparar. Recarrega-a no QG. + Topçu bataryasının ateşleyecek mühimmatı yok. Ana üssünüzde tekrar doldurun. 炮组弹药耗尽. 请等待几分钟以便弹药的重新装填 @@ -134,6 +151,12 @@ Seçili pozisyon bu bataryanın menzili dışında. 你所标记的位置位于该炮组射程之外. + + Mortar fire support is inbound, grid %1 + + + Smoke rounds are inbound, grid %1. + You must select an artillery group. Devi selezionare un gruppo d'artiglieria. @@ -149,8 +172,15 @@ You must select an artillery group or the mortar team you have selected hasn't placed down the mortar yet. + Devi selezionare un gruppo d'artiglieria oppure è un mortaio mobile in movimento. + Debe seleccionar un grupo de artillería o es un mortero móvil que está en movimiento. + Vous devez sélectionner un groupe d'artillerie ou une équipe de mortier qui n'est pas en déplacement. 포병 그룹을 선택해야 하거나 선택한 박격포반이 아직 박격포를 배치하지 않았습니다. + Вы должны выбрать артилерийскую группу либо это мобильный миномет в дживении + Musisz wybrać grupę artylerii, lub jest to mobilny moździerz, który się porusza. Musíte zvolit skupinu dělostřelectva, nebo mínometčíků ještě nerozložili své palebné postavení. + Tens que selcionar um grupo de artilharia ou é um morteiro móvel que se encontra em movimento. + Bir topçu grubu seçmeniz gerekir ya da seçili hareket halinde bir havan topu grubu. 你必须选择一个炮群或者你选择的迫击炮小组尚未部署他们的迫击炮 @@ -183,16 +213,19 @@ Round Obus + Кол-во 单发着弹 Splash. Out. Impact. Terminé. 착탄한다, 이상. + Артиллерийский удар нанесен. 压制着弹完毕 Artillery Support + Artillerie-Unterstützung Supporto d'artiglieria Apoyo de Artillería Support d'Artillerie. @@ -207,11 +240,13 @@ Acknowledged. Fire mission is inbound. ETA %1 secs for the first impact. 확인. 사격 임무 시작. 초탄 착탄 예상 시간은 %1초다. + Принято. Огневая поддержка на подходе. Время - %1 сек до первого удара. 收到. 重炮火力投送中. 预计%1 秒后首发着弹. Acknowledged. Fire mission is inbound. %2 %3 fired. ETA %1 secs. 확인. 사격 임무 시작. %2 %3 사격했다. 착탄 예상 시간은 %1초다. + Принято. Огневая поддержка на подходе. %2 %3 выстрелов. Ждите %1 сек. 收到. 重炮火力投送中.%2 %3 发射完毕. 预计%1 秒后着弹. @@ -257,183 +292,218 @@ "I see no corpses here to loot. "Je ne vois pas de corps à piller ici. 여기엔 노획할 시체가 보이지 않습니다. + "Я не вижу здесь трупов, которые можно было бы облутать. "我没看到这里有什么尸体可以收缴战利品. I am currently rearming. Cancelling. 현재 재무장 중입니다. 취소합니다. + Я сейчас уже перевооружаюсь. 我当前正在补给中. 取消中. I cannot rearm right now. I'm healing a comrade. Je ne peux pas réarmer en ce moment. Je soigne un camarade. 지금은 재무장할 수 없습니다. 전우를 치료 중입니다. + Я не могу перевооружиться прямо сейчас. Я лечу товарища. 我现在没办法进行武器补给. 我正在抢救受伤的同志 There is nothing to loot. Il n'y as rien à piller. 노획할 것이 없습니다. + Здесь нечего лутать. 周边没有战利品可以缴获 It is useless to load my vehicle, as it needs repairs. Il est inutile de charger mon véhicule, car il a besoin de réparations. 수리가 필요해서 해당 차량에 짐을 싣는 것을 쓸데없는 행위입니다. + Загружать мой автомобиль бесполезно, так как он нуждается в ремонте. 装载我的车辆毫无意义,它需要修理. I cannot rearm right now. I'm manning this gun. 지금은 재무장할 수 없습니다. 현재 이 총을 관리하고 있습니다. + Я не могу перевооружиться прямо сейчас. Я управляю этим орудием. 我现在没办法进行武器补给,我正在操作这挺武器 No more weapons to loot. Il n'y a plus d'armes à piller. 노획할 무기가 더 이상 없습니다. + Больше нет оружия, которое можно забрать. 没有更多的武器以供收缴了 Starting to loot. Début du pillage. 노획을 시작합니다. + Начинаю грабить. 开始收缴战利品 Rearming done. 재무장 완료. + Перевооружение завершено. 武器补给完毕 Picking a first aid kit. 구급상자 줍는 중. + Подбираю аптечки. 正在拾取一包个人急救包 Picking a better weapon. 더 나은 무기 줍는 중. + Подбираю лучшее оружие. 正在拾取一支更好的武器 Picking a helmet. 헬멧 줍는 중. + Подбираю шлем. 正在拾取一顶军用头盔 Picking NV goggles. 야시경 줍는 중. + Подбираю ПНВ. 正在拾取夜视仪 Picking a backpack. 가방 줍는 중. + Подбираю рюкзак. 正在拾取背包 Picking a radio. 무전기 줍는 중. + Подбираю рацию. 正在拾取无线电 Picking a secondary weapon. 부무기 줍는 중. + Подбираю вторичное оружие. 正在拾取一把副武器 Picking a better vest. 더 나은 조끼 줍는 중. + Подбираю лучше бронежилет. 正在拾取一套更好的军用背心 I have a better weapon now. 이제 더 나은 무기를 가졌습니다. + Теперь у меня есть оружие получше. 我已经装备上了更好的武器 I have a secondary weapon now. 이제 더 나은 부무기를 가졌습니다. + Теперь у меня есть вторичное оружие. 我现在有副武器啦 No need to rearm. 재무장할 필요가 없습니다. + Нет необходимости перевооружаться. 不需要进行武器补给 No source to rearm my primary weapon. 내 주무기를 재무장할 탄약이 없습니다. + Нет источника для перевооружения моего основного оружия. 缺乏进行我主武器补给的源头 No source to rearm my secondary weapon. 내 부무기를 재무장할 탄약이 없습니다. + Нет источника для перевооружения моего вторичного оружия. 缺乏进行我副武器补给的源头 Partially rearmed. 부분적으로 재무장했습니다. + Частично перевооружен. 多多少少补给了一点 Rearmed. Réarmé. 재무장했습니다. + Перевооружен. 补给完毕 Rearming. Réarmement. 재무장 중. + Перевооружаюсь. 正在补给中 Go back to your base and tell your comrades we are not your enemies. We just want to live in peace. 기지로 돌아가서 동료들에게 우린 적이 아니라고 전해라. 우린 단지 평화롭게 살고 싶을 뿐이다. + Вернись к своим и скажи, что мы вам не враги. Мы просто хотим жить в мире. 回去你的基地并告诉你的同志们我们并不是你们的敌人.我们只是想平静的活下去. Okay, thank you. I owe you my life. 네, 감사합니다. 제 목숨을 빚졌습니다. + Хорошо, спасибо. Я обязан вам жизнью. 谢了伙计,我欠你一条命 Thank you. I swear you won't regret it! 고맙습니다. 절대 후회하지 않을 겁니다! + Спасибо. Клянусь, вы не пожалеете! 多谢了,我保证你不会后悔的! Thank you, I won't forget this! 고맙습니다, 절대 잊지 않겠습니다! + Спасибо, я этого не забуду! 十分感谢,此恩我永世难忘! Screw you! 좆까! + Пошел ты нахер, козел! 去你的! Why not? It can't be any worse. 안 될 거 뭐 있습니까? 이것보다 더 나쁠 순 없겠죠. + Почему бы и нет? Хуже уже не будет. 为什么不能呢?反正也糟糕不到哪里去了. How about joining the good guys? 선한 이들과 함께하는 건 어떻소? + Как насчет того, чтобы присоединиться к нам? 有没有想过加入正义的队伍啊? Comrades, this is %1. I'm hurt! 여기는 %1이다, 부상당했다! + Товарищи, это %1. Я ранен! 同志,这里是 %1. 我受伤了! You are ready %1. 치료가 끝났다, %1. + Вы готовы %1. 你已经痊愈了%1 Wait a minute comrade %1, I will patch you up. 기다려라, %1. 치료하러 가겠다. + Подожди, товарищ %1, я сейчас подлатаю. 请等一下 %1 同志, 我能给你包扎伤口. @@ -441,6 +511,7 @@ %1 è in arrivo per aiutarti. %1 est en route pour vous aider. %1이(가) 당신을 도와주기 위해 가는 중입니다. + %1 уже в пути, чтобы помочь вам. %1 je na cestě vám pomoct. %1正在赶来救助你的路上 @@ -449,32 +520,38 @@ Medico Medical 의료 + Медицина Zdravotnické 医疗专职 You imperialist! Tell me what you know! 이 제국주의자놈! 알고 있는 걸 불어라! + Ты империалист! Скажи мне, что ты знаешь! 好你个帝国主义份子!快点告诉我你所知道的一切! Screw you, I am not telling you anything! 좆까라, 난 절대 입을 열지 않겠다! + Пошел ты, я тебе ничего не скажу! 去你的,我什么的都不会跟你说! I don't know anything. Maybe my squad leader does. 전 아무것도 몰라요. 분대장이라면 알지도 모릅니다. + Я ничего не знаю. Может быть, мой командир знает. 我什么也不知道.或许我的小队长知道点什么. Okay, I'll tell you what I know. 네, 알고 있는 걸 다 말하겠습니다. + Хорошо, я расскажу что знаю. 行行好,我这就把我知道的东西老实交代. You are free. Come with us! 당신은 자유입니다. 우리에게 오십시오! + Ты освобожден. Ступай за нами! 你免费了. 快跟我们一起上路吧! @@ -520,6 +597,7 @@ La Adquisición de Objetivos Automática Estática no está disponible para los escuadrones de morteros en Multijugador. Le Ciblage Automatique d'Arme Statique est indisponible pour les Escouades de Mortier en Multijoueur. 고정화기 자동 타겟은 멀티플레이어 박격포팀에게 적용되지 않습니다. + Автонаведение установок недоступно для минометных отрядов в мультиплеере. Automatické zaměřování pro minometné družstva není dostupné v Multiplayeru. Alvo Automático Estático não está disponível para Pelotões de Morteiros em Multijogador. Çok Oyunculuda Havan takımları için Statik Otomatik Hedef uygun değildir. @@ -531,6 +609,7 @@ El escuadrón seleccionado no es una posición fija montada. L'escouade selectionnée n'occupe pas une arme statique. 선택한 분대는 고정상태가 아닙니다. + Выбранный отряд не является моторизированным. Vybrané družstvo nemůže být přiřazeno statické zbrani. Pelotão selecionado não é do tipo estático montado. Seçilen manga statik kurucu tipte değil. @@ -542,6 +621,7 @@ Objetivo Automatico de Estatica Ciblage Automatique Arme Statique 고정화기 자동 타겟 + Автонаведение установок Automatické zaměřování pro statické zbraně Alvo Automático Estático. Statik Otomatik Hedef @@ -555,6 +635,7 @@ Carga Cargaison 화물 + Груз Ładunek Náklad Carga @@ -567,6 +648,7 @@ Transferida la carga de %1 al arsenal. Cargaison transférée depuis %1 vers l'arsenal. %1의 화물을 무기고로 옮겼습니다. + Перенес груз из %1 в арсенал. Przetransportowano ładunek z %1 do arsenału. Přesunout náklad z %1 do arzenálu. Carga transferida de %1 para o arsenal. @@ -579,6 +661,7 @@ El vehículo cercano (%1) está vacío. Le véhicule le plus proche (%1) est vide. 가까운 차량 (%1) 이 비여있습니다. + Ближайший транспорт (%1) пуст. Najbliższy pojazd (%1) jest pusty. Nejbližší vozidlo (%1) je prázdné Veículo mais próximo (%1) está vazio. @@ -591,6 +674,7 @@ La caja de munición más cercana está vacía. La boite de munitions la plus proche est vide. 가까운 탄약상자가 비어있습니다. + Ближайший ящик пуст. Najbiższa skrzynia z amunicją jest pusta. Nejbližší bedna s municí je prázdná. Caixa de munições mais próxima está vazia. @@ -603,6 +687,7 @@ Transferencia interrumpida debido al movimiento del Camión o del Jugador. Transfert annulé à cause du déplacement du Camion ou du Joueur. 트럭 또는 플레이어의 이동으로 인해 전달이 취소되었습니다. + Перенос отменен из-за перемещения грузовика или игрока. Transfer anulowany z powodu poruszenia się gracza lub ciężarówki. Přesun byl zrušen kvůli pohybu Náklaďáku nebo Hráče. Transferência cancelada devido a movimento da Carrinha ou Jogador. @@ -615,6 +700,7 @@ Solamente el Comandante puede transferir el contenido de esta caja de municiones a cualquier camión. Seul le Commandant peut transférer le contenu de cettte boite de munitions vers n'importe quel camion. 오직 지휘관만 탄약상자 내용물을 아무 트럭에다가 옮길 수 있습니다. + Только командующий может погрузить содержимое этого ящика в грузовик. Tylko dowódca może przenieść zawartość tej skrzyni z amunicją do jakiejkolwiek ciężarówki. Pouze Velitel může přesunout obsah této bedny s municí do vozidla. Apenas o Comandante pode transferir o conteúdo desta caixa de munições para qualquer carrinha. @@ -627,6 +713,7 @@ Cargando camión. <br/><br/> Tiempo restante %1 s. Chargement du camion. <br/><br/>Temps restant: %1 secs. 트럭에 싣는 중.<br/><br/>남은 시간 : %1 초 + Загрузка грузовика. <br/><br/>Осталось времени: %1 сек. Ładowanie ciężarówki. <br/><br/>Pozostały czas: %1 sek. Vozidlo se nakládá. <br/><br/>Zbývající čas: %1 sek. Carrinha a carregar. <br/><br/> Tempo restante: %1 secs. @@ -636,6 +723,7 @@ Truck Loaded 트럭에 싣음 + Грузовик загружен @@ -644,23 +732,28 @@ Irrompi nel veicolo Forcer Véhicule 차량 브리칭 + Выкуривание из техники 强攻载具 %1Reb: %2<br/>Occ:%3<br/>Inv:%4<br/>Civ:%5<br/>TOTAL:%6 %1반군: %2<br/>점령군:%3<br/>침략군:%4<br/>민간인:%5<br/>총합:%6 + %1Повстанцев: %2<br/>Окупантов:%3<br/>Захватчиков:%4<br/>Гражданских:%5<br/>ВСЕГО:%6 %1HC %2 AI %1 하이 커맨드 %2 AI + %1HC %2 ИИ AI Load Information AI 로드 정보 + Информация о загрузке ИИ No Headless Client Detected 헤드리스 클라이언트 감지되지 않음 + Headless клиенты не обнаружены Undercover @@ -679,13 +772,23 @@ Unidentified aircraft!<br/><br/>You are closing in on the restricted airspace of %1.<br/><br/> Change your course or we will take defensive actions! Velivolo non identificato<br/><br/>Ti stai avvicinando allo spazio aereo di %1.<br/><br/> Invertite la rotta o intraprenderemo azioni difensive! + Hélicoptère non-identifié<br/><br/>Vous approchez de l'espace aérien de %1.<br/><br/> Modifiez votre trajectoire ou nous allons prendre des mesures défensives! 미확인 항공기!<br/><br/>너는 %1 소속 영공을 침범했다.<br/><br/>항로를 바꾸지 않으면 방어 조치를 취하겠다! + Неопознанный летательный объект! <br/><br/>Вы приближаетесь к запретному воздушному пространству %1.<br/><br/>Измените курс или мы предпримем оборонительные действия! + 未识别的直升飞行器<br/><br/>你正在接近 %1 的空域 .<br/><br/> 更变你的航向否则我方将不得不采取必要的防御措施! Unidentified aircraft!<br/><br/>You are closing in on the restricted airspace of %1.<br/><br/> Change your course or we will take defensive actions! Velivolo non identificato<br/><br/>Ti stai avvicinando allo spazio aereo di %1.<br/><br/> Invertite la rotta o intraprenderemo azioni difensive! + Helicóptero no identificado<br/><br/>Está acercándose al espacio aéreo de %1.<br/><br/> ¡Cambie de rumbo o tomaremos acciones defensivas! + Hélicoptère non-identifié<br/><br/>Vous approchez de l'espace aérien de %1.<br/><br/> Modifiez votre trajectoire ou nous allons prendre des mesures défensives! 미확인 항공기!<br/><br/>너는 %1 소속 영공을 침범했다.<br/><br/>항로를 바꾸지 않으면 방어 조치를 취하겠다! + Неопознанный летательный объект! <br/><br/>Вы приближаетесь к запретному воздушному пространству %1.<br/><br/>Измените курс или мы предпримем оборонительные действия! + Niezidentyfikowany helikpterze<br/><br/>Zbliżasz się do przestrzeni powietrznej %1.<br/><br/> Zmień kurs albo podejmiemy działania obronne! Neidentifikované letadlo<br/><br/>Přibližujete se do vzdušného prostoru %1.<br/><br/> Změňte kurz nebo podnikneme obranné akce! + Helicóptero não identificado <br/><br/> Estás próximo do espaço aéreo de %1. <br/><br/> Muda o curso ou vamos tomar ações defensivas! + Tanımsız helikopter<br/><br/>%1 Hava sahasına yaklaşıyorsunuz.<br/><br/> Rotanızı değiştirin ya da defansif önlemler alacağız! + 未识别的直升飞行器<br/><br/>你正在接近 %1 的空域 .<br/><br/> 更变你的航向否则我方将不得不采取必要的防御措施! Breach Vehicle @@ -693,6 +796,7 @@ Irrumpir vehículo Forcer le Véhicule 차량 브리칭 + Выкуривание из техники Włam się do pojazdu Vyřadit vozidlo Arrombar Veículo @@ -705,6 +809,7 @@ Cancelar irrumpimiento Annuler l'Effraction 브리칭 취소 + Отмена выкуривания Anuluj włamywanie Zrušit vyřazení vozidla Cancelar Arrombamento @@ -717,6 +822,7 @@ Irrumpimiento cancelado. Effraction Annulée 브리칭 취소됨. + Выкуривание отменено. Włamywanie anulowane. Vyřazení vozidla zrušeno Arrombamento cancelado @@ -729,6 +835,7 @@ No queda ningún tripulante vivo, ¡no es necesario irrumpir en el vehículo! Il n'y a plus d'équipage en vie, pas besoin d'effraction! 살아있는 승무원이 없습니다. 브리칭 할 이유가 없습니다! + Живого экипажа не осталось, выкуривать не нужно! Załoga już nie żyje, nie ma potrzeby włamywania. Uvnitř žádná posádka nežije, není potřeba vyřazovat vozidlo. Não há tripulantes vivos, sem necessidade de arrombamento! @@ -741,6 +848,7 @@ ¿Porque querría irrumpir en un vehículo destruido? Pourquoi voudriez vous forcer un véhicule détruit ? 왜 파괴된 차량을 브리칭 하려는겁니까? + Зачем вам понадобилось выкуривать из разрушенной техники? Czemu chciałbyś włamywać się do zniszczonego pojzadu ? Není potřeba vyřazovat poškozené vozidlo? Porque quererias arrombar um veículo destroído? @@ -753,6 +861,7 @@ ¡Debe ser un ingeniero para irrumpir en vehículos! Vous devez être un ingénieur pour forcer un véhicule ! 브리칭을 하려면 엔지니어여야만 합니다. + Чтобы выкуривать, нужно быть инженером! Musisz być inżynierem żeby włamać się do pojazdu. Musíš být inženýr aby jsi mohl vyřadit vozidlo! Tens de ser engenheiro para arrombar um veículo! @@ -765,6 +874,7 @@ ¡No puedes irrumpir en vehículos controlados por los rebeldes! Vous ne pouvez pas forcer un véhicule contrôlé par les rebelles ! 반군이 운용하는 차량은 브리칭할 수 없습니다! + Вы не можете выкуривать технику, которая контролируется повстанцами! Nie możesz włamać się do pojazdu kontrolowanego przez rebeliantów! Nemůžeš vyřadit vozidlo, které je pod kontrolou rebelů. Não podes arrombar um veículo que é controlado pelos rebeldes! @@ -777,6 +887,7 @@ No lleva ningún tipo de explosivo encima. ¡Necesitará alguno para irrumpir en vehículos! Vous ne portez pas d'explosifs. Vous en avez besoin pour forcer des véhicules ! 당신은 아무 폭발물도 들고 있지 않습니다. 브리칭하려면 어느 정도는 있어야 합니다. + У вас нет взрывчатки. Она понадобятся вам для выкуривания! Nie masz przy sobie materiałów wybuchowych. Będziesz ich potrzebował do włamywania się do pojazdów! Nemáš u sebe žádné výbušniny. Budeš je potřebovat k vyřazení vozidla. Não portas explosivos. Vais precisar de alguns para arrombar veículos! @@ -789,6 +900,7 @@ ¡Solo los jugadores pueden irrumpir en vehículos! Seuls les joueurs sont capables de forcer des véhicules ! 오직 플레이어만 차량을 브리칭할 수 있습니다. + В настоящее время только игроки могут выкуривать! Tylko gracze mogą aktualnie włamywać się do pojazdów! Pouze hráči nyní můžou vyřazovat vozidla. Apenas jogadores podem arrombar veículos! @@ -801,6 +913,7 @@ ¡No lleva el tipo de explosivos adecuado, compruebe las notas de instrucción para ver que necesita! Vous n'avez pas les bons explosifs, vérifiez les notes du briefing pour voir ce dont vous avez besoin ! 당신은 적절한 폭약을 가지고 있지 않습니다. 브리핑 노트를 확인해서 뭐가 필요한지 확인하세요. + У вас нет нужной взрывчатки, проверьте, что вам нужно! Nie posiadasz odpowiednich ładunków wybuchowych, sprawdź odprawę aby dowiedzieć się, czego potrzebujesz! Nemáš správné výbušniny, podívej se do briefing poznámek, aby jsi viděl které potřebuješ! Não tens o tipo certo de explosivos, verifica as notas informativas para ver o que precisas! @@ -813,6 +926,7 @@ Irrupción en 10 segundos. Effraction dans 10 secondes. 10초 후 브리칭. + Детонация через 10 секунд. Włamanie nastąpi za 10 sekund. Vyřazení za 10 sekund. Abertura em 10 segundos. @@ -825,6 +939,7 @@ %1%2 el nivel de agresión ha aumentado a %3. %1%2 niveau d'agression augmenté à %3. %1%2 공격성이 %3 로 증가했습니다.<br/> + Уровень агрессии %1%2 повышен до %3. %1%2 poziom agresji wzrósł do %3. %1%2 úroveň agrese se zvýšila na %3. %1%2 Nível de agressão aumentado para %3. @@ -837,6 +952,7 @@ %1%2 el nivel de agresión ha disminuido a %3 %1%2 niveau d'agression réduit à %3. %1%2 공격성이 %3 로 감소했습니다.<br/> + Уровень агрессии %1%2 снижен до %3. %1%2 poziom agresji spadł do %3. %1%2 úroveň agrese se snížila na %3. %1%2 Nível de agressão diminuído para %3. @@ -849,6 +965,7 @@ El nivel de agresión ha cambiado Changement du niveau d'agressivité 공격성 레벨 변화 + Уровень агрессии изменен Poziom agresji zmienił się Úroveň agrese se změnila Nível de agressão mudou @@ -861,6 +978,7 @@ %1 el nivel de agresión ha aumentado a %2.<br/> %1 niveau d'agression augmenté à %2.<br/> %1 공격성이 %2 로 증가했습니다.<br/> + Уровень агрессии %1 повышен до %2.<br/> %1 poziom agresji wzrósł do %2.<br/> %1 úroveň agrese se zvýšila na %2.<br/> %1 Nível de agressão aumentado para %2. @@ -873,6 +991,7 @@ %1 el nivel de agresión ha disminuido a %2.<br/> %1 niveau d'agression réduit à %2.<br/> %1 공격성이 %2 로 감소했습니다.<br/> + Уровень агрессии %1 снижен до %2.<br/> %1 poziom agresji spadł do %2.<br/> %1 úroveň agrese se snížila na %2.<br/> %1 Nível de agressão diminuído para %2. @@ -885,6 +1004,7 @@ Solo el Comandante Commandant uniquement 지휘관 전용 + Только командующий Tylko dla dowódcy Pouze velitel Apenas Comandante @@ -897,6 +1017,7 @@ Solo nuestro Comandante tiene acceso a esta función. Seul notre Commandant a accès à cette fonction. 오직 지휘관만 이 기능에 액세스 할 수 있습니다. + Доступ к этой функции есть только у нашего командующего. Tylko nasz dowódca ma dostęp do tej czynności. Pouze velitel má přístup k této funkci. Apenas o Comandante tem acesso a esta função. @@ -909,6 +1030,7 @@ ¡Suelte a Petros antes de mover el CG! Placez Petros avant de déplacer le QG ! 본부를 옮기기 전에 페트로스를 내려놓으십시오! + Поставьте Петроса, прежде чем перемещать штаб! Połóż Petrosa, zanim przeniesiesz kwaterę główną! Polož Petrose než budeš hýbat s HQ! Pousa o Petros antes de mover o QG! @@ -918,8 +1040,15 @@ Petros is already picked up. Petros attualmente in spalla. + Petros está siendo sujetado. + Petros est en train d'être deplacé. 페트로스는 이미 픽업된 상태입니다. + Петроса уже забрали. + Petros jest obecnie podniesiony. Petros sebrán. + Petros atualmente em movimento. + Petros şu anda taşınıyor. + Petros当前已被拾起 Move HQ @@ -941,6 +1070,7 @@ Cuenta atrás Compte à Rebours 카운트다운 + Обратный отсчет Odliczanie Odpočet Contador @@ -954,6 +1084,7 @@ Error al descargar:<br/>%1 Erreur de téléchargement :<br/>%1 다운로드 오류:<br/>%1 + Ошибка загрузки:<br/>%1 Błąd pobierania:<br/>%1 Chyba stažení:<br/>%1 Erro de download:<br/>%1 @@ -967,6 +1098,7 @@ Tiempo restante: %1 s. Temps Restant : %1 secs 남은 시간 : %1 초 + Оставшееся время: %1 сек. Pozostały czas: %1 sek Zbývající čas: %1 sek. Tempo restante: %1 secs @@ -979,6 +1111,7 @@ Nivel de la Guerra cambiado<br/><br/> Nivel actual: %1 Niveau de Guerre modifié<br/><br/>Niveau Actuel : %1 워 레벨 변화<br/><br/>현재 레벨: %1 + Уровень войны изменен<br/><br/>Текущий уровень: %1 Poziom Wojny Zmieniony<br/><br/>Bieżący poziom: %1 Úroveň války se změnila<br/><br/>Aktulní úroveň: %1 Nível de Guerra mudou<br/><br/>Nível Atual: %1 @@ -992,6 +1125,7 @@ Crear Puesto Avanzado Créer un Avant-Poste 감시초소 건설하기 + Создать аванпост Postaw Posterunek Vytvořit Stanoviště Criar Posto Avançado @@ -1004,6 +1138,7 @@ Opción en desuso. Utilice la opción de "Quitar acuartelamientos" desde el CG. Option obsolète. Utilisez Retirer la Garnison du QG à la place. 사용하지 않는 옵션입니다. 대신 주둔군 제거를 본부에서 사용하십시오. + Устаревшая опция. Вместо этого используйте "Удалить гарнизон" в меню. Przestarzała opcja. Zamiast tego użyj opcji Usuń Garnizon z Kwatery Głównej. Zastarala volba. Místo toho použijte Odstranit posádku z HQ. Opção obsoleta. Usa Remover Guarnição a partir do QG ao invés. @@ -1014,11 +1149,13 @@ %1 Roadblock %1 Barrage routier %1 검문소 + %1 Блокпост %1 Watchpost %1 Poste d'observation %1 관측초소 + %1 Наблюдательный пост Move this asset @@ -1027,6 +1164,7 @@ Mover este objeto Déplacer ce bien 이 에셋 이동시키기 + Переместить Przesuń ten zasób. Přesunout tento asset. Mover este recurso @@ -1053,6 +1191,7 @@ No puede comprar vehículos mientras haya enemigos cerca. Vous ne pouvez pas acheter de véhicules tant que des ennemis sont proches. 적들이 근처에 있을 때는 차량을 구입할 수 없습니다. + Вы не можете покупать технику, пока рядом с вами есть враги. Nie możesz kupować pojazdów kiedy blisko ciebie są wrogowie. Nemůžeš kupovat vozidla když jsou poblíž nepřátelé. Não podes comprar veículos quando inimigos estão próximos de ti. @@ -1066,6 +1205,7 @@ Interrogar Interroger 심문하기 + Допросить Przesłuchaj Vyslechnout Interrogar @@ -1093,6 +1233,7 @@ Dejar libre a PDG Relâcher le Prisonnier de Guerre 전쟁 포로 석방 + Освободить военнопленного Wypuść Jeńca Propustit POW Libertar PdG @@ -1106,6 +1247,7 @@ Odio la niebla Je déteste le brouillard 안개는 싫어 + Убрать туман Nienawidzę mgły Nesnáším mlhu Eu odeio o nevoeiro @@ -1119,6 +1261,7 @@ Despejar el bosque cercano Défricher la Forêt Proche 근처 숲 벌목 + Убрать растения Oczyść najbliższy las Vymýtit les poblíž Limpar Floresta circundante @@ -1132,6 +1275,7 @@ Lluvia lluvia vete ya Pluie pluie vas-t'en 비야 비야 제발 그쳐라 + Убрать дождь Deszcz deszcz idź sobie Jdi pryč dešti! Chuva chuva vai embora @@ -1145,6 +1289,7 @@ Descansar durante 8 horas Se reposer pour 8 Heures 8시간 동안 쉬기 + Отдыхать 8ч Odpoczywaj przez 8 godzin Odpočívat na 8 Hodin Descansar por 8 horas @@ -1158,6 +1303,7 @@ Llevar %1 Porter %1 %1 들기 + Перенос %1 Nést %1 Carregar %1 Taşıma %1 @@ -1170,6 +1316,7 @@ Revivir %1 Réanimer %1 %1 소생하기 + Лечить %1 Ulecz %1 Oživit %1 Reviver %1 @@ -1183,6 +1330,7 @@ Construir CG aquí Construire le QG ici 여기에 본부 건설하기 + Построить штаб Zbuduj kwaterę główną tutaj Postavit HQ zde Construir QG aqui @@ -1195,6 +1343,7 @@ Gestionar CG Gestion du QG 본부 관리 + Управление Штабом Zarządzanie kwaterą główną Správa HQ Gestão do QG @@ -1205,8 +1354,15 @@ Decipher Intel Intel entschlüsseln Decifra Intelligence + Descifrar Inteligencia + Décrypter les Renseignements 군사정보 해독 + Расшифровать разведданные + Rozszyfruj dane wywiadowcze Dešifrovat Intel + Decifrar Informação + İstihbaratı deşifre et + 解析情报 Download Intel @@ -1215,6 +1371,7 @@ Descargar Inteligencia Télécharger les Renseignements 군사정보 다운로드 + Скачать разведданные Pobierz dane wywiadowcze Stáhnout Intel Descarregar Informação @@ -1228,6 +1385,7 @@ Rebuscar inteligencia militar Chercher des Renseignements 군사정보 수색 + Найти разведданные Szukaj danych wywiadowczych Hledat Intel Procurar Informação @@ -1241,6 +1399,7 @@ Coger inteligencia Récupérer les Renseignements 군사정보 확보 + Взять разведданные Weź informacje Vzít Intel Pegar Informação @@ -1253,6 +1412,7 @@ Solicitar misión Demande de mission 임무 요청 + Миссии Prośba o misję Požádat o misi Requisitar Missão @@ -1266,6 +1426,7 @@ Liberar PDG Libérer le Prisonnier de Guerre 전쟁 포로 해방시키기 + Освободить военнопленного Uwolnij jeńców wojennych Osvobodit POW Libertar PdG @@ -1279,6 +1440,7 @@ Reclutamiento de tropas Recrutement d'Unités 병력 모집 + Нанять юнит Rekrutacja jednostek Verbování jednotek Recrutamento de unidades @@ -1291,6 +1453,7 @@ No puede reclutar tropas mientras haya enemigos cerca. Vous ne pouvez pas recruter d'unités tant que des ennemis sont proches. 적들이 근처에 있을 때는 유닛을 모집할 수 없습니다. + Вы не можете нанимать бойцов, пока рядом с вами есть враги. Nie możesz rekrutować jednostek kiedy blisko ciebie są wrogowie. Nemůžeš rekrutovat jednotky když jsou poblíž nepřátelé. Não podes recrutar unidades quando inimigos estão próximos de ti. @@ -1304,6 +1467,7 @@ Liberar Libérer 해방시키기 + Освободить Wyzwól Osvobodit Libertar @@ -1316,6 +1480,7 @@ Permitir a la IA utilizar esta arma Autoriser les IAs à utiliser cette arme AI가 이 고정화기를 사용하는것을 허가합니다. + Разрешить ИИ использовать это оружие Pozwól SI używać tej broni. Povolit AI používat tuto zbraň Autorizar IA's a usar esta arma @@ -1325,8 +1490,15 @@ Prevent AIs from using this weapon Vieta all'IA di usare quest'arma + Prohibir a la IA utilizar esta arma + Empêcher aux IAs d'utiliser cette arme AI가 이 무기를 사용하는것을 막기 + Запретить ИИ использовать это оружие + Zabroń SI używać tej broni. Zakázat AI používat tuto zbraň + Evitar IA's de usar esta arma + Yapay zekaların bu silahı kullanmasını engelle + 禁止AI使用该武器 Take the Flag @@ -1334,6 +1506,7 @@ Capturar la Bandera Prendre le Drapeau 지역 점령 + Заменить флаг Weź flagę Sundat vlajku Tomar a Bandeira @@ -1346,6 +1519,7 @@ Transferir la caja de municiones al camión Transférer la boite de munitions vers le Camion 탄약상자를 트럭으로 옮기기 + Погрузить ящик в грузовик Przenieś skrzynię z amunicją do ciężarówki Přesunout Bednu do Náklaďáku. Transferir Caixa de Munições para Carrinha @@ -1372,6 +1546,7 @@ No puede comprar vehículos mientras haya enemigos cerca. Vous ne pouvez pas acheter de véhicules tant que des ennemis sont proches. 적들이 근처에 있을 때는 차량을 구입할 수 없습니다. + Вы не можете покупать технику, пока рядом с вами есть враги. Nie można kupować pojazdów, gdy w pobliżu znajdują się wrogowie. Nemůžeš kupovat vozidla když jsou poblíž nepřátelé. Não podes comprar veículos quando inimigos estão próximos de ti. @@ -1381,6 +1556,7 @@ Garrison units: %1%15<br/><br/>Squad Leaders: %2<br/>%14: %3<br/>Riflemen: %4<br/>Autoriflemen: %5<br/>Medics: %6<br/>Grenadiers: %7<br/>Marksmen: %8<br/>AT Men: %9<br/>AT Missile Men: %10<br/>AA Missile Men: %11<br/>Other: %12<br/>Static Weap: %13 주둔 중인 유닛: %1%15<br/><br/>분대장: %2<br/>%14: %3<br/>소총수: %4<br/>자동소총수: %5<br/>의무병: %6<br/>유탄수: %7<br/>지정사수: %8<br/>대전차병: %9<br/>AT 대전차전문가: %10<br/>대공전문가: %11<br/>기타: %12<br/>고정화기: %13 + Гарнизон: %1%15<br/><br/>Лидеры отрядов: %2<br/>%14: %3<br/>Стрелки: %4<br/>Пулеметчики: %5<br/>Медики: %6<br/>Гранатометчики: %7<br/>Снайперы: %8<br/>ПТ-гранатометчики: %9<br/>ПТУР-гранатометчики: %10<br/>ПВО-гранатометчики: %11<br/>Прочее: %12<br/>Статическое оружие: %13 Garbage Deleted.<br/>Last GC was %1 ago. @@ -1388,6 +1564,7 @@ Basura eliminada.<br/>La última limpieza de basura fue hace %1. Mémoire Nettoyée.<br/>Dernier nettoyage était il y a %1 . 쓰래기 수집 완료.<br/>마지막 쓰래기 수집은 %1 전이었습니다. + Мусор удален.<br/>Последнее удаление мусора было %1 назад. Śmieci usunięte.<br/>Ostatnie usuwanie było %1 temu. Odpad vymazán.<br/>Poslední sběr odpadků proběhl před %1. Lixo apagado.<br/>Última LL foi há %1 @@ -1414,6 +1591,7 @@ Por favor, deje que acabe el Limpiador de Basura.<br/> La última limpieza de basura fue hace %1. Merci d'attendre que le nettoyage mémoire se termine.<br/> Le dernier était il y a %1. 쓰레기 수집이 끝날 때까지 기다려 주십시오.<br/>마지막 쓰레기 수집은 %1 전이었습니다. + Пожалуйста, подождите, пока удаляется мусор.<br/>Последнее удаление мусора было %1 назад. Proszę poczekać na zakończenie usuwania śmieci.<br/>Ostatnie usuwanie było %1 temu. Prosím vyčkej než sběr odpadků dokončí svojí práci. Poslední sběr proběhl před %1. Por favor espera pela LL acabar.<br/>Última LL foi há %1 @@ -1427,6 +1605,7 @@ Headless Client Client Headless 헤드리스 클라이언트 + Headless клиент Virtuální entita Headless Client 无头客户端 @@ -1434,123 +1613,152 @@ A Headless Client has been disconnected. This will cause malfunctions. Head back to HQ for saving ASAP and ask an Admin for a restart. L'Headless Client è stato disconnesso. Ciò causerà malfunzionamenti. Torna al QG per salvare il prima possibile e chiedi ad un Amministratore di riavviare. + Un Headless Client ha sido desconectado. Esto causará errores. Vuelva al CG lo antes posible para guardar el progreso y pregunte a un administrador para que reinicie. + Un Client Headless a été déconnecté. Cela va causer des disfonctionnnement. Retournez au QG pour sauvegarder aussi vite que possible et demandez à un Admin pour un redémarrage. 헤드리스 클라이언트의 연결이 끊어졌습니다. 이로 인해 오작동이 발생할 수 있습니다. 본부로 돌아가 최대한 빨리 저장한 후, 관리자에게 재시작을 요청하십시오. + Был отключен Headless клиент. Это приведет к сбоям в работе. Вернитесь в штаб для сохранения как можно скорее и попросите администратора перезапустить. + Headless Client rozłączył się. To spowoduje problemy. Wracajcie do kwatery głównej aby jak najszybciej zapisać stan gry i poproście admina o restart. Virtuální entita byla odpojena. Toto může způsobit problémy. Vrať se okamžitě na HQ, abys uložil hru a řekni Adminovi o restart. + Bir Headless Client bağlantısı koptu. Bu arızalara yok açabilir. Karargaha dönüp oyunu kaydedin ve bir Admin'den oyunu yeniden başlatmasını isteyin. + 无头客户端已断开连接。这将导致故障。返回总部以尽快保存,并要求管理员重新启动。 %1 Airbase %1 Base Aérienne %1 공군 기지 + %1 Авиабаза Factory near %1 Usine près de %1 %1 인근 공장 + Фабрика рядом с %1 Forest near %1 Foret près de %1 %1 인근 숲 + Лес рядом с %1 Outpost near %1 Avant-poste près de %1 %1 인근 전초기지 + Аванпост рядом с %1 Resource near %1 Ressource près de %1 %1 인근 자원채취소 + Ресурсы рядом с %1 Roadblock near %1 Barrage routier près de %1 %1 인근 검문소 + Блокпост рядом с %1 Seaport near %1 Port près de %1 %1 인근 항구 + Морской порт рядом с %1 Watchpost near %1 Poste d'observation près de %1 %1 인근 관측초소 + Наблюдательный пост рядом с %1 Airbase Lost Base Aérienne perdu 공군 기지 잃음 + Авиабаза потеряна Factory Lost Usine perdu 공장 잃음 + Фабрика потеряна Outpost Lost Avant-poste perdu 전초기지 잃음 + Аванпост потерян Resource Lost Ressource perdu 자원채취소 잃음 + Ресурсы потеряны Seaport Lost Port perdu 항구 잃음 + Морской порт потерян %1 lost an Airbase %1 à perdu une Base Aérienne %1 세력이 공군 기지를 잃음 + %1 потеряли Авиабазу %1 lost a Factory %1 à perdu une Usine %1 세력이 공장을 잃음 + %1 потеряли Фабрику %1 lost an Outpost %1 à perdu un Avant-poste %1 세력이 전초기지를 잃음 + %1 потеряли Аванпост %1 lost a Resource %1 à perdu une Ressource %1 세력이 자원채취소를 잃음 + %1 потеряли Ресурсы %1 lost a Seaport %1 à perdu un Port. %1 세력이 항구를 잃음 + %1 потеряли Морской порт Airbase Taken Base Aérienne capturé 공군 기지 점령 + Захвачена Авиабаза Factory Taken Usine capturé 공장 점령 + Захвачена Фабрика Outpost Taken Avant-poste capturé 전초기지 점령 + Захвачен Аванпост Resource Taken Ressource capturé 자원채취소 점령 + Захвачены Ресурсы Seaport Taken Port capturé 항구 점령 + Захвачен Морской порт Garrison @@ -1572,6 +1780,7 @@ Guarnición eliminada<br/><br/>Dinero recuperado: %1 €<br/>RH recuperados: %2 Garnison supprimée<br/><br/>Argent Récupéré : %1 €<br/>RH Récupéré : %2 주둔군 회수됨<br/><br/>회수된 돈: %1 €<br/>회수된 인적 자원 : %2 + Гарнизон удален<br/><br/>Восстановленные деньги: %1 €<br/>Возвращено HR: %2 Garnizon usunięty<br/><br/>Odzyskane pieniądze: %1 €<br/>Odzyskane HR: %2 Posádka odstraněna<br/><br/>Vrácené peníze: %1 €<br/>Vrácené HR: %2 Guarnição removida<br/><br/>Dinheiro recuperado: %1<br/>RH recuperados: %2 @@ -1584,6 +1793,7 @@ La guarnición del CG se quedará aquí y distraerá al enemigo. La Garnison du QG va rester ici et distraire les ennemis. 본부 주둔군은 여기서 대기하면서 적군을 교란할 것입니다. + Гарнизон штаба останется здесь и отвлечет врага. Garnizon sztabu zostanie tutaj i odwróci uwagę wroga. Posádka HQ zůstane tady a bude odvádět pozornost nepřítele. Guarnição do QG vai ficar aqui e distraí os inimigos. @@ -1596,6 +1806,7 @@ Captura del Puesto de Avanzada cancelada Capture de l'Avant-Poste abandonnée. 버려진 전초기지 점령 + Отменен захват аванпоста Przerwane przejęcie posterunku Zabrání stanoviště zrušeno Captura de Posto Avançado abortada @@ -1607,6 +1818,7 @@ Abortisci Cattura dell'Avamposto Abandonner la capture de l'Avant-Poste 전초기지 점령 취소 + Отменить захват аванпоста 放弃哨站抢占 @@ -1615,6 +1827,7 @@ El enemigo sigue cerca. Mire su mapa y limpie la zona. L'ennemi rôde toujours dans les parages. Verifiez votre carte et nettoyez la zone. 아직도 적이 근처에 서성이고 있습니다. 맵을 보고 지역을 정리하세요. + Враг все еще скрывается поблизости. Проверьте свою карту и очистите местность. Wróg wciąż się czai. Sprawdź mapę i oczyść teren. Nepřítel je stále v oblasti. Zkontroluj mapu a vyčisti oblast. O inimigo ainda espreita algures. Verifica o mapa e limpa a área. @@ -1627,6 +1840,7 @@ El enemigo sigue vivo. Cácelos y limpie la zona. L'ennemi rôde toujours dans les parages. Traquez-les et nettoyez la zone. 아직도 적이 근처에 서성이고 있습니다. 찾아서 지역을 정리하세요. + Враг все еще скрывается поблизости. Выследите их и очистите территорию. Wróg nadal czai się w pobliżu. Załatw ich i oczyść teren. Nepřítel je stále v oblasti. Ulov je a vyčisti oblast. O inimigo ainda espreita algures. Caça-os e limpa a área. @@ -1639,6 +1853,7 @@ No puede capturar la bandera mientras está encubierto. Vous ne pouvez pas Capturer le Drapeau en étant Incognito. 위장한 상태로 점령할 수 없습니다. + Вы не можете захватить Флаг, находясь под прикрытием. Nie można przejąć flagi będąc w trybie pod przykryciem Nemůžeš zabrat vlajku, když jsi v utajení. Não podes Capturar a bandeira enquanto estás Camuflado. @@ -1648,8 +1863,15 @@ You cannot capture airbases until you reach War Level 3. Non puoi catturare gli Aeroporti prima del Livello di Guerra 3. + No puede capturar aeropuertos hasta que llegue al Nivel de Guerra 3. + Vous ne pouvez pas capturer d'Aéroport avant d'atteindre le Niveau de Guerre 3. 워 레벨 3에 도달하기 전에는 공군 기지를 점령할 수 없습니다. + Вы не можете захватывать авиабазы, пока не достигнете 3-го уровня войны. + Nie możesz przejmować lotnisk, dopóki nie osiągniesz 3 poziomu wojny. Nemůžeš zabírat Letiště dokud úroveň války nedosáhne úrovně 3. + Não podes capturar Aeroportos até chegar ao Nível de Guerrra 3. + Savaş seviyesi 3'e ulaşmadan Havalimanlarını ele geçiremezsin. + 在到达战争等级3之前,你无法占领机场 Capture @@ -1658,6 +1880,7 @@ Capturar Capturer 점령 + Захват Zdobądź Zabrat Capturar @@ -1670,6 +1893,7 @@ La bandera está en uso, espere %1. Mât de Drapeau utilisé, attendez %1. 게양대를 사용중입니다. %1 기다려주십시오. + Флагшток используется, подождите %1. Maszt jest w użyciu, poczekaj %1. Stožár vlajky je využíván, vyčkej %1. Haste de bandeira a ser utilizada, espera %1. @@ -1682,6 +1906,7 @@ Haga click en el puesto de vigilancia o bloqueo de carretera para eliminarlo. Cliquez sur le Poste d'Observation ou le Barrage Routier pour le supprimer. 파괴할 감시초소나 검문소를 클릭하세요. + Нажмите на наблюдательный пост или блокпост на дороге, чтобы удалить. Klikni na pozorovací bod nebo zátaras k vymazání. Clica no Posto de Vigia ou no Bloqueio de Estrada para o apagar. Gözcü kulesine ya da Barikatlara tıklayarak kaldırın. @@ -1693,6 +1918,7 @@ Haga click en la posición en la que quiera construir el puesto de vigilancia o bloqueo de carretera. <br/><br/> Recuerde: para construir bloqueos de carretera debe clicar exactamente en una carretera. Cliquez sur la position où vous souhaitez construire le Poste d'Observation ou le Barrage Routier. <br/><br/> Souvenez vous : pour construire un Barrage Routier vous devez cliquer exactement sur une section de route sur la carte. 감시초소 또는 검문소를 건설하고 싶은 곳을 클릭하십시요.<br/><br/> 검문소는 길 위를 클릭해야합니다. + Нажмите на позицию, где вы хотите построить сторожевой пост или блокпост на дороге. <br/><br/> Помните: чтобы построить блокпосты, вы должны щелкнуть точно по дороге. Klikni na pozici kde si přeješ vybudovat pozorovací bod nebo zátaras. <br/><br/> Pamatuj: K vybudování zátarasu musíš kliknout přímo na silnici. Clica na posição em que desejas construir o Posto de Vigia ou Bloqueio de Estrada.<br/><br/> Lembra-te: para construir Bloqueios de Estrada tem que clicar exatamente numa porção do mapa que seja estrada. Gözcü kulesine ya da Barikatlara kurmak istediğiniz yere tıklayın.<br/><br/> Unutmayın ki Barikat kurmak için yolun üstünde olmanız gerekmektedir. @@ -1704,6 +1930,7 @@ No hay puestos de vigilancia o bloqueos de carretera desplegados para eliminar. Pas de Poste d'Observation ou de Barrage Routiers à supprimer. 파괴할 감시초소나 검문소가 없습니다. + Нет наблюдательных постов или блокпостов, которые можно было бы распустить. Nejsou žádné pozorovací body nebo zátarasy k vymazání. Nenhum Posto de Vigia ou Bloqueio de Estrada implantado para eliminar. Kaldırılacak Gözcü kulesi ya da Barikat yok. @@ -1715,6 +1942,7 @@ No puede eliminar un Puesto mientras haya enemigos cerca. Vous ne pouvez pas supprimer un Poste tant que des ennemis en sont proches. 적들이 근처에 있을 때는 초소를 파괴할 수 없습니다. + Вы не можете удалить Пункт, пока рядом с ним находятся враги. Nemůžeš smazat Stanoviště pokud jsou poblíž nepřátelé. Não podes eliminar um Posto com inimigos perto dele. Düşmanlar yakındayken bu mevkiyi kaldıramazsın. @@ -1726,6 +1954,7 @@ Solo podemos desplegar / eliminar un puesto de vigilancia o bloqueo de carretera a la vez. Vous ne pouvez déployer / supprimer qu'un seul Poste d'Observation ou Barrage Routier à la fois. 오직 한번에 한 개의 감시초소나 검문소를 배치/파괴 할 수 있습니다. + Мы можем одновременно развернуть/удалить только один сторожевой пост или блокпост на дороге. Můžeš rozmísťovat / mazat pouze jeden pozorovací bod nebo zátaras najednou. Só podemos implantar / eliminar um Posto de Vigia ou Bloqueio de Estrada de cada vez. Aynı anda sadece bir tane Gözcü kulesi ya da Barikat kurabilir / kaldırabiliriz. @@ -1737,6 +1966,7 @@ Ningún puesto cerca. Aucun poste proche. 근처에 초소 없음. + Поблизости нет поста. Žádné stanoviště poblíž. Nenhum posto perto Yakın civarda mevki yok. @@ -1748,6 +1978,7 @@ Necesita una radio en su inventario para poder dar órdenes a otros escuadrones. Vous avez besoin d'une radio dans votre inventaire pour donner des ordres aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku aby jsi mohl vydávat rozkazy ostatním družstvům. Precisas de um rádio no inventário para conseguires dar ordens a outros pelotões @@ -1760,6 +1991,7 @@ Necesita un operador de radio en su grupo para poder dar órdenes a otros escuadrones. Vous avez besoin d'un Opérateur Radio dans votre groupe pour donner des ordres aux autres escouades. 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu aby jsi mohl dávat rozkazy ostatním družstvům. Precisas de um Radiotelegrafista no teu grupo pra conseguires dar ordens a outros pelotões. @@ -1769,8 +2001,14 @@ You lack the resources to build this Watchpost or Roadblock. <br/><br/> %1 HR and %2 € needed. Ti mancano le risorse per costruire questo Posto di Guardia o Posto di Blocco. <br/><br/> %1 HR e %2 € richiesti. + No tiene los recursos para construir este puesto de vigilancia o bloqueo de carretera. <br/><br/> Necesita %1 RH y %2 €. + Vous manquez de ressources pour construire ce Poste d'Observation ou Barrage Routier. <br/><br/> %1 RH et %2 € requis. 당신은 감시초소나 검문소를 건설하기 위한 자원이 부족합니다.<br/><br/> 인력 %1 포인트와 %2 €가 필요합니다. + Вам не хватает ресурсов, чтобы построить этот сторожевой пост или блокпост на дороге. <br/><br/> Требуется %1 HR и %2 €. Chybí ti zdroje, abys vybudoval Předsunutou hlídku nebo Zátaras. <br/><br/> %1 HR a %2 € je vyžadováno. + Faltam recursos para construir este Posto de Vigia ou Bloqueio de Estrada. <br/><br/> %1 RH e %2 € necessários. + Bu mevkiiyi kurmak için yetersiz kaynaklar. <br/><br/> %1 HR ve %2 € gerekli. + 你缺少建造哨塔或者路障的资源. <br/><br/> 需要 %1 人力 以及 %2 € . Radio required @@ -1779,6 +2017,7 @@ Radio requerida Radio requise 무전기 필요 + Требуется рация Wymagane radio Je vyžadována vysílačka Rádio necessário @@ -1791,6 +2030,7 @@ Operador de radio requerido Opérateur Radio requis 무전병 필요 + Требуется радист Wymagany radiowiec Je vyžadován radista Radiotelegrafista necessário @@ -1804,6 +2044,7 @@ Puestos de Vigilancia/Bloqueos de carretera Postes d'Observation/Barrages Routiers 감시초소/검문소 + Наблюдательный пункт/Блокпост Předsunutá hlídka/Zátaras Posto de Vigia/Bloqueio de Estrada Gözcü kuleleri / Barikatlar @@ -1815,6 +2056,7 @@ Hay enemigos en los alrededores de ese área, por favor, seleccione otra. Il y a des ennemis dans les environs de cette zone, choisissez-en une autre. 선택한 장소 근처에 적이 있습니다. 다른 장소를 선택해 주세요. + В окрестностях этого района есть враги, пожалуйста, выберите другой. W okolicy tego obszaru znajdują się wrogowie, wybierz inny. V okolí dané lokace jsou nepřátelé, prosím vyber jinou. Há inimigos nas redondezas dessa área, por favor seleciona outra. @@ -1824,8 +2066,15 @@ Position selected is very close to an enemy zone.<br/><br/> Please select another position. Il posto selezionato è molto vicino a zone nemiche.<br/><br/> Selezionane un altro. + El lugar seleccionado está muy cerca de zonas enemigas.<br/><br/> Por favor, seleccione otra posición. + Le lieu choisi est très proche des zones ennemies.<br/><br/> Choisissez une autre position. 선택한 장소가 적 구역과 매우 가깝습니다.<br/><br/> 다른 장소를 선택해 주세요. + Выбранная позиция находится очень близко к вражеской зоне.<br/><br/> Пожалуйста, выберите другую позицию. + Wybrane miejsce znajduje się bardzo blisko stref wroga.<br/><br/> Wybierz inną pozycję. Vybrané místo je příliš blízko k nepřátelské zoně.<br/><br/> Prosím vyber jinou pozici. + Lugar selecionado é muito próximo de zonas inimigas.<br/><br/> Por favor, seleciona outra posição. + Seçilen pozisyon düşman bölgelerine çok yakın.<br/><br/> Lüften yeni bir pozisyon seçin + 选定位置离敌人防线太近了 .<br/><br/>请选择其他位置 Selected position cannot be outside the map. @@ -1833,6 +2082,7 @@ La posición seleccionada no puede estar fuera del mapa. La position choisie ne peut pas être en dehors de la carte. 선택한 장소는 맵 바깥일 수 없습니다. + Выбранная позиция не может находиться за пределами карты. Wybrana pozycja nie może znajdować się poza mapą. Vybraná pozice nemůže být mimo mapu. Posição slecionada não pode ser fora do mapa. @@ -1845,6 +2095,7 @@ La posición seleccionada no puede estar en el agua. La position choisie ne peut pas être dans l'eau. 선택한 장소는 물 속일 수 없습니다. + Выбранная позиция не может находиться в воде. Wybrana pozycja nie może znajdować się w wodzie. Vybraná pozice nemůže být ve vodě. Posição selecionada não pode ser na água. @@ -1858,6 +2109,7 @@ Petros ha muerto Petros est Mort 페트로스가 사망했습니다. + Петрос мертв Petros nie żyje Petros je mrtvý. Petros Morreu @@ -1870,6 +2122,7 @@ Petros ha sido asesinado. Habéis perdido parte de sus objetos y necesitáis seleccionar un nuevo CG lejos de los enemigos. Petros a été tué. Vous perdez une partie de vos biens et devez choisir une nouvelle position pour le QG loin des ennemis. 페트로스가 사망했습니다. 자산 중 일부를 잃고 적에게서 멀리 떨어진 새로운 본부 위치를 선택해야합니다. + Петрос был убит. Вы потеряли часть своих ресурсов и должны выбрать новый штаб вдали от врагов. Petros został zabity. Straciliście część swoich zasobów i musicie wybrać nową pozycję HQ z dala od wrogów. Petros byl zabit. Ztratili jste část vašeho majetku a budete muset vytvořit novou pozici pro velitelství daleko od nepřátel. Petros foi morto. Perdeste parte dos teus ativos e precisas de selecionar uma nova posição para o QG longe de inimigos. @@ -1883,6 +2136,7 @@ Posición del CG Position du QG 본부 위치 + Местоположение штаба Pozycja kwatery głównej Pozice HQ Posição QG @@ -1890,11 +2144,12 @@ 总部位置 - You must click near a map marker. + You must click near a rebel map marker. Devi cliccare vicino a un marcatore sulla mappa. Debe clicar cerca de un marcador de mapa. Vous devez cliquer à côté d'un marqueur de carte. 맵 마커 근처를 클릭해야합니다. + Вы должны щелкнуть рядом с маркером на карте. Musisz kliknąć w pobliżu znacznika na mapie. Musíš kliknout blízko značky na mapě. Precisas de clicar perto de um marcador do mapa. @@ -1907,6 +2162,7 @@ Haga click en la zona que quiera reconstruir. Cliquez sur la zone que vous voulez reconstruire. 재건축하고 싶은 곳을 클릭하세요. + Нажмите на зону, которую вы хотите перестроить. Kliknij strefę, którą chcesz odbudować. Klikni na zónu kterou chceš obnovit. Clica na zona que queres reconstruir. @@ -1920,6 +2176,7 @@ %1 Reconstruido %1 Reconstruit %1 재건축 완료 + %1 перестроен %1 Odbudowane %1 postaveno %1 Reconstruído @@ -1933,18 +2190,20 @@ Torre de radio reconstruida. Tour Radio reconstruite. 통신탑 재건축 완료. + Радиовышка восстановлена. Wieża radiowa odbudowana. Radiová věž znovu postavena. Torre de Rádio reconstruída Radyo Kulesi yeniden yapıldı. 通信塔已被重建 - - You cannot rebuild that. + + There is nothing to rebuild on this site. Non puoi ricostruire ciò. No puede reconstruir esto. Vous ne pouvez pas reconstruire ceci. 그것은 재건축할 수 없습니다. + Вы не можете восстановить это. Nie można tego odbudować. Toto nemůžeš znovu postavit. Não podes reconstruir isso. @@ -1957,34 +2216,13 @@ No tiene dinero suficiente para reconstruir ningún objeto. Necesita 5.000 €. Vous n'avez pas assez d'argent pour reconstuire des Biens. Vous avez besoin de 5.000€. 당신은 이 에셋을 재건축하기 위한 돈을 충분히 가지고 있지 않습니다. 5000€가 필요합니다. + У вас недостаточно денег, чтобы восстановить какой-либо объект. Вам нужно 5.000 €. Nie masz wystarczająco dużo pieniędzy, aby odbudować jakikolwiek obiekt. Potrzebujesz 5 000 €. Nemáš dostatek peněz pro znovu postavený jakéhokoliv Assetu. Potřebuješ 5 000 €. Não tens dinheiro suficiente para reconstruir qualquer Ativo. Precisas de 5.000€. Yeni ekipman yapmak için yeterinde paranız yok. 5.000 €'ya ihtiyacınız var. 你当前的资金不足以重建任何资产. 你需要 5.000 €. - - That Outpost does not have a destroyed Radio Tower. - Quell'Avamposto non ha un Torre Radio distrutta. - Esa base no tiene una torre de radio destruida. - Cet Avant-Poste n'a pas de Tour Radio détruite. - 이 전초기지는 파괴된 송신탑을 가지고 있지 않습니다. - Toto stanoviště nemá zničenou Rádiovou Věž. - Este Posto Avançado não tem Torre de Rádio. - O karakolun yıkılmış bir Radyo Kulesi yok. - 那个哨站没有被摧毁的通信塔 - - - You cannot rebuild a Radio Tower in an Outpost which does not belong to %1. - Non puoi ricostruire una Torre Radio in un Avamposto che non appartiene a %1. - No puede reconstruir una torre de radio en una base que no pertenezca a %1. - Vous ne pouvez pas reconstruire une Tour Radio dans un Avant-Poste qui n'appartient pas à %1. - %1의 소유가 아닌 전초기지의 송신탑은 재건축할 수 없습니다. - Nemůžeš znovu postavit Radiovou věž na základně, která nespadá pod %1. - Não podes reconstruir a Torre de Rádio num Posto Avançado que não pertence a %1. - %1 'e ait olmayan bir Karakola Radyo Kulesi dikemezsiniz. - 你无法在一个不属于 %1 的哨站里重建通信塔 - Rebuild Assets Anlagen wiederherstellen @@ -2003,37 +2241,51 @@ Radio Tower Destroyed Tour Radio détruite 통신탑 파괴함 + Радиовышка разрушена Radio Tower Tour Radio 통신탑 + Радиовышка You decided to rest for some time. 잠시 쉬기로 결정했습니다. + Вы решили немного отдохнуть. Back at it, soldier. The rebellion needs you. 깨어나십시오 용사여, 반군에겐 당신이 필요합니다. + Возвращайся к делу, солдат. Ты нужен сопротивлению. HR: %1%2 인력 %1%2 + HR: %1%2 Money: %1%2 € 자금: %1%2 € + Деньги: %1%2 € %1 Resources %1 자원채취소 + %1 Ресурсы Vehicle must be closer than 50 meters to the HQ marker. Il veicolo deve essere entro 50 metri dal marcatore del quartier generale. + El vehículo debe estar a 50 metros o menos del marcador del CG. + Le Véhicule doit être à moins de 50 mètres du marqueur du quartier général. 차량이 본부 마커에서 50미터 이내로 들어와야 합니다. + Техника должна находиться ближе. На расстоянии 50 метрах от отметки штаба. + Pojazd musi znajdować się bliżej niż 50 metrów od znacznika kwatery głównej. Vozidlo musí být blíž než 50 metrů od značky HQ. + O veículo tem de estar a pelo menos 50m do marcador do quartel general. + Araç, Karargaha 50 metreden kısa mesafede olmalıdır. + 载具和总部标记之前的距离必须低于50米 In order to sell the vehicle, it must be empty. @@ -2041,6 +2293,7 @@ Para poder vender el vehiculo, debe estar vacío. Pour vendre le véhicule, il doit être vide. 차량을 팔려면 차량이 비어있어야 합니다. + Для того чтобы продать технику, она должна быть пустой. Aby sprzedać pojazd, musi on być pusty. Aby jsi prodal vozidlo, musí být prázdné. Para vender o veículo, ele tem de estar vazio. @@ -2053,6 +2306,7 @@ No está mirando a un vehículo. Vous ne regardez pas vers un véhicule. 당신은 차량을 보고 있지 않습니다. + Вы не смотрите на технику. Nie patrzysz na pojazd Nedíváš se na vozidlo. Não estás a olhar para qualquer veículo. @@ -2065,6 +2319,7 @@ No es el dueño de este vehículo. Por tanto, no lo puede vender. Vous n'êtes pas le propriétaire de ce véhicule. Par conséquent vous ne pouvez pas le vendre. 당신은 차량 주인이 아니기 때문에 차량을 판매할 수 없습니다. + Вы не являетесь владельцем этого техники. Поэтому, не можете её продать. Nie jesteś właścicielem tego pojazdu. Dlatego nie możesz go sprzedać. Nejsi vlastníkem tohoto vozidla, tudíž ho nemůžeš prodat. Não és o dono deste veículo. Pelo que tal, não podes vendê-lo @@ -2077,7 +2332,9 @@ El vehículo al que está mirando no es apto para nuestro mercado. Le véhicule que vous regardez n'est pas adapté à notre marché. 당신이 보고 있는 차량은 우리 시장에 적합하지 않습니다. + Техника, на которую вы смотрите, не подходит для нашего рынка. Vozidlo na které se díváš není vhodné pro náš trh. + O veículo para o qual estás a olhar não é adequado no nosso mercado. Şu anda baktığın araç pazarımız için uygun değil. 你所选定的载具并不适用于我们的市场 @@ -2087,6 +2344,7 @@ Este vehículo ya se está vendiendo. La vente du véhicule est déjà en cours. 차량 판매가 이미 진행 중입니다. + Продажа техники уже ведется. Sprzedaż pojazdu jest już w toku. Vozidlo je již prodáváno. Venda do veículo em progresso. @@ -2108,12 +2366,13 @@ 出售载具 - Vehicle Sold. + Vehicle sold. Fahrzeuge verkauft Veicolo Venduto. Vehículo vendido. Véhicule Vendu. 차량 판매 완료. + Техника продана. Pojazd sprzedany Vozidlo prodáno. Veículo vendido @@ -2123,10 +2382,12 @@ Rank: %5 | HR: %1 | Your Money: %6 € | %11 Money: %2 € | Airstrikes: %7 | %9 Aggr: %3 | %10 Aggr: %4 | War Level: %8 | Undercover Mode: %12 계급: %5 | 인력: %1 | 당신의 자금: %6 € | %11의 자금: %2 € | 공습: %7 | %9 공격성: %3 | %10 공격성: %4 | 전쟁 레벨: %8 | 위장 모드: %12 + Ранг: %5 | HR: %1 | Ваши деньги: %6 € | Деньги %11: %2 € | Авиаудары: %7 | %9 Агрессия: %3 | %10 Агрессия: %4 | Уровень войны: %8 | Режим скрытности: %12 Commander: %3 | Rank: %2 | HR: %1 | Your Money: %4 € | %8 Aggr: %5 | %9 Aggr: %6 | War Level: %7 | Undercover Mode: %10 지휘관: %3 | 계급: %2 | 인력: %1 | 당신의 자금: %4 € | %8 공격성: %5 | %9 공격성: %6 | 전쟁 레벨: %7 | 위장 모드: %10 + Командир: %3 | Ранг: %2 | HR: %1 | Ваши деньги: %4 € | %8 Аггр: %5 | %9 Аггр: %6 | Уровень войны: %7 | Режим скрытности: %10 Vehicle locked. @@ -2135,6 +2396,7 @@ Vehículo cerrado. Véhicule verrouillé. 차량 잠금. + Техника закрыта. Pojazd zablokowany Vozidlo uzamčeno. Veículo trancado. @@ -2144,8 +2406,14 @@ You cannot lock or unlock destroyed vehicles. Non puoi aprire/chiudere veicoli distrutti. + No puede abrir/cerrar vehículos destruidos. + Vous ne pouvez pas verrouiller/déverrouiller un véhicule détruit. 파괴된 차량은 잠금/잠금 해제가 불가능합니다. + Вы не можете заблокировать или разблокировать уничтоженную технику. Nemůžeš odemknout/zamknout zničené vozidlo. + Não podes trancar/destrancar destruído. + Patlamış araçların kilidini aç/kapat yapamazsınız. + 你无法解锁/上锁已经被摧毁的载具 You are not looking at a vehicle. @@ -2153,6 +2421,7 @@ No está mirando a un vehículo. Vous ne regardez pas vers un véhicule. 당신은 차량을 보고 있지 않습니다. + Вы не смотрите на технику. Nie patrzysz na pojazd Nedíváš se na vozidlo. Não estás a olhar para qualquer veículo. @@ -2165,6 +2434,7 @@ Lo siento, no puede desbloquear %1. Désolé, vous ne pouvez pas déverrouiller %1. 죄송하지만 %1 은 잠금 해제가 불가능합니다. + Извините, вы не можете разблокировать %1. Przepraszamy, nie można odblokować %1. Promiň, nemůžeš odemknout %1. Desculpa, não podes destrancar %1. @@ -2177,6 +2447,7 @@ El vehículo que está mirando no se puede usar. Le véhicule que vous regardez ne peut pas être utilisé. 보고 있는 차량은 사용이 불가능합니다. + Техника, на которую вы смотрите, не может быть использована. Pojazd, który oglądasz, nie może być używany. Vozidlo na které se díváš, nemůže být použito. O veículo para o qual estás a olhar não pode ser usado. @@ -2189,15 +2460,24 @@ El vehículo que está mirando no tiene dueño. Le véhicule que vous regardez n'appartient à personne. 보고 있는 차량은 그 누구의 소유도 아닙니다. + Техника, на которую вы смотрите, никому не принадлежит. Vozidlo na které se díváš nikomu nepatří. + O veículo para o qual estás a olhar não pertence a ninguém. Şu anda baktığınız araç kimseye ait değil. 你当前选定的载具并不属于任何人 You cannot lock or unlock vehicles which you do not own. Non puoi aprire/chiudere veicoli che non possiedi. + No puede abrir/cerrar vehículos que no le pertenezcan. + Vous ne pouvez pas déverrouiller/verrouiller un véhicule qui ne vous appartient pas. 당신의 소유가 아닌 차를 잠금/잠금 해제할 수 없습니다. + Вы не можете заблокировать или разблокировать технику, которая вам не принадлежат. + Nie możesz odblokować/zablokować pojazdów, których nie jesteś właścicielem. Nemůžeš odemknout/zamknout které nevlastníš. + Não podes destrancar/trancar veículo que não te pertencem. + Sahip olmadığınız araçların kilidini açıp kapatamazsınız. + 你无法解锁/上锁不属于你的载具 Vehicle unlocked. @@ -2205,6 +2485,7 @@ Vehículo abierto. Véhicule déverrouillé. 차량 잠금 해제 완료. + Техника открыта. Pojazd odblokowany Vozidlo odemčeno. Veículo destrancado. @@ -2228,51 +2509,62 @@ A small team is being sent to establish an overwatch point. The commander must use HC to move the team to their destination. 관측 지점을 구축하기 위해 소규모 팀이 파견되었습니다. 지휘관은 하이 커맨드를 사용해 팀을 목적지로 이동시켜야 합니다. + Небольшая команда отправляется на наблюдательный пост. Командир должен использовать HC для перемещения группы к месту назначения. Watchpost Deploy 관측초소 배치 + Наблюдательный пост развернут We are sending a squad to establish a roadblock. The commander must use HC to move the squad to its destination. 관측소를 설치하기 위해 분대를 보내고 있습니다. 지휘관은 하이 커맨드를 사용하여 분대를 목적지로 이동시키십시오. + Мы отправляем отряд на создание блокпоста. Командир должен использовать HC, чтобы переместить отряд к месту назначения. Roadblock Deploy 검문소 배치 + Развертывание блокпоста Enemy Comms Lost 적군 통신 놓침 + Связь с противником потеряна Enemy Comms Intercepted 적군 통신 가로챔 + Перехвачена вражеская связь Low Bas 낮음 + Низкая Medium Moyen 중간 + Средняя High Haut 높음 + Высокая Very High Très haut 매우 높음 + Очень Высокая Extreme Extrême 최대 + Экстрим @@ -2282,6 +2574,7 @@ Solo los administradores pueden ejecutar el debug de convoy. Seuls les admin du serveur peuvent exécuter le débug de convoi ! 오직 서버 관리자만 수송대 디버그를 실행할 수 있습니다. + Только администраторы сервера могут выполнять отладку конвоя! Tylko administratorzy serwerów mogą uruchomić debugowanie konwoju! Pouze admin serveru můžeš použít debug konvoje. Apenas admins do servidor podem executar o debug da coluna! @@ -2294,6 +2587,7 @@ Desactivar Debug de Convoy Desactiver le débug de convoi 수송대 디버그 비활성화 + Отключить отладку конвоя Wyłącz debugowanie konwoju Deaktivovat debug konvoje Desativar debug da coluna @@ -2306,6 +2600,7 @@ Debug de Convoy Debug de Convoi 수송대 디버그 + Отладка конвоя Debugowanie konwoju Debug konvoje Debug da coluna @@ -2315,8 +2610,15 @@ A convoy from %1 is about to depart at %2. It will provide ammunition to %3. Try to intercept it. Steal or destroy that truck before it reaches its destination. Un convoglio da %1 è in procinto di partire alle %2. Trasporta munizioni verso %3. Prova ad intercettarlo. Ruba o distruggi i veicoli prima che raggiungano la destinazione. + Un convoy de %1 saldrá a las %2. Lleva munición munición a %3. Intente interceptarlo. Robe o destruya ese camión antes de que llegue a su destino. + Un convoi de %1 est sur le point de partir à %2. Cela fournira des munitions à %3. Essayez de l'intercepter. Volez ou détruisez ce camion avant qu'il n'atteigne sa destination. %1에서 온 수송대가 %2에서 출발하려고 하며, 이는 %3에게 탄약을 제공할 것입니다. 수송을 방해하여 해당 트럭이 목적지에 도달하기 전에 훔치거나 파괴하십시오. + Колонна из %1 вот-вот отправится в %2. Она доставит боеприпасы %3. Попытайтесь перехватить ее. Угоните или уничтожьте этот грузовик до того, как он достигнет пункта назначения. + Konwój z %1 wkrótce wyruszy w kierunku %2. Dostarczy on amunicję do %3. Spróbuj go przechwycić. Ukradnij lub zniszcz ciężarówkę, zanim dotrze do celu. Konvoj z %1 bude odjíždět v %2 a veze munici do %3. Zkus ho zachytit. Ukradni nebo znič náklaďák než dosáhne cíle. + A coluna de %1 está prestes a partir a %2. Vai providenciar munições para %3. Tenta interceptar. Rouba ou destrói a carrinha antes que chegue ao seu destino. + %1 'den bir Konvoy %2 'ye gitmek üzere. %3 'e mühimmat sevkiyatı yapacak. Hedefine ulaşamadan aracı çalın ya da yok edin. + 一支来自 %1 的车队即将从 %2 出发. 它将为 %3 提供弹药补给. 尝试截停该车队并在弹药车到达最终目的地之前偷取或摧毁它. Ammo Convoy @@ -2324,6 +2626,7 @@ Convoy de munición Convoi de munitions 탄약 수송대 + Конвой с боеприпасами Transport amunicji Muniční Konvoj Coluna de Munições @@ -2332,7 +2635,16 @@ A convoy from %1 is about to depart at %2. It will reinforce %3 with armored vehicles. Try to intercept it. Steal or destroy the armor before it reaches its destination. + Un convoglio da %1 è in procinto di partire alle %2. Rinforzerà %3 con veicoli corazzati. Prova ad intercettarlo. Ruba o distruggi i veicoli prima che raggiungano la destinazione. + Un convoy de %1 saldrá a las %2. Reforzará %3 con vehículos blindados. Intente interceptarlo. Robe o destruya esa cosa antes de que alcance su destino. + Un convoi de %1 est sur le point de partir à %2. Il renforcera %3 avec des véhicules blindés. Essayez de l'intercepter. Volez ou détruisez cette chose avant qu'elle n'atteigne sa destination. %1의 호송대가 %2에서 출발하려고 하며, 이는 %3에 기갑 차량을 증원할 것입니다. 수송을 방해하여 그것이 목적지에 도달하기 전에 훔치거나 파괴하십시오. + Колонна из %1 вот-вот отправится в %2. Она усилит %3 бронетехникой. Попытайтесь перехватить ее. Украдите или уничтожьте броню до того, как она достигнет пункта назначения. + Konwój z %1 wkrótce wyruszy w kierunku %2. Wzmocni on %3 pojazdami opancerzonymi. Spróbuj go przechwycić. Ukradnij lub zniszcz to coś, zanim dotrze do celu. + Konvoj z %1 bude odjíždět v %2. Posílí %3 obrněnými vozidly. Zkus ho zachytit. Ukradni nebo znič náklaďák než dosáhne cíle. + A coluna de %1 está prestes a partir a %2. Vai reforçar %3 com veículos blindados. Tenta interceptar. Rouba ou destrói a coisa antes que chegue ao seu destino. + %1 'den bir Konvoy %2 'ye gitmek üzere. %3 'e Zırhlı birlik kaydıracak. Hedefine ulaşamadan aracı çalın ya da yok edin. + 一支来自 %1 的车队即将从 %2 出发. 它将使用装甲车辆为 %3 提供支援. 尝试截停该车队并在装甲车辆到达最终目的地之前偷取或摧毁它. Armored Convoy @@ -2340,6 +2652,7 @@ Convoy blindado Convoi blindé 기갑 호송대 + Конвой с бронетехникой Transport opancerzony Obrněný Konvoj Coluna Blindada @@ -2352,6 +2665,7 @@ Un camión lleno de dinero está siendo trasladado de %1 a %3, y saldrá a las %2. Robe ese camión y tráigalo al CG. Esos fondos nos vendrán muy bien. Un camion rempli d'argent est déplacé de %1 à %3, et il est sur le point de partir à %2. Volez ce camion et amenez le au QG. Ces fonds seront les bienvenus. %1에서 온 거금을 싣은 트럭이 %3(으)로 옮겨지고 있으며, 곧 %2에서 출발할 예정입니다. 해당 트럭을 훔쳐서 본부로 가져오십시오. 그 자금은 아주 환영받을 것입니다. + Грузовик с большим количеством денег перемещается из %1 в %3 и вот-вот отправится в %2. Угоните этот грузовик и доставьте его в штаб. Эти средства будут очень кстати. Ciężarówka z pieniędzmi jest przewożona z %1 do %3 i ma odjechać z %2. Ukradnij tę ciężarówkę i przywieź ją do kwatery głównej. Te fundusze będą bardzo mile widziane. Náklaďák se spoustou peněz se přesouvá z %1 do %3 a jeho odjezd je ve %2. Ukradni náklaďák a přivez ho na HQ. Peníze se ti budou hodit. Uma carrinha carregada de dinheiro vai ser escoltada de %1 a %3, e está prestes a partir às %2. Rouba a carrinha e leva-a para o QG. Esses fundos são muito agradecidos. @@ -2364,6 +2678,7 @@ Convoy de dinero Convoi de Fonds 현금 수송대 + Конвой с деньгами Transport pieniędzy Převoz Peněz Coluna de Dinheiro @@ -2373,8 +2688,15 @@ A group of POWs is being transported from %1 to %3, and it's about to depart at %2. Intercept the convoy and bring the POWs back to HQ, alive if possible. Un gruppo di PG sta per essere trasportato da %1 verso %3, partirà per le %2. Intercettalo e riporta i prigionieri al quartier generale, vivi se possibile. + Un grupo de PDG esta siendo trasladado de %1 a %3, y saldrá a las %2. Intente interceptarlo. Mate o capture al conductor del camión para hacer que se unan a usted y tráigalos al CG. Vivo si es posible. + Un groupe de prisonniers de guerre est en cours de transport de %1 à %3 et est sur le point de partir à %2. Essayez de l'intercepter. Tuez ou capturez le chauffeur du camion pour que les prisonniers vous rejoignent et amenez-les au QG. Vivant si possible. %1의 포로 무리가 %3(으)로 수송되는 중이며, %2에서 출발하려고 합니다. 수송을 방해하여 수송대를 가로채고 가능하다면 포로들을 살려서 본부로 데려오도록 하십시오. + Группу военнопленных перевозят из %1 в %3, и она вот-вот отправится в %2. Перехватите конвой и доставьте военнопленных обратно в штаб, по возможности живыми. + Grupa jeńców wojennych będzie transportowana z %1 do %3 i wyruszy za %2. Postaraj się zabić lub pojmać kierowcę ciężarówki aby dołączył do Ciebie, oraz dostarcz go do HQ. Żywego jeżeli to możliwe. Skupina válečných zajatců je převážena z %1 do %3 a bude odjíždět v %2. Zkus konvoj zachytit. Zabij nebo zajmi řidiče náklaďáku aby se k tobě přidal a přivez je na HQ, pokud možno živé. + Um grupo de PdG está a ser transportado de %1 a %3, e está prestes a partir às %2. Tenta interceptá-los. Mata ou captura o condutor da carrinha para que os prisioneiros se juntem a ti e trá-los para o QG. Vivos, se possível... + %2 'de Esir taşıyan bir kamyon %1 'den %3 'e gidecek. Kamyon sürücüsünü etkisiz hale getirin ya da aranıza katın ve kamyonu karargaha getirin. Mümkünse canlı halde. + 被关押在 %1 的战俘正被集体押往 %3, 而押运卡车即将从 %2 出发. 尝试截停这辆卡车. 消灭或扣押卡车司机,劝说战俘加入你们的队伍并将他们带回总部. 当然了,最好是活着的战俘. Prisoner Convoy @@ -2382,6 +2704,7 @@ Convoy de prisioneros Convoi de prisonniers 포로 수송대 + Конвой с военнопленными Transport więźniów Převoz Vězňů Coluna de Prisioneiros @@ -2391,9 +2714,15 @@ Reinforcements are being sent from %1 to %3 in a convoy, and it's about to depart at %2. Intercept the convoy, kill all the troops, and destroy their vehicles. I rinforzi verranno mandati da %1 verso %3 in un convoglio, partiranno alle %2. Intercettali e distruggi le truppe e i veicoli. + Se están enviando refuerzos desde %1 hacia %3 en un convoy, y saldrán a las %2. Intente interceptar y eliminar todas las tropas y el vehículo objetivo. Des renforts sont envoyés de %1 à %3 dans un convoi, et il est sur le point de partir à %2. Essayez d'intercepter et éliminer tout les objectifs. %1의 증원군이 호송대로 %3(으)로 보내지는 중이며, %2에서 출발하려고 합니다. 호송대를 방해하여 모든 병력을 사살하고 차량을 파괴하십시오. + Подкрепление отправляется из %1 в %3 в составе колонны, и оно вот-вот отправится в %2. Перехватите колонну, убейте всех солдат и уничтожьте их транспортные средства. + Posiłki są wysyłane z %1 do %3 w konwoju, który wkrótce wyruszy o %2. Spróbuj przechwycić i zabić wszystkich żołnierzy i pojazd cel Posily jsou posílány z %1 do %3 v konvoji a budou vyjíždět v %2. Zkus ho zastavit, pozabíjet všechny vojáky a jejich vozidla. + Reforços estão a ser enviados de %1 a %3 numa coluna, e está prestes a partir às %2. Tenta interceptá-los e matar todas as tropas, e o veículo objectivo. + %2 'de Takviye birliği taşıyan bir konvoy %1 'den %3 'e gidecek. Müdahale edin ve bütün birlikleri öldürmeye çalışın. + 敌人的增援车队将从 %1 调防至 %3, 而此车队即将从 %2 出发. 尝试截停敌增援部队,并消灭所有步兵单位以及装甲单位. Reinforcements Convoy @@ -2401,6 +2730,7 @@ Convoy de refuerzos Convoi de renforts 증원군 수송대 + Конвой с подкреплением Konwój posiłków Konvoj Posil Coluna de Reforços @@ -2410,9 +2740,14 @@ A truck with medical supplies, destination %3, is about to depart at %2 from %1. Intercept the convoy, steal the truck, bring it to %3, and let the people know the %4 is giving the aid they need. Un veicolo carico di rifornimenti medici rifornirà %3 partirà per le %2 da %1.Intercetta il convoglio, ruba il veicolo e portalo a %3 e fai in modo che la gente sappia che %4 sta portando i rifornimenti. + Un camión con suministros médicos con destino %3 saldrá a las %2 desde %1. Robe ese camión y tráigalo a %3, asegúrese que la gente sabe que es %4 quién les ha entregado esos suministros. Un camion avec des fournitures médicales à destination %3, est sur le point de partir à %2 depuis %1. Volez ce camion, amenez le à %3 et faites savoir aux gens que c'est %4 qui donne ces fournitures. %1의 목적지가 %3인 의료 보급 트럭이 %2에서 출발하려고 합니다. 호송대를 방해하여 해당 트럭을 훔쳐 %3에게 가져간 다음 그들이 필요한 자원을 %4가 제공하고 있다는 사실을 사람들에게 알리십시오. + Грузовик с медикаментами, пункт назначения %3, вот-вот отправится в %2 из %1. Перехватите колонну, угоните грузовик, доставьте его в %3 и сообщите людям, что %4 оказывает необходимую им помощь. Náklaďák se zdravotnickými zásobami pro %3 bude odjíždět v %2 z %1. Ukradni ho a přivez ho do %3 aby lidé věděli že jsou to %4 kdo poskytuje tyto zásoby. + Uma carrinha com provisões médicos destinada a %3 está prestes a partir às %2 a partir de %1. Rouba essa carrinha, trá-la até %3 e faz com que as pessoas saibam que é %4 que está a dar essas provisões. + %2 'de Sıhhı ekipman taşıyan bir kamyon %1 'den %3 'e gidecek. Kamyonu çalıp %3 'e götürün ve bu malzemeleri verenlerin %4 olduğunu söyleyin. + 一辆满载医疗物质的补给卡车计划从 %1 赶往 %3, 而这辆卡车马上就要从 %2 出发. 盗取这辆卡车,将它带到 %3. 确保那里的人知道是 %4 在派发这些物质. Supply Convoy @@ -2420,6 +2755,7 @@ Convoy de suministros Convoi de ravitaillement 보급품 수송대 + Конвой с медикаментами Konwój z zaopatrzeniem Zásobovací Konvoj Coluna de Provisões @@ -2431,45 +2767,56 @@ The enemy has sent Special Forces to our HQ to assassinate Petros. Stop them, or move HQ before they get here. 적이 페트로스를 암살하기 위해 특수부대를 우리 본부로 보냈습니다. 그들을 막거나 본부로 오기 전에 본부를 옮기십시오. + Враг послал спецназ в наш штаб, чтобы убить Петроса. Остановите их или переместите штаб, пока они не добрались сюда. Defend Petros Défendez Petros 페트로스 보호 + Защитить Петроса Roadblock Destroyed Barrage routier Détruit 검무소 파괴됨 + Блокпост уничтожен Watchpost Lost Poste d'observation perdu 관측초소 잃음 + Наблюдательный пост уничножен %2 is attacking the civilians in %1 to punish them for their support of the rebellion. Defend the city at all costs! %2 세력이 반군을 지지한 사람들을 학살하기 위해 %1의 민간인을 공격하고 있습니다. 무슨 수를 써서라도 도시를 지켜내십시오! + %2 нападает на мирных жителей в %1, чтобы наказать их за поддержку восстания. Защищайте город любой ценой! %1 Punishment %1의 학살 + Наказание %1 Roadblock Lost 검문소 잃음 + Блокпост потерян %1 is launching a major attack against our garrison at %2. Stop them if you can, or live to fight another day. %1 세력이 %2에 있는 우리 주둔군을 상대로 대대적인 공격을 시작하고 있습니다. 가능하면 그들을 저지하거나, 살아남아 다른 날에 싸우십시오. + %1 начинает крупную атаку на %2. Остановите их, если сможете, или доживите до следующего дня. %1 is attacking the %2 garrison at %3. + %1 세력이 %3에 있는 %2의 주둔군을 공격하고 있습니다. + %1 атакует гарнизон %2 в %3. %1 Attack %1 Attaque %1의 공격 + Штурм %1 General @@ -2491,6 +2838,7 @@ Solo humanos pueden pilotar un vehículo aéreo. Seuls les humains peuvent piloter un véhicule aérien. 오직 플레이어만 항공기를 조작할 수 있습니다. + Только люди могут управлять воздушным транспортным средством. Tylko ludzie mogą pilotować pojazdem powietrznym. Pouze lidé mohou pilotovat letadla/vrtulníky. Apenas Humanos podem pilotar este veículo aéreo. @@ -2505,6 +2853,7 @@ Ha despejado los alrededores de árboles y arbustos. Vous avez débarrassé les environs des arbres et des buissons. 당신은 주변의 나무와 덤불을 정리했습니다. + Вы очистили окрестности от деревьев и кустарников. Oczyściłeś okolicę z drzew oraz krzaków. Vymýtil jsi okolí od stromů a keřů. Limpaste as redondezas de árvores e arbustos. @@ -2517,6 +2866,7 @@ Solo los comandantes pueden dar la orden de eliminar el bosque. Seuls les commandants peuvent ordonner de défricher la forêt. 오직 지휘관만 벌목 명령을 내릴 수 있습니다. + Только командующий могут приказать очистить лес. Tylko Dowódca może rozkazać oczyścić las. Pouze Velitelé mohou nařídit vymýcení lesa. Apenas Comandantes podem ordenar a limpeza da floresta. @@ -2529,6 +2879,7 @@ Eliminar bosque Défricher la Forêt 숲 벌목 + Убрать растения Oczyść las Vymýtit les Limpar Floresta @@ -2538,31 +2889,38 @@ Antistasi has a custom save system similar to other CTIs.<br/><br/>To Save: Your commander needs to go to the <t color='#f0d498'>Map Board</t>, scroll-select <t color='#f0d498'>""Game Options""</t> and click on the <t color='#f0d498'>""Persistent Save""</t> button. 안티스타시에는 다른 CTI 모드와 유사한 사용자 정의 저장 시스템이 있습니다.<br/><br/>저장 방법: 지휘관은 <t color='#f0d498'>지도 화이트보드</t>로 이동하여 스크롤 선택으로<t color='#f0d498'>""게임 설정""</t>을 선택하고 <t color='#f0d498'>""영구 저장""</t> 버튼을 누르십시오. + В Antistasi есть собственная система сохранения, похожая на другие CTI.<br/><br/> Чтобы сохранить: Ваш командир должен подойти к <t color='#f0d498'>Карте</t>, открыть <t color='#f0d498'>""Параметры""</t> и нажать на кнопку <t color='#f0d498'>""Сохранение""</t>. Current parameters are configured to auto-save every %1 minutes. 현재 매개변수는 %1분마다 자동으로 저장하도록 설정되어 있습니다. + Текущие параметры настроены на автосохранение каждые %1 мин. Auto-save is currently disabled. 자동 저장이 현재 비활성화되어 있습니다. + Автосохранение в настоящее время отключено. W A R N I N G ATTENTION 경 고 + В Н И М А Н И Е Current level: %2. Next Level Training Cost: %1 €. 현재 레벨: %2. 다음 레벨 훈련 비용: %1 €. + Текущий уровень: %2. Стоимость обучения на следующем уровне: %1 €. - Fast traveling, travel time: %1s, please wait. + Fast traveling, travel time: %1, please wait. 빠른 이동 중. 도착 시간까지: %1초, 잠시만 기다려 주십시오... + Быстрое перемещение: пожалуйста, подождите %1 сек. You arrived at the destination. 목적지에 도착했습니다. + Вы прибыли в пункт назначения. %1 Fast Travel has been cancelled because some player has boarded their vehicle and the destination is not HQ or an Airbase. @@ -2570,6 +2928,7 @@ El viaje rápido de %1 se ha cancelado porque algún jugador ha entrado en su vehículo y el destino no es un CG o una base aérea. %1 Le voyage rapide a été annulé car un joueur est monté à bord de son véhicule et la destination n'est pas un QG ou une base aérienne. 본부 또는 공군 기지가 목적지가 아닌 플레이어가 차량에 탑승했기 때문에 %1의 빠른 이동은 취소되였습니다. + %1 Быстрые перемещения было отменено, потому что какой-то игрок сел в свой транспорт, а пункт назначения не является штабом или авиабазой. %1 Szybka podróż została anulowana, ponieważ jakiś gracz wsiadł do pojazdu, a celem podróży nie jest kwatera główna ani baza lotnicza. %1 Rychlý přesun byl zrušen protože nějaký hráč nastoupil do vozidla a destinace není HQ nebo Letiště. %1 Viagem Rápida foi cancelada porque algum jogador embarcou no seu veículo e o destino não é o QG ou uma Base Aérea. @@ -2582,6 +2941,7 @@ Debe hacer click cerca de un marcador bajo su control. Vous devez cliquer à proximité d'un marqueur sous votre contrôle. 당신은 당신의 영향력 아래에 있는 마커를 클릭해야합니다. + Вы должны щелкнуть рядом с маркером, находящимся под вашим контролем. Musisz kliknąć w pobliżu kontrolowanego przez ciebie znacznika. Musíš kliknout blízko značky na mapě. Precisas de clicar num marcador sob o teu controlo. @@ -2594,6 +2954,7 @@ Haga click en la zona a la que quiera viajar. Cliquez sur la zone dans laquelle vous souhaitez voyager. 빠른 이동하고 싶은 곳을 클릭하세요. + Нажмите на зону, в которую хотите переместиться. Kliknij strefę, do której chcesz się udać. Klikni na zónu kam chceš cestovat. Clica na zona para a qual queres viajar. @@ -2606,6 +2967,7 @@ El grupo %1 ha llegado a su destino. Le groupe %1 est arrivé à destination. 그룹 %1이(가) 목적지에 도착했습니다. + Отряд %1 прибыла в пункт назначения. Grupa %1 dotarła do miejsca docelowego. Skupina %1 dorazila do destinace. Grupo %1 chegou aos seu destino. @@ -2618,6 +2980,7 @@ Moviendo el grupo %1 al destino. Déplacement du groupe %1 vers la destination. 그룹 %1을(를) 목적지로 보내는중. + Перемещение группы %1 в пункт назначения. Przenoszenie grupy %1 do miejsca docelowego. Přesun skupiny do %1. A mover grupo %1 para o destino. @@ -2630,6 +2993,7 @@ Solo puede seleccionar un grupo para el viaje rápido. Vous ne pouvez sélectionner qu’un seul groupe pour le voyage rapide. 오직 한번에 한 개의 그룹만 빠른 이동을 시킬 수 있습니다. + Вы можете выбрать только одну группу для быстрого перемещения. Możesz wybrać tylko jedną grupę do szybkiej podróży. Můžeš vybrat pouze jednu skupinu, která bude Rychle cestovat. Apenas podes selecionar um grupo para Viagem Rápida @@ -2641,6 +3005,7 @@ No puede usar el viaje rápido a un lugar que está bajo ataque. Vous ne pouvez pas voyager rapidement vers un endroit attaqué. 당신은 적이 공격 중인 곳으로 빠른 이동을 할 수 없습니다. + Вы не можете быстро перемещаться в место, которое подвергается атаке. Nie można szybko podróżować do lokalizacji, która jest atakowana. Nemůžeš rychle cestovat do lokace která je pod útokem. Não podes fazer Viagem Rápida para uma localização sob ataque. @@ -2650,9 +3015,14 @@ You cannot Fast Travel to an area under attack or with enemies nearby. Non puoi effettuare il Viaggio Rapido verso un'area sotto attaco o con nemici nei paraggi. + No puede usar el viaje rápido a un lugar que está bajo ataque o con enemigos en sus alrededores. Vous ne pouvez pas voyager rapidement vers une zone attaquée ou avec des ennemis à proximité. 적에게 공격당하거나 근처에 있는 곳으로 빠른 이동을 할 수 없습니다. + Вы не можете быстро перемещаться в зону, подвергающуюся атаке, или если рядом находятся враги. + Nie można szybko podróżować do obszaru atakowanego lub z wrogami w okolicy. Nemůžeš rychle cestovat do lokace která je pod útokem nebo má v okolí nepřátelé. + Não podes fazer Viagem Rápida para uma área sob ataque ou com inimigos nas redondezas. + Saldırı altındaki ya da civarında düşman olan bir bölgeye hızlı yolculuk yapamazsınız You cannot Fast Travel groups commanded by players. @@ -2660,6 +3030,7 @@ No puede usar el viaje rápido con grupos liderados por jugadores. Vous ne pouvez pas voyager rapidement avec des groupes commandés par des joueurs. 당신은 플레이어가 지휘하는 분대로 빠른 이동할 수 없습니다. + Вы не можете быстро перемещать группы, которыми командуют игроки. Nie można szybko podróżować grupami dowodzonymi przez graczy. Nemůžeš Rychle přesouvat skupiny, kterým velí hráč. Não podes fazer Viagem Rápida em grupos comandados por outros jogadores. @@ -2671,6 +3042,7 @@ No puede usar el viaje rápido mientras esté controlando IA. Vous ne pouvez pas voyager rapidement pendant que vous contrôlez l'IA. 당신은 AI를 조종하는 동안에는 빠른 이동을 할 수 없습니다. + Вы не можете быстро переместиться, пока управляете ИИ. Nie możesz szybko podróżować, gdy kontrolujesz SI. Nemůžeš rychle cestovat když ovládáš AI. Não podes fazer Viagem Rápida enquanto estás a controlar IA. @@ -2682,6 +3054,7 @@ No puede usar el viaje rápido con enemigos cerca del grupo. Vous ne pouvez pas voyager rapidement avec des ennemis proches du groupe. 당신은 적이 분대 근처에 있을 때는 빠른 이동을 할 수 없습니다. + Вы не можете быстро переместиться, если рядом с группой находятся враги. Nie można szybko podróżować z wrogami w pobliżu grupy. Nemůžeš Rychle cestovat, když jsou nepřátelé poblíž tvojí skupiny. Não podes fazer Viagem Rápida com inimigos perto do grupo. @@ -2694,6 +3067,7 @@ No puede usar el viaje rápido a una zona controlada por el enemigo. Vous ne pouvez pas voyager rapidement vers une zone contrôlée par l'ennemi. 당신은 적이 점령 중인 곳으로 빠른 이동을 할 수 없습니다. + Вы не можете быстро переместиться в зону, контролируемую противником. Nie można szybko podróżować do strefy kontrolowanej przez wroga. Nemůžeš rychle cestovat do zóny zabranou nepřáteli. Não podes fazer Viagem Rápida para uma zona controlada por inimigos. @@ -2703,9 +3077,14 @@ You cannot fast travel while being punished for friendly fire. Non puoi effettuare il viaggio rapido mentre sei Ammonito per il FA + No puede usar el viaje rápido mientras tenga una penalización por fuego amigo. Vous ne pouvez pas voyager rapidement en étant puni pour tir-ami. 아군오사 처벌을 받는 동안에는 빠른 이동을 할 수 없습니다. + Вы не можете быстро переместиться, будучи наказанным за дружественный огонь. + Nie możesz szybko podróżować, gdy jesteś ukarany za strzelanie do swoich. Nemůžeš rychle cestovat, když jsi trestán za palbu do vlastních. + Não podes fazer Viagem Rápida enquanto estás a ser punido por FA. + Cezalandırılırken hızlı yolculuk yapamazsınız. There are no members near the target location. You need to be within %1 km of HQ, an attack, commander or a member. @@ -2713,6 +3092,7 @@ No ha miembros cerca del lugar objetivo. Tiene que estar dentro de un radio de %1 km del CG, un ataque, comandante o un miembro. Il n’y a aucun membre à proximité de l’emplacement cible. Vous devez être à moins de %1 km du QG, d'une attaque, d'un commandant ou d'un membre. 현재 위치 근처에 멤버가 없습니다. %1km 이내에 본부, 공격 임무, 지휘관 또는 멤버가 있어야 합니다. + Поблизости от цели нет ни одного члена команды. Вы должны быть в пределах %1 км от штаба, атаки, командира или члена команды. W pobliżu miejsca docelowego nie ma żadnych członków. Musisz znajdować się w promieniu %1 km od kwatery głównej, miejsca ataku, dowódcy lub członka. Poblíž cílové lokace nejsou žádní členové. Musíš být v okolí %1 km od HQ, útoku, velitele nebo člena. Não há membros perto da localização alvo. Precisas de estar a um mínimo de %1 km do QG, um ataque, comandante ou membro. @@ -2724,6 +3104,7 @@ Los grupos de jugadores solo pueden usar el viaje rápido al CG o bases aéreas. Les groupes de joueurs ne sont autorisés qu'à effectuer des voyages rapides vers le QG ou les bases aériennes. 플레이어 그룹은 오직 본부나 공군 기지에만 빠른 이동을 할 수 있습니다. + Отрядам игроков разрешено быстро перемещаться только к штабу или авиабазам. Grupy graczy mogą szybko podróżować tylko do kwatery głównej lub baz lotniczych. Pouze skupiny hráčů mají povoleno rychle cestovat na HQ nebo Letiště. Grupos de Jogadores apenas podem fazer Viagem Rápida para o QG ou Bases Aéreas. @@ -2735,16 +3116,21 @@ No puede usar el viaje rápido si no tiene un conductor en todos sus vehículos o sus vehículos están dañados y no pueden moverse o su grupo está en una embarcación. Vous ne pouvez pas voyager rapidement si vous n'avez pas de chauffeur dans tous vos véhicules ou si vos véhicules sont endommagés et ne peuvent pas bouger ou si votre groupe est dans un bateau. 당신은 모든 차량에 운전수가 없거나 차량이 고장나서 이동이 불가능한 경우 또는 그룹이 배에 탄 경우 빠른 이동을 할 수 없습니다. + Если у вас нет водителя во всех транспортных средствах, если ваши транспортные средства повреждены и не могут двигаться, или если ваш отряд находится в лодке, вы не можете совершать быстрые перемещение. Nie można podróżować szybko, jeśli nie ma kierowcy we wszystkich pojazdach, pojazdy są uszkodzone i nie mogą się poruszać lub grupa znajduje się na łodzi. Nemůžeš rychle cestovat pokud nemáš řidiče ve všech svých vozidlech, vozidla jsou požkozené a nemohou se hýbat nebo tvoje skupina je na lodi. Não podes fazer Viagem Rápida se não tens um condutor em todos os veículos ou os veículos estão danificados e não se conseguem mexer ou o grupo está num barco. + + Fast travel is disabled for this server. + You cannot Fast Travel with your Tow Rope out or a Vehicle attached. Non puoi effettuare il Viaggio Rapido con la Corda da Traino dispiegata o un Veicolo in Traino. No puede usar el viaje rápido con la cuerda de remolque desplegada o remolcando un vehículo. Vous ne pouvez pas voyager rapidement avec votre treuil déployé ou un véhicule attaché. 당신은 타고 있는 차량에 견인줄이 나와 있거나 차량을 견인 중일 때는 빠른 이동을 할 수 없습니다. + Вы не можете быстро перемещаться, когда буксировочный трос вытащен или к нему присоединено транспортное средство. Nie można szybko podróżować z wyciągniętą liną holowniczą lub podłączonym pojazdem. Nemůžeš rychle cestovat pokud tažné lano je vytažené nebo na něm je připojené vozidlo. @@ -2766,31 +3152,38 @@ AI Limit Limite d'IA AI 제한 + Лимит ИИ Civilian Limit Limite de Civils 민간인 제한 + Лимит гражданских Only our Commander or admin has access to 지휘관이나 관리자만 다음 기능에 액세스할 수 있습니다 + Только наш командующий или администратор имеет доступ к is already at lower limit of 이미 다음의 최소 한도에 도달했습니다: + уже находится на минимуме Spawn Distance 스폰 거리 + Дистанция спавна HQ Spawn Options 본부 스폰 옵션 + Настройки спавна штаба is already at upper limit of 이미 다음의 최대 한도에 도달했습니다: + уже находится на максимуме An Explosive Specialist is available on your High Command bar.<br/><br/>Send him anywhere on the map to deactivate mines. He will load his truck with mines he found.<br/><br/>Upon returning back to HQ he will unload mines stored in his vehicle. @@ -2798,6 +3191,7 @@ Un especialista en explosivos está disponible en su barra de High Command.<br/><br/> Envíele a cualquier parte del mapa a desactivar minas. Cargará su camión con las minas que encuentre.<br/><br/>Cuando vuelva al CG descargará las minas que lleve en su vehículo. Un spécialiste des explosifs est disponible sur votre menu de haut commandement.<br/><br/>Envoyez-le n'importe où sur la carte pour désactiver les mines. Il chargera son camion avec les mines qu'il a trouvées.<br/><br/>De retour au QG, il déchargera les mines stockées dans son véhicule. 폭파전문가가 하이 커맨드 선택창에서 사용이 가능합니다.<br/><br/>폭파전문가는 지도 내 배치한 곳 근처에서 지뢰를 탐지할 수 있으며, 탐지한 지뢰를 해체해서 트럭에다 싣을 것입니다.<br/><br/>폭파전문가가 본부로 돌아오면 가지고 온 모든 지뢰를 내릴 겁니다. + Сапер доступен на панели высшего командования.<br/><br/>Отправьте его в любое место на карте, чтобы обезвредить мины. Он загрузит свой грузовик найденными минами.<br/><br/>По возвращении в штаб он выгрузит мины, хранящиеся в его грузовике. Specjalista ds. materiałów wybuchowych jest dostępny na pasku High Command.<br/><br/>Wyślij go w dowolne miejsce na mapie, aby dezaktywował miny. Załaduje swoją ciężarówkę znalezionymi minami.<br/><br/>Po powrocie do siedziby rozładuje miny znajdujące się w jego pojeździe. Specialista na výbušniny je dostupný v tabulce vyššího velení.<br/><br/>Pošli ho kamkoliv na mapě aby odminoval oblast. Deaktivované miny naloží do náklaďáku a<br/><br/>po návratu zpátky na HQ je vyloží. @@ -2807,6 +3201,7 @@ Haga click en la posición que desee construir el campo de minas. Cliquez sur la position où vous souhaitez construire le champ de mines. 지뢰지대를 만들고 싶은 곳에 클릭하세요. + Нажмите на позицию, в которую хотите заминировать. Kliknij pozycję, w której chcesz zbudować pole minowe. Klikni na pozici kde si přeješ položit minové pole. Mayın tarlasını inşa etmek istediğin pozisyona tıkla. @@ -2817,6 +3212,7 @@ Solo puede desplegar un campo de minas a la vez. Nous ne pouvons déployer qu’un seul champ de mines à la fois. 우리는 지뢰지대를 한번에 한개씩만 매설 가능합니다. + Мы можем установить только одно минное поле за раз. Możemy rozstawić tylko jedno pole minowe na raz. Můžeme pokládat pouze jedno minové pole zároveň. Anlık olarak sadece 1 adet mayın tarlası kurabiliriz. @@ -2828,6 +3224,7 @@ Necesita una radio en su inventario para poder dar órdenes a otros escuadrones. Vous avez besoin d'une radio dans votre inventaire pour pouvoir donner des ordres aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku aby jsi mohl vydávat rozkazy ostatním družstvům. Diğer Mangalara emir verebilmek için envanterinizde telsiz olması gerekmektedir. @@ -2839,6 +3236,7 @@ Necesita un operador de radio en su grupo para poder dar órdenes a otros escuadrones. Vous avez besoin d'un Opérateur Radio dans votre groupe pour pouvoir donner des ordres aux autres escouades. 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu aby jsi mohl dávat rozkazy ostatním družstvům. Diğer Mangalara emir verebilmek için manganızda Radyo Operatörü olması gerekmektedir. @@ -2850,6 +3248,7 @@ No hay suficientes recursos para reclutar un equipo de despliegue de minas (Se necesitan %1 € and %2 RH). Pas assez de ressources pour recruter une équipe de déploiement de mines (%1 € et %2 RH nécessaires). 지뢰매설조를 모집할 만큼 충분한 자원이 없습니다.(%1 €그리고 %2 인적 자원 필요) + Недостаточно ресурсов для найма саперов (требуется %1 € и %2 HR). Niewystarczające zasoby, aby zrekrutować zespół minerski (potrzeba %1 € i %2 HR). Nedostatek zdrojů pro najmutí týmu, který položí miny (Potřebuješ %1 € a %2 HR). @@ -2859,6 +3258,7 @@ Necesita al menos 5 minas de este tipo para construir un campo de minas. Vous avez besoin d'au moins 5 mines de ce type pour construire un champ de mines. 당신은 최소 5개의 같은 종류의 지뢰가 있어야 지뢰지대를 만들 수 있습니다. + Вам нужно как минимум 5 мин такого типа, чтобы построить минное поле. Do zbudowania pola minowego potrzeba co najmniej 5 min tego typu. Potřebuješ minimálně 5 min tohoto typu aby jsi mohl položit minové pole. @@ -2881,6 +3281,7 @@ Soltar aquí Déposer ici 여기에 떨어트리기 + Поставить Upuść tutaj Upustit zde Buraya bırak @@ -2891,6 +3292,7 @@ Mover este objeto Déplacer cet élément 이 에셋 이동시키기 + Переместить Přesunout tento asset. Bu eşyayı hareket ettir 移动此物品 @@ -2901,6 +3303,7 @@ Otro jugador ya está moviendo el objeto. L'élément que vous souhaitez déplacer est déplacé par un autre joueur. 당신이 움직이려는 자산은 이미 다른 누군가가 움직이고 있습니다. + Объект, который вы хотите переместить, перемещается другим игроком. Tento asset, který chceš přesunout je už přesouván jiným hráčem. Hareket ettirmek istediğin eşya başka bir oyuncu tarafından hareket ettiriliyor. @@ -2910,6 +3313,7 @@ Tiene otras cosas enganchadas, no puede mover esto. Vous avez d'autres éléments attachés, vous ne pouvez pas déplacer cela. 다른 물건을 들고 있기 때문에 이 물건을 이동시킬 수 없습니다. + Вы уже перемещаете другой объект Masz dołączone inne rzeczy, nie możesz tego przenieść. Máš připnuté jiné věci. Toto nemůžeš přesunout. @@ -2919,6 +3323,7 @@ Este objeto necesita estar más cerca del centro de la zona para poder moverlo. Cet élément doit être plus proche du centre de la zone relative pour pouvoir être déplacé. 이 에셋을 이동시키려면 본부 구역 중심과 더 가까워야 합니다. + Этот объект должен находиться ближе к центру зоны, чтобы его можно было переместить. Tento asset musí být blíže k centru zóny aby se s ním dalo hýbat. @@ -2927,6 +3332,7 @@ Solo el comandante tiene permiso para mover los objetos del CG. Seul le joueur commandant est autorisé à déplacer les ressources du QG. 오직 플레이어 지휘관만 본부 에셋을 이동시킬 수 있습니다. + Только командующему разрешено перемещать объекты штаба. Pouze Velitel může hýbat objekty HQ. @@ -2935,6 +3341,7 @@ Este objeto no puede alejarse más de la zona central. Cet élément ne peut pas être déplacé plus loin du centre de sa zone. 이 에셋은 해당 구역 중심에서 멀리 떨어질 수 없습니다. + Этот объект не может быть перемещен дальше от центра своей зоны. Tento asset nemůže být posunut dále od centra zóny. @@ -2943,6 +3350,7 @@ No puede mover objetos del CG mientras esté en un vehículo. Vous ne pouvez pas déplacer des éléments du QG lorsque vous êtes dans un véhicule. 차량을 타고 있을 때는 본부 에셋을 이동할 수 없습니다. + Вы не можете перемещать объекты штаба, находясь в транспортном средстве Nemůžeš hýbat HQ assety, když jsi ve vozidle. @@ -2964,6 +3372,7 @@ No puede descansar mientras haya ciudadanos bajo ataque. Vous ne pouvez pas vous reposer pendant que les citoyens sont attaqués. 민간인들이 공격받는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока граждане подвергаются нападениям. Nie można odpoczywać, gdy obywatele są atakowani. Nemůžeš odpočívat, když občané jsou pod útokem. @@ -2973,6 +3382,7 @@ Solo el comandante puede ordenar un descanso. Seul le Commandant peut ordonner de se reposer. 오직 지휘관만 휴식 명령을 내릴 수 있습니다. + Только командующий может приказать отдыхать Tylko dowódca może zarządzić odpoczynek. Pouze Velitelé mohou nařídit odpočinek. 只有指挥官才能下达清除树木的命令 @@ -2983,6 +3393,7 @@ No puede descansar mientras haya enemigos cerca de nuestras unidades. Vous ne pouvez pas vous reposer tant que les ennemis sont à proximité de nos unités. 적들이 근처에 있을 때는 쉴 수 없습니다. + Вы не можете отдыхать, пока враги находятся рядом с вашими бойцами. Nie można odpoczywać, gdy wrogowie znajdują się w pobliżu naszych jednostek. Nemůžeš odpočívat, když nepřátelé jsou poblíž našich jednotek. 你不能在友军单位附近存在敌人的情况下休息. @@ -2993,6 +3404,7 @@ No puede descansar mientras el enemigo esté contraatacando. Vous ne pouvez pas vous reposer pendant que l'ennemi contre-attaque. 적이 반격 중일 때에는 쉴 수 없습니다. + Вы не можете отдыхать, пока враг контратакует. Nie możesz odpoczywać, gdy wróg kontratakuje. Nemůžeš odpočívat, když nepřítel podniká protiútok. 你不能在敌人反扑的情况下休息. @@ -3003,24 +3415,33 @@ No puede descansar mientras su CG esté bajo ataque. Vous ne pouvez pas vous reposer pendant que votre QG est attaqué. 본부가 공격받는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока ваш штаб находится под атакой. Nie można odpoczywać, gdy sztab jest atakowany. Nemůžeš odpočívat když HQ je pod útokem. - All players must be in a 100m radius from HQ to be able to rest. + All players must be in a 100m radius from HQ to be able to rest.<br/><br/>More than 10 players are absent from HQ currently. Tutti i giocatori devono trovarsi entro 100m dal QG per riposare. Todos los jugadores deben estar en un radio de 100m del CG para poder descansar. Tous les joueurs doivent se trouver dans un rayon de 100 m du QG pour pouvoir se reposer. 모든 플레이어가 본부로부터 100미터 이내에 있어야 쉴 수 있습니다. + Все игроки должны находиться в радиусе 100 метров от штаба, чтобы иметь возможность отдохнуть. Wszyscy gracze muszą znajdować się w promieniu 100 m od siedziby głównej, aby móc odpocząć. Všichni hráči musí být v okruhu 100M od HQ abys mohl pustit odpočinek. + + All players must be in a 100m radius from HQ to be able to rest.<br/>The following players are not at HQ: %1, and %2. + + + All players must be in a 100m radius from HQ to be able to rest.<br/><br/>%1 is currently not at HQ. + Skip Time / Rest Salto Temporale / Riposa Adelantar el tiempo / Descansar Passer du temps / Repos 시간 넘기기 / 쉬기 + Пропустить время / Отдохнуть Pomiń czas / odpocznij Přeskočit čas / Odpočívat Zamanı atla / Dinlen @@ -3032,6 +3453,7 @@ Necesita una radio en su inventario para poder dar órdenes a otros escuadrones. Vous avez besoin d'une radio dans votre inventaire pour pouvoir donner des ordres aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku abys mohl vydávat rozkazy ostatním družstvům. 你需要装备一个无线电才可以给其他班组下达命令 @@ -3042,6 +3464,7 @@ Necesita un operador de radio en su grupo para poder dar órdenes a otros escuadrones. Vous avez besoin d'un Opérateur Radio dans votre groupe pour pouvoir donner des ordres aux autres escouades. 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu abys mohl dávat rozkazy ostatním družstvům. 你的班组需要有一个通信员才可以给其他班组下达命令 @@ -3064,6 +3487,7 @@ Necesita una radio en su inventario para poder dar órdenes a otros escuadrones. Vous avez besoin d'une radio dans votre inventaire pour pouvoir donner des ordres aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku aby jsi mohl vydávat rozkazy ostatním družstvům. 你需要装备一个无线电才可以给其他班组下达命令 @@ -3074,6 +3498,7 @@ Necesita un operador de radio en su grupo para poder dar órdenes a otros escuadrones. Vous avez besoin d'un Opérateur Radio dans votre groupe pour pouvoir donner des ordres aux autres escouades. 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu aby jsi mohl dávat rozkazy ostatním družstvům. 你的班组需要有一个通信员才可以给其他班组下达命令 @@ -3094,16 +3519,19 @@ Cost: %1 €. HR: %2 비용: %1 €. 인력: %2 + Цена: %1 €. HR: %2 Cost: %1 € Coût! %1 € 비용: %1 € + Цена: %1 € Radio Operator Opérateur Radio 무전병 + Радист @@ -3111,16 +3539,19 @@ Decimated Décimé 전멸 + Истреблен Good Bon 좋음 + Целый Weakened Affaibli 약해짐 + Ослаблен @@ -3129,143 +3560,168 @@ Aeroporto %1 %1 Aéroport %1 공항 + %1 Авиабаза %2 Airport%1 %2 Aeroporto%1 %2 Aéroport%1 %2 공항%1 + %2 Авиабаза%1 Click on the zone Clicca sulla zona Cliquez sur la zone 원하는 구역을 클릭하십시오 + Нажмите на зону %1<br/>DESTROYED %1<br/>DISTRUTTO %1<br/>DETRUIT %1<br/>파괴됨 + %1<br/>УНИЧТОЖЕНО %1 Factory Fabbrica %1 %1 Usine %1 공장 + %1 Фабрика %2 Factory%1 %2 Fabbrica %1 %2 Usine%1 %2 공장%1 + %2 Фабрика%1 %1<br/>Garrison: Decimated %1<br/>Guarnigione: Decimata %1<br/>Garnison: Décimé %1<br/>주둔군: 제거됨 + %1<br/>Гарнизон: Истреблен %1<br/>Garrison: Good %1<br/>Guarnigione: Buona %1<br/>Garnison: Bonne %1<br/>주둔군: 양호함 + %1<br/>Гарнизон: Целый %1<br/>Garrison: Weakened %1<br/>Guarnigione: Indebolita %1<br/>Garnison: Affaibli %1<br/>주둔군: 약해짐 + %1<br/>Гарнизон: Ослаблен %2 Outpost%1 %2 Avamposto%1 %2 Avant-poste%1 %2 전초기지%1 + %2 Аванпост%1 %1 Outpost Avamposto %1 %1 Avant-poste %1 전초기지 + %1 Аванпост %2 HQ%1 %2 QG%1 %2 QG%1 %2 본부%1 + %2 Штаб%1 %1<br/>Influence: %2 %1<br/>Influenza: %2 %1<br/>Influence : %2 %1<br/>지지하는 세력: %2 + %1<br/>Влияние: %2 %7<br/><br/>Total population: %1<br/>%6 Support: %2<br/>%5 Support: %3<br/><br/>Murdered Population: %4<br/><br/>Click on a zone for a detailed view %7<br/><br/>Popolazione totale:%1<br/>%6 Supporto:%2<br/>%5 Supporto %3:<br/><br/>Popolazione uccisa: %4<br/><br/>Clicca sulla zona per una vista dettagliata + %7<br/><br/>Pop totale : %1<br/>%6 Support : %2<br/>%5 Support : %3<br/><br/>Pop tuée : %4<br/><br/>Cliquez sur la zone %7<br/><br/>총 인구: %1<br/>%6 지지도: %2<br/>%5 지지도: %3<br/><br/>죽은 인구: %4<br/><br/>원하는 구역을 클릭하십시오 + %7<br/><br/>Общая численность населения:%1<br/>%6 Поддержка:%2<br/>%5 Поддержка: %3<br/><br/>Убитое население: %4<br/><br/>Нажмите на зону для детального просмотра %1<br/><br/>Pop %2<br/>%6 Support: %3 %5<br/>%7 Support: %4 %5 %1<br/><br/>Popolazione %2<br/>%6 Supporto: %3 %5<br/>%7 Supporto: %4 %5 %1<br/><br/>Pop %2<br/>%6 Support : %3 %5<br/>%7 Support : %4 %5 %1<br/><br/>인구: %2<br/>%6 지지도: %3 %5<br/>%7 지지도: %4 %5 + %1<br/><br/>Pop %2<br/>%6 Поддержка:%3 %5<br/>%7 Поддержка: %4 %5 %1 Resources %1 Risorse %1 Ressources %1 자원채취소 + %1 Ресурсы %2 Resources%1 %2 Risorse%2 %2 Ressources%1 %2 자원채취소%1 + %2 Ресурсы%1 %2 Roadblock%1 %2 Posto di blocco%1 %2 Barrage Routier%1 %2 검문소%1 + %2 Блокпост%1 %1 Seaport %1 Porto %1 Port %1 항구 + %1 Морской порт %2 Seaport%1 %2 Porti%1 %2 Port%1 %2 항구%1 + %2 Морской порт%1 %1<br/>Status: Busy %1<br/>Status: Trafficata %1<br/>Etat : Occupé %1<br/>상태: 바쁨 + %1<br/>Статус: Работает %1<br/>Status: Idle %1<br/>Status: Ferma %1<br/>Etat : Innactif %1<br/>상태: 한산함 + %1<br/>Статус: Не работает City Information Informazioni Città Information de la Ville 도시 정보 + Информация о городе %1 Watchpost Posti di Osservazione %1 %1 Poste d'Observation %1 관측초소 + %1 Наблюдательный пост Client idle checker @@ -3273,6 +3729,7 @@ Comprobador de ausencia Vérificateur d'inactivité client 클라이언트 잠수 확인기 + Проверка простоя клиента Sprawdzanie bezczynności klienta Kontrola nečinnosti klienta @@ -3282,6 +3739,7 @@ Ahora está AFK. Puede perder el puesto de comandante si se hacen elecciones. Vous êtes désormais considéré comme AFK. Vous risquez de perdre votre commandant si une élection est déclenchée. 지금부터 당신은 잠수로 간주됩니다. 만약 지휘관 투표가 시작된다면 지휘관 권한을 잃을 수도 있습니다. + Теперь вы считаетесь АФК. Вы можете потерять лидерство, если начнутся выборы. Jesteś teraz uważany za AFK. Możesz stracić rolę dowódcy, jeśli zostaną uruchomione wybory. Nyní jsi AFK, můžeš ztratit roli Velitele pokud bude vyvoláno hlasování. @@ -3289,26 +3747,31 @@ %1 Airbase %1 Base Aérienne %1 공군 기지 + %1 Авиабаза Factory Usine 공장 + Фабрика %1 Outpost %1 Avant-poste %1 전초기지 + %1 Аванпост Resources Ressources 자원채취소 + Ресурсы Sea Port Port 항구 + Морской порт AI Load Info @@ -3316,6 +3779,7 @@ Información de carga de IA Informations de chargement de l'IA AI 로드 정보 + Информация о загрузке ИИ Informacje o obciążeniu AI Informace o zatížení AI @@ -3325,6 +3789,7 @@ Arsenal de vehículos Arsenal de véhicules 차량 무기고 + Гараж Arsenał pojazdów Arzenál vozidel @@ -3346,6 +3811,7 @@ Opzioni di Gioco Options de jeu 게임 설정 + Параметры Map Info @@ -3366,6 +3832,7 @@ Mover este objeto Déplacer cet élément 이 에셋 이동시키기 + Переместить Přesunout tento asset. 移动此物品 @@ -3375,6 +3842,7 @@ Reclutar unidades Recrutement d'unité 병력 모집 + Нанять юнит Rekrutacja jednostek Verbování jednotek 招募单位 @@ -3385,6 +3853,7 @@ Transferir carga del vehículo a la caja de munición Transférer la cargaison du véhicule vers l'Arsenal 차량 화물을 탄약상자로 옮기기 + Разгрузить ближайшую технику Przenieś ładunek pojazdu do skrzynki Ammobox Přesunou náklad vozidla do Bedny 将载具库存中的装备转移到弹药库里面 @@ -3395,6 +3864,7 @@ Comprar vehículo Acheter un véhicule 차량 구입 + Покупка техники Zakup pojazd Zakoupit vozidlo Aracı satın al @@ -3406,6 +3876,7 @@ No puede comprar vehículos mientras tenga enemigos cerca. Vous ne pouvez pas acheter de véhicules tant que des ennemis sont proches. 적들이 근처에 있을 때는 차량을 구입할 수 없습니다. + Вы не можете покупать технику, пока рядом с вами есть враги. Nie można kupować pojazdów, gdy w pobliżu znajdują się wrogowie. Nemůžeš kupovat vozidla když jsou poblíž nepřátelé. 你无法在附近存在敌人的情况下购买载具 @@ -3415,6 +3886,7 @@ Limite Civili: Limite de civils : 민간인 제한: + Лимит гражданских: 平民限制: @@ -3422,6 +3894,7 @@ Limite Viaggio Rapido: Voyage rapide limité : 빠른 이동 제한: + Ограничения быстрого перемещения: 受限快速旅行: @@ -3429,6 +3902,7 @@ Bilance risorse nemiche: Equilibre des ressources des ennemis : 적 자원 밸런스: + Баланс ресурсов противника: 敌人资源 : @@ -3436,6 +3910,7 @@ Distanza di Spawn: Distance d'apparition : 스폰 거리: + Дистанция спавна: 生成距离 @@ -3443,6 +3918,7 @@ Tempo dal PS: Temps depuis le Nett. Mémoire : 쓰레기 청소 후 시간: + Время прошло с последней очистки мусора: 垃圾清理已过去: @@ -3450,6 +3926,7 @@ Opzioni di Gioco Options de jeu 게임 설정 + Параметры 游戏选项 @@ -3457,12 +3934,14 @@ Sblocca l'Arma Numero: Nombre d'Armes Debloquées : 해금한 무기 수: + Кол-во разблокированого оружия: Version: Versione: Version : 버전: + Версия: 版本: @@ -3471,6 +3950,7 @@ Información general Informations générales 기본 정보 + Общая информация Informacje ogólne Obecné informace Genel bilgi @@ -3482,6 +3962,7 @@ No está en la lista de miembros, pero como es un Admin del servidor, se le ha añadido. ¡Bienvenido! Vous n'êtes pas dans la liste des membres, mais comme vous êtes administrateur du serveur, vous avez été ajouté. Bienvenue! 당신은 멤버가 아니지만, 서버 관리자이기 때문에 자동으로 멤버로 추가되었습니다. 환영합니다! + Вас нет в списке участников, но поскольку вы являетесь администратором сервера, вы были добавлены. Добро пожаловать! Nie ma Cię na liście członków, ale ponieważ jesteś administratorem serwera, zostałeś dodany. Witamy! Nejsi na listině členů ale jelikož jsi admin serveru, byl jsi přidán. Vítej! 您之前不在白名单上,但是因为您是服务器管理,您现已被划入白名单. 欢迎您! @@ -3492,6 +3973,7 @@ Bienvenido invitado<br/><br/>Se ha unido a este servidor como invitado. Bienvenue Invité<br/><br/>Vous avez rejoint ce serveur en tant qu'invité. 안녕하세요 게스트<br/><br/> 당신은 이 서버에 게스트로 접속했습니다. + Добро пожаловать, гость<br/><br/>Вы присоединились к этому серверу в качестве гостя. Witaj gościu<br/><br/>Dołączyłeś do tego serwera jako gość. Vítej Hoste<br/><br/>Připojil jsi se na tento server jako host. @@ -3501,6 +3983,7 @@ Objetos de ACE añadidos al arsenal y cajas de munición. Objets ACE ajoutés à l'arsenal et aux boîtes de munitions. ACE 아이템이 무기고와 탄약상자에 추가되었습니다. + В арсенал и ящики с боеприпасами добавлены ACE вещи. Dodano przedmioty ACE do arsenału i skrzynek z amunicją. ACE předměty přidáný do arzenálu a muničních beden. 将 ACE 物品添入弹药库以及弹药箱 @@ -3511,6 +3994,7 @@ El sistema de resurrección por defecto se desactivará. Le système de réanimation par défaut sera désactivé. 기본 부활 시스템은 비활성화 될것입니다 + Система возрождения по умолчанию будет отключена. Domyślny system leczenia zostanie wyłączony. Výchozí oživovací systém byl vypnut. 默认复活系统将会被停用 @@ -3521,6 +4005,7 @@ Los jugadores usarán radios ACRE. Las radios de los jugadores inconscientes se silenciarán. Les joueurs utiliseront les radios ACRE. Les radios des joueurs inconscients seront mises en sourdine. 플레이어는 ACRE 무전기를 사용할 것입니다. 의식불명인 플레이어의 무전기는 음소거될 것입니다. + Игроки будут использовать радиоприемники ACRE. Радиоприемники игроков, находящихся в бессознательном состоянии, будут отключены. Gracze będą używać radia ACRE. Nieprzytomni garacze będą mieli wyciszone radia. Hrači budou využívat ACRE vysílačky. Hráči v bezvědomí budou ztlumeni. @@ -3530,6 +4015,7 @@ Mods cargados Mods chargés 로드된 모드 + Загруженные моды Załadowane mody Načtené mody Yüklenen modlar @@ -3541,6 +4027,7 @@ Los jugadores usarán radios TFAR. Las radios de los jugadores inconscientes se silenciarán. Les joueurs utiliseront les radios TFAR. Les radios des joueurs inconscients seront mises en sourdine. TFAR 무전기를 사용할 것입니다. 의식불명인 플레이어의 무전기는 음소거될 것입니다. + Игроки будут использовать радиостанции TFAR. Радиостанции игроков, находящихся в бессознательном состоянии, будут отключены. Gracze będą używać radiotelefonów TFAR. Radia nieprzytomnych graczy zostaną wyciszone. Hrači budou využívat TFAR vysílačky. Hráči v bezvědomí budou ztlumeni. @@ -3550,6 +4037,7 @@ Reclutar unidad Recrutement d'unités 병력 모집 + Найм бойцов Zrekrutuj oddział Rekrutovat jednotku 招募单位 @@ -3560,6 +4048,7 @@ No puede reclutar unidades mientras tenga enemigos cerca. Vous ne pouvez pas recruter des unités tant que des ennemis sont proches. 적들이 근처에 있을 때는 유닛을 모집할 수 없습니다. + Вы не можете нанимать бойцов, пока рядом с вами есть враги. Nie można rekrutować jednostek, gdy w pobliżu znajdują się wrogowie. Nemůžeš rekrutovat jednotky když jsou poblíž nepřátelé. 你不能在附近存在敌人的情况下招募单位 @@ -3570,6 +4059,7 @@ Equipo estático desplegado Arme statique déployée 고정화기 배치됨 + Разворачивание станков Broń statyczna rozstawiona Statická zbraň rozložena 部署固定式武器 @@ -3580,6 +4070,7 @@ Armas fijas han sido desplegadas en las inmediaciones, serán utilizadas por la milicia de la guarnición si las deja ahí la próxima vez que la zona se cargue. L'arme statique a été déployée pour être utilisée dans une zone proche et sera utilisée par la garnison si vous la laissez ici la prochaine fois que la zone apparaîtra. 고정화기가 인근에 사용되기 위해 배치되었으며, 그대로 두면 주둔군이 영역에 스폰될 경우 사용할 것입니다. + Статичное оружие было развернуто для использования в близлежащей зоне и будет использовано гарнизоном, если вы оставите его здесь при следующем появлении зоны. Broń statyczna została rozmieszczona do użytku w pobliskiej strefie i będzie używana przez milicję garnizonową, jeśli zostawisz ją tutaj przy następnym odrodzeniu strefy. Statická zbraň byla postavena k použití v nejbližší zóně a bude využita posádkou pokud tam zůstane, když se objeví další zóna. 已在周边发现部署完毕的可用固定式武器, 区域刷新之后驻军民兵将使用该武器. @@ -3590,6 +4081,7 @@ Este vehículo está cerrado, pídale al propietario que lo abra. Ce Véhicule est verrouillé, demandez au Propriétaire de le déverrouiller. 이 차량은 잠겼습니다. 차량 소유자에게 부탁하세요. + Этот автомобиль заблокирован, попросите владельца отпереть его. Pojazd jest zamknięty, poproś właściciela o jego odblokowanie. Toto vozidlo je uzamčeno, řekni si Vlastníkovi o odemčení. Bu araç kilitli, kilidini açması için sahibine sor. @@ -3602,6 +4094,7 @@ Aviso Avertissement 경고 + Предупреждение Uwaga Varování Uyarı @@ -3611,15 +4104,18 @@ Arsenal Updated Arsenal mis à jour 무기고 업데이트 + Арсенал обновлен %1 joined %2 %1 rejoint %2 %2 마을이 %1 세력을 지지함 + %1 присоединился к %2 Taxes Income<br/> <t size='0.5' color='#C1C0BB'><br/>Manpower: +%1<br/>Money: +%2 € 세금 획득<br/> <t size='0.5' color='#C1C0BB'><br/>인력: +%1<br/>자금: +%2 + Доход<br/> <t size='0.5' color='#C1C0BB'><br/>HR: +%1<br/>Деньги: +%2 € @@ -3628,6 +4124,7 @@ Documenti di Intelligence presi. Renseignements récupérés. 군사정보 문서 확보. + Захвачены разведданные. Dokumenty wywiadowcze zostały przejęte. Intel sebrán. 情报文档已被拾取 @@ -3637,6 +4134,7 @@ Trova la locazione Localiser l'emplacement 위치 특정하기 + Определить местоположение Znajdź lokację Najdi lokaci 锁定位置 @@ -3646,6 +4144,8 @@ Riferimento a locazione sconosciuta, devi trovare la locazione prima di continuare il decifraggio. Fait référence à un lieu inconnu, il faut le localiser avant de continuer le décryptage. 알 수 없는 위치를 참조하고 있으며, 계속 해독하려면 위치를 특정해야 합니다. + Неизвестное местоположение, необходимо определить местоположение для продолжения расшифровки. + Odniesienie do nieznanej lokalizacji, należy zlokalizować lokalizację, aby kontynuować odszyfrowywanie. Zmínka o neznámé lokaci, budeš muset lokalizovat danou lokaci abys mohl dokončit dešifrování. 坐标指向一个未知的地点, 需要锁定位置才能进一步解码. @@ -3654,12 +4154,17 @@ Decifra il significato Décrypter le sens 의미 해독하기 + Расшифровка + Rozszyfruj znaczenie Dešifrovat význam Illegible text encountered, need to decipher meaning from context. Testo illegibile pervenuto, necessità di decifrare il significato dal contesto. + Texte inintelligible trouvé, il faut en décrypter le sens basé sur le contexte. 읽을 수 없는 텍스트가 발견되었습니다. 문맥에서 의미를 해독해야 합니다. + Обнаружен неразборчивый текст, необходимо расшифровать значение из текста. + Napotkany nieczytelny tekst, konieczne rozszyfrowanie znaczenia z kontekstu. Objevil se nečitelný text, je třeba rozluštit rozluštit význam z kontextu. @@ -3667,6 +4172,8 @@ Decifra il nome in codice Décrypter le nom de code 코드네임 해독하기 + Расшифровать кодовое имя + Odszyfruj kryptonim Dešifrovat kódové označení @@ -3674,6 +4181,8 @@ Nome in codice sconosciuto pervenuto, necessità di decifrare il riferimento al nome in codice. Nom de code inconnu rencontré, il faut décrypter la référence du nom de code. 알 수 없는 코드네임이 있습니다. 코드네임 참조를 통해 해독해야 합니다. + Обнаружено неизвестное кодовое имя, необходимо расшифровать кодовое имя. + Napotkano nieznany kryptonim, należy odszyfrować referencje kryptonimu. Objevil se neznámý kódový název, je třeba dešifrovat odkaz na kódové označení. @@ -3681,6 +4190,7 @@ Risolvi l'indovinello Résoudre l'énigme 수수께끼 풀기 + Разгадать загадку Rozwiąż zagadkę Rozlušti hádanku @@ -3689,6 +4199,7 @@ Significato di sezioni di testo nascoste in un indovinello, necessità di risolverlo per continuare. Le sens de certaines parties du texte est caché derrière une énigme, il faut la résoudre pour continuer. 문장으로 이루어진 수수께끼들을 풀어야지만 계속할수 있습니다. + Раздел текстов, смысл которого скрыт за загадкой, должен быть разгадан, чтобы продолжить. Fragment tekstu ukryty za zagadką, którą należy rozwiązać, aby kontynuować. Sekce textů s významem skrytým za hádankou, musíte ji vyřešit, abyste mohli pokračovat. @@ -3697,6 +4208,7 @@ Progresso decriptazione al Décryptage à 해독 진행률 + Прогресс расшифровки Postęp deszyfrowania Postup dešifrování na @@ -3705,6 +4217,7 @@ Nessuno è nel raggio di questa intelligence, necessità di iniziare da zero. Personne n'est à portée du renseignement, il faut recommencer du début. 아무도 군사정보 근처에 없기 때문에, 다운로드를 처음부터 다시 시작해야합니다. + В пределах досягаемости разведданных нет, нужно начинать заново. Nikt nie jest w zasięgu danych wywiadowczych, trzeba zacząć od zera. Nikdo není v dosahu intelu, musíme začít od začátku. @@ -3713,6 +4226,7 @@ Hai decifrato l'intelligence! Vous avez réussi à décrypter le renseignement ! 당신은 군사정보를 해석하는데 성공했습니다! + Вам удалось расшифровать информацию! Udało ci się rozszyfrować dane wywiadowcze! Podařilo se vám rozluštit intel! @@ -3721,6 +4235,7 @@ Lo schermo dice:<br/><br/>Preparati a morire! L'écran affiche :<br/><br/>Préparez-vous à mourir ! 화면에 출력된 글자: <br/><br/> 죽을 준비나 해라! + На экране надпись:<br/><br/>Приготовься умереть! Ekran mówi:<br/><br/>Przygotuj się na śmierć! Na obrazovce stojí:<br/><br/>Připrav se zemřít! @@ -3729,6 +4244,7 @@ Processo di riavvio del server Redémarrer le processus du serveur 서버 재시작 + Перезапустить серверный процесс Uruchom ponownie proces serwera Restartuj proces serveru @@ -3737,6 +4253,7 @@ Errore Critico nell'infrastruttura network. Il Server ha riportato ErrorCode: CRITICAL_ARMA_PROCESS_DIED Erreur critique dans l’infrastructure réseau. Le serveur a renvoyé le code d'erreur : CRITICAL_ARMA_PROCESS_DIED 네트워크 인프라에 치명적인 오류 발생. 반환된 서버 오류 코드: CRITICAL_ARMA_PROCESS_DIED + Критическая ошибка в сетевой инфраструктуре. Сервер вернул код ошибки: CRITICAL_ARMA_PROCESS_DIED Błąd krytyczny w infrastrukturze sieciowej. Serwer zwrócił ErrorCode: CRITICAL_ARMA_PROCESS_DIED Kritická chyba v síťové infrastruktuře. Server vrátil chybový kód: CRITICAL_ARMA_PROCESS_DIED. @@ -3745,6 +4262,7 @@ Reindirizza download Rediriger le téléchargement 경로 재설정 + Перенаправить загрузку Przekieruj pobieranie Přesměrujte stahování @@ -3753,6 +4271,7 @@ Porta di download del server chiusa. Reindirizzamento manuale richiesto! Port de téléchargement fermé sur le serveur. Redirection manuelle requise ! 다운로드 포트가 닫혔습니다. 수동 포트 지정이 필요합니다! + Порт загрузки закрыт на сервере. Требуется ручная переадресация! Port pobierania jest zamknięty na serwerze. Wymagane ręczne przekierowanie! Port pro stahování na serveru je uzavřen. Je nutné manuální přesměrování! @@ -3761,6 +4280,8 @@ Riavvia la Scheda di Rete Redémarrer l'Adaptateur Réseau 네트워크 어댑터 재시작 + Перезапустить сетевой адаптер + Uruchom ponownie kartę sieciową Restartujte síťový adaptér @@ -3768,6 +4289,8 @@ Errore Scheda di Rete. Hardware non risponde. Riavvia ora? Erreur dans l'adaptateur réseau. Le matériel ne répond pas. Redémarrer maintenant? 네트워크 어댑터 오류. 하드웨어가 반응하지 않습니다. 재시작할까요? + Ошибка в сетевом адаптере. Сетевой адаптер не отвечает. Перезагрузить сейчас? + Błąd karty sieciowej.. Sprzęt nie odpowiada. Uruchomić ponownie? Chyba v síťovém adaptéru. Hardware nereaguje. Restartovat nyní? @@ -3775,6 +4298,7 @@ Conferma file Confirmer le fichier 파일 확인하기 + Подтвердить файл Potwierdź plik Potvrďte soubor Dosyayı doğrula @@ -3784,6 +4308,7 @@ Errore in Frammento di Dati. File {002451%12-215502%} deve essere confermato manualmente! Erreur de fragment de données. Le fichier {002451%12-215502%} doit être validé manuellement ! 데이터 파편화 오류. {002451%12-215502%} 파일은 직접 확인해야합니다. + Ошибка фрагмента данных. Файл {002451%12-215502%} должен быть подтвержден вручную! Błąd fragmentu danych. Plik {002451%12-215502%} musi zostać potwierdzony ręcznie! Chyba datového fragmentu. Soubor {002451%12-215502%} musí být potvrzen ručně! @@ -3792,6 +4317,7 @@ Salta URL Ignorer l'URL URL 스킵하기 + Пропустить URL-адрес Pomiń adres URL Přeskočit URL @@ -3800,6 +4326,7 @@ Errore 404 sul server. URL incorretto. Salta URL? Erreur 404 sur le serveur. URL incorrecte. Ignorer l'URL ? 404 서버 오류. URL이 잘못되었습니다. URL을 스킵합니까? + Ошибка 404 на сервере. Неверный URL. Пропустить URL? Błąd 404 na serwerze. Nieprawidłowy adres URL. Pominąć adres URL? 404 Chyba na serveru. URL nesprávné. Přeskočit URL? @@ -3808,6 +4335,7 @@ Ferma windows update Interrompre la mise à jour Windows 윈도우 업데이트 중지 + Остановить обновление Windows Zatrzymaj aktualizację systemu Windows Zastavit aktualizace systému Windows @@ -3816,6 +4344,7 @@ Windows necessità di un aggiornamento. Aggiorna ora e perdi tutti i dati? Windows a besoin d'une mise à jour. Mettre à jour maintenant et perdre toutes les données ? 윈도우를 업데이트 해야합니다. 지금 업데이트 하시겠습니까? + Windows требуется обновление. Обновите сейчас и потеряете все данные? Windows wymaga aktualizacji. Zaktualizować teraz i stracić wszystkie dane? Windows potřebuje aktualizaci. Aktualizovat nyní a ztratit všechna data? @@ -3824,6 +4353,7 @@ Download al %1%2 Téléchargement à %1%2 다운로드 완료까지 %1%2 + Скачивание по адресу %1 %2 Postęp pobierania %1%2 Stáhnout na %1%2 @@ -3832,6 +4362,7 @@ Nessuno nel raggio dell'Intelligence, reset download! Personne à portée du renseignement, téléchargement réinitialiser ! 아무도 군사정보 근처에 없습니다. 다운로드를 리셋합니다. + В пределах досягаемости разведданных нет, сброс загрузки! Nie ma nikogo w obrębie danych wywiadowczych, resetowanie pobierania! Nikdo v dosahu intelu, restartuji stahování! 没有人在情报周围,重置下载过程! @@ -3841,6 +4372,7 @@ Hai scaricato l'intelligence! Vous avez réussi à télécharger les renseignements ! 당신은 군사정보를 다운로드하는 데 성공했습니다! + Вам удалось загрузить информацию! Udało ci się pobrać dane! Podařilo se vám stáhnout intel! 你成功下载了情报! @@ -3850,6 +4382,7 @@ Annulla Ricerca Annuler la recherche 검색 취소 + Отменить поиск Anuluj przeszukiwanie Zrušit prohledávání 取消搜索 @@ -3859,6 +4392,7 @@ Ricerca annullata. Recherche annulée. 검색 취소됨. + Поиск отменен. Przeszukiwanie anulowane. Prohledávání zrušeno. Arama iptal edildi. @@ -3869,6 +4403,7 @@ Ricerca completata, non hai trovato nulla! Recherche terminée, mais vous n'avez rien trouvé ! 검색을 완료했지만, 아무것도 찾지 못했습니다. + Поиск завершен, но вы ничего не нашли! Przeszukiwanie zakończone, ale nic nie znaleziono! Prohledávání dokončeno, ale nic jsi nenašel. 搜索完毕, 连个毛都没找到! @@ -3878,6 +4413,7 @@ Ricerca completata, intelligence trovata! Recherche terminée, renseignements trouvées ! 검색 완료, 군사 정보 발견! + Поиск завершен, разведданные найдены! Przeszukiwanie zakończone, dane znalezione! Prohledávání dokončeno a našel jsi intel! 搜索完毕, 寻得敌方情报 ! @@ -3887,6 +4423,7 @@ Disinnesca bomba Désarmer la bombe 폭탄 해체 + Обезвредить бомбу Rozbrój bombę Zneškodnit bombu Bombayı çöz @@ -3897,6 +4434,7 @@ Abbiamo trovato i dati di tracciamento di un convoglio per %1.<br/>Posizione del convoglio marcata sulla mappa! Nous avons trouvé les données de suivi d'un convoi %1.<br/>Position du convoi indiquée sur la carte ! %1 수송대의 추적 데이터를 찾았습니다. <br/> 수송대의 위치를 지도에 표시했습니다! + Мы нашли данные о местоположении конвоя %1.<br/>Местоположение конвоя отмечено на карте! Znaleźliśmy położenie konwoju %1.<br/>Pozycja konwoju zaznaczona na mapie! Nalezli jsme sledovací údaje pro konvoj %1.<br/>Pozice konvoje označena na mapě! @@ -3905,6 +4443,7 @@ Non ci sono convogli %1 in giro! Il n'y a actuellement aucun convoi %1 en circulation ! 현재 %1 의 수송대가 주변에 한대도 없습니다! + В настоящее время по округе не разъезжают конвои %1! Obecnie w okolicy nie ma żadnych konwojów %1! Momentálně se kolem nenachází žádné konvoje %1! @@ -3913,6 +4452,7 @@ Abbiamo trovato la chiave di decriptazione GPS del convoglio %1!<br/>Convogli %2 marcati sulla mappa. Nous avons trouvé la clé de déchiffrement GPS du convoi %1 !<br/>%2 convois sont marqués sur la carte. 우리는 %1 수송대의 GPS 암호화 키를 찾았습니다!<br/>%2 수송대를 지도에 표시했습니다. + Мы нашли ключ для расшифровки GPS конвоя %1!<br/>%2 конвоя отмечены на карте. Znaleźliśmy klucz deszyfrujący GPS konwoju %1!<br/>%2 konwoje są zaznaczone na mapie. Nalezli jsme klíč k dešifrování GPS konvoje %1!<br/>Konvoje %2 jsou označeny na mapě. @@ -3921,6 +4461,7 @@ Abbiamo trovato una chiave di decriptazione %1!<br/>Ci permetterà di decriptare totalmente la prossima richiesta di supporto. Nous avons trouvé une clé de déchiffrement %1 !<br/>Elle nous permet de décrypter entièrement le prochain appel d'assistance. %1의 암호 해독 키 패키지를 찾았습니다!<br/>이제 다음 지원 요청을 완전히 해독할 수 있습니다. + Мы нашли ключ расшифровки %1!<br/>Это позволяет нам полностью расшифровать следующий запрос поддержки. Znaleźliśmy klucz deszyfrujący %1! <br/>Pozwala nam to w pełni odszyfrować następne wezwanie o wsparcie. Nalezli jsme klíč k dešifrování %1!<br/>Umožní nám to dešifrovat další volání o podporu. @@ -3929,6 +4470,7 @@ Havi trovato un pacchetto di chiavi di decriptazione %1!<br/>Permetteranno alla tua fazione di decriptare le richieste di supporto. Vous avez trouvé un paquet de %1 clés de déchiffrement !<br/>Elles permettent à votre faction de déchiffrer les appels d'assistance. %1의 암호 해독 키 패키지를 찾았습니다!<br/> 이제 아군은 지원 요청을 해독할 수 있습니다. + Вы нашли пакет ключей для расшифровки %1!<br/>Они позволяют вашей фракции расшифровывать запросы поддержки. Znaleziono pakiet %1 kluczy deszyfrujących! <br/>Umożliwiają one frakcji odszyfrowywanie próśb o wsparcie. Našel jsi balíček dešifrovacích klíčů %1!<br/>Umožňují vaší frakci dešifrovat volání o podporu. @@ -3937,6 +4479,7 @@ Hai trovato dati confidenziali, li hai venduti sul mercato nero per %1! Vous avez trouvé des données confidentielles, vous les avez vendues pour %1 au marché noir ! 당신은 기밀문서를 찾았고 %1달러에 암시장에 팔았습니다! + Вы нашли какие-то конфиденциальные данные, вы продали их за %1 на черном рынке! Znalazłeś poufne dane i sprzedałeś je za %1 na czarnym rynku! Nalezli jste nějaká tajné data a prodali jste je na černém trhu za %1! @@ -3945,6 +4488,7 @@ %1 ha abbondanti riserve difensive disponibili. %1 dispose de nombreuses réserves de défense. %1은 사용 가능한 방어용 예비군을 매우 많이 보유 중입니다. + %1 располагает большим количеством доступных резервов. %1 ma wiele dostępnych rezerw obronnych. %1 má k dispozici dostatek obranných rezerv. @@ -3953,6 +4497,7 @@ %1 ha moderate riserve difensive disponibili. %1 dispose de réserves de défense modérées. %1은 사용 가능한 방어용 예비군을 많이 보유 중입니다. + У %1 имеются умеренные резервы. %1 ma dostępne umiarkowane rezerwy obronne. %1 má k dispozici průměrný počet rezerv. @@ -3961,6 +4506,7 @@ %1 è a corto di riserve difensive. %1 manque de réserves de défense. %1은 사용 가능한 방어용 예비군을 적게 보유 중입니다. + У %1 не хватает резервов. W %1 brakuje rezerw obronnych. %1 má nedostatek obranných rezerv. @@ -3969,6 +4515,7 @@ %1 non ha quasi nessuna riserva difensiva. %1 n'a presque plus de réserves de défense. %1은 사용 가능한 방어용 예비군이 거의 없습니다. + У %1 почти не осталось резервов. %1 nie ma już prawie żadnych rezerw obronnych. %1 nemá téměř žádné obranné rezervy. @@ -3977,6 +4524,7 @@ %1 è completamente senza riserve difensive. %1 n'a plus aucune réserves de défense. %1은 사용 가능한 방어용 예비군이 하나도 없습니다. + %1 полностью исчерпаны резервовы. %1 całkowicie wyczerpał rezerwy obronne. %1 nemá vůbec žádné obranné rezervy. @@ -3985,6 +4533,7 @@ Attacco %1 imminente! L'attaque %1 est imminente ! %1의 공격이 임박했습니다! + Атака %1 неизбежна! Atak %1 jest nieuchronny! %1 útok je nevyhnutelný! @@ -3993,6 +4542,7 @@ Attacco %1 in arrivo tra %2 minuti. Attaque %1 attendue dans %2 minutes. %1의 공격이 %2분에 들어올 것으로 예상됩니다. + Атака %1 ожидается через %2 мин. %1 atak spodziewany za %2 minuty. Očekává se %1 útok za %2 minut. @@ -4001,6 +4551,7 @@ Abbiamo trovato dati incriminanti sul traditore, non causerà più problemi. Vous avez trouvé des données compromettantes sur le traître, nous ne pensons pas qu'il causera d'autres ennuis. 배신자의 유죄를 입증하는 자료를 찾았고, 그는 더 이상 문제를 일으키지 않을 겁니다. + Вы нашли компрометирующие данные на предателя, мы не думаем, что он доставит еще какие-либо неприятности. Znaleźliście dane obciążające zdrajcę, nie sądzimy, by w przyszłości sprawiał on więcej kłopotów. Našel si kompromitující data o zrádci. Nemyslíme si, že by působil další potíže. @@ -4009,12 +4560,14 @@ Hai trovato i dati di approvigionamento per <br/> %1<br/> Hai sbloccato questa arma! Vous avez trouvé les données de ravitaillement pour le<br/> %1<br/> Vous avez débloqué cette arme ! 다음 무기에 대한 공급 데이터를 찾았습니다. <br/>%1<br/>해당 무기를 잠금 해제했습니다! + Вы нашли данные о запасах для<br/>%1<br/> Вы разблокировали это оружие! Znaleziono dane zaopatrzenia dla broni<br/> %1<br/> Odblokowano tę broń! Nalezli jste zásobovací data pro<br/>%1<br/>Odemknul sis tuto zbraň! Intel Found 정보 획득 + Найдены разведданные Intel @@ -4022,6 +4575,7 @@ Intelligence Renseignements 군사정보 + Разведданные Dane wywiadowcze Intel 情报 @@ -4031,6 +4585,7 @@ Cerca Intelligence Chercher des Renseignements 군사정보 찾기 + Найти разведданные Przeszukaj dane wywiadowcze Hledat Intel 搜索情报 @@ -4042,6 +4597,7 @@ Recupero ancora attivo. Recharge encore en cours. 재사용 대기 시간이 아직 끝나지 않았습니다. + Обратный отсчет по-прежнему активен. Czas odnowienia jest nadal aktywny. Odpočet je stále aktivní. 冷却仍在进行中. @@ -4051,6 +4607,7 @@ Già in trasferimento. Déjà en transfert. 이미 넣는 중입니다. + Уже перегружается. Już się przenosi. Přenos již probíhá. @@ -4059,6 +4616,7 @@ Carica spoglie nella cassa Charger le butin dans la caisse 전리품을 상자에 넣기 + Грузите вооружение в ящик Załaduj łup do skrzyni Sebrat kořist do bedny 将战利品装载入一个弹药箱 @@ -4068,6 +4626,7 @@ Carica spoglie nel veicolo Charger le butin depuis la caisse vers le véhicule 전리품을 상자에서 차량으로 적재하기 + Загрузить из ящика в технику Załaduj łupy ze skrzyni do pojazdu Naložit kořist z bedny do vozidla 将弹药箱中的战利品装载入载具库存 @@ -4077,6 +4636,7 @@ Impossibile trasferire tutte le spoglie in %1. %1 pieno. Impossible de transférer tout le butin vers %1. %1 plein. %1에 모든 전리품을 옮겨담을 수 없습니다. %1이(가) 가득 찼습니다. + Не удается перенести все предметы в %1. %1 заполнен. Nie można przenieść wszystkich łupów do %1. %1 jest pełny. Nemůžeš přesunout všechen loot do %1. 1% je plné. @@ -4085,6 +4645,7 @@ Nessun veicolo vicino. Aucun véhicule à proximité. 차량이 근처에 없습니다. + Поблизости нет техники. Brak pojazdów w pobliżu. Poblíž není žádne vozdilo. 周围无可用载具 @@ -4094,6 +4655,7 @@ Tutte le spoglie trasferite in %1. Tout le butin a été transféré à %1. 모든 전리품을 %1에 넣었습니다. + Все предметы перенесены в %1 Wszystkie łupy zostały przeniesione do %1. Všechen loot přesunut do %1. @@ -4102,6 +4664,7 @@ Saccheggiando... Pillage... 전리품 줍는 중... + Сбор... Szabrowanie... Rabování... 收集战利品中... @@ -4111,6 +4674,7 @@ Impossibile trasferire tutte le spoglie vicine. Impossible de transférer tout le butin à proximité. 근처에 있는 전리품을 다 넣을 수 없습니다. + Невозможно собрать все предметы, находящуюся поблизости. Nie można przenieść wszystkich pobliskich łupów. Není možné přesunout všechen blizký loot. @@ -4119,6 +4683,7 @@ Spoglie vicine trasferine nella cassa. Le butin proche a été transféré dans la caisse. 근처의 전리품들을 상자에 넣었습니다. + Ближайшие предметы перенесены в ящик. Pobliski łup przeniesiony do skrzyni. Nejbližší loot přesunut do bedny. @@ -4127,6 +4692,7 @@ Cassa delle spoglie Caisse de butin 전리품 상자 + Ящик с вооружением Skrzynia z łupami Bedna @@ -4135,14 +4701,19 @@ A %3 officer is inspecting %1. Go there and kill him before %2. Un ufficiale %3 sta ispezionando %1. Recati lì ed uccidilo entro %2. + Un officier de %4 est en train d'inspecter %1. Allez-y et tuez le avant %2:%3. %3의 장교가 %1을(를) 시찰 중입니다. %2 전에 가서 그를 사살하십시오. + Офицер %3 осматривает %1. Отправляйтесь туда и убейте его до %2. + Oficer %4 przeprowadza inspekcję %1. Idź tam i zabij go przed %2:%3." Důstojník %3 kontroluje %1. Jděte tam a zabijte ho před %2. + 一名 %3 军官正在视察 %1。赶在 %2 之前杀了他。 Kill the Officer Uccidi l'Ufficiale Tuez l'Officier 장교 사살 + Убийство офицера Zabij oficera Zabít důstojníka. 消灭敌方军官 @@ -4150,38 +4721,56 @@ Special Forces team decimated at a %1. 특수부대 팀이 %1에서 전멸하였습니다. + Команда спецназа уничтожена в %1. + 特种部队在 %1 处被消灭。 We have spotted a %3 Special Forces team patrolling around a %1. Ambush them and we will have one less problem. Do this before %2. Be careful, they are tough boys. Abbiamo avvistato una squadra di FS %3 in pattugliamento intorno a %1. Tendi un'imboscata e avremo un problema in meno. Fallo entro %2. Sii cauto, sono uomini duri. + Nous avons repéré une équipe des Forces Spéciales de %3 en train de patrouiller autours d'un %1. Prenez les en embuscade et ça nous fera un problème de moins. Faites-le avant %2. Soyez prudents, c'est des durs. %1 인근을 순찰하는 %3 소속 특수작전조를 발견했습니다. 그들을 기습하면 골치아픈 문제가 하나 줄어들 것입니다. %2 이전까지 이 작업을 수행하십시오. 조심하세요. 그들은 고도로 훈련된 녀석들입니다. + Мы заметили группу спецназа %3, патрулирующую район %1. Устройте им засаду, и у нас будет на одну проблему меньше. Сделайте это до %2. Будьте осторожны, они крутые парни. + Zauważyliśmy zespół %3 sił specjalnych patrolujący okolice %1. Przeprowadź na nich skuteczną zasadzkę, a będziemy mieli jeden problem mniej. Zrób to przed %2. Uważaj, to twardziele. Zpozorovali jsme tým speciálních jednotek %3, který hlídá okolí %1. Přepadněte je a budeme mít o jeden problém méně. Udělejte to před %2. Buďte opatrní, jsou to tvrdí borci. + 我们发现一支 %3 特种部队正在 %1 附近巡逻。如果能伏击他们,我们就少了一件麻烦事。在 %2 之前行动。小心点,这可是个硬骨头。 Special Forces + Spezialkräfte + FS + Forces Spéciales 특수부대 + Спецназ + Siły Specjalne Speciální jednotka + 敌方特种部队 Someone found some intel on the traitors family, he will not cause any problems any more! Qualcuno ha trovato dell'intelligence sulla famiglia dei traditori, non causerà più problemi! Quelqu'un a trouvé des renseignements sur la famille du traitre, il ne nous posera plus de problèmes ! 누군가 배신자의 가족에 대한 정보를 발견했습니다. 그는 더 이상 문제를 일으키지 않을 겁니다! + Кто-то нашел информацию о семье предателей, он больше не доставит никаких проблем! Ktoś znalazł informacje o rodzinie zdrajcy, nie będzie już sprawiał problemów! Někdo našel informace o rodině zrádce. Další problémy už působit nebude. - 线人收集到一些关于叛徒家人的资料,他很快就不会是我们的问题了! + 线人收集到一些关于叛徒家人的资料,他很快就不会是我们的问题了! A traitor has scheduled a meeting with %3 forces in %1. Kill him before he provides enough intel to give us trouble. Do this before %2. We don't know where exactly this meeting will happen. You will recognize the building by the nearby parked vehicle and %3 presence. Un traditore si incontrerà con %4 a %1. Uccidilo prima che possa fornirgli intelligence e crearci problemi. Fallo entro %2. Non sappiamo dove avverrà l'incontro. Riconoscerai l'edificio dal Fuoristrada parcheggiato e dalla presenza di %3. + Un traitre va rencontrer %4 dans %1. Tuez-le avant qu'il ne divulge assez de renseignements pour nous causer des problèmes. Faites-le avant %2. Nous ne savons pas exactement où cette rencontre aura lieu. Vous reconnaitrez le batiment grâce au Tout-Terrain proche et la présence de %3. 한 배신자가 %1에서 %3 세력과 만남을 가지기로 일정을 잡았습니다. 그가 우리에게 문제를 일으킬 수 있는 정보를 제공하기 전에 그를 사살하십시오. %2 전에 수행하십시오. 이 만남이 어디서 일어나는지는 정확히 알 수 없습니다. 근처에 있는 오프로드와 %3의 존재로 알 수 있습니다. + Предатель назначил встречу с силами %3 в %1. Убейте его, прежде чем он предоставит достаточно информации, чтобы доставить нам неприятности. Сделайте это до %2. Мы не знаем, где именно произойдет эта встреча. Вы узнаете здание по припаркованному поблизости автомобилю и присутствию %3. + Zdrajca zaplanował spotkanie z %4 w %1. Zabij go, zanim przekaże im wystarczająco dużo informacji przez którę będziemy mieli kłopoty. Zrób to przed %2. Nie wiemy, gdzie dokładnie odbędzie się to spotkanie. Budynek rozpoznasz po pobliskim Offroadzie i obecności %3. Zrádce naplánoval setkání s %3 v %1. Zabijte ho dříve, než poskytne dost informací, které by nám způsobily problémy. Udělejte to před %2. Nevíme přesně, kde to setkání proběhne. Budovu poznáte podle nedalekého zaparkovaného vozidla, a přítomnosti %3. + 一名叛徒计划在 %1 与 %3 部队会面。务必在 %2 之前干掉他,以避免他提供足以给我们造成麻烦的情报。我们不知道具体的会面地点,但你可以通过附近停放的车和 %3 的存在认出这栋建筑。 Kill the Traitor Uccidi il Traditore Tuez le Traitre 배신자 사살 + Убийство Предателя Zabij zdrajcę Zabít zrádce 消灭叛徒 @@ -4191,34 +4780,43 @@ Un %1 tornerebbe utile alla nostra causa. Recati sul posto e catturalo entro %2. Un %1 serait un bon atout pour notre cause. Allez y et capturez le avant %2. %1는 우리의 목적에 알맞는 훌륭한 전과가 될 것입니다. %2 전까지 가서 점령하십시오. + %1 был бы прекрасным дополнением к нашему делу. Идите туда и захватите до %2. %1 będzie dobrym wzmocnieniem naszej sprawy. Udaj się tam i zdobądź to przed %2. %1 by se nám hodilo. Jděte tam a zaberte to před %2. + 一个 %1 会为我们的事业添砖加瓦。在 %2 之前去那里占领它。 A %1 is disturbing our operations in the area. Go there and capture it before %2. Un %1 sta interdicendo le nostre operazioni nell'area. Recati lì e catturalo entro %2. Un %1 perturbe nos opérations dans la zone. Allez y et capturez le avant %2. %1이(가) 해당 구역에서 우리 작전을 방해하고 있습니다. %2 전까지 가서 점령 하십시오. + %1 мешает нашим операциям в этом районе. Отправляйтесь туда и захватите его до того, как %2. Obiekt %1 zakłóca nasze operacje w okolicy. Udaj się tam i zdobądź go przed %2. %1 narušuje naše operace v této oblasti. Jděte tam a zaberte to před %2. + 一个 %1 正在干扰我们在该地区的行动。在 %2 之前去那里占领它。 An enemy garrison here is disturbing our operations in the area. Go there and secure the area before %1. 이 곳의 적 주둔군이 해당 지역에서 우리 작전을 방해하고 있습니다. 가서 %1 전까지 지역을 확보하십시오. + Вражеский гарнизон здесь мешает нашим операциям в этом районе. Отправляйтесь туда и обезопасьте район до %1. + 一个敌军驻地正在干扰我们在该地区的行动,在 %1 之前去那里肃清这个区域。 Resource Acquisition Acquisizione di risorse Acquisition de Ressources 자원채취소 점령 + Захват Ресурсов Pozyskiwanie zasobów Získávání zdrojů + 资源获取 Take the Outpost Cattura l'Avamposto Capturez l'Avant-Poste 전초기지 점령 + Захватите аванпост Przejmij posterunek Zabrat základnu 夺取哨站 @@ -4226,19 +4824,28 @@ Destroy Roadblock 검문소 파괴 + Уничтожить блокпост + 摧毁路障 Secure the AO + Sécuriser l'OA 작전 구역 확보 + Защита Оперативной зоны + 肃清区域 A convoy from %1 is about to depart at %2. It will provide ammunition to %3. Try to intercept it. Steal or destroy that truck before it reaches its destination. Un convoglio da %1 è in procinto di partire alle %2. Trasporta munizioni verso %3. Prova ad intercettarlo. Ruba o distruggi i veicoli prima che raggiungano la destinazione. Un convoy de %1 saldrá a las %2. Lleva munición munición a %3. Intente interceptarlo. Robe o destruya ese camión antes de que llegue a su destino. + Un convoi partant de %1 est sur le point de partir à %2. Il va fournir des munitions à %3. Essayez de l'intercepter. Volez ou détruisez ce camion avant qu'il n'atteigne sa destination. %1에서 온 수송대가 %2에서 출발하려고 하며, 이는 %3에게 탄약을 제공할 것입니다. 수송을 방해하여 해당 트럭이 목적지에 도달하기 전에 훔치거나 파괴하십시오. + Колонна из %1 вот-вот отправится в %2. Она доставит боеприпасы %3. Попытайтесь перехватить ее. Угоните или уничтожьте этот грузовик до того, как он достигнет пункта назначения. + Konwój z %1 wkrótce wyruszy w kierunku %2. Dostarczy on amunicję do %3. Spróbuj go przechwycić. Ukradnij lub zniszcz ciężarówkę, zanim dotrze do celu. Konvoj z %1 bude odjíždět v %2 a veze munici do %3. Zkus ho zachytit. Ukradni nebo znič náklaďák než dosáhne cíle. A coluna de %1 está prestes a partir a %2. Vai providenciar munições para %3. Tenta interceptar. Rouba ou destrói a carrinha antes que chegue ao seu destino. %1 'den bir Konvoy %2 'ye gitmek üzere. %3 'e mühimmat sevkiyatı yapacak. Hedefine ulaşamadan aracı çalın ya da yok edin. + 一支来自 %1 的车队即将从 %2 出发. 它将为 %3 提供弹药补给. 尝试截停该车队并在弹药车到达最终目的地之前偷取或摧毁它. Ammo Convoy @@ -4246,6 +4853,7 @@ Convoglio Munizioni Convoi de munitions 탄약 수송대 + Конвой с боеприпасами Konwój amunicyjny Konvoj s municí 弹药补给车队 @@ -4254,16 +4862,21 @@ A convoy from %1 is about to depart at %2. It will reinforce %3 with armored vehicles. Try to intercept it. Steal or destroy the armor before it reaches it's destination. Un convoglio da %1 è in procinto di partire alle %2. Rinforzerà %3 con veicoli corazzati. Prova ad intercettarlo. Ruba o distruggi i veicoli prima che raggiungano la destinazione. Un convoy de %1 saldrá a las %2. Reforzará %3 con vehículos blindados. Intente interceptarlo. Robe o destruya esa cosa antes de que alcance su destino. + Un convoi de %1 est sur le point de partir à %2. Il renforcera %3 avec des véhicules blindés. Essayez de l'intercepter. Volez ou détruisez cette chose avant qu'elle n'atteigne sa destination. %1에서 온 수송대가 %2에서 출발하려고 하며, 이는 %3의 기갑 차량을 증원할 것입니다. 수송을 방해하여 그것이 목적지에 도달하기 전에 훔치거나 파괴하십시오. + Колонна из %1 вот-вот отправится в %2. Она усилит %3 бронетехникой. Попытайтесь перехватить ее. Украдите или уничтожьте броню до того, как она достигнет пункта назначения. + Konwój z %1 wkrótce wyruszy w kierunku %2. Wzmocni on %3 pojazdami opancerzonymi. Spróbuj go przechwycić. Ukradnij lub zniszcz to coś, zanim dotrze do celu. Konvoj z %1 bude odjíždět v %2. Posílí %3 obrněnými vozidly. Zkus ho zachytit. Ukradni nebo znič všechny vozidla než dosáhnou cíle. A coluna de %1 está prestes a partir a %2. Vai reforçar %3 com veículos blindados. Tenta interceptar. Rouba ou destrói a coisa antes que chegue ao seu destino. %1 'den bir Konvoy %2 'ye gitmek üzere. %3 'e Zırhlı birlik kaydıracak. Hedefine ulaşamadan aracı çalın ya da yok edin. + 一支来自 %1 的车队即将从 %2 出发. 它将使用装甲车辆为 %3 提供支援. 尝试截停该车队并在装甲车辆到达最终目的地之前偷取或摧毁它. Armored Convoy Convoglio Corazzato Convoi Blindé 기갑 호송대 + Конвой с бронетехникой Konwój z pojazdami opancerzonymi Obrněný konvoj 装甲机械化车队 @@ -4273,6 +4886,7 @@ Un veicolo carico di soldi si sta muovendo da %1 verso %3, partirà alle %2. Ruba il veicolo e portalo al QG. Quei fondi saranno molto graditi. Un camion rempli d'argent est déplacé de %1 à %3, et il est sur le point de partir à %2. Volez ce camion et amenez le au QG. Ces fonds seront les bienvenus. %1에서 온 거금을 싣은 트럭이 %3(으)로 옮겨지고 있으며, 곧 %2에서 출발할 예정입니다. 해당 트럭을 훔쳐서 본부로 가져오십시오. 그 자금은 아주 환영받을 것입니다. + Грузовик с большим количеством денег перемещается из %1 в %3 и вот-вот отправится в %2. Угоните этот грузовик и доставьте его в штаб. Эти средства будут очень кстати. Ciężarówka z pieniędzmi jest przewożona z %1 do %3 i ma wkrótce odjechać o %2. Ukradnij tę ciężarówkę i przywieź ją do kwatery głównej. Te fundusze będą bardzo mile widziane. Náklaďák se spoustou peněz se přesouvá z %1 do %3 a jeho odjezd je ve %2. Ukradni náklaďák a přivez ho na HQ. Peníze se ti budou hodit. 装载着满满一车钱的卡车正计划从 %1 赶往 %3, 并且它马上就要从 %2 出发了. 盗取这辆卡车并将它带回到总部. 我们会很高兴的接受这一大笔资助. @@ -4283,6 +4897,7 @@ Convoglio Monetario Convoi de Fonds 현금 수송대 + Конвой с деньгами Transport pieniędzy Převoz Peněz 武装运钞车队 @@ -4292,6 +4907,7 @@ Un gruppo di PG sta per essere trasportato da %1 verso %3, partirà per le %2. Prova ad intercettarlo. Uccidi o cattura il guidatore e portali al QG. Un groupe de prisonniers de guerre est en cours de transport de %1 à %3 et est sur le point de partir à %2. Essayez de l'intercepter. Tuez ou capturez le chauffeur du camion pour que les prisonniers vous rejoignent et amenez-les au QG. Vivants si possible. %1의 포로 무리가 %3(으)로 수송되는 중이며, %2에서 출발하려고 합니다. 해당 트럭을 방해하여 트럭 운전수를 죽이거나 사로잡아서 그들이 합류하게 하고 본부로 데려오십시오. 가능하면 살아 있어야 합니다. + Группу военнопленных перевозят из %1 в %3, и она вот-вот отправится в %2. Попытайтесь перехватить его. Убейте или захватите в плен водителя грузовика, чтобы заставить его присоединиться к вам и доставить в штаб. По возможности живым. Grupa jeńców wojennych będzie transportowana z %1 do %3 i wyruszy o %2. Spróbuj przechwycić ten transport. Postaraj się zabić lub pojmać kierowcę ciężarówki aby dołączył do Ciebie, oraz dostarcz go do HQ. Żywego jeżeli to możliwe. Skupina POW je převážena z %1 do %3 a bude odjíždět v %2. Zkus ho zachytit. Zabij nebo zajmi řidiče náklaďáku aby se k tobě přidal a přivez je na HQ. Živé pokud možno. 被关押在 %1 的战俘正被集体押往 %3, 而押运卡车即将从 %2 出发. 尝试截停这辆卡车. 消灭或扣押卡车司机,劝说战俘加入你们的队伍并将他们带回总部. 当然了,最好是活着的战俘. @@ -4301,6 +4917,7 @@ Convoglio Prigionieri Convoi de Prisonniers 포로 수송대 + Конвой с военнопленными Transport więźniów Převoz vězňů 战俘押运车队 @@ -4310,6 +4927,7 @@ I rinforzi verranno mandati da %1 verso %3, partiranno alle %2. Intercettali e distruggi le truppe e i veicoli. Des renforts sont envoyés de %1 à %3 dans un convoi, et il est sur le point de partir à %2. Essayez d'intercepter et éliminer toutes les troupes et véhicules de l'objectif. %1의 증원군이 호송대로 %3(으)로 보내지는 중이며, %2에서 출발하려고 합니다. 해당하는 모든 부대와 차량 목표를 방해하여 죽이십시오. + Подкрепление отправляется из %1 в %3 в составе колонны, и оно вот-вот отправится в %2. Перехватите колонну, убейте всех солдат и уничтожьте их транспортные средства. Posiłki są wysyłane z %1 do %3 w konwoju, który wkrótce wyruszy o %2. Spróbuj przechwycić i zabić wszystkich żołnierzy i pojazd cel Posily jsou posílány z %1 do %3 v konvoji a budou vyjíždět v %2. Zkus ho zastavit, pozabíjet všechny vojáky a vozidlové cíle. 敌人的增援车队将从 %1 调防至 %3, 而此车队即将从 %2 出发. 尝试截停敌增援部队,并消灭所有步兵单位以及装甲单位. @@ -4319,6 +4937,7 @@ Convoglio Rinforzi Convoi de Renforts 증원군 수송대 + Конвой с подкреплением Konwój z posiłkami Konvoj Posil 敌方增援车队 @@ -4328,6 +4947,7 @@ Un veicolo carico di rifornimenti medici rifornirà %3 partirà per le %2 da %1. Ruba il veicolo e portalo a %3 e fai in modo che la gente sappia che %4 sta portanto i rifornimenti. Un camion avec des fournitures médicales à destination %3 est sur le point de partir à %2 de %1. Volez ce camion, amenez le à %3 et faites savoir aux gens que c'est %4 qui donne ces fournitures. %1의 목적지가 %3인 의료 보급 트럭이 %2에서 출발하려고 합니다. 해당 트럭을 훔쳐 %3에게 가져가서 그 곳 주민들에게 보급품을 주는 사람이 %4(이)라는 것을 알리십시오. + Грузовик с медикаментами, пункт назначения %3, вот-вот отправится в %2 из %1. Угони этот грузовик, доставь его в %3 и сообщи людям там, что это %4 доставляет эти медикаменты. Náklaďák se zdravotnickými zásobami pro %3 bude odjíždět v %2 z %1. Ukradni ho a přivez ho do %3 aby lidé věděli že jsou to %4 kdo poskytuje tyto zásoby. 一辆满载医疗物质的补给卡车计划从 %1 赶往 %3, 而这辆卡车马上就要从 %2 出发. 盗取这辆卡车,将它带到 %3. 确保那里的人知道是 %4 在派发这些物质. @@ -4336,6 +4956,7 @@ Convoglio rifornimenti Convoi de Ravitaillement 보급품 수송대 + Конвой с медикаментами Konwój z zaopatrzeniem Konvoj se zásobami. 补给运输车队 @@ -4343,7 +4964,10 @@ We need to destroy or take a Radio Tower in %1. This will interrupt the coverage of %3 radio propaganda. Do it before %2. Dobbiamo distruggere o catturare la Torre Radio a %1. Ciò interromperà la Rete di Propaganda %3. Falla entro %2. + Nous devons détruire ou capturer une Tour Radio dans %1. Cela va interrompre le reseau de propagande de %3. Faites le avant %2. %1에 있는 파괴하거나 점령해야 합니다. 그러면 %3의 프로파간다 네트워크 송신이 중단됩니다. %2 전까지 수행하십시오. + Нам нужно разрушить или захватить радиовышку в %1. Это прервет трансляцию радиопропаганды %3. Сделайте это до %2. + Musimy zniszczyć lub przejąć wieżę radiową w %1. Spowoduje to zakłócenie %3 sieci propagandowej. Zrób to przed %2. Musíme zničit nebo obsadit vysílací věž v %1. To přeruší propagandistickou síť %3. Udělejte to před %2. @@ -4351,6 +4975,7 @@ Distruggi Torre Radio Détruire la Tour Radio 송신탑 파괴 + Уничтожить радиовышку Zniszcz wieżę radiową Zničit vysílací věž 摧毁敌方通讯塔 @@ -4360,6 +4985,7 @@ Abbiamo abbattuto un elicottero. Vi è la possibilità di distruggerlo o catturarlo prima che venga recuperato. Fallo prima che un team di recupero da %1 raggiunga la zona dell'impatto. MUOVI VELOCEMENTE! Nous avons abattu un hélicoptère. Il y a une opportunité de le détruire ou le capturer avant qu'il ne soit secouru. Faites le avant qu'une équipe de secours de %1 n'atteigne le site du crash. FAITES VITE ! 아군이 헬리콥터를 격추했습니다. 회수되기 전에 파괴하거나 노획할 수 있는 좋은 기회입니다. %1의 회수팀이 추락 지점에 도착하기 전까지 수행하십시오. 빨리 이동하세요! + Мы сбили вертолет. Есть хороший шанс уничтожить или захватить его до того, как он будет восстановлен. Сделайте это до того, как спасательная команда из %1 доберется до места крушения. ДЕЙСТВУЙТЕ БЫСТРО! Zestrzeliliśmy śmigłowiec. Istnieje duża szansa na jego zniszczenie lub przechwycenie, zanim zostanie odzyskany przez przeciwnika. Zrób to, zanim ekipa ratunkowa z %1 dotrze na miejsce katastrofy. POŚPIESZ SIĘ! Sestřelili jsme vrtulník. Je to dobrá šance ho zničit nebo zajmout než bude získán zpět. Udělejte to před tím, než dorazí tým na získání z %1 na místo havárie. JEDNEJTE RYCHLE! @@ -4368,6 +4994,7 @@ Elicottero Abbattuto Heli Abattu 추락한 헬기 + Сбитый вертолет Zestrzelony helikopter Zřícený vrtulník 击落敌方直升机 @@ -4375,7 +5002,10 @@ We know an enemy armor (%3) is stationed in %1. We have a unique opportunity to steal or destroy the armor before it becomes an issue later on. Do it before %2. Sappiamo che un blindato nemico (%3) è stazionato a %1. Possiamo distruggerlo o rubarlo prima che possa causare danni. Fallo entro %2. + Nous savons qu'un blindé ennemi (%3) est en poste à %1. C'est une bonne opportunité de le détruire ou le capturer avant qu'il ne cause plus de dégats. Faites le avant %2. %1에 적 기갑(%3)이 배치되었다는 걸 알고 있습니다. 나중에 더 큰 문제가 되기 전에 파괴하거나 훔칠 수 있는 좋은 기회입니다. %2 전까지 수행하십시오. + Мы знаем, что вражеская бронетехника (%3) находится в %1. У нас есть уникальная возможность украсть или уничтожить ее, прежде чем это станет проблемой позже. Сделайте это до %2. + Wiemy, że wrogi sprzęt pancerny (%3) stacjonuje w %1. To dobra okazja, aby go zniszczyć lub ukraść, zanim spowoduje większe szkody. Zrób to przed %2. Víme, že nepřátelský tank (%3) je umístěn v %1. Je to dobrá příležitost ho zničit nebo ukrást, než způsobí větší škody. Udělejte to před %2. @@ -4383,6 +5013,7 @@ Ruba o Distruggi il Blindato Capturer ou Détruire le Blindé 기갑 파괴 또는 탈취 + Украсть или уничтожить бронетехнику Ukradnij lub zniszcz wrogi sprzęt pancerny Ukradni nebo Znič tank 盗取或者摧毁敌方装甲 @@ -4392,6 +5023,7 @@ Abbiamo avvistato un Camion di Munizioni dentro un %1. Recati sul posto e distruggilo o rubalo entro %2. On a repéré un Camion de Munitions dans un %1. Allez y, détruisez le ou volez le avant %2. 탄약트럭이 %1에 있는 것을 발견했습니다. %2 전까지 파괴하거나 훔치십시오. + Мы обнаружили грузовик с боеприпасами в %1. Идите туда и уничтожьте или украдите его до %2. Zauważyliśmy ciężarówkę z amunicją w %1. Udaj się tam i zniszcz lub ukradnij ją przed %2. Zpozorovali jsme náklaďák s municí v oblasti %1. Jděte tam a zničte ho nebo jej ukradněte před %2. @@ -4400,6 +5032,7 @@ Ruba o Distruggi il Camion di Munizioni Capturer ou Détruire le Camion de Munitions 탄약트럭 파괴 또는 탈취 + Украсть или уничтожить грузовик с боеприпасами Ukradnij lub zniszcz ciężarówkę z amunicją Ukradni nebo Znič muniční náklaďák 盗取或者摧毁敌方弹药车 @@ -4409,13 +5042,17 @@ Porta questo camion alla Banca %1 e parcheggialo all'entrata principale. Amenez ce camion à la Banque de %1 et garez-le devant l'entrée principale. 이 트럭을 %1의 은행으로 가져가서 정문에 주차하십시오. + Доставьте этот грузовик в банк %1 и припаркуйте его у главного входа. Przyprowadź ciężarówkę do %1 Bank i zaparkuj ją przy głównym wejściu. Přivez tento náklaďák k %1 bance a zaparkujte ho u hlavního vchodu. Don't get the truck far from the bank or the countdown will restart. Non allontanre il camion dalla banca o il conto ricomincerà. + N'éloignez pas le camion de la banque ou le compte recommencera. 트럭을 은행에서 멀리 두지 마십시오. 멀리 두면 카운트가 초기화됩니다. + Не отъезжайте далеко от банка, иначе обратный отсчет начнется заново. + Pozostań ciężarówką blisko banku, bo inaczej odliczanie zostanie zresetowane. Nevzdaluj se s náklaďákem od banky nebo se odpočet restartuje. @@ -4423,6 +5060,7 @@ Porta il Camion alla base per terminare la missione. Ramenez le Camion à la base pour finir cette mission. 임무를 완수하려면 트럭을 본부로 다시 가져가십시오. + Ведите грузовик обратно на базу, чтобы завершить эту миссию. Wróć ciężarówką do bazy, aby ukończyć tę misję. Zavez náklaďák zpátky na základnu abysi dokončil tuto misi. @@ -4431,6 +5069,7 @@ Missione Banca Mission de Banque 은행 임무 + Ограбление банка Misja bankowa Bankovní mise 银行任务 @@ -4438,7 +5077,10 @@ A squad of Gendarmeries are guarding a large amount of money in the bank of %1. Take the Truck at HQ and go there before %2. Once you're there, hold the truck next to the bank's main entrance for 2 minutes and the money will be transferred to the truck. Bring the truck back to HQ and the money will be ours. Sappiamo che i Gendarmi sono a guardia di una grossa somma di denaro nella banca di %1. Prendi questo camion e recati lì entro %2, mantieni il camion nei pressi dell'entrata principale della banca per 2 minuti e il denaro verrà trasferito al veicolo. Riportalo al QG e il denaro sarà nostro. + Nous savons que les Gendarmes gardent une grande quantité d'argent dans la banque de %1. Prenez ce camion et allez y avant %2, maintenez le camion proche de l'entrée principale de la banque pendant 2 minutes et l'argent sera transféré dedans. Ramenez le au QG et l'argent sera à nous. 우린 적 헌병대가 %1의 은행에 거금을 지키고 있다는 걸 알고 있습니다. 이 트럭을 타고 %2 전까지 그 곳으로 가서 트럭을 2분간 주차하고 있으면 돈이 트럭으로 옮겨질 것입니다. 그 돈을 본부로 가져오면 돈은 우리의 것이 될 것입니다. + Отряд жандармерии охраняет крупную сумму денег в банке %1. Возьмите грузовик в штабе и поезжайте туда до %2. Как только вы окажетесь там, подержите грузовик рядом с главным входом в банк в течение 2 мин, и деньги будут переведены в грузовик. Верните грузовик в штаб, и деньги будут нашими. + Wiemy, że żandarmi pilnują dużej sumy pieniędzy w banku %1. Weź tę ciężarówkę i udaj się tam przed %2, trzymaj ciężarówkę blisko głównego wejścia do banku przez 2 minuty, a pieniądze zostaną przeniesione do ciężarówki. Przywieź ją z powrotem do kwatery głównej, a pieniądze będą nasze. Víme, že četníci střeží velké množství peněz v bance v %1. Vezměte tento náklaďák a jděte tam před %2, zastavte naklaďák blízko hlavního vchodu banky po dobu 2 minut a peníze budou převedeny do vozu. Vraťte ho zpět do základny a peníze budou naše. @@ -4447,6 +5089,7 @@ Rapina in banca Braquage de Banque 은행 강도 + Ограбление банка Napad na bank Bankovní loupež 银行劫案 @@ -4456,6 +5099,7 @@ Una carico rifornimenti è stato affondato vicino a %1. Recati sul posto e recupera i rifornimenti entro %2. Ti servirà un'imbarcazione con un cavo da traino per recuperare il carico, perlustra le spiagge per trovare imbarcazioni civili da requisire. Une cargaison de provisions a été coulée au large de %1. Allez y et récupérez les provisions avant %2. Vous aurez besoin de vous procurer un bateau avec un treuil pour récupérer les provisions, cherchez sur les plages pour trouver un bateau civil que vous pouvez réquisitionner. 보급선이 %1 근해에서 침몰했습니다. 가서 보급품을 %2 전까지 인양하세요. 보급품을 회수하려면 윈치가 있는 보트를 징발하고, 지휘할 수 있는 민간 보트가 있는지 확인해야 합니다. + Груз с припасами был потоплен за пределами %1. Отправляйтесь туда и заберите припасы до %2. Вам нужно будет раздобыть лодку с лебедкой, чтобы забрать груз, проверьте пляжи на наличие гражданских лодок, которые вы можете реквизировать. Transport zaopatrzenia został zatopiony obok %1. Udaj się tam i odzyskaj zapasy przed %2. Będziesz musiał zdobyć łódź z wyciągarką, aby odzyskać ładunek. Sprawdź plaże w poszukiwaniu cywilnych łodzi, które możesz przejąć. Dodávka zboží byla potopena poblíž %1. Jděte tam a získejte zásoby před %2. Budete potřebovat loď s navijákem k obnovení zásilky, zkontrolujte pláže, jestli nenajdete civilní lodě, které můžete zabrat. @@ -4464,6 +5108,7 @@ Salva rifornimenti Récupération de Provisions 보급품 인양 + Затопленные припасы Odzyskaj zapasy Zachránit zásoby @@ -4472,6 +5117,7 @@ Info di consegna Informations de livraison 정보 전달 + Информация о доставке Dostarcz wiadomości Informace o doručení 运输详细 @@ -4481,6 +5127,7 @@ Consenga questa scatola a %1, scaricala e distribuiscila alle persone. Livrez cette boite à %1, dechargez-la pour commencer à distribuer aux gens. %1(으)로 박스를 배송한 후, 하역해서 사람들에게 배포하십시오. + Доставьте этот палетт в %1, чтобы начать раздавать людям. Dostarcz tę skrzynkę do %1, rozładuj ją i zacznij rozdawać ludziom. Doručte tento krabici do %1, vyložte ji a začněte s distribucí lidem. @@ -4489,6 +5136,7 @@ Mantieni l'area libera da ostili per più di %1 secondi. Gardez la zone vide d'ennemis pendant %1 secondes de plus. %1초 동안 해당 구역에 적이 없도록 하십시오. + Держите зону свободной от врагов еще на %1 секунд(у). Utrzymuj obszar wolny od wrogów przez %1 sekund. Udržujte oblast bez nepřátel po dobu dalších %1 sekund. @@ -4497,6 +5145,7 @@ Approvigionamenti Consegnati Provisions Livrées 보급품 배달 완료 + Припасы доставлены Dostarczono zapasy. Zásoby doručeny @@ -4505,6 +5154,7 @@ Missione Logistica Mission Logistique 병참 임무 + Миссия перевозки Misja logistyczna Zásobovací mise 后勤任务 @@ -4512,7 +5162,10 @@ %1 population is in need of supplies. We may improve our relationship with that city if we are the ones who provide them. A crate with enough supplies for the whole town has been placed near our HQ. Deliver the crate to %1 city center, hold it there for %3 minutes and it's done. Do this before %2. La popolazione di %1 necessita di approvvigionamenti. Possiamo migliorare il nostro rapporto con la città se siamo noi coloro che consegneranno i rifornimenti. Ho posizionato una cassa con i rifornimenti vicino al nostro QG. Consegna la cassa al centro di %1, mantieni la posizione per %3 minuti e sarà fatto. Fallo entro %2. + La population de %1 a besoin de provisions. Nous pourrions améliorer nos relation avec cette ville si nous sommes ceux qui les fournissons. J'ai placé une caisse avec des provisions près de notre QG. Livrez la caisse au centre ville de %1, tenez la position pendant %3 minutes et ce sera fait. Faites-le avant %2. %1의 주민들은 보급품이 필요합니다. 우리가 보급품을 제공할 수 있는 존재라면 그들과의 관계를 개선할 수 있을 것입니다. 본부 근처에 보급품이 있는 상자를 놓았습니다. 상자를 %1의 도심에 배달하여 %3분 동안 그 곳에 두면 완료됩니다. %2 전까지 수행하십시오. + %1 нуждается в припасах. Мы можем улучшить наши отношения с этим городом, если будем теми, кто их предоставляет. Рядом с нашим штабом был установлен ящик с припасами, которых хватит на весь город. Доставьте ящик в центр города %1, подержите его там %3 мин, и все готово. Сделайте это до %2. + %1 populacji potrzebuje zaopatrzenia. Możemy poprawić nasze relacje z tym miastem, jeśli to my będziemy dostawcami. Umieściłem skrzynię z zaopatrzeniem w pobliżu naszej kwatery głównej. Dostarcz skrzynię do centrum miasta %1, przytrzymaj ją tam przez %3 minuty i gotowe. Zrób to przed %2. Obyvatelé města %1 potřebují zásoby. Mohli bychom zlepšit vztah s tímto městem, pokud jim poskytneme pomoc. Umístil jsem bednu se zásobami poblíž naší základny. Doručte tuto bednu do centra města %1, držte jí tam po dobu %3 minut, a je hotovo. Udělejte to před %2. @@ -4520,6 +5173,7 @@ Approvigionamenti Città Provisions pour une Ville 도시 보급품 지원 + Припасы для города Zaopatrzenie miasta Zásoby pro město @@ -4528,6 +5182,7 @@ %3 sta ricostruendo una torre radio a %1. Se vogliamo continuare a impedire le comunicazioni nemiche dobbiamo fermarli. Distruggi il camion riparazioni parcheggiato nelle vicinanze o cattura la zona. I lavori saranno conclusi %2. %3 reconstruisent une tour radio dans %1. Nous devons stopper leur opération pour maintenir la disruption de leur communications. Detruisez le camion de réparation garé à côté ou capturez la zone. Le chantier se termine à %2. %3이(가) %1의 송신탑을 재건축 중입니다. 적의 통신 고장을 유지하고 싶다면 작업을 중지시켜야 합니다. 근처에 주차된 수리 트럭을 파괴하거나 해당 구역을 점령하십시오. 작업은 %2에 완료될 것입니다. + %3 восстанавливает радиовышку в %1. Если мы хотим сохранить связь противника, работы должны быть остановлены. Уничтожьте ремонтный грузовик, припаркованный поблизости, или захватите зону. Работа будет завершена в %2. %3 odbudowuje wieżę radiową w %1. Jeśli chcemy utrzymać awarię komunikacji wroga, prace muszą zostać przerwane. Zniszcz ciężarówkę naprawczą zaparkowaną w pobliżu lub przejmij strefę. Prace zostaną zakończone o %2. %3 znovu staví rádiovou věž v %1. Pokud chceme udržet výpadek nepřátelské komunikace, práce musí být zastavena. Zničte opravárenský vůz zaparkovaný poblíž nebo obsaďte zónu. Práce budou dokončeny v %2. @@ -4536,85 +5191,105 @@ Interruzione Lavori Torre Sabotage de Reconstruction de Tour 송신탑 재건축 방해 + Ремонт радиовышки Zakłóć odbudowę wieży radiowej. Rušení obnovy věže I have a mission for you, check the task menu for details. 할 임무가 있습니다. 자세한 내용은 임무 메뉴를 확인하십시오. + У меня есть для вас задание, подробности смотрите в меню задач. I already gave you that type of mission, check your task menu. 이미 해당 유형의 임무를 주었습니다. 임무 메뉴를 확인하십시오. + Я уже давал вам задания такого типа, проверьте свое меню задач. I have no Assassination missions for you. Move our HQ closer to the enemy. 할 수 있는 암살 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по убийству. Переместите нашу штаб поближе к врагу. Assassination missions require cities, airbases, or SF-patrolled areas within 4km of HQ. 암살 임무에는 본부로부터 4km 이내의 도시, 공군 기지 또는 특수부대 순찰 구역이 필요합니다. + Миссии по уничтожению требуют наличия городов, авиабаз или патрулируемых районов в радиусе 4 км от штаба. I have no Conquest missions for you. Move our HQ closer to the enemy. 할 수 있는 점령 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по захвату. Переместите наш штаб поближе к врагу. Conquest missions require outposts, roadblocks, or resource markers within 4km of HQ. 점령 임무는 본부로부터 4km 이내에 전초기지, 검문소 또는 자원채취소가 필요합니다. + Для миссий по захвату требуются аванпосты, блокпосты или ресурсы в радиусе 4 км от штаба. I have no Convoy missions for you. Move our HQ closer to the enemy. 할 수 있는 호송대 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по конвоированию. Переместите наш штаб поближе к врагу. No Convoys around here, there's too much fighting going on. 너무 많은 전투가 벌어지고 있기 때문에 여기 주변에는 호송대가 없습니다. + Здесь нет конвоев, слишком много боевых действий. With a major attack happening, the enemy doesn't have the resources to send convoys. 대규모 공격이 발생할 때는 적군은 호송대를 보낼 자원이 없습니다. + Когда происходит крупная атака, у противника нет ресурсов для отправки конвоев. Convoy missions require two idle bases with a road route, within 3km of HQ. 호송대 임무에는 본부로부터 3km 이내에 도로 경로가 있고 활동 중이지 않은 기지 2개가 필요합니다. + Для выполнения миссий по конвоированию требуются две незанятые базы с дорогой в пределах 3 км от штаба. I have no Destroy missions for you. Move our HQ closer to the enemy. 할 수 있는 파괴 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по уничтожению. Переместите наш штаб поближе к врагу. Destroy missions require airbases or enemy radio towers within 4km of HQ. 파괴 임무에는 본부로부터 4km 이내에 있는 공군 기지나 적 통신탑이 필요합니다. + Для выполнения миссий по уничтожению требуются авиабазы или радиовышки противника в радиусе 4 км от штаба. I have no Logistics missions for you. Move our HQ closer to the enemy. 할 수 있는 병참 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по материально-техническому обеспечению. Переместите наш штаб поближе к врагу. Logistics missions require outposts, seaports, or banks within 4km of HQ. 병참 임무에는 본부로부터 4km 이내에 전초기지, 항구 또는 은행이 필요합니다. + Для логистических миссий требуются аванпосты, морские порты или банки в радиусе 4 км от штаба. I have no Rescue missions for you. Move our HQ closer to the enemy. 할 수 있는 구출 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас спасательных миссий. Переместите наш штаб поближе к врагу. Rescue missions are random, but you need cities or outposts within 4km of HQ. 구출 임무는 무작위이지만 본부로부터 4km 이내에 도시나 전초기지가 필요합니다. + Спасательные миссии проводятся случайным образом, но вам нужны города или аванпосты в радиусе 4 км от штаба I have no Support missions for you. Move our HQ closer to the enemy. 할 수 있는 지원 임무가 없습니다. 우리 본부를 적에게 더 가까이 이동시키십시오. + У меня нет для вас заданий по поддержке. Переместите наш штаб поближе к врагу. Support missions require cities within 4km of HQ. 지원 임무에는 본부로부터 4km 이내에 도시가 필요합니다. + Для миссий поддержки требуются города в радиусе 4 км от штаба. Missions Missions 임무 + Миссии A group of POWs is awaiting for execution in %1. We must rescue them before %2. Bring them to HQ. @@ -4622,6 +5297,7 @@ Un grupo de POW está esperando a su ejecución en %1. Debemos rescatarlos antes de las %2. Tráedlos al CG. Un groupe de Prisonniers de Guerre attend leur exécution dans %1. Nous devons les secourir avant %2. Ramenez-les au QG. 전쟁 포로들이 %1에서 처형 받길 기다리는 중입니다. %2 전까지 구출하여 본부로 데려오십시오. + Группа военнопленных ожидает казни в %1. Мы должны спасти их до %2. Доставьте их в штаб. Grupa jeńców wojennych oczekuje na egzekucję w %1. Musimy ich uratować przed %2. Przyprowadź ich do kwatery głównej. Skupina válečných zajatců čeká na popravu v %1. Musíme je zachránit před %2. Přiveďte je do základny. @@ -4631,6 +5307,7 @@ Rescate de POW Sauvetage de Prisonniers 전쟁 포로 구출 + Эвакуация военнопленных Ratowanie jeńców Záchrana zajatců 战俘 @@ -4641,16 +5318,14 @@ Un grupo de contrabandistas ha sido arrestado en %1 y están a punto de ser enviados a prisión. Ve allí y libéralos para que se unan a nuestra causa. Hazlo antes de las %2. Un groupe de contrebandiers a été arrêté à %1 et sont sur le point d'être envoyés en prison. Allez là bas et liberez-les afin de les faire rejoindre notre cause. Faites le avant %2. 밀수업자들이 %1에서 체포되어 감옥으로 보내질 예정입니다. 밀수업자들이 우리의 대의에 동참하도록 하기 위해 그 곳으로 가서 그들을 석방시키십시오. %2 전까지 수행하십시오. + Группа контрабандистов была арестована в %1, и их собираются отправить в тюрьму. Отправляйтесь туда и освободите их, чтобы заставить присоединиться к нашему делу. Сделайте это до %2. Grupa przemytników została aresztowana w %1 i ma zostać wysłana do więzienia. Udaj się tam i uwolnij ich, aby przyłączyli się do naszej sprawy. Zrób to przed %2. Skupina pašeráků byla zatčena v %1 a mají být posláni do vězení. Jděte tam a osvoboďte je, aby se připojili k naší věci. Udělejte to před %2. - A group of %3 supporters are hidden in %1 awaiting for evacuation. We have to find them before %2 does. If not, there will be a certain death for them. Bring them back to HQ. - Un gruppo di sostenitori %3 sono nascosti a %1 in attesa di essere evacuati. Dobbiamo trovarli prima che lo faccia %2. Se non ci riusciremo verranno sicuramente giustiziati. Portali al QG. - Un grupo de seguidores de %3 están escondidos en %1 esperando una evacuación. Tenemos que encontrares antes de que %2 lo haga. De lo contrario, su muerte está asegurada. Traedlos de vuelta al CG. - Un groupe de %3 partisans sont cachés à %1 et attendent une evacuation. Nous devons les trouver avant que %2 ne le fasse. Sinon leur mort est certaine. Ramenez les au QG. - %1에 %3의 지지자들이 숨어서 후송을 기다리고 있습니다. %2 전까지 그들을 찾아야 합니다. 그렇지 않으면 그들은 확실히 죽을 것입니다. 본부로 데려오십시오. - Skupina podporovatelů %3 se skrývá v %1 a čeká na evakuaci. Musíme je najít dříve než %2. Jinak je čeká jistá smrt. Přiveďte je zpět do základny. + A group of %3 supporters are hidden in %1 awaiting for evacuation. We have to find them before %2 does. If not, there will be a certain death for them. Bring them back to HQ before %4. + %3지지자 무리가 %1에 숨어서 대피를 기다리고 있습니다. %2이(가) 발견하기 전에 그들을 찾아야 하며, 그렇지 않으면 그들은 확실하게 죽음을 맞이할 것입니다. %4 이전에 본부로 데려오십시오. + Группа сторонников %3 спрятана в %1 в ожидании эвакуации. Мы должны найти их раньше, чем это сделает %2. Если нет, их ждет верная смерть. Приведите их в штаб до %4. Refugees Evac @@ -4658,6 +5333,7 @@ Evacuación de refugiados Evacuation de Réfugiés 난민 구조 + Эвакуация беженцев Ewakuacja uchodźców Evakuace uprchlíků. 撤离难民 @@ -4668,6 +5344,7 @@ %2 esta atacándonos en %1. Ayuda en la defensa si puedes. %2 nous attaquent à %1. Aidez les défenses si vous le pouvez. %2이(가) %1에서 아군을 공격 중입니다. 가능하면 그들을 도와 방어하십시오. + %2 атакует нас в %1. Помогите обороне, если сможете. %2 atakuje nas w %1. Pomóż w obronie, jeśli możesz. %2 na nás útočí v %1. Pomozte v obraně, pokud můžete. @@ -4677,6 +5354,7 @@ %1 Informe de contacto %1 Rapport de Contact %1 접촉 보고 + Доклад о контакте с %1 %1 Raport o kontakcie Hlášení o kontaktu v %1. %1 交战报告 @@ -4684,34 +5362,19 @@ - You have donated 100 € to the cause. This will raise your status among our forces. - Hai donato 100 € alla causa. Ciò accrescerà il tuo status tra le nostre forze. - Ha donado 100 € a la causa. Esto incrementará su estatus entre sus fuerzas. - Vous avez donné 100 € à la cause. Cela va améliorer votre réputation au sein de nos forces - 당신은 100€를 기부했습니다. 이는 우리 군에서의 당신의 지위가 높아질 것입니다. - Przekazałeś 100 € na ten cel. Podniesie to twój status wśród naszych sił. - Daroval jsi 100 € na pomoc naší věci. Tento akt zvýší tvé postavení mezi námi. - 你为大义慷慨贡献了 100 €. 此举将提升你在我军中的地位. + You have donated %1 € to the cause. This will raise your status among our forces. + 당신은 %1€를 기부했습니다. 이는 우리 군에서 당신의 지위가 높아질 것입니다. + Вы пожертвовали %1 € на дело. Это повысит ваш статус среди наших сил. - You have donated 100 € to %1. - Hai donato 100 € a %1. - Ha donado 100 € a %1. - Vous avez donné 100 € à %1. - 당신은 %1에 100€를 기부했습니다. - Przekazałeś 100 € na rzecz %1. - Daroval jsi 100 € hráči %1. - 你慷慨贡献 100 € 给了 %1. + You have donated %2 € to %1. + 당신은 %1에 %2€를 기부했습니다. + Вы пожертвовали %2 € для %1. - You have less than 100 € to donate. - Hai meno di 100 € da donare. - Tiene menos de 100 € para donar. - Vous avez moins de 100 € à donner. - 당신은 100€보다 적은 돈을 가지고 있습니다. - Masz mniej niż 100 € do przekazania. - Máš méně než 100€ k darování. - 你需要至少 100 € 才可以贡献. + Insufficient Funds<br/>You have less than %1 € to donate. + 자금 부족<br/>%1€ 보다 적은 금액을 가지고 있습니다. + Недостаточно средств<br/>Вы пожертвовали менее %1 €. You must be looking at a player in order to give him money. @@ -4719,15 +5382,26 @@ Tiene que mirar a otro jugador para darle dinero. Vous devez regarder un joueur pour pouvoir lui donner de l'argent. 다른 플레이어에게 돈을 주려면 그 플레이어를 바라보고 있어야 합니다. + Вы должны смотреть на игрока, чтобы передать ему деньги. + Musisz patrzeć na gracza, aby dać mu pieniądze. Musiš se dívat na hráče abys mu mohl darovat peníze. 你必须在目视一名玩家的情况下才能给予他资金. + + Donation amount must be greater than 0. + Сумма пожертвования должна быть больше 0. + + + You received a %1 € donation from %2. + Вы получили пожертвование в размере %1 € от %2. + Donate Money Dona Denaro Donar dinero Don d'argent 자금 기부 + Передача денег Przekaż pieniądze Darovat peníze 贡献资金 @@ -4737,6 +5411,7 @@ %1 è stato aggiunto alla Lista dei Membri del Server %1 a été ajouté à la liste des Membres du serveur. %1이(가) 서버 멤버 목록에 추가되었습니다. + %1 был добавлен в список участников сервера. %1 został dodany do listy członków serwera. %1 byl přidán na seznam členů servru. %1 刚刚成为了服务器会员 @@ -4747,6 +5422,7 @@ Le han añadido a la lista de miembros del servidor. Vous avez été ajouté à la liste des Membres du serveur. 당신은 서버 멤버 목록에 추가되었습니다. + Вы были добавлены в список участников сервера. Zostałeś dodany do listy członków serwera. Byl jsi přidán na seznam členů servru. 你已被邀请成为服务器会员 @@ -4757,6 +5433,7 @@ Solo los administradores del servidor o hosters pueden añadir a un nuevo miembro. Seul les Admins du serveur ou les Hôtes peuvent ajouter un membre. 오직 서버 관리자나 호스트만이 새 멤버를 추가할 수 있습니다. + Только администраторы сервера или хост могут добавить нового участника. Tylko administratorzy serwera lub host mogą dodać nowego członka. Pouze administrátor servru nebo host může přidávat nové členy. 只有服务器管理员以及服务器主人才能添加新的服务器成员 @@ -4767,6 +5444,7 @@ El jugador ya es miembro de este servidor. Ce joueur est déja un membre du serveur. 해당 플레이어는 이미 서버 멤버입니다. + Игрок уже является участником этого сервера. Gracz jest już członkiem tego serwera. Hráč už je členem tohoto servru. 此玩家已经是一个服务器会员。 @@ -4777,6 +5455,7 @@ La opción de miembros de servidor está deshabilitada. La fonction de Membre du serveur est désactivée. 서버 멤버 기능이 비활성화되어 있습니다. + Функция участников сервера отключена. Funkcja Server Member jest wyłączona. Funkce členství je na servru vypnutá. 服务器会员专属功能已停用 @@ -4787,6 +5466,7 @@ Opción de membresía aun no inicializada. Por favor inténtelo más tarde. La fonction d'adhésion n'a pas encore été initialisée. Veuillez réessayer plus tard. 멤버십 기능이 아직 실행되지 않았습니다. 다시 시도하시기 바랍니다. + Функция участников сервера еще не инициализирована. Пожалуйста, повторите попытку позже. Funkcja członkostwa nie została jeszcze zainicjowana. Spróbuj ponownie później. Funkce členství zatím nebyla načtena. Prosím, zkuste znovu později. 服务器会员专属功能还未被完全初始化. 请稍后再重试 @@ -4797,6 +5477,7 @@ El jugador no es un miembro de este servidor. Ce joueur n'est pas un membre de ce serveur. 해당 플레이어는 이 서버의 멤버가 아닙니다. + Игрок не является участником этого сервера. Gracz nie jest członkiem tego serwera. Hráč není členem servru. 此玩家不是服务器会员 @@ -4806,7 +5487,10 @@ Non stai guardando nessuno. Vous ne pointez personne. 당신은 누구도 보고 있지 않습니다. + Вы ни на кого не смотрите. + Nie wskazujesz na nikogo. Neukazuješ na nikoho. + 你压根就没指着人啊 %1 has been removed from the Server Members List. @@ -4814,6 +5498,7 @@ %1 ha sido eliminado de la lista de miembros del servidor. %1 a été retiré de la liste des Membres du Serveur. %1이(가) 서버 멤버 목록에서 제외되었습니다. + %1 был удален из списка участников сервера. %1 został usunięty z listy członków serwera. %1 byl odstraněn ze seznamu členů. %1 已被移出服务器会员名单 @@ -4824,6 +5509,7 @@ Le han eliminado de la lista de miembros del servidor. Vous avez été retiré de la liste des Membres du Serveur. 당신은 서버 멤버 목록에서 제외되었습니다. + Вы были удалены из списка участников сервера. Zostałeś usunięty z listy członków serwera. Byl jsi odstraněn ze seznamu členů servru. 你已不再是服务器会员 @@ -4834,6 +5520,7 @@ Membresía Adhésion 멤버십 + Участники сервера Członkostwo Členství 白名单 @@ -4844,6 +5531,7 @@ Miembros en partida<br/><br/> Membres en jeu<br/><br/> 게임 내 멤버<br/><br/> + В игре участники<br/><br/> Członkowie w grze<br/><br/> Členové ve hře<br/><br/> 游戏中白名单玩家 @@ -4854,6 +5542,7 @@ %1<br/>Nro. miembros:<br/>%2 %1<br/> Nb. de membres :<br/>%2 %1<br/>멤버 수:<br/>%2 + % 1<br/>Не участники:<br/>%2 %1<br/>Liczba członków:<br/>%2 %1<br/>Počet hráčů:<br/>%2 %1<br/>不是. 白名单玩家:<br/>%2 @@ -4864,6 +5553,7 @@ La opción de miembros de servidor está deshabilitada. Fonction de Membre du serveur est désactivée. 서버 멤버 기능이 비활성화되어 있습니다. + Функция участников сервера отключена. Funkcja Server Member jest wyłączona. Funkce členství je na servru vypnutá. 服务器会员专属功能已停用 @@ -4874,6 +5564,7 @@ Membresía Adhésion 멤버십 + Участники сервера Członkostwo Členství 白名单 @@ -4884,6 +5575,7 @@ Camarada, estamos perdiendo contacto! Camarade, nous perdons le contact ! 연결이 끊어지고 있습니다, 전우! + Товарищ, мы теряем контакт! Towarzyszu, tracimy łączność! Soudruhu, ztrácíme kontakt! 同志,我们正在失去与你的联系! @@ -4893,6 +5585,7 @@ Ritirati <t color='#f0d498'>%1 m %2</t>, entro <t color='#f0d498'>%3 s</t>.<br/>Rimani entro %4 km dal QG o da un membro. Fallire in ciò comporterà la reinserzione al QG. Retraite <t color='#f0d498'>%1 m %2</t>, dans <t color='#f0d498'>%3 s</t>.<br/>Restez à moins de %4 km du QG ou d'un membre. La désobéissance vous fera retourner au QG. <t color='#f0d498'>%3초</t> 안에 <t color='#f0d498'>%1m 거리 %2 방향</t>으로 후퇴하십시오.<br/>본부 또는 멤버로부터 %4km 이내에 있으십시오. 지키지 않으면 본부로 다시 리스폰됩니다. + Отступите <t color='#f0d498'>%1 м %2</t>, в пределах <t color='#f0d498'>%3 с</t>.<br/>Оставайтесь в пределах %4 км от штаба или участника. При несоблюдении этого требования вы будете повторно переведены в штаб. Odwrót <t color='#f0d498'>%1 m %2</t>, w ciągu <t color='#f0d498'>%3 s</t>.<br/>Pozostań w odległości %4 km od kwatery głównej lub członka. Niezastosowanie się do tego polecenia spowoduje teleportacje do kwatery głównej. Stáhněte se <t color='#f0d498'>%1 m %2</t> zpět, do <t color='#f0d498'>%3 s</t>.<br/>Zůstaňte v okolí %4 km od základny nebo od člena týmu. Nedodržení tohoto nařízení vás převede zpět na základnu. 在<t color='#f0d498'>%3 秒内</t> 立即后撤<t color='#f0d498'>%1 米 %2</t>.<br/> 确保你距离总部或者服务器白名单玩家不超过 %4 千米. 不服从组织纪律将会把你传唤回总部. @@ -4901,24 +5594,28 @@ Money +%1 Argent +%1 +%1 자금 + Деньги +%1 资金增加 +%1 Promoted Players: Joueurs Promus: 진급된 플레이어: + Повышение игроков: 已晋升的玩家有: Promotion Promotion 진급 + Повышение 晋升 Congratulations! Félicitations! 축하합니다! + Поздравляю! 恭喜你 @@ -4926,6 +5623,7 @@ %1 non ha abbastanza risorse per poter prendere. %1 n'a pas assez de ressources à récupérer. %1은(는) 가져갈 수 있는 자금이 부족합니다. + У %1 недостаточно ресурсов для присвоения. %1 nie ma wystarczająco dużo zasobów do pobrania. %1 nemá dostatek zdrojů na to, aby jsi něco vzal. %1 没有足以能够拿取的资源 @@ -4935,6 +5633,7 @@ Hai preso 100 € dal fondo %1.<br/><br/>Ciò influirà sul tuo status tra le forze %1. Vous aves pris 100 € de la réserve d'argent de %1. <br/><br/> Cela va affecter votre prestige et votre statut au sein des forces de %1. 당신은 %1의 공동 자금에서 100€를 가져갔습니다.<br/><br/>이는 %1의 군 내에서 당신의 지위와 위신에 영향을 미칠 것입니다. + Вы забрали 100 € из фонда %1.<br/><br/>Это повлияет на ваш престиж и статус среди сил %1. Zgarnąłeś 100 € z puli pieniędzy %1.<br/><br/>Wpłynie to na twój prestiż i status wśród sił %1. Vzal jsi 100€ z rozpočtu %1.<br/><br/>Tento čin ovlivní tvé postavení mezi členy %1 你从 %1 资金池中拿取了100 €. <br/><br/> 这将影响你在 %1阵营中的声誉以及地位. @@ -4944,6 +5643,7 @@ Prendi Soldi Prise d'argent 자금 인출 + Присвоение денег Grabież pieniędzy Vzít peníze 拿取资金 @@ -4953,6 +5653,7 @@ Hai scelto di non essere elegibbile come comandante. Vous avez décidé de ne pas être éligible pour le commandement. 당신은 지휘관이 될 자격이 없다고 결정되었습니다. + Вы решили, что не подходите на должность командира. Postanowiłeś nie kwalifikować się na dowódcę. Rozhodl ses nebýt jmenován velitelem. 你缺乏成为指挥官的能力 @@ -4962,6 +5663,7 @@ Adesso sei elegibbile come comandante delle nostre forze. Vous êtes désormais éligible pour être le commandant de nos forces. 당신은 이제 우리 군의 지휘관이 될 자격이 있습니다. + Теперь вы имеете право быть командующим нашими войсками. Jesteś teraz uprawniony do bycia dowódcą naszych sił. Nyní můžeš být jmenován velitelem našich jednotek. 你当前满足成为指挥官的能力 @@ -4971,6 +5673,7 @@ Ti dimetti dal ruolo di comandante, scegliendo %1 come successore. Vous vous êtes retirés du commandement, désignant %1 pour être votre successeur. 후임자로 %1을(를) 선택하여 지휘관 직책에서 물러납니다. + Вы уходите с поста командира, выбирая %1 в качестве своего преемника. Rezygnujesz z funkcji dowódcy, wybierając %1 na swojego następcę. Rezignoval jsi jako velitel, a nastolil %1 jako tvého nástupce. 你已经从指挥官的位置上退休了,请选择 %1 作为你的继承人 @@ -4980,6 +5683,7 @@ Ti dimetti dal ruolo di comandante. Il tuo successore designato (%1) non era elegibbile. Vous vous êtes retirés du commandement. Votre successeur (%1) n'est pas éligible. 지휘관 직책에서 물러납니다. 당신이 선택한 후임자 %1은(는) 자격이 없습니다. + Вы уходите с поста командующего. Выбранный вами преемник (%1) не соответствовал требованиям. Rezygnujesz z funkcji dowódcy. Twój wybrany następca (%1) nie zakwalifikował się. Rezignoval jsi jako velitel. Zvolený nástupce (%1) nemohl být jmenován. 你已经从指挥官的位置上退休了,所选继承人 (%1) 不可用 @@ -4989,6 +5693,7 @@ Ti dimetti dal ruolo di Comandante. Altri prenderanno il tuo posto se vi sono candidati idonei. Vous vous êtes retirés du Commandement. D'autres assumeront la position si quelqu'un est convenable. 지휘관 직책에서 물러납니다. 다른 사람들은 적당한 사람이 있다면 지휘관 직책을 맡을 것입니다. + Вы отказываетесь от должности командира. Командование примут другие, если найдется кто-то подходящий. Rezygnujesz z funkcji dowódcy. Inni przejmą dowodzenie, jeśli znajdzie się ktoś odpowiedni. Rezignoval jsi jako velitel. Velitelství převezme někdo jiný, pokud je k tomu způsobilý. 你已经从指挥官的位置上退休了. 其他人中最适合的人会接过指挥权 @@ -4998,6 +5703,7 @@ Comandante Commandant 지휘관 + Командующий Dowódca Velitel Komutan @@ -5007,18 +5713,21 @@ %1 is the new commander of our forces. Greet them! %1 est notre nouveau commandant. Saluez-les! %1 님이 우리 군의 새 지휘관입니다. 인사하십시오! + %1 - новый командующий нашими войсками. Поприветствуйте его! %1 是咱们阵营目前最新的指挥官. 快去打个招呼! New Commander Nouveau Commandant 새 지휘관 + Новый командующий 新指挥官 The commander has resigned. There is no eligible commander. Le commandant à démissionner. Il n'y as pas de commandant éligible. 지휘관이 사임했습니다. 적합한 지휘관이 없습니다. + Командир подал в отставку. Подходящего командира нет. 指挥官已离线.目前没有合适的指挥官. @@ -5026,6 +5735,7 @@ Ruolo Fuciliere Automatico. Rôle de Mitrailleur. 자동소총수 역할 + Роль пулеметчика. Rola - Strzelec RKM Role kulometčíka Makinalı Tüfek rolü @@ -5033,15 +5743,20 @@ Autoriflemen have a slight bonus on carry capacity, but make more noise when they move + I Fucilieri Automatici hanno un piccolo bonus sulla capacità di trasporto, però fanno troppo rumore quando si muovono. Les Mitrailleurs ont un léger bonus de capacité de transport, mais sont plus bruyants quand ils se déplacent. 자동소총수는 운반 용량에 약간의 보너스를 가지지만, 이동할 때 더 큰 소리를 냅니다. + Пулеметчики имеют небольшой бонус к грузоподъемности, но при движении издают больше шума + Strzelcy automatyczni mają niewielką premię do udźwigu, ale robią więcej hałasu podczas poruszania się. Kulometčíci mají menší bonus k maximální váze, kterou unesou, ale dělají větší hluk při pohybu + 自动步枪手在携带重量上略带优势, 但是在移动时会发出更大的动静. Commander role. Ruolo Comandante. Rôle de Commandant. 지휘관 역할 + Роль командующего. Rola - Dowódca Role velitele Komutan rolü @@ -5049,15 +5764,20 @@ The commander is a lightweight unit with increased camouflage, medical and engineering capabilities + Il comandante è un'unità leggera con capacità mimetiche, mediche e di genio aumentate. Le commandant est une unité légère avec des capacités de camouflage, médical et d'ingéniérie augmentées. 지휘관은 위장, 의료, 공병 능력이 향상된 경량 유닛입니다. + Командующий - это облегченное подразделение с улучшенными камуфляжными, медицинскими и инженерными возможностями + Dowódca jest lekką jednostką o zwiększonych możliwościach kamuflażu, medycznych i inżynieryjnych. Velitel je lehká jednotka se zvýšenou kamufláží, a lékařskými a inženýrskými schopnostmi + 指挥官是一个高伪装,兼备医疗以及工程才能一体的轻量化单位 Engineer role. Ruolo Geniere. Rôle d'Ingénieur. 공병 역할 + Роль инженера. Rola - Inżynier Role inženýra Mühendis rolü @@ -5065,15 +5785,20 @@ Engineers do not have any bonus or penalties, but have the ability to use Toolkits for vehicle repair + I Genieri non hanno bonus o penalità, ma hanno l'abilità di usare i Kit di Riparazioni per riparare i veicoli. Les Ingénieurs n'ont pas de bonus ou de malus, mais ils ont la capacité d'utiliser des Kits de Réparation pour réparer les véhicules. 공병은 아무 보너스나 패널티가 없지만, 차량 수리를 위해 도구모음을 사용할 수 있는 능력이 있습니다. + Инженеры не имеют никаких бонусов или штрафных санкций, но имеют возможность использовать наборы инструментов для ремонта автомобиля + Inżynierowie nie mają żadnych premii ani kar, ale mogą używać zestawów naprawczych do naprawy pojazdów. Inženýři nemají žádné bonusy ani penalizace, ale můžou používat opravovací sady na opravení vozidel + 工程师并没什么特殊的长处或短处,但是他们可以使用修理包来为载具提供修理 Grenadier role. Ruolo Granatiere. Rôle de Grenadier. 유탄수 역할 + Роль гранатометчика. Rola - Grenadier Role granátometčíka Bomba Atar rolü @@ -5081,15 +5806,20 @@ Grenadiers have a slight bonus on carry capacity, but are easy to spot + I granatieri hanno un piccolo bonus sulla capacità di trasporto, ma sono facili da avvistare. Les Grenadiers ont un léger bonus de capacité de transport, mais sont facile à réperer. 유탄수는 운반 용량에 보너스를 가지지만, 발견되기 더 쉬워집니다. + Гранатометчики имеют небольшой бонус к грузоподъемности, но их легко заметить + Grenadierzy mają niewielką premię do udźwigu, ale są łatwi do wykrycia. Granátometčíci mají menší bonus k váze kterou unesou, ale dají se jednodušeji spatřit + 榴弹手在携带重量上略带优势, 但是更容易被敌人发现. Medic role. Ruolo Medico. Rôle de Médecin. 의무병 역할 + Роль медика. Rola - Medyk Role doktora Sıhıye rolü @@ -5097,15 +5827,20 @@ Medics do not have any bonus or penalties, but have the ability to use certain medical items for full health restoration + I Medici non hanno bonus o penalità, ma sono in grado di usare determinati oggetti medici per rigenerare totalmente la salute. Les Médecins n'ont pas de bonus ou de malus, mais ils ont la capacité d'utiliser certains objets médicaux afin de prodiguer des soins complets. 의무병은 보너스나 패널티가 없지만, 완치를 위해 특정한 의료품을 사용할 수 있는 능력이 있습니다. + Медики не имеют никаких бонусов или штрафных санкций, но имеют возможность использовать определенные медицинские предметы для полного восстановления здоровья + Medycy nie mają żadnych premii ani kar, ale mają możliwość korzystania z niektórych przedmiotów medycznych w celu pełnego przywrócenia zdrowia. Doktoři nemají žádné bonusy ani penalizace, ale můžou používat některé lékařské předměty k doplnění plného zdraví + 卫生员并没有什么额外的奖励或者处罚特长,但是他们可以使用特定的医疗物品进行全面的医疗救助. Rifleman role. Ruolo Fuciliere. Rôle de Fusilier. 소총수 역할 + Роль стрелка. Rola - Strzelec Role střelce Piyade rolü @@ -5113,15 +5848,20 @@ Riflemen do not have any bonus or penalties but can hack drones + I Fucilieri non hanno bonus o penalità ma possono hackerare i droni. Les Fusiliers n'ont pas de bonus ou de malus mais ils peuvent hacker des drones. 소총수는 보너스나 패널티가 없지만, 무인기를 해킹할 수 있습니다. + У стрелков нет никаких бонусов или штрафов, но они могут взламывать беспилотники + Strzelcy nie mają żadnych premii ani kar, ale mogą hakować drony. Střelci nemají žádné bonusy ani penalizace, ale můžou hackovat drony + 步枪兵并没什么额外的奖励以及处罚特长,但是他们可以骇入无人机. Teamleader role. Ruolo Caposquadra. Rôle de Chef d'équipe. 조장 역할 + Роль командира группы. Rola - Dowódca sekcji Role velitele týmu. Tim Komutan rolü @@ -5129,15 +5869,20 @@ Teamleader are more lightweight units with increased camouflage capabilities + I Caposquadra sono unità leggere con capacità mimetiche aumentate. Les Chefs d'équipe sont des unités légères avec des capacités de camouflage augmentées. 조장은 위장 능력이 향상된 경량 유닛입니다. + Командира группы - это более легкие подразделения с увеличенными возможностями маскировки + Dowódcy sekcji to lżejsze jednostki o zwiększonych możliwościach kamuflażu. Velitel týmu je lehká jednotka se zvýšenou kamufláží + 小组组长是一个高伪装的轻量化单位 Unit Traits Caratteristiche Unità Attributs d'Unité 유닛 특성 + Роль Cechy jednostek Vlastnosti jednotky 单位特长 @@ -5147,6 +5892,7 @@ Caratteristiche Unità Attributs d'Unité 유닛 특성 + Роль Cechy jednostek Vlastnosti jednotky 单位特长 @@ -5156,6 +5902,7 @@ Hai selezionato %1. Vous avez sélectionné %1. 당신은 %1을(를) 선택했습니다. + Вы выбрали %1. Wybrałeś %1. Zvolil jsi %1 你已选择 %1. @@ -5168,6 +5915,7 @@ Murió mientras controlaba IA remota Mort en controllant à distance un IA. AI를 원격 조종 중에 사망했습니다. + Погиб во время дистанционного управления ИИ. Remote AI @@ -5175,6 +5923,7 @@ IA remota Controle à Distance d'IA AI 원격 조종 + Управление ИИ Static weapon has been deployed for use in a nearby zone, and will be used by garrison militia if you leave it here the next time the zone spawns. @@ -5182,6 +5931,7 @@ Armas fijas han sido desplegadas en las inmediaciones, serán utilizadas por la milicia de la guarnición si las deja ahí la próxima vez que la zona se cargue. L'arme statique a été déployée pour être utilisée dans une zone proche et sera utilisée par la garnison si vous la laissez ici la prochaine fois que la zone apparaîtra. 고정화기가 인근에 사용되기 위해 배치되었으며, 그대로 두면 주둔군이 영역에 스폰될 경우 사용할 것입니다. + Статичное оружие было развернуто для использования в близлежащей зоне и будет использовано гарнизоном, если вы оставите его здесь при следующем появлении зоны. Statická zbraň byla postavena k použití v nejbližší zóně a bude využita posádkou pokud tam zůstane když se objeví další zóna. 已在周边发现部署完毕的可用固定式武器, 区域刷新之后驻军民兵将使用该武器. @@ -5191,6 +5941,7 @@ Equipo estático desplegado Arme statique déployée 고정화기 배치됨 + Разворачивание станков Statická zbraň rozložena 部署固定式武器 @@ -5201,6 +5952,7 @@ Notifica FA Notification de tir ami. 아군 오사 알림 + Уведомление о FriendlyFire Powiadomienie o ogniu sojuszniczym Notifikace střelby do vlastních 友军伤害提醒 @@ -5210,6 +5962,7 @@ Punizione FA Punition pour tir ami 아군 오사 처벌 + Наказание за FriendlyFire Kara za ogień sojuszniczy Trest za střelbu do vlastních 友军伤害处罚 @@ -5219,13 +5972,17 @@ Ritorna alla AO prima che tu venga fatto esplodere, hai %1 secondi. Retournez dans la zone d'opération avant d'être explosé, vous avez %1 secondes. 최대한 빨리 작전 구역으로 돌아가십시오! 적의 방어에 압도되기 전까지 %1초의 시간이 남아 있습니다. + Возвращайтесь как можно скорее! У вас есть %1 сек, прежде чем вы будете уничтожены вражеской защитой. + Wróć do AO zanim wybuchniesz, masz %1 sekund. Vraťte se do operační oblasti ASAP! Máte %1 sekund než budete roztrháni nepřítelskou obranou. + 在你被炸飞之前赶紧给我返回战区,你还有 %1 秒 Out of bounds Fuori dai confini Hors des limites 경계를 벗어남 + В текстурах Poza granicą Mimo hranice 可控范围之外 @@ -5235,6 +5992,7 @@ Controlla Unita Contrôle de l'unité 유닛 조종 + Контроль ИИ Kontrolovat Jednotku 控制单位 @@ -5243,6 +6001,7 @@ Cessa il fuoco! Attention où vous tirez ! 사격 조심해! + Следи за своим огнем! Uważaj gdzie strzelasz! Sleduj kam střílíš! 注意你的炮火! @@ -5252,6 +6011,7 @@ ti ha ferito! vous a blessé ! 다치게 했다고! + ранил вас! zranił cię! tě zranil! 某人伤害了你! @@ -5261,6 +6021,7 @@ Ritornato all'Unità originaria per via del FA. Retour à l'unité d'origine à cause de tir ami. 아군 오사로 인해 원본 유닛으로 돌아왔습니다. + Возвращен в исходное состояние Vrácen do původní jednotky kvůli střelbě do vlastních. 因友军火力而召回原单位 @@ -5269,6 +6030,7 @@ %1 ti ha ferito! %1 vous a blessé ! %1이(가) 당신을 다치게 했습니다! + %1 ранил вас! %1 zranił cię! %1 tě zranil! %1 伤害了你! @@ -5278,6 +6040,7 @@ Compagno ferito: Camarade blessé : 부상당한 전우: + Раненый товарищ: Ranny towarzysz: Zraněný soudruh: 已受伤的同志: @@ -5287,6 +6050,7 @@ Avviso FA Avertissement de tir ami 아군 오사 경고 + Внимание дружественный огонь Ostrzeżenie o ogień sojuszniczy Varování za střelbu do vlastních 友军伤害警告 @@ -5296,6 +6060,7 @@ Un admin prova pietà verso la tua anima.<br/>Sei stato perdonato. Un admin a eu pitié de votre âme.<br/> Vous avez été pardonné. 관리자는 당신의 영혼을 측은히 여기며 바라봅니다.<br/>당신은 용서받았습니다. + Администратор сжалился.<br/>Вы были прощены. Administrator patrzy z litością na twoją duszę.<br/> Wybaczono ci. Admin se na tebe dívá s lítostí.<br/>Budiž ti odpuštěno. 某个管理觉得你很可怜,并决定宽恕你的灵魂.<br/>你已经被给予了第二次机会 @@ -5305,6 +6070,8 @@ Sei stato rilasciato dal mare, pensa prima di sparare la prossima volta. Vous avez été libéré de votre punition, réfléchissez la prochaine fois que vous tirez. 당신은 바다에 풀려났습니다. 다음부턴 쏘기 전에 생각을 하십시오. + Вас выпустили, подумайте в следующий раз, прежде чем стрелять. + Wystarczy. Byl jsi vyloven z moře, příště ale přemýšlej než vystřelíš. 你已从监禁之海中释放出来,下次开枪之前多动动脑子. @@ -5313,6 +6080,7 @@ Si prega di non uccidere i compagni. Rimani a guardare le tartarughe per altri %1 secondi. Ne tuez pas d'alliés s'il vous plait. Regardez les tortues pendant %1 secondes de plus. 팀킬하지 말고 %1초 동안 거북이나 바라보십시오. + Пожалуйста, не стреляйте по своим. Смотрите на черепа еще %1 сек. Nie zabijaj swoich. Teraz za kare wpatruj się w żółwie przez %1 sekund. Prosím nezabíjej členy svého týmu. Dívej se na želvičky ještě 1% sekund. 好好好,喜欢欺负队友是吧. 那你就盯着这个乌龟 %1 秒. @@ -5321,48 +6089,56 @@ %1 has been found guilty of FF (3+ Strikes). Last hit was against %2.<br/><br/>If you believe this is a mistake, you can forgive him with the corresponding scroll-menu action. %1 a été reconnu coupable de tir ami (3+ reprises). Le dernier coup a été porté contre %2. <br/><br/> Si vous pensez que c'est une erreur, vous pouvez le pardonner avec le menu déroulant adéquat. %1 님이 아군 오사(3번 이상 공격)를 행했습니다. 마지막 공격은 %2 님에게 행하였습니다.<br/><br/>이것이 실수라고 판단된다면 해당 스크롤 메뉴 행동으로 용서할 수 있습니다. + %1 был признан виновным в дружественном огне(3+ выстрела). Последний удар был нанесен по %2.<br/><br/>Если вы считаете, что это ошибка, вы можете сообщить об этом с помощью соответствующего действия прокрутки меню. %1 因造成过度友军火力(3次以上),现被判处有期徒刑. 最近的一次是针对 %2. <br/><br/> 如果你坚信这是误判的话,请你通过相对应的下滑菜单动作原谅他 %1 has been found guilty of FF (3+ Strikes).<br/><br/>If you believe this is a mistake, you can forgive him with the corresponding scroll-menu action. %1 a été reconnu coupable de tir ami (3+ reprises).<br/><br/> Si vous pensez que c'est une erreur, vous pouvez le pardonner avec le menu déroulant adéquat. %1 님이 아군 오사(3번 이상 공격)에 대해 유죄가 인정되었습니다.<br/><br/>실수라고 판단된다면 해당 스크롤 메뉴 행동으로 용서할 수 있습니다. + %1 был признан виновным в дружественном огне (3+ выстрела).<br/><br/>Если вы считаете, что это ошибка, вы можете сообщить об этом с помощью соответствующего действия прокрутки меню. %1 因造成过度友军火力(3次以上),现被判处有期徒刑.<br/><br/> 如果你坚信这是误判的话,请你通过相对应的下滑菜单动作原谅他 You damaged a friendly as an admin. Vous avez endommagé un ami en tant qu'admin. 관리자로 아군에게 피해를 입혔습니다. + Вы ранили союзника как администратор. 你作为管理员伤害了一名友军 You damaged a friendly as artillery support. Vous avez endommagé un ami en tant que soutien d'artillerie. 포격 지원으로 아군에게 피해를 입혔습니다. + Вы ранили союзному артиллерийской поддержкой. 你控制炮火支援伤害了一名友军 You damaged a friendly as an air asset. Vous avez endommagé un ami en tant que ressource aérienne. 항공 자산으로 아군에게 피해를 입혔습니다. + Вы ранили союзника авиацией. 你控制空中单位伤害了一名友军 You hit a friendly while driving. Vous percutez un ami en conduisant. 운전 중에 아군을 쳤습니다. + Вы сбили союзника 你开车的时候撞到了一名友军. Forgive FF Pardonner le tir-ami 아군 오사 용서 + Простить дружественный огонь 原谅友军之围 You cannot throw grenades or place explosives within 75m of base. Vous ne pouvez pas jeter de grenades ou placer des explosifs à moins de 75m de la base. 기지로부터 75m 이내에는 수류탄을 던지거나 폭발물을 배치할 수 없습니다. + Вы не можете бросать гранаты или размещать взрывчатку в радиусе 75 метров от базы. 你不能在基地周边75米的范围内投掷手雷或者放置爆炸物. @@ -5372,6 +6148,7 @@ Non puoi comprare veicoli mentre controlli l'IA. Vous ne pouvez pas acheter de véhicules pendant que vous contrôler l'IA. AI를 조종하는 동안에는 차량을 구입할 수 없습니다. + Вы не можете покупать технику, пока управляете ИИ. Nie możesz kupować pojazdów, gdy kontrolujesz SI. Nemůžeš kupovat vozidla když ovládáš AI. 你无法在控制AI的同时购买载具 @@ -5381,6 +6158,7 @@ Non puoi comprare veicoli mentre vi sono nemici nelle vicinanze. Vous ne pouvez pas acheter de véhicules tant que des ennemis sont proches. 적들이 근처에 있을 때는 차량을 구입할 수 없습니다. + Вы не можете покупать технику, пока рядом с вами есть враги. Nie możesz kupować pojazdów, gdy w pobliżu znajdują się wrogowie. Nemůžeš kupovat vozidla, když jsou poblíž nepřátelé. 你无法在附近存在敌人的情况下购买载具 @@ -5390,6 +6168,7 @@ Devi essere vicino ad una bandiera per comprare un veicolo. Vous devez être proche du drapeau afin de pouvoir acheter un véhicule. 차량을 구입하려면 깃발에 가까이 가야 합니다. + Вы не можете покупать технику, нужно находиться рядом с флагом. Musisz być blisko flagi, aby móc kupić pojazd. Musíš být poblíž vlajky, abys mohl koupit vozidlo. 你需要离旗杆近一点才能购买载具 @@ -5399,6 +6178,7 @@ Non hai abbastanza soldi per questo veicolo: %1 € richiesti. Vous n'avez pas assez d'argent pour acheter ce véhicule: %1 € requis. 이 차량을 구입하기 위한 자금이 부족합니다: %1€ 필요. + У вас недостаточно денег для покупки этого транспорта: требуется %1 €. Nie masz wystarczających środków na ten pojazd: %1 € wymagane. Nemáš dostatek peněz na toto vozidlo: %1 € vyžadováno. 你没有足够的资金来购买此载具: 需要 %1 €. @@ -5408,6 +6188,7 @@ Impossibile comprare veicolo, stai piazzando qualcosa. Impossible d'acheter un véhicule, vous êtes déja en train de placer quelque chose. 이미 무언가를 배치하고 있기 때문에 차량을 구입할 수 없습니다. + Нет возможности купить транспорт, вы уже что-то размещаете. Nie możesz kupić pojazdu, już coś stawiasz. Není možné koupit vozidlo, už něco umisťuješ. 无法购买载具, 你当前正在放置其他的东西. @@ -5417,6 +6198,7 @@ Il veicolo richiesto non è supportato dal modset attuale. Le véhicule que vous avez demandé n'est pas pris en charge par votre modset actuel. 요청한 차량은 현재 모드셋에서 지원하지 않습니다. + Запрошенное вами техника не поддерживается в вашем текущем наборе модов. Żądany pojazd nie jest obsługiwany w aktualnym zestawie modów. Vozidlo které jste vyžádali, není podporované tvým aktuálním modsetem. 你所要求的载具和你当前所选择的游玩模式设定不匹配 @@ -5426,6 +6208,7 @@ Aggiungi Veicolo Ajouter un véhicule 차량 추가 + Добавить технику Dodaj pojazd Přidat vozidlo 添加载具 @@ -5435,6 +6218,7 @@ Compra un veicolo per questa squadra per %1 €. Acheter un véhicule pour cette escouade pour %1 €. 이 팀을 위한 차량을 %1 €에 구입합니다. + Купить технику для этого отряда за %1 €. Kup pojazd dla tego oddziału za %1 €. Zakoupit vozidlo pro toto družstvo za %1 €. 花费 %1 € 为该班组增添一辆载具 @@ -5444,6 +6228,7 @@ Solo il Comandante ha accesso a questa funzione. Seul le Commandant à accès à cette fonction. 오직 지휘관만 이 기능에 액세스 할 수 있습니다. + Доступ к этой функции есть только у нашего командующего. Tylko nasz dowódca ma dostęp do tej funkcji. Pouze velitel má přístup k této funkci. 只有我们的指挥官才能使用该功能 @@ -5453,6 +6238,7 @@ Non puoi piazzare i veicoli AC oltre i 50m dal QG Vous ne pouvez pas placer de véhicules HC à plus de 50m du QG. 본부에서 50m 이상 떨어진 곳에는 하이 커맨드 차량을 배치할 수 없습니다. + Вы не можете размещать технику дальше, чем в 50 м от штаба Pojazdów HC nie można umieszczać dalej niż 50 m od kwatery głównej. Nemůžeš umíst HC vozidla dále než 50m od HQ. 你不能在距离总部50公里外的任何地方放置总部载具. @@ -5462,6 +6248,7 @@ Non puoi reclutare squadre mentre vi sono nemici vicino al QG. Vous ne pouvez pas recruter d'escouades tant que des ennemis sont proches de votre QG. 본부 근처에 적이 있을 때는 분대를 모집할 수 없습니다. + Вы не можете нанимать отряды, пока рядом с вашим штабом есть враги. Nie można rekrutować oddziałów gdy wrogowie znajdują się w pobliżu kwatery głównej. Nemůžeš rekrutovat družstva pokud jsou nepřátelé poblíž tvé základny. 你不能在总部附近存在敌人的情况下招募班组 @@ -5471,6 +6258,7 @@ Non hai abbastanza HR per questa richiesta (%1 richieste). Vous n'avez pas assez de RH pour cette demande (%1 requis). 이 요청을 수행하기 위한 인력이 부족합니다(%1 필요). + У вас недостаточно HR для этого запроса (требуется %1). Nie masz wystarczającej ilości HR dla tego żądania (%1 wymagane). Nemáš dostatek HR na tento požadavek (%1 vyžadováno). 你们没有充足的人力资源来执行这个任务 (需要 %1 ). @@ -5480,6 +6268,7 @@ Hai troppe squadre dell'alto comando attive. Congedale o usale per Presidiare per reclutarne altre. Vous avez trop d'escouade HC actives. Renvoyer ou mettez en garnison certaines pour en recruter d'autres. 활성화된 하이 커맨드 분대가 너무 많습니다. 더 많은 병력을 모집하려면 일부를 해산하거나 주둔시키십시오. + У вас слишком много отрядов. Расформируйте или отправьте в гарнизон некоторые из них, чтобы набрать новые. Masz zbyt wiele aktywnych oddziałów High Command. Rozwiąż niektóre z nich lub zlikwiduj garnizony, aby zrekrutować więcej. Máte příliš mnoho aktivních družstev vrchního velení. Rozpustěte je nebo umístěte některé z nich do posádky, abyste mohli rekrutovat další. 你手下的高等指挥小组数量过多. 解散或者命令他们作为驻军后才能雇佣更多. @@ -5489,6 +6278,7 @@ Il modset attuale non supporta il carico/scarico di armi statiche. Votre modset actuel ne supporte pas l'emballage/déballage des armes statiques. 현재 모드셋은 고정화기 포장/풀기를 지원하지 않습니다 + Ваш текущий набор модов не поддерживает упаковку/распаковку статического оружия. Obecny zestaw modów nie obsługuje ładowania/rozładowywania broni statycznych. Váš aktuální modset nepodporuje sbalení/rozbalení statických zbraní. 你当前的游玩模式并不支持拆解/部署 固定式武器. @@ -5498,6 +6288,7 @@ Non hai abbastanza soldi per questo veicolo (%1 € richiesti). Vous n'avez pas assez d'argent pour cette requête (%1 € requis). 이 요청을 수행하기 위한 자금이 부족합니다(%1€ 필요). + У вас недостаточно денег для этого запроса (требуется %1 €). Nie masz wystarczających środków na realizację tego żądania (wymagane %1 €). Nemáš dostatek peněz na tento požadavek (%1 € vyžadováno). 你没有足够的资金来完成这个任务 (需要 %1 €). @@ -5507,6 +6298,7 @@ Non vi sono fondi rimasti per comprare un veicolo da trasporto (%1 € richiesti), costituzione di squadra appiedata. Pas assez d'argent pour acheter ce véhicule de transport (%1 € requis), création d'une escouade à pied. 수송 차량을 만들 자금이 없으며(%1 € 필요), 뚜벅이 분대로 소환합니다. + Денег на покупку транспортного средства (требуется %1 €) не хватает, найм пешего отряда. Nie ma pieniędzy na zakup pojazdu transportowego (wymagane %1 €), tworzenie oddziału bez pojazdu. Nezbyli žádné peníze k zakoupení transportního vozidla (%1 vyžadováno), vytvářím pěší družstvo. 没有足够剩余的资金来购买运输载具 (需要 %1 €), 创建步行作战班组 @@ -5516,6 +6308,7 @@ Non puoi reclutare una nuova squadra mentre stai muovendo il QG. Vous ne pouvez pas recruter de nouvelles escouades pendant que vous déplacez votre QG. 본부를 옮기는 동안에는 새 분대를 모집할 수 없습니다. + Вы не можете нанять отряд во время перемещения штаба. Nie można rekrutować nowego oddziału podczas przenoszenia sztabu. Nemůžeš rekrutovat nové družstvo když přesouváš svoje HQ. 你无法在移动总部的过程中雇佣更多的班组. @@ -5525,6 +6318,7 @@ Il gruppo o il veicolo richiesto non è supportato dal modset attuale. Le type de groupe ou véhicule que vous avez demandé n'est pas pris en charge par votre modset actuel. 요청한 그룹이나 차량은 현재 모드셋에서 지원하지 않습니다. + Запрошенное вами группа или техника не поддерживается в вашем текущем наборе модов. Żądany typ grupy lub pojazdu nie jest obsługiwany w aktualnym zestawie modów. Vozidlo které jste vyžádali, není podporované tvým aktuálním modsetem. 你所要求的群组或者载具类型和你当前所选择的模组不匹配 @@ -5534,6 +6328,7 @@ Ti serve una radio nell'inventario per dare ordini alle altre squadre. Vous avez besoin d'une radio dans votre inventaire pour pouvoir donner des ordres aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku aby jsi mohl vydávat rozkazy ostatním družstvům. 你需要装备一个无线电才可以给其他班组下达命令 @@ -5543,6 +6338,7 @@ Necessiti di un Operatore Radio nel gruppo per dare ordini alle altre squadre. Vous avez besoin d'un Opérateur Radio dans votre groupe afin de pouvoir donner des ordes aux autres escouades 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu aby jsi mohl dávat rozkazy ostatním družstvům. 你的班组需要有一个通信员才可以给其他班组下达命令 @@ -5552,6 +6348,7 @@ Recluta Squadra Recrutement d'escouade 분대 모집 + Найм отряда Rekrutuj Oddział Rekrutovat družstvo 招募班组 @@ -5561,6 +6358,7 @@ Veicolo assegnato alla Squadra %1. Véhicule assigné à l'escouade %1. 차량이 %1 분대에 할당되었습니다. + Автомобиль прикреплен к отряду %1. Pojazd przydzielony do oddziału %1. Vozidlo přiřazeno k %1 družstvu 载具已被分配给班组 %1 @@ -5570,6 +6368,7 @@ Questo gruppo ha già un veicolo e la loro missione lo richiede. Ce groupe à déja un véhicule et leur mission en dépends. 이 그룹은 이미 차량을 보유하고 있으며, 그들의 임무는 차량에 달려 있습니다. + У этого отряда уже есть техника, и их миссия зависит от нее. Ta grupa ma już pojazd i od niego zależy ich misja. Tato skupina již vozidlo má a jejich mise na něm závisí. 该班组已经拥有一辆与任务关系重大的载具 @@ -5579,6 +6378,7 @@ Le Squadre di Armi Statiche non possono cambiare il veicolo. Les Escouade d'Armes Statiques ne peuvent pas changer de véhicule. 고정화기 분대는 차량을 바꿀 수 없습니다. + Отряды со статичным оружием не могут сменить транспортное средство. Oddziały z bronią stacjonarną nie mogą zmieniać pojazdów. Osádka statické zbraně nemůže změnit vozidlo. 固定式武器班组无法跟换载具 @@ -5588,6 +6388,7 @@ Il veicolo selezionato non è vuoto. Le véhicule sélectionné n'est pas vide. 선택한 차량이 비어 있지 않습니다. + Выбранная техника не пуста. Wybrany pojazd nie jest pusty. Vybrané vozidlo není prázdné. 所选择的载具不是空的 @@ -5597,6 +6398,7 @@ Il veicolo selezionato non ha spazio per questa squadra. Le véhicule sélectionné n'a pas de place pour cette escouade. 선택한 차량에는 해당 분대를 위한 공간이 없습니다. + В выбранном автомобиле нет места для этого отряда. W wybranym pojeździe nie ma miejsca dla tego oddziału. Vybrané vozidlo nemá žádné místo pro tuto družstvo. 所选择的载具没有空闲的座位来容纳这个班组 @@ -5606,6 +6408,7 @@ Non puoi assegnare un'Arma Statica ad una Squadra. Vous ne pouvez pas assigner d'Arme Statique à une escouade. 분대에 고정화기를 할당할 수 없습니다. + Вы не можете назначить статическое оружие отряду. Nie można przypisać broni stacjonarnej do oddziału. Nemůžeš družstvu přidělit statickou zbraň. 你无法将一个固定式武器分配给一个班组 @@ -5615,6 +6418,7 @@ Devi selezionare un gruppo sulla barra HC. Vous devez selectionner un groupe sur la barre HC. 당신은 하이 커맨드 표시줄에서 한 개의 그룹을 선택해야 합니다. + Вы обязаны выбрать один отряд в меню HC Musisz wybrać jedną grupe z paska "HC". Musíte vybrat pouze jednu skupinu v HC listě. 你必须在HC 界面上选择一个群组 @@ -5624,6 +6428,7 @@ Aggiungi Veicolo di Squadra Ajout d'un véhicule à l'escouade 분대에 차량 추가 + Добавить технику отряду Przydziel Pojazd Drużynie Přidat družstvu vozidlo 为班组分配载具 @@ -5633,6 +6438,7 @@ Il veicolo selezionato è distrutto o non può muoversi. Le véhicule sélectionné est détruit ou immobilisé. 선택한 차량이 파괴되었거나 이동할 수 없습니다. + Выбранная техника уничтожена или не может двигаться. Wybrany pojazd został zniszczony lub nie może się poruszać. Vybrané vozido je zničené nebo se nemůže hýbat. 所选择的载具已被摧毁或者已不具备行动的能力 @@ -5642,6 +6448,8 @@ Supporto Aereo incrementato in %1 punti. Le Support Aérien a augmenté de %1 points. 사용 가능한 항공 지원이 %1 포인트 상승했습니다. + Доступная воздушная поддержка увеличена на %1 очко(в). + Zwiększono wsparcie lotnicze o %1 pkt. Letecká podpora se zvýšila o %1 bodů. 可用空中支援已经增加了 %1 点数 @@ -5650,6 +6458,7 @@ Solo i Velivoli possono essere usati per incrementare i punti di Attacco Aereo. Seul les véhicules aériens peuvent être utilisés pour augmenter les points de frappe aérienne. 항공기만 항공 지원을 높이는 데 사용할 수 있습니다. + Только воздушные транспортные средства могут быть использованы для увеличения очков авиаударов. Tylko pojazdy powietrzne mogą być używane do zwiększania punktów ataków powietrznych. Pouze letecká vozidla mohou být použita k navýšení bodů Leteckého úderu. 只有空中载具才能被用来提升空中打击点数 @@ -5659,14 +6468,18 @@ Tu e il Velivolo dovete essere nell'Area di un aeroporto %1 o un QG per convertire in Attacchi Aerei. Le véhicule aérien et vous devez-être dans la zone d'un aéroport %1 ou d'un QG pour pouvoir le convertir en Frappes aériennes. 당신과 항공기가 %1 공항 또는 본부 지역에 있어야 공습 포인트로 전환할 수 있습니다. + Вы и воздушная машина должны находиться в зоне действия авиабазы или штаба %1, чтобы перевести их в авиаудары. Ty i pojazd powietrzny musicie znajdować się na obszarze %1 lotniska lub kwatery głównej, aby móc przekształcić je w "wsparcie z powietrza". Ty a letecké vozidlo musí být v oblasti %1 letiště nebo HQ aby jsi ho mohl převést na body leteckého úderu. 你在友军控制范围内的机场或者总部才能将空中载具转换成空中打击. You can't convert a destroyed Air vehicle to Airstrikes. + Non puoi convertire Velivoli distrutt in Attacchi Aerei. Vous ne pouvez pas convertir de véhicules aérien détruit en Frappes Aériennes. 파괴된 항공기는 공습 포인트로 전환할 수 없습니다. + Вы не можете перевести уничтоженную воздушную технику в авиаудары. + Nie można przekształcić zniszczonego pojazdu powietrznego w "wsparcie z powietrza". Zničené letecké vozidla nemůžeš převést na body leteckého úderu. 你不能将一辆被摧毁的空中载具转换成空中打击. @@ -5674,6 +6487,7 @@ You can't convert vehicles further than 25m away to Air Support. Vous ne pouvez pas convertir des véhicules situés à plus de 25 mètres en soutien aérien. 25m 이상 떨어진 차량은 항공 지원으로 전환할 수 없습니다. + Вы не можете перевести транспортные средства, находящиеся на расстоянии более 25 м, в режим воздушной поддержки. 你不能将25米开外的载具转换成空中支援 @@ -5681,6 +6495,7 @@ I Droni Spalleggiabili non possono essere usati per incrementare i punti di Attacco Aereo. Les sacs à dos de drones ne peuvent pas être utiliser pour augmenter les points de Frappe aérienne. 가방형 무인기는 공습 포인트로 쓸 수 없습니다. + Дроны не могут быть использованы для увеличения очков авиаударов. Drony plecakowe nie mogą być używane do zwiększania punktów "wsparcia z powietrza". Batohové drony nemohou být využity k navýšení bodů leteckého úderu. 背包无人机不能用来提升空中打击点数 @@ -5690,6 +6505,8 @@ Per essere convertito, il Velivolo deve essere vuoto. Pour convertir un véhicule en soutien aérien, le véhicule doit être vide. 해당 항공기를 항공 지원으로 전환하려면 항공기가 비어 있어야 합니다. + Чтобы перевести транспортное средство в воздушную поддержку, оно должно быть пустым. + Aby dokonać konwersji, pojazd musi być pusty. K převedení vozidla na vzdušnou podporu, musí být vozidlo prázdné. 在转换载具成空中支援之前,这个载具得先是空的 @@ -5697,12 +6514,14 @@ You can't convert vehicles to Air Support while in a vehicle. Vous ne pouvez pas convertir les véhicules en soutien aérien lorsque vous êtes dans un véhicule. 차량에 탑승한 상태에서는 차량을 항공 지원으로 전환할 수 없습니다. + Вы не можете перевести транспортные средства в режим воздушной поддержки, находясь в транспортном средстве. 你不能在身处另外一辆载具的情况下转换一辆载具成空中支援 You can't convert a locked vehicle to Air Support Vous ne pouvez pas convertir un véhicule verrouillé en véhicule de soutien aérien. 잠긴 차량은 항공 지원으로 전환할 수 없습니다. + Вы не можете переоборудовать заблокированную технику в воздушную поддержку 你不能将一辆锁着的载具转换成空中支援 @@ -5710,6 +6529,7 @@ Non stai guardando un veicolo. Vous ne regardez pas un véhicule. 당신은 차량을 보고 있지 않습니다. + Вы не смотрите на технику. Nie patrzysz na pojazd. Nedíváš se na vozidlo. 你正盯着的东西不是一辆载具 @@ -5719,6 +6539,7 @@ Non puoi convertire Attacchi Aerei mentre vi sono nemici nelle vicinanze. Vous ne pouvez pas convertir en Frappes aériennes tant que des ennemis sont près de vous. 적이 가까이 있을 때는 공습 포인트로 전환할 수 없습니다. + Вы не можете наносить авиаудары, пока враги находятся рядом с вами. Nie możesz konwertować "wsparcia z powietrza", gdy wrogowie są blisko ciebie. Nemůžeš převádět na body leteckého úderu pokud jsou poblíž nepřátelé. 你不能在身旁有敌人的情况下转换空中打击 @@ -5728,6 +6549,7 @@ Non sei il proprietario di questo veicolo. Dunque non puoi convertirlo. Vous n'êtes pas le propriétaire de ce véhicule. Vous ne pouvez donc pas le convertir. 당신은 차량 주인이 아니기 때문에 변환할 수 없습니다. + Вы не являетесь владельцем этого техники. Поэтому, не можете её перевести в авиаудары. Nie jesteś właścicielem tego pojazdu. Dlatego nie możesz go przekonwertować. Nejsi vlastníkem tohoto vozidla, tudíž ho nemůžeš převést. 这个载具并不属于你. 因此,你无法贩卖它 @@ -5737,6 +6559,7 @@ Attacco Aereo Frappe aérienne 공습 + Авиаудар Letecký úder 空中打击 @@ -5745,6 +6568,7 @@ Vi è un geniere umano nella tua squadra. Chiedigli di costruire.<br/> Il y a un Ingénieur humain dans votre escouade. Demandez-lui de construire.<br/> 분대원 중에 공병이 있습니다. 그들에게 건설을 부탁하십시오.<br/> + В вашем отряде есть инженер-человек. Попросите его построить.<br/> W twoim oddziale jest gracz inżynier. Poproś go o zbudowanie.<br/> 你班组中有真人担任工兵,问问他们能不能建.<br/> @@ -5753,6 +6577,7 @@ Non puoi costruire niente mentre controlli l'IA. Vous ne pouvez pas construire pendant que vous controllez l'IA. AI를 조종하는 동안에는 아무것도 만들 수 없습니다. + Вы не можете ничего сконструировать, управляя ИИ. Nie można niczego konstruować podczas kontrolowania AI. 你无法在控制AI的同时建造任何东西 @@ -5761,6 +6586,7 @@ Non sei un geniere.<br/> Vous n'êtes pas un ingénieur.<br/> 당신은 공병이 아닙니다.<br/> + Вы не инженер.<br/> Nie jesteś inżynierem.<br/> 你不是一名工程师.<br/> @@ -5769,6 +6595,7 @@ Non hai genieri disponibili nella tua squadra. Possono essere privi di conoscenza o impegnati. Vous n'avez aucun ingénieur disponible dans votre escouade. Ils sont peut-être occupés ou inconscients. 분대원 중에 이용 가능한 공병이 없습니다. 의식불명이거나 바쁠 수 있습니다. + В вашем отряде нет свободных инженеров. Они могут быть без сознания или заняты. W drużynie nie ma dostępnych inżynierów. Mogą być nieprzytomni lub zajęci. 你当前班组内没有可调用的工程师. 他们可能正在忙别的事又或者已经倒下了. @@ -5777,6 +6604,7 @@ Non hai abbastanza soldi per questa costruzione (%1 € richiesti). Vous n'avez pas assez d'argent pour cette construction (%1 € requis). 이 공사에 필요한 비용(%1€ 필요)이 부족합니다. + У вас недостаточно денег для этого строительства (требуется %1 €). Nie masz wystarczających środków na tę budowę (potrzeba %1 €). 你没有足够的资金来建造该建筑 (需要 %1 €). @@ -5785,6 +6613,7 @@ Non puoi costruire un bunker al di fuori di una zona controllata. Vous ne pouvez pas construire de bunker hors d'une zone sous votre contrôle. 통제 구역 밖에는 벙커를 지을 수 없습니다. + Вы не можете построить бункер за пределами контролируемой зоны. Nie można zbudować bunkra poza strefą pod kontrolą. 你无法在控制区外建造一座碉堡 @@ -5793,6 +6622,7 @@ Non puoi costruire mentre piazzi qualcosa. Vous ne pouvez pas construire pendant que vous placez quelque chose. 뭔가를 배치하는 동안에는 건설할 수 없습니다. + Вы не можете строить, размещая что-то. Nie można budować podczas umieszczania czegoś. 你不能在放置物品的同时建造东西. @@ -5801,6 +6631,7 @@ I posti di blocco possono solo essere costruiti sulle strade Les Barrages routiers ne peuvent être construits que sur les routes. 도로에서만 검문소를 건설할 수 있습니다. + Блокпосты могут быть установлены только на дорогах Blokady drogowe mogą być budowane tylko na drogach 路障只能被放置在公路上 @@ -5809,6 +6640,7 @@ Solo i capisquadra possono ordinare all'IA di costruire. Seuls les chefs d'escouade peuvent ordonner à l'IA de construire. 분대장만이 AI 건설을 명령할 수 있습니다. + Только командиры отрядов могут приказать ИИ строить Tylko dowódcy oddziałów mogą nakazać SI budowę. 只有班组班长才能命令AI去建造 @@ -5817,6 +6649,7 @@ Sei un geniere, ma non sei in condizione di costruire: potresti essere privo di conoscenza o sotto copertura.<br/> Vous êtes un igénieur, mais vous ne pouvez pas construire : vous êtes possiblement inconscient ou incognito.<br/> 당신은 공병이지만 건설할 수 있는 상태가 아닙니다. 의식불명이거나 위장 중일 수 있습니다.<br/> + Вы инженер, но не в том состоянии, чтобы строить: вы можете быть без сознания или под прикрытием.<br/> Jesteś inżynierem, ale nie jesteś w stanie budować: możesz być nieprzytomny lub pod przykrywką.<br/> 你当前是一名工程师, 但是你目前的处境不适合进行建造活动: 你有可能已经倒下了又或者是处于伪装模式.<br/> @@ -5825,6 +6658,7 @@ I bunker non possono essere costruiti sulle strade nelle zone alleate Les Bunkers ne peuvent être construits qu'en-dehors des routes, dans des zones alliées. 벙커는 도로 밖, 우호 지역에서만 건설할 수 있습니다. + Бункеры можно строить только вне дорог, в дружественных районах Bunkry można budować tylko poza drogami, na przyjaznych obszarach. 碉堡只能建造在友方控制的空旷地上 @@ -5833,6 +6667,7 @@ Ordinando a %1 di costruire. Ordonne à %1 de construire. %1을(를) 건설하도록 명령 중입니다. + Заказываю %1 для сборки. 命令 %1 进行建造工作. @@ -5840,6 +6675,7 @@ Costruzione cancellata. Construction annulée. 공사 취소 + Строительство отменено. Budowa została anulowana. Stavba zrušena. 取消建造工程 @@ -5849,6 +6685,7 @@ Non hai raggiunto la posizione, costruzione scaduta. Vous ne vous êtes pas déplacé à la position, la construction a expiré. 위치를 옮기지 않았기 때문에 공사 시간이 초기화되었습니다. + Вы не перешли на эту позицию, строительство закончилось. Nie przemieściłeś się do tej pozycji, upłynął czas budowy. 预定时间内你没能到达建造地点,建造工程已取消 @@ -5857,6 +6694,7 @@ Raggiungi il punto selezionato per iniziare a costruire Marchez jusqu'à la position sélectionnée pour commencer à construire. 선택한 위치로 걸어가서 건설을 시작하십시오 + Подойдите к выбранной позиции, чтобы начать строительство Przejdź do wybranej pozycji, aby rozpocząć budowanie 前往选定的区域来开启建造工程 @@ -5865,6 +6703,7 @@ Info Costruzione Info de construction 건축 정보 + Информация о строительстве Stan budowy 建筑信息 @@ -5872,24 +6711,28 @@ Engineering Team deploying mines. L'équipe d'ingénieurs déploie des mines. 공병 팀이 지뢰를 배치 중입니다. + Инженерная группа минирует. 工兵小组放置地雷 Minefield Champs de mines 지뢰지대 + Минное поле 雷区 An Engineering Team has been deployed at your command. You can use the High Command menu to move them to their destination. Once they reach the position, they will start to deploy %1 mines in the area. Cover them in the meantime. Une équipe d'ingénieurs a été déployée à votre commandement. Vous pouvez utiliser le menu Haut Commandement pour les déplacer vers leur destination. Une fois qu'ils auront atteint leur position, ils commenceront à déployer %1 mines dans la zone. Couvrez-les pendant ce temps. 당신의 명령에 따라 공병 팀이 배치되었습니다. 하이 커맨드 메뉴를 사용하여 목적지로 이동할 수 있습니다. 해당 위치에 도달하면 해당 지역에 %1개의 지뢰를 배치하기 시작합니다. 그 동안 그들을 엄호하십시오. + Под вашим командованием развернута инженерная группа. Вы можете использовать меню высшего командования, чтобы переместить их к месту назначения. Как только они достигнут позиции, они начнут устанавливать мины %1 в этом районе. Прикройте их в это время. 已根据你的命令下放一支工兵小组.你能通过高等指挥菜单来操控小队到达目标区域.一旦小队抵达目标区域,他们将开始在区域内放置 %1 枚地雷. 此期间请为他们提供掩护. Minefield Deploy Champs de mines déployé 지뢰지대 배치 + Минирование 部署雷区 @@ -5897,6 +6740,7 @@ Solo il Comandante ha l'abilità di controllare le unità HC. Seul le Commandant peut controler les unités HC. 지휘관만이 하이 커맨드 유닛을 조종할 수 있습니다. + Только командующий имеет возможность управлять подразделениями. Tylko dowódca może kontrolować jednostki HC. 只有指挥官才有权利控制 HC 单位 @@ -5905,6 +6749,7 @@ No, negativo. Non. Pas possible. 아뇨, 그럴 일 없습니다. + Неа. Это не сработает. Nie. To się nie stanie. 没门,伙计! @@ -5913,6 +6758,7 @@ Non puoi controllare un'unità svenuta o morta. Vous ne pouvez pas contrôler d'unité inconsciente ou morte. 의식불명이거나 죽은 유닛은 조종할 수 없습니다. + Вы не можете контролировать бессознательную/мертвую единицу. Nie możesz kontrolować nieprzytomnej lub martwej jednostki. 你无法控制一个昏迷或者死亡的单位 @@ -5921,6 +6767,7 @@ Non puoi controllare le squadre mentre sei sotto copertura. Vous ne pouvez pas contrôler d'escouade en étant incognito. 위장 중에는 분대를 조종할 수 없습니다. + Вы не можете управлять ИИ, находясь под прикрытием. Nie możesz kontrolować oddziałów, gdy jesteś pod przykrywką. 你无法在伪装模式下控制班组 @@ -5929,6 +6776,7 @@ Restituisci il Controllo all'IA Rendre le contrôle à l'IA 조종 권한을 AI에게 되돌리기 + Вернуть управление Zwróć kontrolę do SI 将控制权交还给AI @@ -5937,6 +6785,7 @@ Ritornato all'Unità originaria poiché ha ricevuto danno. Retour à l'unité d'origine car dégats reçus. 원본 유닛이 데미지를 입었기 때문에 원본 유닛으로 돌아왔습니다. + Возвращен в исходное состояние, так как он получил повреждения. Zwrócony do oryginalnej jednostki, ponieważ otrzymał obrażenia. 该单位受到伤害,将归还给原单位 @@ -5945,6 +6794,7 @@ Ritornato all'Unità originaria poiché l'IA controllata ha ricevuto danno. Retour à l'unité d'origine car l'IA contrôlé a reçu des dégats. 조종하는 AI가 데미지를 입었기 때문에 원본 유닛으로 돌아왔습니다. + Возвращен в исходное состояние, поскольку управляемый ИИ получил повреждения. Przywrócono do oryginalnej jednostki, ponieważ kontrolowana sztuczna inteligencja otrzymała obrażenia. 该控制AI单位受到伤害,将归还给原单位 @@ -5953,6 +6803,7 @@ Ritorna il controllo all'IA: %1. Temps avant retour du contrôle à l'IA : %1. 조종을 AI에게 반환하는 시간: %1 + Время возврата контроля ИИ: %1 Czas przywrócenia kontroli do SI: %1. 控制权交还给AI之前所剩时间: %1 @@ -5961,6 +6812,7 @@ Controlla Squadra Contrôle d'Escouade 분대 조종 + Контроль Отряда Kontroluj oddział 控制班组 @@ -5969,6 +6821,7 @@ Non puoi controllare un'unità che non appartiene a %1. Vous ne pouvez pas contrôler d'unité qui n'appartient pas à %1. %1에 속하지 않은 유닛은 조종할 수 없습니다. + Вы не можете управлять юнитом, который не принадлежит %1. Nie można kontrolować jednostki, która nie należy do %1. 你无法控制不属于 %1的单位 @@ -5977,6 +6830,7 @@ Non puoi controllare l'IA mentre controlli un'altra IA. Vous ne pouvez pas contrôler d'IA alors que vous contrôlez déja une autre IA. 다른 AI를 조종하는 동안에는 AI를 조종할 수 없습니다. + Вы не можете управлять ИИ, пока вы управляете другим ИИ. Nie możesz kontrolować SI, gdy kontrolujesz inną SI. 你无法在控制AI的同时控制另外一名AI @@ -5985,6 +6839,7 @@ Non puoi controllare un'unità svenuta o morta. Vous ne pouvez pas contrôler une unité inconsciente ou morte. 의식불명, 즉 죽은 유닛은 조종할 수 없습니다. + Вы не можете контролировать бессознательную/мертвую единицу. Nie możesz kontrolować nieprzytomnej lub martwej jednostki. 你无法控制一个昏迷或者死亡的单位 @@ -5993,6 +6848,7 @@ No, negativo. Non. Pas possible. 아뇨, 그럴 일 없습니다. + Неа. Это не сработает. Nie. To się nie stanie. 没门,伙计! @@ -6001,6 +6857,7 @@ Non puoi controllare un altro giocatore. Vous ne pouvez pas contrôler un autre joueur. 다른 플레이어는 조종할 수 없습니다. + Вы не можете управлять другим игроком. Nie możesz kontrolować innego gracza. 你无法控制另外一名玩家 @@ -6009,6 +6866,7 @@ Non puoi controllare Petros. Vous ne pouvez pas contrôler Petros. 페트로스는 조종할 수 없습니다. + Ты не можешь контролировать Петроса. Nie możesz kontrolować Petrosa. 你无法控制 Petros @@ -6017,6 +6875,7 @@ Non puoi controllare l'IA se non sei caposquadra. Vous ne pouvez pas contrôler d'IA si vous n'êtes pas un chef d'escouade. 분대장이 아니면 AI를 조종할 수 없습니다. + Вы не можете управлять ИИ, если вы не являетесь командиром отряда. Nie możesz kontrolować SI, jeśli nie jesteś dowódcą oddziału. 只有班组班长才能控制AI @@ -6025,6 +6884,7 @@ Non puoi controllare l'IA mentre sei sotto copertura. Vous ne pouvez pas contrôler d'IA alors que vous êtes incognito. 위장 중에는 AI를 조종할 수 없습니다. + Вы не можете управлять ИИ, находясь под прикрытием. Nie możesz kontrolować SI, gdy jesteś pod przykrywką. 你无法在伪装模式下控制AI @@ -6033,6 +6893,7 @@ Restituisci il Controllo all'IA Rendre le Contrôle à l'IA. 조종 권한을 AI에게 되돌리기 + Вернуть управление Zwróć kontrolę do SI 将控制权交还给AI @@ -6041,6 +6902,7 @@ Ritornato all'Unità originaria poiché ha ricevuto danno. Retourné à l'Unité d'origine car elle a reçu des dégats. 원본 유닛이 데미지를 입었기 때문에 원본 유닛으로 돌아왔습니다. + Возвращен в исходное состояние, так как он получил повреждения. Zwrócony do oryginalnej jednostki, ponieważ otrzymał obrażenia. 该单位受到伤害,控制权归还给原单位 @@ -6049,6 +6911,7 @@ Ritornato all'Unità originaria poiché l'IA controllata ha ricevuto danno. Retourné à l'unité d'origine car l'IA contrôlé a reçu des dégats. 조종하는 AI가 데미지를 입었기 때문에 원본 유닛으로 돌아왔습니다. + Возвращен в исходное состояние, поскольку управляемый ИИ получил повреждения. Przywrócono do oryginalnej jednostki, ponieważ kontrolowana sztuczna inteligencja otrzymała obrażenia. 该控制AI单位受到伤害,控制权归还给原单位 @@ -6057,6 +6920,7 @@ Ritorna il controllo all'IA: %1. Temps avant retour du contrôle à l'IA : %1. 조종을 AI에게 반환하는 시간: %1 + Время возврата контроля ИИ: %1 Czas przywrócenia kontroli do SI: %1. 控制权交还给AI之前所剩时间: %1 @@ -6065,18 +6929,33 @@ Controlla Unita Contrôle de l'Unité 유닛 조종 + Контроль ИИ 控制单位 + + Converted %1 squad members into high command group %2. + Преобразовал членов отряда %1 в группу высшего командования %2. + + + You need to select some valid units. + Вам нужно выбрать несколько допустимых юнитов. + + + Convert To Squad + Преобразование в отряд + Get out of my sight you useless scum! Hors de ma vue vermine! 내 앞에서 사라져, 이 쓸모없는 쓰레기야! + Убирайся с глаз моих, ты, бесполезный подонок! 从我的眼前消失,你这个没用的杂种! Petros, I'm sending %1 back to base. Petros, Je renvoie %1 à la base. 페트로스, %1을(를) 기지로 돌려보내겠습니다. + Петрос, я отправляю %1 обратно на базу. Petros,我即刻派遣 %1 返回基地 @@ -6084,6 +6963,7 @@ Non puoi congedare nessuno se non sei caposquadra. Vous ne pouvez renvoyer personne si vous n'êtes pas le chef d'escouade. 분대장이 아니면 누구도 해산시킬 수 없습니다. + Вы не можете никого уволить, если вы не являетесь командиром отряда. Nie możesz nikogo zwolnić, jeśli nie jesteś dowódcą drużyny. 只有班组班长才可以解散班组成员 @@ -6092,6 +6972,7 @@ Non puoi congedare unità soppresse, sotto copertura o svenute. Vous ne pouvez pas renvoyer des unités neutralisées, inconscientes ou incognito. 제압당하거나, 위장 중이거나 의식불명인 유닛은 해산시킬 수 없습니다. + Вы не можете распустить подавляемые, скрытные или бессознательные подразделения. Nie można rozwiązać jednostek pod ostrzałem, ukrytych lub nieprzytomnych. 你无法解散正在受到压制,伪装中或者昏迷中的单位 @@ -6100,6 +6981,7 @@ Congeda Gruppo Renvoi du Groupe 그룹 해산 + Распустить отряд Zwolnij grupę 解散班组 @@ -6108,6 +6990,7 @@ Non congedare gruppi NATO. Vous ne pouvez pas renvoyer des groupes NATO. NATO 그룹은 해산시킬 수 없습니다. + Вы не можете отмахнуться от группировок НАТО. Nie można zwolnić grup NATO. 你无法解散北约班组 @@ -6116,6 +6999,7 @@ Non puoi congedare Posti di Guardia, Posti di Blocco o Squadre di Zappatori condotte da giocatori. Vous ne pouvez pas renvoyer les escouades de construction de Poste d'Observations, de Barrages Routiers ou de Champs de Mines, controlées par un joueur, 플레이어가 이끄는 부대, 감시 초소, 검문소 또는 지뢰지대 건설 부대는 해체시킬 수 없습니다. + Вы не можете распустить отряды, возглавляемые игроком, наблюдательные посты, блокпосты или отряды по строительству минных полей. Nie możnesz zwolnić oddziałów dowodzonych przez gracza, budujących posterunki, blokady dróg lub pola minowe. 您不能将单位添加到玩家领导的、监视哨、路障或地雷区建筑小队。 @@ -6124,6 +7008,7 @@ Congeda Squadra Renvoi de l'escouade 분대 해산 + Роспуск отряда Zwolnij oddział 解散班组成员 @@ -6132,6 +7017,7 @@ %1 ha perso il contatto radio, cercherà di ritornare con te se possibile. %1 a perdu contact, il vous rejoindra si possible. %1이(가) 통신이 끊어졌으며, 가능하면 당신에게 되돌아올 것입니다. + %1 потерял связь, он вернется к вам, если это возможно. %1 stracił łączność, wróci z tobą, jeśli to możliwe. %1 ztratil spojení, pokud to bude možné, vrátí se s vámi. %1 已失去通讯,他将尽可能回到你的身边 @@ -6141,6 +7027,7 @@ Solo il nostro Comandante ha accesso a questa funzione. Seul notre Commandant a accès à cette fonction. 오직 지휘관만 이 기능에 액세스 할 수 있습니다. + Доступ к этой функции есть только у нашего командующего. Tylko nasz dowódca ma dostęp do tej funkcji. Pouze velitel má přístup k této funkci. 只有我们的指挥官才能使用该功能 @@ -6150,6 +7037,7 @@ Non hai abbastanza soldi per permetterti addestramento aggiuntivo. %1 € richiesti. Vous n'avez pas assez d'argent pour vous permettre des entrainements supplémentaires. %1 € nécessaires. 추가적인 훈련에 필요한 자금이 없습니다. %1€가 필요합니다. + У вас недостаточно денег, чтобы позволить себе обучение. Необходимо %1 €. Nie masz wystarczająco dużo pieniędzy, aby pozwolić sobie na dodatkowe szkolenie. %1 € potrzebne. Nemáš dostatečné finance na další trénink. Potřebuješ ještě %1 €. 你当前没有足够的资金来维持额外的训练. 需要 %1 €. @@ -6159,6 +7047,7 @@ Non puoi migliorare l'addestramento con il Livello di Guerra attuale. Vous ne pouvez pas améliorer l'entrainement dans le Niveau de Guerre actuel. 연재 워 레벨에서는 훈련을 업그레이드할 수 없습니다. + Вы не можете повысить уровень подготовки на текущем уровне войны. Nie można ulepszyć treningu na obecnym poziomie wojny. Nemůžete vylepšit výcvik v aktuální úrovni války. 当前战争等级不允许你升级训练 @@ -6168,6 +7057,7 @@ Aggiungi Abilità Ajout de compétences 훈련도 추가 + Обучить бойцов Přidání dovednosti 提升能力水平 @@ -6176,6 +7066,7 @@ Le tue truppe hanno raggiunto l'addestramento massimo. Vos troupes sont entrainées au maximum. 당신의 부대의 훈련도는 최대입니다. + Ваши войска прошли максимальную подготовку. Twoi żołnierze mają maksymalne wyszkolenie. Vaše jednotky mají maximální výcvik. 你手下的士兵已达最高训练 @@ -6185,6 +7076,7 @@ Il livello di Abilità %2 è stato Migliorato.<br/>Il livello corrente è %1. %2 Niveau de Compétence a été amélioré.<br/> Le niveau Actuel est %1. %2의 능력이 업그레이드 되었습니다.<br/>현재 레벨은 %1입니다. + Уровень навыка %2 был повышен.<br/> Текущий уровень - %1. Podniesiono poziom umiejętności %2.<br/>Obecny poziom to %1. %2 Dovednost byla vylepšena.<br/>Aktuální úroveň je %1. %2 能力水平已经得到了提升.<br/>当前等级为 %1 @@ -6194,6 +7086,7 @@ Non puoi gestire questa guarnigione quando vi è un attacco principale in arrivo. Vous ne pouvez pas gérer cette garnison alors qu'une attaque majeur est imminente. 대규모 공격이 올 때는 이 주둔지를 관리할 수 없습니다. + Вы не сможете управлять этим гарнизоном, когда приближается крупная атака. Nie można zarządzać garnizonem, gdy nadchodzi poważny atak. 你无法在敌人重点反扑时管理该驻军 @@ -6202,6 +7095,7 @@ Non puoi gestire questa guarnigione mentre vi sono nemici nelle vicinanze. Vous ne pouvez pas gérer cette garnison tant que des ennemis sont à proximité. 적들이 근처에 있을 때는 이 주둔지를 관리할 수 없습니다. + Вы не можете управлять этим гарнизоном, пока поблизости есть враги. Nie możesz zarządzać tym garnizonem, gdy w pobliżu znajdują się wrogowie. 你无法在附近存在敌人的情况下管理此驻军 @@ -6210,12 +7104,14 @@ Non vi sono truppe a presidiare il luogo da rimuovere. L'endroit n'a pas de troupes en garnison à enlever. 그 곳에는 제거할 주둔군이 없습니다. + В этом месте нет гарнизона, который можно было бы убрать. 这地方不存在可以调除的驻军 Additional garrison units cannot be added to observation posts. Les unités de garnison supplémentaires ne peuvent pas être ajoutées aux postes d'observation. 관측소에는 주둔군을 더 추가할 수 없습니다. + Дополнительные гарнизонные подразделения не могут быть добавлены к наблюдательным постам. 额外的驻军单位无法被添加到观察哨 @@ -6223,6 +7119,7 @@ Guarnigione rimossa<br/><br/>Soldi Recuperati: %1 €<br/> HR recuperate: %2 Garnison supprimée<br/><br/>Argent Récupéré : %1 €<br/>RH Récupéré : %2 주둔군 회수됨<br/><br/>회수된 돈: %1 €<br/>회수된 인적 자원 : %2 + Гарнизон удален<br/><br/>Восстановленные деньги: %1 €<br/>Возвращено HR: %2 驻军已移除<br/><br/>已收回资金: %1 €<br/>已回收人力: %2 @@ -6230,6 +7127,7 @@ Guarnigione Garnison 주둔군 + Гарнизон 驻军 @@ -6237,6 +7135,7 @@ Seleziona una zona da presidiare. Sélectionnez une zone pour ajouter des troupes en garnison. 주둔군을 추가할 구역을 선택하십시오. + Выберите зону для добавления гарнизона. 选择想要添加驻军的区域 @@ -6244,6 +7143,7 @@ Quella zona non appartiene a %1. Cette zone n'appartient pas à %1. 그 구역은 %1 소속이 아닙니다. + Эта зона не принадлежит %1. 该区域不属于 %1 @@ -6251,6 +7151,7 @@ Devi cliccare vicino a una zona marcata. Vous devez cliquer à côté d'une zone marquée. 마커된 구역 근처를 클릭해야 합니다. + Вы должны щелкнуть рядом с маркером на карте. 你需要在所标记的地图图标附近单击 @@ -6258,24 +7159,28 @@ Seleziona una zona da cui rimuovere la Guarnigione. Sélectionnez une zone pour supprimer sa Garnison. 주둔군을 제거할 구역을 선택하십시오. + Выберите зону, чтобы удалить ее гарнизон. 选中想要去除驻军的区域 Cost Coût 비용 + Цена 开销 Bomb Run Exit Fin du bombardement 폭격 퇴출 지점 + Конец огня 轰炸退出点 Bomb Run Init Début du bombardement 폭격 실행 지점 + Начало огня 轰炸起始点 @@ -6283,6 +7188,7 @@ Non hai abbastanza punti Supporto Aereo per soddisfare questa richiesta. Vous manquez de Support Aérien pour faire cette requête. 이 요청을 수행하는 데 필요한 항공 지원 포인트가 부족합니다. + Вам не хватает очков воздушной поддержки, необходимых для выполнения этого запроса. Nemáš dostatek Letecké podpory, aby jsi toto mohl vyžádat. 你缺乏该请求所需要的空中打击点数 @@ -6291,6 +7197,7 @@ Devi controllare un aeroporto per completare questa richiesta. Vous devez contrôler un aéroport pour compléter cette requête. 이 요청을 수행하기 위해서는 공항을 통제해야 합니다. + Чтобы выполнить этот запрос, вам нужно контролировать авиабазу. Aby spełnić tą prośbe, musisz kontrolować lotnisko. Pro splnění tohoto požadavku musíte ovládat letiště. 该请求要求你控制最起码一座机场. @@ -6300,6 +7207,7 @@ Necessiti di una radio nel tuo inventario per dare ordini alle altre squadre. Vous avez besoin d'une radio dans votre inventaire afin de pouvoir donner des ordes aux autres escouades. 당신의 인벤토리에 무전기가 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужно иметь рацию в вашем инвентаре, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radia w ekwipunku, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít v inventáři vysílačku, aby jsi mohl vydávat rozkazy ostatním družstvům. 你需要装备一个无线电才可以给其他班组下达命令 @@ -6309,6 +7217,7 @@ Necessiti di un Operatore Radio nel gruppo per dare ordini alle altre squadre. Vous avez besoin d'un Opérateur Radio dans votre groupe afin de pouvoir donner des ordes aux autres escouades 당신의 그룹에 무전병이 있어야 타 분대에 명령을 내릴 수 있습니다. + Вам нужен радист в вашей группе, чтобы иметь возможность отдавать приказы другим отрядам. Potrzebujesz radiowca w swojej grupie, aby móc wydawać rozkazy innym oddziałom. Potřebuješ mít ve skupině Radistu, aby jsi mohl dávat rozkazy ostatním družstvům. 你的班组需要有一个通信员才可以给其他班组下达命令 @@ -6317,6 +7226,7 @@ Friendly airstrike is inbound. ETA 30 seconds. Attaque aérienne allié en approche. ETA 30 secondes. 아군 공습이 시작됩니다. 예상 도착 시간은 30초입니다. + Ожидается авиаудар. Осталось 30 секунд. 友军空中打击已入境. 预计30秒后到达 @@ -6324,6 +7234,7 @@ Seleziona sulla mappa la posizione dove l'aereo esfiltrerà per calcolare la rotta. Sélectionner la position sur la carte vers laquelle l'avion partira pour calculer le vecteur de sa trajectoire. 항공기의 경로 벡터를 계산하려면 항공기가 나갈 맵 위치를 선택하십시오. + Выберите положение на карте, в которое выйдет самолет, чтобы рассчитать вектор маршрута самолета. Wybierz pozycję na mapie, w której to samolot wyjdzie z strefy działań, aby obliczyć wektor trasy samolotu. Vyberte pozici na mapě, kudy letadlo vyletí, abyste mohli spočítat vektor trasy letadla. 在地图上选择空中打击的退出点以供计算空中打击的路线向量 @@ -6333,6 +7244,7 @@ Seleziona il punto dove l'aereo inizierà a sganciare le bombe. Sélectionner l'endroit depuis lequel l'avion débutera le bombardement. 항공기가 폭탄을 투하하기 시작할 지점을 선택하십시오. + Выберите место, с которого самолет начнет сбрасывать бомбы. Wybierz miejsce, z którego samolot zacznie zrzucać bomby. Vyber bod, ze kterého letadlo začne shazovat bomby. 选择空中打击的退出点位 @@ -6342,6 +7254,7 @@ Supporto Aereo Support Aérien 공중 지원 + Авиаподдержка Wsparcie lotnicze Letecká podpora 空中支援 @@ -6351,6 +7264,7 @@ Non puoi comprare unità mentre controlli l'IA. Vous ne pouvez pas acheter d'unités tant que vous contrôlez l'IA. AI를 조종하는 동안에는 유닛을 살 수 없습니다. + Вы не можете нанимать бойцов, пока управляете ИИ. 你无法在控制AI的同时购买载具 @@ -6358,6 +7272,7 @@ Non puoi reclutare unità mentre vi sono nemici nelle vicinanze. Vous ne pouvez pas recruter d'unités tant que des ennemis sont proches. 적들이 근처에 있을 때는 유닛을 모집할 수 없습니다. + Вы не можете нанимать отряды, пока рядом с вами есть враги. 你不能在附近存在敌人的情况下招募单位 @@ -6365,6 +7280,7 @@ La tua squadra è piena o hai troppe unità sparpagliate che hanno perso il contatto radio. Votre escouade est pleine ou alors vous avez trop d'unités éparpillées sans contact radio. 분대가 꽉 차있거나 무전이 끊겨 흩어진 유닛들이 너무 많습니다. + Ваше отделение переполнено или у вас слишком много разрозненных подразделений, с которыми нет радиосвязи. 你的班组已满或者你有太多缺乏无线电联系的散兵 @@ -6372,6 +7288,7 @@ Non hai abbastanza HR per questa richiesta. Vous n'avez pas assez de RH pour cette demande. 이 요청을 수행하기 위한 인력이 부족합니다. + У вас недостаточно HR для выполнения этого запроса. 你们没有充足的人力资源来执行这个任务. @@ -6379,6 +7296,7 @@ Non puoi reclutare unità poiché non sei capogruppo. Vous ne pouvez pas recruter d'unités car vous n'êtes pas votre chef d'escouade. 당신은 당신 그룹의 리더가 아니기 때문에 유닛 모집을 할 수 없습니다. + Вы не можете набирать отряды, так как не являетесь командиром отряда. 在你成为班组班长之前你无法雇佣任何单位 @@ -6386,6 +7304,7 @@ Solo i Membri del Server possono reclutare unità IA. Seul les Membres du Serveur peuvent recruter des unités IA. 서버 멤버만이 AI 유닛을 모집할 수 있습니다. + Только участники сервера могут нанимать ИИ-бойцов. 只有服务器白名单玩家才能雇佣AI单位 @@ -6393,6 +7312,7 @@ Non hai abbastanza fondi per questo tipo di unità (%1€ richiesti). Vous n'avez pas assez d'argent pour ce type d'unité (%1€ requis). 이런 종류의 유닛에 필요한 충분한 비용이 없습니다 (%1€ 필요). + У вас недостаточно денег для такого устройства (требуется %1 €). 您没有足够的钱来添加此类单位(需要 %1€)。 @@ -6400,6 +7320,7 @@ Devi attendere %1 secondi per reclutare altre unità. Vous devez attendre %1 secondes avant de pouvoir recruter des unités. %1초를 기다려야 다시 모집할 수 있습니다. + Вам нужно подождать %1 секунды, чтобы снова иметь возможность нанимать бойцов. 你需要等待 %1 秒方可再次雇佣单位 @@ -6407,6 +7328,7 @@ Non hai abbastanza armi per armare questo tipo di unità. Vous n'avez pas assez d'armes pour équiper ce type d'unité. 이런 종류의 유닛을 장착시킬 충분한 무기가 없습니다. + У вас недостаточно оружия, чтобы оснастить этот тип подразделения. 你缺乏武装该种类单位的武器装备 @@ -6414,6 +7336,7 @@ Soldato Reclutato.<br/><br/>Ricorda: se use il menù dei gruppi per cambiare il gruppo perderai il controllo sulle tue unità IA reclutate. Soldat recruté.<br/><br/>Rappel : si vous utilisez le menu de groupe pour changer de groupe, vous perdrez le controle de vos unités IA recrutées. 병사 모집 완료.<br/><br/>기억하십시오, 그룹 메뉴를 사용하여 그룹을 전환하면 모집된 AI의 통제력을 상실합니다. + Солдат нанят.<br/><br/>Помните: если вы воспользуетесь групповым меню для переключения групп, вы потеряете контроль над своим завербованным ИИ. 士兵招募成功.<br/><br/>切记:如果你使用班组管理菜单切换班组你将失去对雇佣AI的控制 @@ -6421,17 +7344,23 @@ Reclutamento IA Recrutement d'IA AI 모집 + Нанять Отряд 招募AI Group %1 at your command.<br/><br/>Groups are managed from the High Command bar (Default: CTRL+SPACE)<br/><br/>If the group gets stuck, use the AI Control feature to make them start moving.<br/><br/>To assign a vehicle for this group, look at a vehicle and use the Add Vehicle option in the Y menu. + Gruppo %1 a rapporto.<br/><br/>I gruppi sono gestiti dalla barra dell'Alto Comando (Default: CTRL+SPAZIO)<br/><br/>Se il gruppo rimane bloccato, usa la funzione di Controllo IA per farli muovere. I team di Statiche tendono a bloccarsi (stiamo cercando di risolvere)<br/><br/>Per assegnare un veicolo a questo gruppo, guarda un veicolo e usa l'opzione Gestione Veicolo di Squadra nel menù Y. + Groupe %1 à votre commandement.<br/><br/>Les Groupes sont gérer depuis la barre HC (Par défaut: CTRL+ESPACE)<br/><br/>Si le groupe est coincé, utilisez la fonction de Contrôle d'IA afin de les faire bouger. Les équipes d'armes statiques montés ont tendance à se bloquer (la résolution est en cours)<br/><br/>Pour assigner un véhicule pour ce groupe, regardez un véhicule et utiliser l'option de Gestion de Véhicule d'Escouade dans le menu Y. %1 그룹이 당신 휘하에 있습니다.<br/><br/>그룹은 하이 커맨드 표시줄(기본값: 컨트롤 + 스페이스 키)에서 관리됩니다.<br/<br/>그룹이 끼었다면 AI 조종 기능을 사용하여 이동을 시작하십시오.<br/><br/>그룹에 차량을 할당하려면 이 차량을 보고 Y 메뉴의 차량 분대 관리 옵션을 사용하십시오. + Отряд %1 нанят по вашей команде.<br/><br/>Управление отрядами осуществляется в панели Верховного Командования (по умолчанию: CTRL+ПРОБЕЛ)<br/><br/>Если группа застряла, используйте функцию управления ИИ, чтобы заставить ее начать движение.<br/><Чтобы назначить транспортное средство для этой группы, посмотрите на транспортное средство и воспользуйтесь опцией "Добавить технику отряду" в меню Y. + 班组%1听从您的指挥.<br/><br/>班组可以通过高等指挥菜单进行管理(默认键位:CTRL+空格)<br/><br/>如果该班组卡住了,可以用AI控制功能来督促他们前进.固定式武器班组很容易卡住(这个问题还在解决中)<br/><br/>如果要分配载具给这个班组,请看着要用的载具然后按Y键来访问载具班组管理选项 Vehicle Purchased Comprato Veicolo Véhicule Acheté 차량 구입 완료 + Техника куплена 已购买载具 @@ -6439,6 +7368,7 @@ Recluta Squadra Recrutement d'Escouade 분대 모집 + Найм отряда 招募班组 @@ -6446,6 +7376,7 @@ %1 Con capacità AA<br/> %1Avec capacités AA<br/> %1대공 능력 있음<br/> + %1С ПТ вооружением<br/> %1拥有防空能力<br/> @@ -6453,6 +7384,7 @@ %1 Con capacità AT<br/> %1Avec capacités AT<br/> %1대전차 능력 있음<br/> + %1С ПВО вооружением<br/> %1 拥有反坦克能力<br/> @@ -6460,6 +7392,7 @@ %2%1 salendo a bordo<br/> %2%1 embarquement<br/> %2%1 탑승 중<br/> + %2%1 посадка<br/> %2%1 装载中<br/> @@ -6467,6 +7400,7 @@ %1A bordo di:%2/%3 %1Embarqué :%2/%3 %1탑승함: %2/%3 + %1Посажены:%2/%3 %1已装载:%2/%3 @@ -6474,6 +7408,7 @@ %1Veicolo corrente:<br/>%2<br/> %1Véhicule Actuel :<br/>%2<br/> %1현재 차량:<br/>%2<br/> + %1Текущее транспортное средство:<br/>%2<br/> %1当前载具:<br/>%2<br/> @@ -6481,6 +7416,7 @@ %1 DISTRUTTO %1DETRUIT %1파괴됨 + %1УНИЧТОЖЕН %1 已被摧毁 @@ -6488,6 +7424,7 @@ %1IMMOBILIZATO<br/> %1INCAPACITÉ<br/> %1비활성화됨<br/> + %1ОТКЛЮЧЕН<br/> %1 已失去行动能力<br/> @@ -6495,6 +7432,7 @@ %2%1 Sta scendendo<br/> %2%1 débarquement<br/> %2%1 하차 중<br/> + %2%1 высаживается<br/> %2正在从%1中脱离<br/> @@ -6502,6 +7440,7 @@ %1Nessun Medico operativo<br/> %1Aucun médecin opérationnel<br/> %1활동 중인 의무병 없음<br/> + %1Без медиков<br/> %1缺乏卫生员<br/> @@ -6509,6 +7448,7 @@ %1Medico operativo<br/> %1Médecin Opérationnel<br/> %1활동 중인 의무병 있음<br/> + %1С медиком<br/> %1拥有卫生员<br/> @@ -6516,6 +7456,7 @@ %1Mortaio non dispiegato<br/> %1Mortier non déployé<br/> %1박격포 배치 안됨<br/> + %1Миномет не развернут<br/> %1Minomet není rozložen<br/> %1迫击炮未展开<br/> @@ -6524,6 +7465,7 @@ %1Mortaio dispiegato<br/> %1Mortier déployé<br/> %1박격포 배치됨<br/> + %1Миномет развернут<br/> %1Minomet je rozložen<br/> %1迫击炮已展开<br/> @@ -6532,6 +7474,7 @@ %1Rifornito di munizioni<br/> %1Approvisionné<br/> %1탄약 공급됨<br/> + %1Снаряженный<br/> %1弹药已补充<br/> @@ -6539,6 +7482,7 @@ Devi selezionare un gruppo sulla barra HC. Vous devez selectionner un groupe sur la barre HC. 당신은 하이 커맨드 표시줄에서 한 개의 그룹을 선택해야 합니다. + Вы обязаны выбрать одну группу в меню HC Musíte vybrat pouze jednu skupinu v HC listě. 你必须在HC 界面上选择一个群组 @@ -6546,6 +7490,7 @@ %1, SITREP, over. %1, SITREP, terminé. %1, 보고하라, 이상. + %1, доложи ситуацию, прием. %1,报告情况,完毕 @@ -6553,6 +7498,7 @@ %1Statica non dispiegata<br/> %1Arme statique non déployée<br/> %1고정화기 배치 안됨<br/> + %1Станки не развернуты<br/> %1Statická zbraň není rozložena<br/> %1固定式武器未展开<br/> @@ -6561,6 +7507,7 @@ %1Statica dispiegata<br/> %1Arme statique est déployée<br/> %1고정화기 배치됨<br/> + %1Станки развернуты<br/> %1Statická zbraň rozložena<br/> %1固定式武器已展开<br/> @@ -6569,6 +7516,7 @@ %1 Status<br/><br/>Membri vivi: %2<br/>Abili al combattimento: %3<br/>Obiettivo Corrente: %4<br/>Modalità di Combattimento: %5<br/> %1 Statut<br/><br/>Membres en vie : %2<br/>Capables de combattre : %3<br/>Tâche actuelle : %4<br/>Mode de Combat :%5<br/> %1 상태<br/><br/>살아 있는 멤버: %2<br/>전투가능인원: %3<br/>현재 임무: %4<br/>전투 모드: %5<br/> + %1 Статус<br/><br/>Живые участники: %2<br/>Способны сражаться: %3<br/>Текущая задача: %4<br/>Боевой режим:%5<br/> %1 Stav:<br/><br/>Živí členové: %2<br/>Bojeschopní: %3<br/>Aktuální úkol: %4<br/>Bojový režim:%5<br/> %1 状态<br/><br/>存活队员: %2<br/>剩余作战人员: %3<br/>当前任务: %4<br/>战斗模式:%5<br/> @@ -6577,6 +7525,7 @@ Info veicolo Info de Véhicule 차량 정보 + Информация о технике Informace o vozidle 载具详细 @@ -6585,6 +7534,7 @@ %1ARMA DISABILITATA<br/> %1ARME INUTILISABLE<br/> %1무기 비활성화됨<br/> + %1 ОРУЖИЕ ОТКЛЮЧЕНО<br/> %1ZBRAŇ VYŘAZENA<br/> %1武器损坏<br/> @@ -6595,12 +7545,16 @@ Annulla Rianimazione Annuler la Réanimation 소생 취소 + Отменить лечение Zrušit oživení 取消复活 We lost %1. + Abbiamo perso %1. Non c'era nulla che potevi fare, dobbiamo continuare a combattere. + Nous avons perdu %1. %1을(를) 잃었습니다. + Мы потеряли %1. Ztratili jsme %1. 我们已失去%1. @@ -6609,6 +7563,7 @@ Non sei in grado di rianimare nessuno. Vous ne pouvez réanimer personne. 당신은 아무도 소생시킬 수 없습니다. + Вы не в состоянии никого лечить. Nemůžeš oživovat nikoho. 你不具备复活任何人的能力 @@ -6617,6 +7572,7 @@ %1 sta venendo trasportato e non puoi curarlo. %1 se fait porter ou est transporté, vous ne pouvez pas le soigner. %1이(가) 업혀지거나 수송되는 중이므로 치료할 수 없습니다. + %1 несут или транспортируют, и вы не можете лечить его. %1 je nesen nebo transportován a nemůžeš ho léčit. %1正在被人扛着或者在运输途中因此你没有办法治疗他 @@ -6625,12 +7581,16 @@ %1 sta venendo trasportato e io non posso curarlo. %1 se fait porter ou est transporté, je ne peux pas le soigner. %1이(가) 업혀지거나 수송되는 중이므로 치료할 수 없습니다. + %1 несут или транспортируют, и вы не можете лечить его. %1 je nesen nebo transportován a nemůžeš ho léčit. %1正在被人扛着或者在运输途中因此我没有办法治疗他 %1 is already dead. + %1 è già morto. Continua a muoverti, soldato. + %1 est déja mort. %1은(는) 이미 죽었습니다. + %1 уже мертв. %1 je již mrtvý. %1已经阵亡了 @@ -6639,6 +7599,7 @@ Tu o %1 necessitate di un Kit di Primo Soccorso o un Kit Medico per poter rianimare. Vous ou %1 avez besoin d'un Kit de Premier Secours ou Medikit pour pouvoir réanimer. 소생하려면 당신 또는 %1에게 구급상자 또는 응급처치도구가 필요합니다. + Вам или %1 нужна аптечка первой помощи, чтобы иметь возможность прийти в себя. Ty nebo %1 potřebuje Soupravu první pomoci nebo Zdravotnickou soupravu aby jsi mohl oživovat. 你或者是%1需要一包个人急救包或者医疗包来进行复活 @@ -6646,6 +7607,7 @@ I'm out of First Aid Kits and I have no Medikit! Je n'ai plus de trousse de premiers secours et je n'ai pas de Medikit ! 구급상자가 떨어졌고 응급처치도구도 없습니다! + У меня закончились аптечки первой помощи, а аптечки у меня нет! 我的个人急救包已经用光了而且我还没有医疗包! @@ -6653,6 +7615,7 @@ %1 non necessita più del tuo aiuto. %1 n'a plus besoin de votre aide. %1은(는) 더 이상 당신의 도움이 필요하지 않습니다. + %1 больше не нуждается в вашей помощи. %1 již nepotřebuje tvojí pomoc. %1不再需要你的帮助 @@ -6660,6 +7623,7 @@ %1 no longer needs my help. %1 n'as plus besoin de mon aide. %1은(는) 더 이상 내 도움이 필요하지 않다. + %1 больше не нуждается в моей помощи. %1不再需要我的帮助 @@ -6667,6 +7631,7 @@ %1 è stato rianimato da qualcun'altro. %1 a été relevé par quelqu'un d'autre. %1이(가) 누군가에 의해 소생되었습니다. + %1 был вылечен кем-то другим. %1已经受到其他人的救助 @@ -6674,6 +7639,7 @@ Rianimazione annullata. Réanimation Annulée. 소생 취소함. + Лечение отменено. Oživení zrušené. 复苏尝试已被取消 @@ -6682,6 +7648,7 @@ Rianima Réanimer 소생하기 + Лечить Oživit 复苏 @@ -6690,6 +7657,7 @@ Rilascia %1 Relâcher %1 %1 풀어주기 + Отпустить %1 Propustit %1 释放 %1 @@ -6698,6 +7666,7 @@ %1 è morto. %1 est mort. %1은(는) 죽었습니다. + %1 мертв. %1 je mrtvý. %1阵亡了 @@ -6706,6 +7675,7 @@ %1 sta venendo trasportato e non puoi trasportarlo a tua volta. %1 se fait porter ou est transporté, vous ne pouvez pas le porter. %1이(가) 업혀지거나 수송되는 중이므로 업을 수 없습니다. + %1 несут или транспортируют, и вы не можете нести его. %1 je nesen nebo transportován a nemůžeš ho nést. %1正在被人扛着或者在运输途中因此你没有办法治疗他 @@ -6714,6 +7684,7 @@ %1 non necessita più del tuo aiuto. %1 n'a plus besoin de votre aide. %1은(는) 더 이상 당신의 도움이 필요하지 않습니다. + %1 больше не нуждается в вашей помощи. %1 již nepotřebuje tvojí pomoc. %1不再需要你的帮助 @@ -6722,6 +7693,7 @@ Trasporta/Trascina Porter/Traîner 업기/끌기 + Тащить Nést/Táhnout 扛起/拖拽 @@ -6729,31 +7701,32 @@ %1 is helping you. %1 est en train de vous aider. %1 님이 당신을 돕고 있습니다. + %1 помогает вам. %1正在尝试帮助你 There is no AI nearby to help you. Il n'y as pas d'IA à proximité pour vous aider. 근처에 당신을 도울 AI가 없습니다. + Поблизости нет ИИ, который мог бы вам помочь. 你的周边没有AI能够帮助你 %1 is on the way to help you. %1 est en route pour vous aider. %1이(가) 당신을 도와주기 위해 가는 중입니다. + %1 уже на пути к тому, чтобы помочь вам. %1正在赶来救助你的路上 - Press R to respawn. - Appuyez sur R pour réapparaître. - R 키를 눌러 리스폰합니다. - 按R键重生 + Press %1 to respawn. + %1 키를 눌러 리스폰합니다. + Нажмите %1, чтобы возродиться. - Press H to shake off the injury. - Appuyez sur H pour vous débarrasser de la blessure. - H 키를 눌러 부상을 떨쳐냅니다. - 按H键来甩开疼痛 + Press %1 to shake off the injury. + %1 키를 눌러 부상을 떨쳐냅니다. + Нажмите %1, чтобы избавиться от повреждения. @@ -6762,6 +7735,7 @@ Attacca Corda Attacher Corde 견인줄 걸기 + Прикрепить веревку Přivázat lano 系扣绳索 @@ -6770,6 +7744,7 @@ Dispiega Verricello Déployer Treuil 윈치 전개 + Развернуть веревку Rozvinout naviják 部署绞盘 @@ -6778,6 +7753,7 @@ Conserva il Verricello Ranger Treuil 윈치 싣기 + Сложить веревку Připnout naviják 托起绞盘 @@ -6788,6 +7764,7 @@ Salvataggio dati server ancora in corso... La sauvegarde des données du serveur est toujours en cours... 서버 데이터 저장이 아직 진행 중입니다... + Сохранение данных на сервере все еще продолжается... Ukládání dat serveru stále probíhá... 服务器保存进行中..... @@ -6796,6 +7773,7 @@ Inizializzazione salvataggio persistente... Lancement de la sauvegarde persistante... 영구 저장 시작 중... + Запуск сохранения... Zahajování trvalého uložení.. 开始持久化存档.. @@ -6804,6 +7782,7 @@ Asset:<br/><t color='#f0d498'>HR: Objets :<br/><t color='#f0d498'>RH : 자산:<br/><t color='#f0d498'>인력: + Активы:<br/><t color='#f0d498'>HR: Zdroje:<br/><t color='#f0d498'>HR: 资产:<br/><t color='#f0d498'>人力资源: @@ -6812,6 +7791,7 @@ <br/>Fondi: <br/>Argent : <br/>자금: + <br/>Деньги: <br/>Peníze: <br/>资金: @@ -6820,6 +7800,7 @@ €</t></t><br/><br/>Ulteriori informazioni in: <t color='#f0d498'>Schermata Mappa > Opzioni di Gioco > Salvataggio Persistente</t>. €</t></t><br/><br/>Informations complémentaires dans <t color='#f0d498'>Ecran Carte > Options de jeu > Sauvegarde Persistante</t>. €</t></t><br/><br/>더 자세한 정보는<t color='#f0d498'>맵 스크린 > 게임 옵션 > 게임 영구 저장</t>에서 제공됩니다. + €</t></t><br/><br/>Дополнительная информация представлена в <t color='#f0d498'>Карта > Параметры игры > Сохранение игры</t>. €</t></t><br/><br/>Další informace jsou v <t color='#f0d498'>Obrazovce mapy > Možnosti hry > Trvalé uložení</t>. €</t></t><br/><br/>更多的信息将提供在<t color='#f0d498'>地图界面 > 游戏选项 > 持久化存档</t>. @@ -6828,6 +7809,7 @@ Salvataggio Sauvegarde du jeu 게임 저장 + Сохранить игру Uložit hru 保存游戏 @@ -6836,6 +7818,7 @@ Salvataggio Persistente Sauvegarde Persistante 영구 저장 + Сохранение Trvalé uložení 持久化存档 @@ -6846,6 +7829,7 @@ Sei già sotto copertura. Vous êtes déja Incognito. 당신은 이미 위장 중입니다. + Вы уже под прикрытием Už jsi v utajení. 你已经伪装过了 @@ -6854,13 +7838,16 @@ Non puoi andare Sotto Copertura mentre controlli l'IA! Vous ne pouvez pas être Incognito alors que vous contrôlez l'IA! AI를 조종하는 동안에는 위장을 할 수 없습니다! + Вы не можете быть под прикрытием, пока управляете ИИ! Nemůžeš jít do utajení když ovládáš AI! 你无法在伪装模式下控制AI! You cannot go Undercover near Airbases, Outposts, Seaports or Roadblocks. Non puoi andare Sotto Copertura vicino ad Aeroporti, Avamposti, Porti o Posti di blocco. + Vous ne pouvez pas être Incognito près des Aéroports, des Avants-postes, des Bases Maritimes ou des Barrages routiers. 공항, 전초기지, 항구 또는 검문소 근처에서는 위장할 수 없습니다. + Вы не можете быть под прикрытием вблизи авиабаз, аванпостов, морских портов или блокпостов. Nemůžeš jít do utajení poblíž Letišť, Stanovišť, Přístavů a Zátarasů. 你无法在机场, 哨站, 港口以及路障附近进行伪装 @@ -6869,6 +7856,7 @@ Non sei in un veicolo civile Vous n'êtes pas dans un véhicule civile. 당신은 민간 차량 안에 있지 않습니다. + Вы не в гражданском транспорте. Nejsi v civilním vozidle. 你当前不在一辆民用车辆内 @@ -6877,6 +7865,7 @@ %1<br/>Indossa un elmetto. %1<br/>Port d'un casque. %1<br/>헬멧 착용 중. + %1<br/>В шлеме. %1<br/>Máš na sobě helmu. %1<br/>正戴着一顶军用头盔 @@ -6885,6 +7874,7 @@ %1<br/>Nudo? Mettiti dei vestiti civili, Petros non riesce a guardarti. %1<br/>Être nu. Mettez des vêtements civils, Petros ne supporte pas de regarder. %1<br/>알몸 상태. 민간인 복장을 착용하십시오, 페트로스가 차마 눈 뜨고 볼 수가 없어합니다. + %1<br/>Голый. Надень что-нибудь гражданское, Петросу невыносимо на это смотреть. %1<br/>Jsi nahý. Vezmi si na sebe nějaké civilní oblečení, Petros na toto nesnese pohled. %1<br/>决定啥都不穿. 快拿点平民的衣服套上, Petros都快看不下去了. @@ -6893,6 +7883,7 @@ %1<br/>Indossando NVG. %1<br/>Porte des NVGs. %1<br/>야시경 착용 중. + %1<br/>Одето ПНВ. %1<br/>Máš na sobě noktovizor. %1<br/>正穿戴这一顶军用夜视仪 @@ -6901,6 +7892,7 @@ %1<br/>Portando funi da traino. %1<br/>Tient un treuil de remorquage. %1<br/>견인줄 잡는 중. + %1<br/>В руках трос. %1<br/>Držíš tažné lano. %1<br/>手中正拿着拖车绳索 @@ -6909,6 +7901,7 @@ %1<br/>Indossando una uniforme sospetta. %1<br/>Porte un uniforme suspect. %1<br/>수상한 복장 착용 중. + %1<br/>Одета подозрительная одежда. %1<br/>Máš na sobě podezřelou uniformu. %1<br/>身着可疑制服 @@ -6917,6 +7910,7 @@ %1<br/>Indossando gibernaggi. %1<br/>Porte une veste. %1<br/>조끼 착용 중. + %1<br/>Одет бронежилет. %1<br/>Máš na sobě vestu. %1<br/>身上套有军用背心 @@ -6925,6 +7919,7 @@ %1<br/>Un'arma è visibile. %1<br/>Une arme est visible. %1<br/>무기 보임. + %1<br/>Видно оружие. %1<br/>Zbraň je viditelná. %1<br/>被目视到身上持有武器 @@ -6933,6 +7928,7 @@ Questo veicolo è stato riportato al nemico. Cambialo o rinnovalo nel Garage per andare Sotto Copertura. Ce véhicule a été signalé à l'ennemi. Changez-en ou prenez-en un nouvel exemplaire au garage pour devenir Icognito. 이 차량은 적에게 보고되었습니다. 차고에서 차량을 바꾸거나 재도색하여 위장을 하십시오. + Об этом транспортном средстве стало известно врагу. Смените или обновите свой автомобиль в гараже, чтобы действовать под прикрытием. Toto vozidlo bylo nahlášeno nepříteli. Změň nebo obnov bozidlo v Garáži aby jsi mohl jít do utajení. 该载具已经被上报给敌人.在车库中更变或者更新你的车辆以便再次进行伪装 @@ -6941,6 +7937,7 @@ Sei stato riportato negli ultimi 30 minuti, quindi non puoi andare Sotto Copertura. Vous avez été signalé dans les 30 dernières minutes, de fait vous ne pouvez pas devenir Incognito. 지난 30분 동안 신고를 당했기 때문에 위장할 수 없습니다. + О вас сообщили за последние 30 минут, поэтому вы не можете работать под прикрытием. Byl jsi nahlášen v posledních 30 minutách tudíž nemůžeš jít do utajení. 在过去的30分钟内你被上报给敌人因此你暂时无法进行伪装 @@ -6949,6 +7946,7 @@ Non puoi andare Sotto Copertura mentre i nemici ti stanno avvistando. Vous ne pouvez pas devenir Incognito pendant que des ennemis vous observent. 적이 당신을 발견한 동안에는 위장을 할 수 없습니다. + Вы не можете действовать под прикрытием, пока враги вас замечают. Nemůžeš být v utajení když tě nepřátelé pozorují. 在敌人发现你的情况下你无法进行伪装 @@ -6957,6 +7955,7 @@ Questo veicolo non può andare sotto copertura mentre ha delle funi da traino attaccate. Ce véhicule ne peut pas devenir Incognito pendant un remorquage. 이 차량은 견인줄이 걸려 있는 동안에는 위장이 불가능합니다. + Этот автомобиль не может передвигаться под прикрытием, пока к нему прикреплены буксирные тросы. Tohle vozidlo nemůže být v utajení když má připojené tažné lano. 在载具拖车绳索调用的情况下该载具无法进行伪装 @@ -6965,13 +7964,16 @@ Non puoi andare Sotto Copertura mentre:<br/> Vous ne pouvez pas devenir Incognito pendant :<br/> 다음 사항이 있는 동안에는 위장을 할 수 없습니다:<br/> + Вы не можете работать под прикрытием, пока:<br/> Nemůžeš být v utajení když:<br/> 你不能进行伪装,你正在:<br/> Unidentified aircraft, you have violated the restricted airspace of %1! Velivolo non identificato, hai violato lo spazio aereo di %1! + Vous avez enfreint l'espace aérien de %1 ! 미확인 항공기, 넌 %1 소속의 영공을 침범했다! + Неопознанный самолет, вы нарушили воздушное пространство %1! Neidentifikované letadlo, narušil jsi vzdušný prostor %1! 不明飞行物,你已经侵犯了%1的空中管制区域 @@ -6980,6 +7982,7 @@ Un avamposto o un porto nemico ti hanno avvistato! Un avant-poste ou port ennemi vous a detecté ! 적의 전초기지나 항구가 당신을 발견했습니다! + Вражеский аванпост или морской порт обнаружил вас! Nepřátelské stanoviště nebo přístav tě zpozoroval! 敌人的哨站或港口已经察觉到你了! @@ -6988,6 +7991,7 @@ Un posto di blocco nemico ti ha avvistato! Un barrage routier ennemi vous a detecté ! 적의 검문소가 당신을 발견했습니다! + Вас обнаружил вражеский блокпост! Nepřátelský zátaras tě zpozoroval! 敌人的阻击路障已经察觉到你了! @@ -6996,6 +8000,7 @@ Sei salito su un veicolo non civile! Vous êtes entré dans un véhicule non civil ! 민간 차량이 아닌 차량에 탑승했습니다! + Вы сели в негражданский автомобиль! Nastoupil jsi do necivilního vozidla! 你进入了一辆非民用车辆! @@ -7004,6 +8009,7 @@ Sei salito su un veicolo riportato! Vous êtes entré dans un véhicule recherché ! 수배된 차량에 탑승했습니다! + Вы сели в скомпрометированный автомобиль! Nastoupil jsi do hledaného vozidla! 你进入了一辆已经被上报的车辆! @@ -7012,6 +8018,7 @@ Si è verificato un errore sconosciuto durante l'esecuzione della routine di copertura! Erreur inconnue survenue pendant le processus de devenir Incognito ! 위장 실행 루틴에서 알 수 없는 오류가 발생했습니다! + При скрытии произошла неизвестная ошибка! Došlo k neznámé chybě při přepínání statusu do "v utajení"! 进行伪装的过程中出现了未知错误 @@ -7020,6 +8027,7 @@ Hai abbandonato il tuo veicolo e sei ancora Ricercato! Vous avez quitté votre véhicule et êtes toujours recherchés ! 당신은 차량에서 내렸지만 여전히 수배 목록에 있습니다! + Вы оставили свой автомобиль и все еще находитесь в розыске! Opustil jsi vozidlo ale stále jsi na listině hledaných! 你已从你的车辆中离开然而你仍然还在通缉名单上! @@ -7028,6 +8036,7 @@ Ti sei allontanato troppo dalle strade e sei stato avvistato! Vous vous êtes trop éloigné des routes et vous avez été repéré ! 도로에서 너무 멀리 떨어졌기 때문에 발견되었습니다! + Вы ушли слишком далеко от каких-либо дорог и были замечены! Sjel jsi příliš daleko z cesty a byl jsi zpozorován! 你因过度开离任何公路而遭到了举报 @@ -7036,6 +8045,7 @@ Gli esplosivi sono stati visti sul tuo veicolo! Des Explosifs ont étés repérés sur votre véhicule ! 차량에서 폭발물이 발견되었습니다! + В вашем автомобиле обнаружена взрывчатка! 你车上的爆炸物被发现了! @@ -7043,6 +8053,7 @@ Non puoi rimanere Sotto Copertura mentre:<br/><br/>Un'arma è visibile<br/>Indossi del gibernaggio<br/>Indossi un elmetto<br/>Indossi NVG<br/>Indossi un'uniforme militare! Vous ne pouvez pas rester Incognito pendant que :<br/><br/>Une arme est visible<br/>Vous portez une veste<br/>Vous portez un casque<br/>Vous portez des LVN<br/>Vous portez un uniforme militaire ! 다음과 같은 경우에는 위장을 유지할 수 없습니다:<br/><br/>무기 보임<br/>조끼 착용<br/>헬멧 착용<br/>야시경 착용<br/>군복을 입음! + Вы не можете оставаться под прикрытием, пока:<br/><br/>Видно оружие<br/>Одет бронежилет<br/>Одет бронежилет<br/>Одет ПНВ<br/>Одета военная форма! Nemůžeš zůstat v utajení pokud:<br/><br/>Zbraň je viditelná<br/>Máš na sobě vestu<br/>Máš na sobě helmu<br/>Máš na sobě noktovizor<br/>Máš na sobě vojenskou uniformu! 你不能进行伪装,因为你:<br/><br/>被目视到身持武器<br/>正身着军用背心<br/>正穿戴一顶军用头盔<br/>正穿戴一顶军用夜视仪<br/>正身着军用制服! @@ -7051,6 +8062,7 @@ Non puoi rimanere Sotto Copertura mentre:<br/><br/>Un'arma è visibile<br/>Indossi del gibernaggio<br/>Indossi un elmetto<br/>Indossi NVG<br/>Indossi un'uniforme militare!<br/>Sei ricercato dal nemico! Vous ne pouvez pas rester Incognito pendant que vous montrez :<br/><br/>Une arme est visible<br/>Vous portez une veste<br/>Vous portez un casque<br/>Vous portez des LVN<br/>Vous portez un uniforme militaire ! 다음과 같은 경우가 보여지는 동안에는 위장을 유지할 수 없습니다:<br/><br/>무기 보임<br/>조끼 착용<br/>헬멧 착용<br/>야시경 착용<br/>군복을 입음<br/>적이 당신을 수배 목록에 추가했습니다! + Вы не можете оставаться под прикрытием, демонстрируя:<br/><br/>Видно оружие<br/>Одет бронежилет<br/>Одет шлем<br/>Одет ПНВ<br/>Одета военная форма<br/><br/>Вы в розыске! Nemůžeš zůstat v utajení pokud:<br/><br/>Zbraň je viditelná<br/>Máš na sobě vestu<br/>Máš na sobě helmu<br/>Máš na sobě noktovizor<br/>Máš na sobě vojenskou uniformu<br/><br/>Nepřítel tě přidal na listinu hledaných! 你不能进行伪装,因为你:<br/><br/>被目视到身持武器<br/>正身着军用背心<br/>正穿戴一顶军用头盔<br/>正穿戴一顶军用夜视仪<br/>正身着军用制服!<br/>敌人已经把你拉入他们的通缉名单! @@ -7059,6 +8071,7 @@ Non puoi rimanere Sotto Copertura mentre curi un membro della resistenza comprommesso! Vous ne pouvez pas rester Incognito alors que vous soignez un membre de la résistance compromis ! 부상을 입은 저항군을 치료하는 동안에는 위장을 유지할 수 없습니다! + Вы не можете оставаться под прикрытием, исцеляя члена сопротивления! Nemůžeš zůstat v utajení když léčíš prozrazeného člena odboje! 明目张胆的救助反抗军成员使得你退出了伪装 @@ -7067,6 +8080,7 @@ Non puoi rimanere Sotto Copertura mentre curi un membro della resistenza comprommesso!<br/><br/>Il nemico ti ha aggiunto alla Lista dei Ricercati! Vous ne pouvez pas rester Incognito alors que vous soignez un membre de la résistance compromis !<br/><br/>L'ennemi vous a ajouté à leur liste de gens recherchés ! 부상을 입은 저항군을 치료하는 동안에는 위장을 유지할 수 없습니다!<br/><br/>적이 당신을 수배 목록에 추가했습니다! + Вы не можете оставаться под прикрытием, пока лечите скомпрометированного члена сопротивления<br/><br/>Враг добавил вас в свой список разыскиваемых! Nemůžeš zůstat v utajení když léčíš prozrazeného člena odboje<br/><br/>Nepřítel tě přidal na listinu hledaných! 明目张胆的救助反抗军成员使得你退出了伪装<br/><br/>敌人已经把你拉入他们的通缉名单! @@ -7075,6 +8089,7 @@ Non puoi andare sotto copertura mentre hai delle funi da traino attaccate al tuo veicolo. Vous ne pouvez pas être Incognito pendant qu'un treuil de remorquage est attaché à votre véhicule ! 당신의 차량에 견인줄이 걸려 있는 동안에는 위장이 불가능합니다! + Вы не можете находиться под прикрытием, пока к вашему автомобилю прикреплены буксирные тросы! Nemůžeš být v utajení když tažné lano je připojeno k tvému vozidlu! 在载具被其他车辆拖动的情况下该载具无法进行伪装 @@ -7083,6 +8098,7 @@ Non puoi andare sotto copertura e usare le funi da traino! Vous ne pouvez pas être Incognito et utiliser un treuil de remorquage ! 견인줄을 사용하면서 위장을 할 순 없습니다! + Вы не можете работать под прикрытием и использовать буксирные тросы! V utajení nemůžeš používat tažné lano! 你不能在伪装模式下使用拖车绳索! @@ -7090,12 +8106,14 @@ Undercover OFF Incognito OFF 위장 끔 + Скрытность ВЫКЛ 退出伪装 Undercover ON Incognito ON 위장 켬 + Скрытность ВКЛ 进行伪装 @@ -7103,6 +8121,7 @@ Sei stato riportato o avvistato dal nemico! Vous avez été signalé ou détecté par l'ennemi ! 적에게 신고를 받았거나 발견되었습니다! + Враг сообщил о вас или заметил вас! Byl jsi nahlášen nebo zpozorován nepřítelem! 你已经被敌人举报或者发现了! @@ -7111,6 +8130,7 @@ Hai sconfinato in una base nemica! Vous vous êtes introduit sur une base aérienne ennemie ! 적의 공군 기지에 무단 침입했습니다! + Вы вторглись на территорию вражеской авиабазы! Vkročil jsi na nepřátelské letiště! 你已经非法入侵敌人的空军基地! @@ -7119,6 +8139,7 @@ Sotto Copertura Incognito 위장 + Под прикрытием V utajení 伪装 @@ -7129,6 +8150,7 @@ Lascia oggetto Poser l'objet 물건 떨어뜨리기 + Бросить Položit objekt 放下物品 @@ -7137,6 +8159,7 @@ Piazzamento Costruzioni Placeur de Construction 건물 배치기 + Строительная площадка Umisťovač budov 建造工程放置器 @@ -7145,6 +8168,7 @@ Prendi oggetto Porter l'objet 물건 끌기 + Перенести Nést objekt 扛起物品 @@ -7153,6 +8177,7 @@ Apri Porte Ouvrir Portes 문 열기 + Открыть дверь Otevřít dveře 打开门 @@ -7161,6 +8186,7 @@ Confeziona oggetto Emballer objet 물건 포장 + Упаковать Zabalit objekt 打包物品 @@ -7169,6 +8195,7 @@ Ruota oggetto Pivoter l'objet 물건 회전 + Вращать Rotovat objekt 旋转物品 @@ -7177,6 +8204,7 @@ Spacchetta oggetto Déballer objet 물건 풀기 + Распаковать Rozbalit objekt 卸下物品 @@ -7211,14 +8239,28 @@ You can't recruit units into a garrison when enemies are near the zone. Non puoi reclutare unità nella guarnigione mentre vi sono nemici nelle vicinanze. + No puedes reclutar unidades en guarniciones cuando los enemigos se encuentran cerca de la zona. + Vous ne pouvez pas recruter des unités dans une garnison quand les ennemis sont proche de la zone. 적들이 근처에 있을 때는 주둔지에 유닛을 모집할 수 없습니다. + Вы не можете набирать юниты в гарнизон, когда враги находятся рядом с зоной. + Nie można rekrutować jednostek do garnizonu, gdy wrogowie znajdują się w pobliżu strefy. Nemůžete rekrutovat jednotky do posádky, když jsou nepřátelé poblíž zóny. + Não podes recrutar unidades para a guarnição quando inimigos se encontram perto da zona + Düşmanlar bölgenin yakınındayken garnizona asker alamazsınız. + 当敌人靠近区域时,您不能将单位招募到驻军中。 You lack the HR necessary to recruit these units. Non hai HR per reclutare unità. + Te falta HR para reclutar unidades. + Vous manquer de RH pour recruter des unités. 유닛을 모집할 인력이 부족합니다. + Вам не хватает HR для добавления отрядов. + Brakuje ci zasobów ludzkich do rekrutacji jednostek. Chybí ti HR aby jsi mohl rekrutovat jednotky. + Faltam RH para recrutar unidades. + Birimleri işe almak için İK'nız yok. + 您缺少HR来招募单位。 You don't have enough money for adding this kind of unit (%1€ needed). @@ -7261,8 +8303,15 @@ Adding this squad to the garrison will exceed the garrison limit. Some of the units will join the garrison, and the rest will be dismissed and their cost refunded. Aggiungere questa squadra alla guarnigione supererà il limite di guarnigione. Alcuni si aggiungeranno altri saranno dimessi e il loro costo rimborsato. + Añadir esta escuadra a la guarnición excederá el límite de la guarnición. Algunos de ellos se unirán a la guarnición, el resto serán descartados y su coste será reembolsado. + L'ajout de cette escouade dans la garnison va excéder la limite. Certains vont rejoindre la garnison, le reste sera remboursé. 이 분대를 주둔지에 추가하면 주둔군 제한을 초과하게 됩니다. 그들 중 일부는 주둔지에 합류할 것이고, 나머지는 해산되며 비용은 환불될 것입니다. + Добавление этого отряда в гарнизон превысит лимит гарнизона. Какая-то их часть присоединится к гарнизону, оставшиеся будут распущены, а их стоимость будет возмещена. + Dodanie tego oddziału do garnizonu spowoduje przekroczenie limitu garnizonu. Część z nich dołączy do garnizonu, reszta zostanie zwolniona, a ich koszt zostanie zwrócony. Přidání této jednotky do posádky překročí limit posádky. Někteří z nich se připojí k posádce, zbytek bude propuštěn a jejich náklady vám budou vráceny. + Ao adicionar este pelotão à guarnição, vais exceder o limite da guarnição. Alguns deles vão se juntar à guarnição, os restantes vão ser dispensados e o custo reembolsado. + Bu mangayı garnizona eklemek, garnizon sınırını aşacaktır. Bir kısmı garnizona katılacak, geri kalanı görevden alınacak ve masrafları iade edilecek. + 将此小队添加到驻军将超出驻军限制。其中一些人将加入驻军,其余人将被解雇,其成本将被退还。 Selected units are already in garrison. @@ -7318,8 +8367,15 @@ You must select any %1 zone with a marker. Devi selezionare qualunque zona %1 con un marcatore. + Debes seleccionar alguna zona %1 con marcador. + Vous devez sélectionner n'importe quel %1 zone avec un marqueur. 마커가 있는 아무 %1 구역을 선택해야 합니다. + Вы должны выбрать любую зону %1 с маркером. + Musisz wybrać dowolną strefę %1 ze znacznikiem. Musíte vybrat jakoukoli zónu %1 se značkou. + Tens que selecionar qualquer zona %1 com marcador. + İşaretli herhangi bir %1 bölgesini seçmelisiniz. + 您必须选择任何带有标记的 %1 区域。 Selected zone does not belong to %1. @@ -7350,14 +8406,28 @@ You have regained control of the %1 group as the zone where the group was going to be garrisoned has been lost. Il gruppo %1 è ritornato sotto il controllo del AC poiché la zona da guarnire è stata perduta. + El grupo %1 ha vuelto bajo el control de HC ya que la zona donde se planeaba aguarnicionar ha sido perdida. + Groupe %1 retourné sous le contrôle du HC car la zone dans laquelle ils devaient être en garnison a été perdue. %1 그룹은 주둔할 예정이었던 구역을 잃었기 때문에 하이 커맨드 통제로 들어갔습니다. + Отряд %1 вернулся под контроль Командующего, т.к. зона, указанная для гарнизона, утрачена. + Grupa %1 powróciła pod kontrolę HC, ponieważ strefa, którą planowano obsadzić garnizonem, została utracona. Získal si kontrolu skupiny %1 zpět, protože zóna, do které se měli přesunout, byla ztracena. + Grupo %1 voltou ao controlo do AC devido à zona que eles planeavam guarnecer foi perdida. + Garnizona alınması planlanan bölge kaybedildiğinden, %1 grubu HC kontrolüne geri döndü. + %1 小队已返回到HC控制,因为计划驻扎的区域已经丢失。 This garrison is full, choose another zone to add this HC squad into its garrison. La guarnigione è piena, seleziona un'altra zona in cui mandare questa squadra dell'AC. + La guarnición está llena, selecciona otra zona para añadir esta escuadra de HC a su guarnición. + Cette garnison est pleine, choisissez une autre zone pour ajouter cette escouade HC à sa garnison. 이 주둔지는 꽉 찼으므로, 이 하이 커맨드 분대를 주둔지에 추가하려면 다른 구역을 선택하십시오. + Этот гарнизон полон, выберите другую локацию для того чтобы добавить этот отряд в гарнизон. + Ten garnizon jest pełny, wybierz inną strefę, aby dodać ten oddział HC do swojego garnizonu. Tato posádka je plná, vyberte jinou zónu, do které chcete přidat tuto skupinu z HC. + A guarnição está cheia, escolhe outra zona ou adiciona este pelotão do AC à sua guarnição. + Bu garnizon dolu, bu Yüksek Komuta ekibini garnizonuna eklemek için başka bir bölge seçin. + 此驻军已满,请选择另一个区域将此高级指挥小队添加到其驻军中。 Garrison @@ -7432,17 +8502,29 @@ Last Garbage Clean was %1 ago. Keep track of it. The server will automatically GC in %2. Letzte Müll-Löschung war vor %1, behalte das im Auge. Müll-Löschung wird automatisch in %2 durchgeführt. L'ultimo Pulisci Immondizia è stato %1 fa. Tienilo d'occhio. PI forzato in %2. + La ultima Limpieza de Basura fue hace %1. Mantenla supervisada. Limpieza de basura forzada en %2. + Le dernier Nettoyage Memoire était il y a %1 jours. Continuer le suivi. Nettoyage forcé dans %2. 마지막 쓰레기 청소는 %1 전에 실행되었습니다. 쓰레기 청소 시간을 추적합니다. 서버는 %2 후에 자동으로 쓰레기 청소를 수행할 것입니다. + Последняя чистка мусора была %1 назад. Имейте это в виду. Принудительная чистка будет через %2. Ostatnie czyszczenie śmieci miało miejsce %1 temu. Uważaj na następne. Czyszczenie będzie wymuszone za %2. Poslední čistění odpadu bylo %1 zpátky. Dávejte si na to pozor. Vynucené čistění odpadu za %2. + Última Limpeza de Lixo foi há %1. Relembra este valor. LL forçada em %2 + Son Çöp Temizleme işlemi %1 önceydi. Takipte kalın. %2'de Çöp Temizleyici çalıştırıldı. + 距离上次垃圾清理已过去 %1。请留意该细节。强制性垃圾清理将于 %2 后发生。 Garbage Cleaner Tracker has ran a garbage clean because the time passed the threshold. Keep track of GC times. Müll-Löscher hat Löschung durchgeführt, weil der Zeitraum abgelaufen ist. Beachte die Fristen. Tracciatore Pulisci Immondizia ha eseguito una pulizia poiché il tempo trascorso ha superato la soglia. Tieni d'occhio i tempi del PI. + El Seguimiento del Limpiador de Basura llevó a cabo una limpieza porque se superó el límite de tiempo establecido. Mantenga supervisados los tiempos del Limpiador de Basura. + Le Suivi du Nettoyage Mémoire lance un nettoyage mémoire car le temps écoulé excède le seuil. Suivre le temps de nettoyage. 쓰레기 청소 기록 프로그램이 임계값을 초과하여 쓰레기를 청소합니다. 쓰레기 청소 시간을 추적합니다. + Трекер очистки мусора запустил чистку из-за превышения порогового значения времени. Следите за трекером. Skrypt do czyszczenia śmieci został uruchomiony, ponieważ minęło zbyt dużo czasu od ostatniego czyszczenia. Śledź czasy czyszczenia. Monitor čistení odpadků spustil sběr, jelikož čas překročil časový práh. Hlídejte si čas sběru. + O Rastreador de Limpeza de Lixo correu uma limpeza de lixo porque o tempo passou do limite. Relembra os tempos para LL. + Çöp Temizleyici İzcisi, zaman eşiği geçtiği için çöp temizliği gerçekleştirir. Çöp Temizleyici sürelerini takip edin. + 垃圾清洁器跟踪器运行垃圾清洁,因为时间超过了阈值。继续跟踪GC时间。 Garbage Cleaner Tracker @@ -7493,12 +8575,17 @@ Menú de artillería Menu d'Artillerie 포병 메뉴 + Меню артиллерии 火炮支援菜单 Opens the Antistasi artillery support menu (commander only). Apre il menù del supporto d'artiglieria di Antistasi (solo comandante). + Abre el menú de apoyo de artillería de Antistasi (Solo comandante). + Ouvre le menu de support d'artillerie Antistasi (commandant uniquement). 안티스타시의 포병 지원 메뉴를 엽니다 (지휘관 전용). + Открывает меню артиллерийской поддержки (только для командующего). + 打开 Antistasis 火炮支援菜单 (只限指挥官) Battle menu @@ -7506,11 +8593,15 @@ Menú de batalla Menu de Bataille 전투 메뉴 + Боевое меню Opens the Antistasi battle menu. Apre il menù di battaglia di Antistasi. + Abre el menú de batalla de Antistasi. + Ouvre le menu de bataille d'Antistasi. 안티스타시의 전투 메뉴를 엽니다. + Открывает меню битвы Antistasi. Dismiss Previous Hint @@ -7518,6 +8609,7 @@ Descartar consejo anterior Ignore l'Astuce Précédente 이전 힌트 닫기 + Удалить предыдущую подсказку Clears the last hint notification. @@ -7525,6 +8617,7 @@ Limpia el último consejo. Enlève la dernière notification d'astuce. 마지막 힌트 알림을 지웁니다. + Убрать последнее уведомление с подсказкой. Toggle ear plugs @@ -7532,11 +8625,15 @@ Alternar tapones Activer les bouchons d'oreilles 귀마개 토글 + Беруши Toggles the ear plugs (no effect when using ACE). Interruttore tappi per le orecchie (non serve se si utilizza l'ace). + Alterna los tapones (no tiene efecto mientras se usa ACE). + Active les bouchons d'oreilles (sans effet en utilisant ACE). 귀마개를 토글합니다(ACE 사용 시 효과 없음). + Беруши (при использовании ACE эффекта нет). Toggle info bar @@ -7544,11 +8641,31 @@ Alternar barra de información Activer la barre d'info 정보 표시줄 토글 + Переключить информационную панель Toggles the visibility of the Antistasi information bar at the top of the screen. Interruttore visibilità della barra delle informazioni in alto. + Alterna la visibilidad de la barra de información de Antistasis en la parte superior de la pantalla. + Active/desactive l'affichage de la barre d'information Antistasi en haut de l'écran. 화면 상단에 있는 안티스타시 전용 정보 표시줄의 표시 여부를 전환합니다. + Переключает видимость информационной панели Antistasi в верхней части экрана. + + + Respawn + Возрождение + + + Respawn when unconscious in the Antistasi medical system. + Возрождаться при потере сознания в медицинской системе Antistasi. + + + Self revive + Лечиться + + + Self revive when unconscious in the Antistasi medical system. + Самостоятельное оживление при потере сознания в медицинской системе Antistasi. You've inserted your ear plugs. @@ -7556,6 +8673,7 @@ Te has puesto los tapones. Vous avez enfilé vos bouchons d'oreilles. 귀마개를 끼웠습니다. + Вы вставили беруши. You've taken out your ear plugs. @@ -7563,6 +8681,7 @@ Te has quitado los tapones. Vous avez retiré vos bouchons d'oreilles. 귀마개를 빼냈습니다. + Вы вынули беруши. Ear Plugs @@ -7570,6 +8689,7 @@ Tapones Bouchons d'oreilles 귀마개 + Беруши @@ -7579,11 +8699,18 @@ [ACE] Empezar con objetos de comida [ACE] Débuter avec de la Nourriture [ACE] 음식 아이템을 해금한 상태로 시작 + [ACE] Старт с продуктами питания [ACE] 开局拥有可食用物品 [Experimental] Allow futuristic supports to be used by the enemy + Sperimentale] Permetti al nemico di usare supporti futuristici + [Experimental] Permitir al enemigo usar apoyos futuristas + <br/>[Expérimental] Autoriser des supports futuristes pour l'ennemi [실험적] 적이 미래형 지원을 사용할 수 있도록 허용 + [Экспериментальная] Разрешить противнику использовать сильную поддержку + [Eksperymentalne] Pozwól wrogowi wykorzystać futurystyczne wsparcie + 实验性] 允许敌人使用未来科技化支援 Should Guided Launchers become unlocked? @@ -7591,6 +8718,7 @@ ¿Deberían desbloquearse los lanzadores guiados? Debloquer les lance-missiles guidés ? 유도미사일 발사기를 해금할 수 있습니까? + Должны ли ПТУРы разблокированы? Czy namierzane wyrzutnie powinny zostać odblokowane? 是否允许解锁可制导导弹? @@ -7600,6 +8728,7 @@ Permitir que el enemigo utilice apoyos injustos <br/>Permettre à l'ennemi d'utiliser des soutiens inéquitable 적이 불공평한 지원을 사용하도록 허용 + Разрешить противнику использовать нечестную поддержку Pozwól wrogowi na użycie nieuczciwego wsparcia 是否允许敌方使用不平衡的支援类型 @@ -7609,6 +8738,7 @@ ¿Deberían desbloquearse los explosivos? Debloquer les Explosifs ? 폭발물을 해금할 수 있습니까? + Должна ли взрывчатка разблокирована? Czy materiały wybuchowe powinny zostać odblokowane? 是否允许解锁爆炸物? @@ -7618,6 +8748,7 @@ Preferencia de los enemigos para atacar objetivos rebeldes cerca del CG Préférence de l'ennemi à attaquer les cibles rebelles proches du QG 적군 선호도 - 반군 표적을 공격하는 것을 선호하는 정도 + Враг предпочитает атаковать цели повстанцев ближе к штабу Wróg woli atakować cele rebeliantów bliżej sztabu 敌方针对总部附近抵抗军的攻击倾向 @@ -7627,6 +8758,7 @@ Activar autoguardado (cada X minutos) Activer les Sauvegarde Auto (toute les X minutes) 자동 저장 활성화 (매 X분마다) + Включить автосохранение (каждые X минут) Włącz auto-zapis (co X minut) 启用自动保存 (每 X 分钟一次) @@ -7636,12 +8768,17 @@ Tiempo entre autoguardados (en minutos) Temps entre sauvegardes auto (en minutes) 자동 저장 쿨타임 (분 단위) + Время между автосохранениями (в минутах) Czas pomiędzy automatycznymi zapisami (w minutach) 自动保存间隔时间(分钟) [Experimental] Truly Random Crates: Remove all balance checks from Crates + [Sperimentale] Casse veramente randomiche: Rimuovi tutti i controlli di bilanciamento dalle Casse + [Experimental] Cajas completamente aleatorias: Quitar todas las comprobaciones de equilibrio de las cajas + [Experimental] Caisses vraiment aléatoires : Enlève tout les contrôles d'équilibrage des Caisses [실험적] 완전 무작위 전리품 상자: 상자에서 모든 밸런스 체크를 제거 + [Экспериментальный] Случайные ящики: Уберите все проверки баланса из ящиков [实验性] 完全随机性货箱:移除与箱子有关的所有平衡性检查 @@ -7650,6 +8787,7 @@ Ambos Les deux 둘 다 + Все Oba 两个都允许 @@ -7659,6 +8797,7 @@ Ingenieros Ingénieurs 공병만 + Инженеры Inżynierowie 工程师 @@ -7668,6 +8807,7 @@ Clases de jugador que pueden usar el colocador de edificios Classes joueur autorisée à utiliser le placeur de constructions 건물 배치기를 사용할 수 있는 플레이어 병과 + Классы игроков, которым разрешено строить 准许放置建筑物的玩家兵种 @@ -7676,6 +8816,7 @@ Líderes de equipo Chef d'équipes 조장만 + Командиры отрядов Liderzy zespołów 班组组长 @@ -7685,6 +8826,7 @@ Cantidad de tráfico de civiles y vehículos aparcados Quantité de traffic civil et véhicules garés 민간인 보행자 및 주차된 차량 수 + Количество гражданского трафика и припаркованных автомобилей Ilość ruchu cywilnego i pojazdów zaparkowanych 平民出行程度以及停靠车辆数量 @@ -7694,6 +8836,7 @@ Munición máxima en cajas Maximum de Munitions dans les Caisses 상자 내 최대 탄약 수량 + Максимальное количество боеприпасов в ящиках Maksymalna ilość amunicji w skrzyniach 弹药箱中可容纳弹药的数量已达最大值 @@ -7703,6 +8846,7 @@ Tipos de munición máximos en cajas Maximum de Types de Munitions dans les Caisses 상자 내 최대 탄약 종류 수 + Максимальное количество типов боеприпасов в ящиках Maksymalna liczba typów amunicji w skrzynkach 弹药箱中可容纳弹药的种类已达最大值 @@ -7712,6 +8856,7 @@ Cantidad máxima de accesorios en cajas Maximum d'Accessoires dans les Caisses 상자 내 최대 부착물 수량 + Максимальное количество обвеса в ящиках Maksymalna ilość dodatków do broni w skrzyniach 弹药箱中可容纳枪械配件的数量已达最大值 @@ -7721,6 +8866,7 @@ Tipos de accesorios máximos en cajas Maximum de Types d'Accessoires dans les Caisses 상자 내 최대 부착물 종류 수 + Максимальное количество типа обвесов в ящиках Maksymalna liczba typów dodatków do broni w skrzyniach 弹药箱中可容纳枪械配件的种类已达最大值 @@ -7730,6 +8876,7 @@ Cantidad de mochilas máxima en cajas Maximum de Sacs à Dos dans les Caisses 상자 내 최대 군장 수량 + Максимальное количество рюкзаков в ящиках Maksymalna ilość plecaków w skrzyniach 弹药箱中可容纳背包的数量已达最大值 @@ -7739,6 +8886,7 @@ Tipos de mochila máximos en cajas Maximum de Types de Sacs à Dos dans les Caisses 상자 내 최대 군장 종류 수 + Максимальное количество типов рюкзаков в ящиках Maksymalna liczba typów plecaków w skrzyniach 弹药箱中可容纳背包的种类已达最大值 @@ -7747,6 +8895,7 @@ Quantità massima di Zaini Dispositivi nelle Casse Maximum de Sacs à Dos avec Dispositifs dans les Caisses 상자 내 최대 장비 가방 수량 + Максимальное количество девайсов в ящиках 弹药箱中设备背包的数量已达最大值 @@ -7754,6 +8903,7 @@ Quantità massima di Tipi di Zaini Dispositivi nelle Casse Maximum de Types de Sacs à Dos avec Dispositifs dans les Caisses 상자 내 최대 장비 가방 종류 수 + Максимальное количество типов девайсов в ящиках 弹药箱中设备背包的种类已达最大值 @@ -7761,6 +8911,7 @@ Quantità massima di esplosivi nelle casse Maximum d'Explosifs dans les Caisses 상자 내 최대 폭발물 수량 + Максимальное количество взрывчатки в ящиках Maksymalna ilość materiału wybuchowego w skrzyniach 弹药箱中爆炸物的数量已达最大值 @@ -7769,6 +8920,7 @@ Tipi massimi di esplosivi nelle casse Maximum de Types d'Explosifs dans les Caisses 상자 내 최대 폭발물 종류 수 + Максимальное количество типов взрывчатки в ящиках Maksymalna liczba typów materiałów wybuchowych w skrzyniach 弹药箱中爆炸物的种类已达最大值 @@ -7777,6 +8929,7 @@ Quantità massima di elmetti nelle casse Maximum de Casques dans les Caisses 상자 내 최대 헬멧 수량 + Максимальное количество шлемов в ящиках Maksymalna ilość hełmów w skrzyniach 弹药箱中头盔的数量已达最大值 @@ -7785,6 +8938,7 @@ Tipi massimi di elmetti nelle casse Maximum de Types de Casques dans les Caisses 상자 내 최대 헬멧 종류 수 + Максимальное количество типов шлемов в ящиках Maksymalna liczba typów hełmów w skrzyniach 弹药箱中头盔的种类已达最大值 @@ -7793,6 +8947,7 @@ Quantità massima di oggetti nelle casse Maximum d'Objets dans les Caisses 상자 내 최대 기타 아이템 수량 + Максимальное количество предметов в ящиках Maksymalna ilość przedmiotów w skrzyniach 弹药箱中可容纳物品的数量已达最大值 @@ -7801,6 +8956,7 @@ Tipi massimi di oggetti nelle casse Maximum de Types d'Objets dans les Caisses 상자 내 최대 기타 아이템 종류 수 + Максимальное количество типов предметов в ящиках Maksymalna liczba typów przedmiotów w skrzyniach 弹药箱中可容纳物品的种类已达最大值 @@ -7809,6 +8965,7 @@ Diminuisci la quantità di loot man mano che il numero di giocatori aumenta? ("Sì" è raccomandato per motivi di bilanciamento) Réduire la quantité de butin à mesure que le nombre de joueurs augmente ? (Oui c'est conseillé pour des raisons d'équilibrage) 플레이어가 많아질수록 전리품 수량이 줄어듭니까? (밸런스를 위해 '예'를 권장합니다) + Уменьшать количество лута при увеличении числа игроков? (Рекомендуется для баланса) Zmniejszyć ilość łupów wraz ze wzrostem liczby graczy? (Tak jest zalecane ze względu na równowagę) 是否根据玩家人数来调节战利品生成概率?(追求游戏平衡的前提下, 建议启用) @@ -7817,6 +8974,7 @@ Quantità massima di gilet tattici nelle casse Maximum de Vestes dans les Caisses 상자 내 최대 조끼 수량 + Максимальное количество бронежилетов в ящиках Maksymalna ilość kamizelek w skrzyniach 弹药箱中防弹背心的数量已达最大值 @@ -7825,6 +8983,7 @@ Tipi massimi di gilet tattici nelle casse Maximum de Types de Vestes dans les Caisses 상자 내 최대 조끼 종류 수 + Максимальное количество типов бронежилетов в ящиках Maksymalna liczba typów kamizelek w skrzyniach 弹药箱中防弹背心的种类已达最大值 @@ -7833,6 +8992,7 @@ Quantità massima di armi nelle casse Maximum d'Armes dans les Caisses 상자 내 최대 무기 수량 + Максимальное количество оружия в ящиках Maksymalna ilość broni w skrzyniach 弹药箱中可容纳枪械的数量已达最大值 @@ -7841,6 +9001,7 @@ Tipi massimi di armi nelle case Maximum de Types d'Armes dans les Caisses 상자 내 최대 무기 종류 수 + Максимальное количество типов оружия в ящиках Maksymalna liczba typów broni w skrzyniach 弹药箱中可容纳枪械的种类已达最大值 @@ -7849,6 +9010,7 @@ Distanza massima dal QG per le missioni Distance maximale du QG pour les tâches 본부로부터 임무까지의 최대 거리 + Максимальное расстояние от штаба для выполнения заданий Maksymalny dystans od bazy dla zadań 总部距离任务所在地点的最大距离 @@ -7857,6 +9019,7 @@ Distanza di spawn Distance d'apparition 스폰 거리 + Дистанция спавна Odległość spawnu 生成距离 @@ -7865,6 +9028,7 @@ Bilancio risorse di attacco del nemico(relative al bilancio complessivo) Equilibrage des ressources des attaques enemies (relatif à l'équilibrage global) 적 공격 자원 밸런스 (전체적인 밸런스와 관련됨) + Баланс ресурсов для атаки противника (относительно общего баланса) 平衡敌人攻击资源(和总体平衡相关联) @@ -7872,6 +9036,7 @@ Bilancio complessivo delle risorse del nemico Equilibrage global des ressources des ennemis 전체적인 적 자원 밸런스 + Общий баланс ресурсов противника Łączny balans zasobów przeciwnika 平衡敌人总体资源 @@ -7880,14 +9045,20 @@ Distanza usata per controllare se vi sono nemici nelle vicinanze Distance pour la vérification d'ennemis proches 근처 적 존재 여부를 체크하는 거리 + Расстояние, используемое для проверки наличия врагов поблизости Dystans używany do szukania pobliskich przeciwników 用于探查附近敌情的距离 + + Speed of enemy air responses + Скорость реагирования авиации противника + Enemy AI skill (also affected by server skill) Abilità delle IA nemiche (influenzato anche dal livello di abilità del server) Compétence de l'IA ennemie (affectée par le réglage serveur) 적 AI 숙련도 (서버 숙련도에도 영향을 받음) + Навык ИИ противника (также зависит от настроек сервера) Poziom umiejętności AI (umiejętności serwera również na to wpływa) 敌方AI能力水平 (会被服务器设定所影响) @@ -7896,6 +9067,7 @@ Rib vs Gov Reb vs Gouv 반군 Vs 정부군 + Зеленые vs Синие Rebelia vs Rząd 起义军 vs 政府军 @@ -7904,6 +9076,7 @@ Rib vs Gov + Inv Reb vs Gouv + Envahisseur 반군 Vs 정부군과 침략군 + Зеленые vs Синие и Красные Rebelia vs Rząd + Najeźccy 起义军 vs 政府军 + 侵略者 @@ -7912,6 +9085,7 @@ Rib vs Gov vs Inv Reb vs Gouv vs Envahisseur 반군 Vs 정부군 Vs 침략군 + Зеленые vs Синие vs Красные Rebelia vs Rząd vs Najeźccy 起义军 vs 政府军 vs 侵略者 @@ -7920,9 +9094,14 @@ Modalità di gioco - NON cambiare nel mezzo della missione Mode de Jeu - Ne pas changer ceci en milieu de mission 게임 모드 - 경고: 임무 도중에 이것을 변경하지 마십시오!! + Режим игры - НЕ МЕНЯЙТЕ ЕГО В СЕРЕДИНЕ МИССИИ Tryb gry - NIE zmieniaj tego w trakcie misji 游玩模式 - 请勿在游玩过程中改变此选项 + + Maximum number of corpses and wrecks + Максимальное количество трупов и обломков + Garbage Cleaner Threshold for Automatic GC Soglia Pulisci Immondizia per PI Automatico @@ -7939,6 +9118,7 @@ 10 km 10 km 10km + 10 км 10 km 10 千米 @@ -7948,6 +9128,7 @@ 10 metri 10 mètres 10 + 10 метров 10 metrów 10 米 @@ -7956,6 +9137,7 @@ 10 minuti 10 minutes 10분 + 10 минут 10 minut 10 分钟 @@ -7965,6 +9147,7 @@ 15 metri 15 mètres 15m + 15 метров 15 metrów 15 米 @@ -7973,6 +9156,7 @@ 15 minuti 15 minutes 15분 + 15 минут 15 minut 15 分钟 @@ -7982,6 +9166,7 @@ 16 km 16 km 16km + 16 км 16 km 16 千米 @@ -7991,6 +9176,7 @@ 20 metri 20 mètres 20m + 20 метров 20 metrów 20 米 @@ -7999,6 +9185,7 @@ 20 minuti 20 minutes 20분 + 20 минут 20 minut 20 分钟 @@ -8007,6 +9194,7 @@ 2 minuti 2 minutes 2분 + 2 минуты 2 minuty 2 分钟 @@ -8015,6 +9203,7 @@ 30 minuti 30 minutes 30분 + 30 минут 30 minut 30 分钟 @@ -8024,6 +9213,7 @@ 4 km 4 km 4km + 4 км 4 km 4 千米 @@ -8033,6 +9223,7 @@ 5 km 5 km 5km + 5 км 5 km 5 千米 @@ -8041,6 +9232,7 @@ 5 minuti 5 minutes 5분 + 5 минут 5 minut 5 分钟 @@ -8050,6 +9242,7 @@ 6 km 6 km 6km + 6 км 6 km 6 千米 @@ -8059,6 +9252,7 @@ 7 km 7 km 7km + 7 км 7 km 7 千米 @@ -8068,6 +9262,7 @@ 8 km 8 km 8km + 8 км 8 km 8 千米 @@ -8077,6 +9272,7 @@ Tutti Tout 모두 + Все Wszystko 所有 @@ -8086,6 +9282,7 @@ Permesso Autorisé 허용 + Разрешить Dozwolone 允许 @@ -8095,6 +9292,7 @@ Sempre Toujours 항상 + Всегда Zawsze 时常的 @@ -8104,6 +9302,7 @@ Disabilitato Désactivé 비활성화 + Выключить Wyłączone 不启用 @@ -8113,15 +9312,21 @@ Abilitato Activé 활성화 + Включить Włączone 启用 + + Fast + Быстро + High Hoch Alto Haut 높음 + Высокая @@ -8130,6 +9335,7 @@ Basso Bas 낮음 + Низкая @@ -8138,6 +9344,7 @@ Medio Moyen 중간 + Средняя 中等 @@ -8146,6 +9353,7 @@ Mai Jamais 없음 + Никогда 永远不用 @@ -8154,6 +9362,7 @@ Nessun cambiamento Pas de changements 변경 없음 + Без изменений 不做更改 @@ -8162,6 +9371,7 @@ Nessun limite Pas de limite 무제한 + Без ограничений 无限制 @@ -8170,6 +9380,7 @@ Nessuno Aucun 없음 + Нет 啥也没有 @@ -8178,6 +9389,7 @@ Normale Normal 보통 + Обычный 正常 @@ -8186,6 +9398,7 @@ Non permesso Interdit 허용되지 않음 + Не разрешить 不允许 @@ -8194,6 +9407,7 @@ Nessuno sblocco Pas de débloquage 해금 없음 + Не разблокировать 无法解锁 @@ -8201,13 +9415,19 @@ Spesso Souvent 자주 + Часто 经常 + + Slow + Медленно + Sometimes Qualche volta Parfois 가끔 + Иногда 偶尔 @@ -8215,14 +9435,20 @@ Illimitato Illimité 무제한 + Неограниченно 无限 + + Very fast + Очень быстро + Very high Sehr hoch Molto alto Très haut 매우 높음 + Очень Высокая 非常高 @@ -8231,13 +9457,19 @@ Molto basso Très bas 매우 낮음 + Очень низкая 非常低 + + Very slow + Очень медленно + Maximum global civilians Numero massimo globale di civili Maximum global de civils 최대 전체 민간인 수 + Максимальное количество гражданских 全图范围人口最大值 @@ -8245,6 +9477,7 @@ Permessi agli a ospiti di diventare comandanti quando non ci sono membri idonei a esserlo Autoriser aux invités de devenir commandant quand aucun membre n'est éligible 자격이 있는 멤버가 없다면 게스트가 지휘관이 될 수 있도록 허용 + Разрешить гостям стать командующим, если нет участников 允许游客玩家在没有人有资格当指挥官的情况下成为指挥官 @@ -8252,6 +9485,7 @@ Numero predefinito di oggetti necessari perchè gli ospiti possano usarli Quantité par defaut d'objets nécessaire avant que les invités puissent s'en servir 게스트가 사용하는 데 필요한 기본 아이템 수 + Количество предметов по умолчанию, необходимое для того, чтобы гости могли их использовать 允许游客玩家使用限制物品的默认限额 @@ -8269,6 +9503,7 @@ Possibilità che l'elmetto venga perso ricevendo un colpo alla testa Chance de perte du casque sur des tirs à la tête 헤드샷을 당할 시 헬멧을 잃을 확률 + Шанс потери шлема при выстрелах в голову 被击中头部时丢失头盔的概率 @@ -8276,6 +9511,7 @@ Tempo prima che un giocatore sia considerato AFK Temps avant qu'un joueur soit considéré AFK 플레이어가 잠수로 간주되기까지의 시간 + Время, в течение которого игрок считается AFK 在被确认为挂机之前玩家可闲置的时间 @@ -8283,6 +9519,7 @@ Soldi iniziali dei Ribelli Argent Initial de la Faction Rebelle 반란군 세력의 초기 자금 + Начальные деньги повстанцев 抵抗军初始资金 @@ -8290,6 +9527,7 @@ Manodopera iniziale Fazione Ribelle Effectifs Initial de la Faction Rebelle 반란군 세력의 초기 인력 + Начальная численность повстанцев 抵抗军初始人力资源 @@ -8297,6 +9535,7 @@ Soldi iniziali del giocatore Argent Initial du Joueur 플레이어의 초기 자금 + Начальные деньги игрока 玩家初始资金 @@ -8304,6 +9543,7 @@ Moltiplicatore di risorse per gli invasori rispetto agli occupanti Multiplicateur de Ressource de l'envahisseur relatif à l'occupant 점령군과 관련된 침략군에 대한 자원 승수 + Множитель ресурсов для захватчиков по отношению к оккупантам 入侵者相对于占领者的资源倍增 @@ -8312,6 +9552,7 @@ Qualsiasi posizione amica Toute position alliée 모든 우호지역 위치 + Любая дружественная позиция 任何友军位置 @@ -8320,6 +9561,7 @@ Solo aeroporti + QG Seulement les Aéroports + QG 공항과 본부만 + Только аэропорты + штаб 只允许快速旅行至友军机场 + 总部 @@ -8328,6 +9570,7 @@ Obiettivi del viaggio rapido concessi Cibles de Voyage Rapide Autorisées 빠른 이동 타겟 허용 + Быстрое перемещение разрешено 快速旅行可以到达的目标地点 @@ -8335,6 +9578,7 @@ Tutti i non sviluppatori Tout les non-dév 모두 (개발자 버전 제외) + Все, кроме разработчика 所有非研发 @@ -8342,6 +9586,7 @@ Registra l'uso della console di debug Enregistrer l'usage de la console de debug 디버그 콘솔 사용 로그 작성 + Отладка консоли 记录调试台使用 @@ -8395,6 +9640,7 @@ Verbose Verbeux 세부 정보 + Подробно 文本长度 @@ -8402,6 +9648,7 @@ Bottino nel raggio della cassa Rayon du transfert butin vers caisse 전리품 챙기기 반경 + Радиус сбора лута в ящик 战利品装载范围 @@ -8409,6 +9656,7 @@ Loot alla cassa trasferisce oggetti sbloccati Charger le butin vers la caisse transfère les armes debloquées 해금된 아이템을 전리품 상자로 옮김 + Перенос разблокированных предметов в ящик 允许武器箱只装载未解锁的物品 @@ -8416,6 +9664,7 @@ Civili massimi spawnati per città Maximum de civils par ville 마을 당 최대 민간인 스폰 수 + Максимальное количество гражданских 小镇居民最大人口值 @@ -8423,6 +9672,7 @@ Massima distanza degli ospiti dal membro più vicino al QG Distance max des invités du membre ou QG le plus proche 가장 가까운 멤버 또는 본부로부터 게스트의 최대 거리 + Максимальное расстояние гостей от ближайшего участника или штаба 游客玩家与服务器白名单玩家或者总部之间的最大距离 @@ -8430,6 +9680,7 @@ Abilita Membri Server Activer l'Adhésion au Serveur 서버 멤버십 활성화 + Включить Участников Сервера 启用服务器白名单 @@ -8437,6 +9688,7 @@ Percentuale di slot riservati ai membri Pourcentage de Places Reservées pour les Membres 멤버를 위한 예비 슬롯 비율 + Процент зарезервированных мест для участников 服务器会员专属空位的总占比 @@ -8444,6 +9696,7 @@ Quantità dello stesso oggetto richiesta per sbloccarlo Nombre d'exemplaire d'un objet pour le débloquer 해금에 필요한 동일 아이템의 갯수 + Количество одинаковых предметов, необходимых для разблокировки 解锁物件所需要的物品数量 @@ -8451,6 +9704,7 @@ Attiva bombardamento napalm per l'IA Activer le Bombardement au Napalm pour l'IA AI가 네이팜 폭격을 사용하도록 허용 + Включить бомбардировку напалмом для ИИ 允许AI使用凝固汽油弹 @@ -8458,6 +9712,7 @@ Abilità marcatori per giocatori alleati Activer les Marqueurs de Joueurs Alliés 아군 플레이어 마커 활성화 + Включить маркеры игроков 启用友军玩家地图标记 @@ -8465,6 +9720,7 @@ Quanti ribelli possono essere messi a guarnigione (1.5x per aeroporti, 0.5x per risorse e fabbriche)? Combien de rebelles peuvent être en garnison (1.5x pour les aéroports, 0.5x pour les ressources et usines) ? 얼마나 많은 반군을 주둔시킬 수 있는가? (공항은 1.5배, 자원채취소 및 공장은 0.5배) + Кол-во гарнизона (1,5x для аэропортов, 0,5x для ресурсов и фабрик)? 抵抗军驻军人数 (机场为1.5倍兵力 , 资源节点以及工厂为0.5倍兵力)? @@ -8472,6 +9728,7 @@ Quante truppe possono esservi nella guarnigione. Nota che l'opzione Nessun limite potrebbe impattare sulle perfomance poiché potrebbero esserci troppe truppe da gestire per la CPU. Combien de troupes peuvent être en garnison. Notez que Aucune Limite risque d'affecter les performances car il y aura trop de troupes à gérer pour le CPU. 주둔지에 얼마나 많은 병력을 배치하는 지 여부를 결정합니다. 무제한 옵션은 CPU가 처리할 병력이 너무 많으므로 성능에 영향을 미칠 수 있습니다. + Сколько войск может находиться в гарнизоне. Обратите внимание, что опция "Без ограничений" может повлиять на производительность. 最高驻军人数. 请注意,无限制选项可能会导致CPU超载因而影响游戏体验. @@ -8479,13 +9736,19 @@ Abilità IA amica (l'abilità del server ha anche effetto) Compétence de l'IA alliée (affectée par le réglage serveur) 아군 AI 숙련도 (서버 숙련도에 영향을 받음) + Навык ИИ союзников (также зависит от навыка сервера) 友方AI能力水平 (会被服务器设定所影响) + + Disable the "Restore nearby units" option on the vehicle box. + Отключить опцию "Восстановить близлежащие объекты". + 10 seconds 10 Secondi 10 secondes 10초 + 10 секунд 10 秒 @@ -8493,6 +9756,7 @@ 15 Secondi 15 secondes 15초 + 15 секунд 15 秒 @@ -8500,6 +9764,7 @@ 5 Secondi 5 secondes 5초 + 5 секунд 5 秒 @@ -8507,6 +9772,7 @@ Tempo di rianimazione minimo per i giocatori Temps de réanimation minimum pour les joueurs 플레이어의 최소 소생 시간 + Минимальное время возрождения для игроков 复活玩家最低所需要时间 @@ -8514,6 +9780,7 @@ Metodi di auto-rianimazione abilitati Méthodes d'auto-réanimation activées 자가소생 활성화 + Включить самолечение 启用自我复苏 @@ -8521,6 +9788,7 @@ Resisti Endurer 견디기 + Включить 自我复苏 @@ -8528,6 +9796,7 @@ [TFAR] Inizia con la Radio a Lungo Raggio? [TFAR] Commencer avec une Radio Longue-Portée ? [TFAR] 장거리 무전기를 가지고 시작합니까? + [TFAR] Начать с радио дальнего действия? [TFAR] 开局拥有长途通讯无线电? @@ -8536,6 +9805,7 @@ OPCIONES DE EQUILIBRIO OPTIONS D'EQUILIBRAGE -밸런스 설정- + НАСТРОЙКИ БАЛАНСА 游戏平衡性选项 @@ -8544,6 +9814,7 @@ OPCIONES DE DESARROLLO OPTION DE DEVELOPPEMENT -개발자 설정- + НАСТРОЙКИ РАЗРАБОТЧИКА Opcje rozwoju 研发选项 @@ -8553,6 +9824,7 @@ OPCIONES DE EQUIPAMIENTO OPTIONS D'EQUIPEMENT -장비 설정- + НАСТРОЙКА ВООРУЖЕНИЯ opcje wyposażenia 装备选项 @@ -8562,6 +9834,7 @@ OPCIONES DE CAJAS DE BOTÍN OPTIONS DES CAISSE DE BUTIN -전리품 상자 설정- + НАСТРОЙКИ СБОРА ВООРУЖЕНИЯ 弹药箱装载选项 @@ -8570,6 +9843,7 @@ OPCIONES DE MEMBRESÍA OPTIONS D'ADHESION -멤버십 설정- + НАСТРОЙКИ УЧАСТНИКОВ СЕРВЕРА opcje członkostwa 白名单设置 @@ -8578,6 +9852,7 @@ Notifica soltanto Notifications seulement 알림만 + Только уведомление 只限通知 @@ -8585,6 +9860,7 @@ Abilità punizione per Teamkill Activer la Punition pour le Teamkill 팀킬 처벌 활성화 + Включить наказание на дружественный огонь 启用友军伤害处罚 @@ -8592,6 +9868,7 @@ Le armi sbloccate sbloccano automaticamente i loro caricatori standard? Débloquer Une Arme Débloque Automatiquement Ses Chargeurs Standards ? 해금된 무기는 해당 무기의 기본 탄창을 자동으로 해금합니까? + Разблокированное оружие автоматически разблокирует свой стандартный магазин? 是否在解锁枪械的同时也解锁配套的标准弹匣? @@ -8603,6 +9880,7 @@ Enganchar a las cuerdas de remolque Attacher au treuil 견인줄에 걸기 + Прикрепить трос Przymocuj do linki holowniczej Přivázat k tažnému lanu Prender nas cordas de reboque @@ -8616,6 +9894,7 @@ Sacar cuerdas de remolque Déployer treuil 견인줄 꺼내기 + Растянуть трос Rozłóż linkę holowniczą Vyložit tažné lano Tirar cordas de reboque @@ -8629,6 +9908,7 @@ Soltar cuerdas de remolque Lâcher le treuil 견인줄 떨어뜨리기 + Бросить трос Upuść linkę holowniczą Zahodit tažné lano Largar cordas de reboque @@ -8642,6 +9922,7 @@ Coger cuerdas de remolque Ramasser le treuil 견인줄 줍기 + Взять трос Podnieś linkę holowniczą Sebrat tažné lano Pegar cordas de reboque @@ -8655,6 +9936,7 @@ Guardar cuerdas de remolque Ranger le treuil 견인줄 넣기 + Убрать трос Schowaj linkę holowniczą Odložit tažné lano Jogar fora as cordas de reboque @@ -8668,6 +9950,7 @@ No puede enganchar las cuerdas a un vehículo cerrado Impossible d'attacher le treuil à un véhicule verrouillé 잠긴 차량에는 견인줄을 걸 수 없습니다 + Невозможно прикрепить буксирные тросы из запертой техники Nie można przymocować linki holowniczej do zamkniętego pojazdu Na zamčené vozidlo nelze přivázat tažné lano Não é possível prender as cordas de reboque em um veículo trancado @@ -8681,6 +9964,7 @@ No puede enganchar cuerdas en una zona segura Impossible d'attacher le treuil dans une zone sécurisé 안전 구역에서는 견인줄을 걸 수 없습니다 + Нельзя прикрепить буксирные тросы в безопасной зоне Nie można zamocować linki holowniczej będąc w bezpiecznej strefie V bezpečné zóně nelze přivázat tažné lano Não é possível prender as cordas de reboque em uma zona segura @@ -8694,6 +9978,7 @@ Whoops Oups 어이쿠 + Упс Uuups Jejda Oops @@ -8707,6 +9992,7 @@ No puede coger las cuerdas de un vehículo cerrado Impossible de récupérer le treuil d'un véhicule vérrouillé 잠긴 차량의 견인줄은 주울 수 없습니다 + Невозможно вытащить буксирные тросы из запертой техники Nie można podnieść linki holowniczej z zamkniętego pojazdu Ze zamčeného vozidla nelze vybrat tažné lano Não é possível pegar as cordas de reboque de um veículo trancado @@ -8720,6 +10006,7 @@ No puede coger las cuerdas en una zona segura Impossible de récupérer un treuil dans une zone sécurisé 안전 구역에서는 견인줄을 주울 수 없습니다 + Нельзя поднять буксирные тросы в безопасной зоне Nie można podnieść linki holowniczej będąc w bezpiecznej strefie V bezpečné zóně nelze vybrat tažné lano Não é possível pegar as cordas de reboque em uma zona segura @@ -8733,6 +10020,7 @@ No puede guardar las cuerdas en un vehículo cerrado Impossible de ranger le treuil dans un véhicule vérrouillé 잠긴 차량의 견인줄은 넣을 수 없습니다 + Невозможно убрать буксирные тросы в запертой технике Nie można schować linki holowniczej w zamkniętym pojeździe Do zamčeného vozidla nelze odložit tažné lano Não é possível jogar fora as cordas de reboque em um veículo trancado @@ -8746,6 +10034,7 @@ No puede guardar las cuerdas en una zona segura Impossible de ranger le treuil dans une zone sécurisé 안전 구역에서는 견인줄을 넣을 수 없습니다 + Нельзя убрать буксирные тросы в безопасной зоне Nie można odłożyć linki holowniczej będąc w bezpiecznej strefie V bezpečné zóně nelze přivázat tažné lano Não é possível jogar fora as cordas de reboque em uma zona segura. @@ -8759,6 +10048,7 @@ Éxito Succès 성공 + Успешно Sukces Úspěch Sucesso @@ -8772,6 +10062,7 @@ No puede sacar las cuerdas de un vehículo cerrado Impossible de récupérer le treuil d'un véhicule vérrouillé 잠긴 차량의 견인줄은 가져갈 수 없습니다 + Невозможно извлечь буксирные тросы из запертой техники Nie można wyjąć linki holowniczej z zamkniętego pojazdu Ze zamčeného vozidla nelze vybrat tažné lano Não é possível pegar as cordas de reboque de um veículo trancado @@ -8784,6 +10075,7 @@ No puede sacar cuerdas de remolque en una zona segura Impossible de prendre un treuil dans une zone sécurisé 안전 구역에서는 견인줄을 가져갈 수 없습니다 + Нельзя брать буксирные тросы в безопасной зоне Nie można podnieść linki holowniczej będąc w bezpiecznej strefie V bezpečné zóně nelze vzít tažné lano Não é possível pegar as cordas de reboque em uma zona segura @@ -8797,6 +10089,7 @@ Advanced Towing Remorquage Avancé 고급 견인 + Усовершенствованная буксировка Zaawansowane Holowanie Pojazdów Pokročilé tahání Reboque avançado @@ -8811,6 +10104,7 @@ No tienes un kit de primeros auxilios para auto revivirte. Vous n'avez pas de kit de premiers secours pour vous réanimer. 당신은 자가소생을 위한 구급상자를 가지고 있지 않습니다. + У вас нет аптечки первой помощи для самостоятельного лечения. Nie masz apteczki pierwszej pomocy do samodzielnego uleczenia się. Nepotřebuješ Soupravu první pomoci pro oživení sama sebe. @@ -8820,6 +10114,7 @@ Ya te has revivido recientemente. Vous vous êtes déjà réanimé vous-même récemment. 당신은 이미 최근에 자가소생을 했습니다. + Вы уже возрождали себя. Niedawno już się uleczyłeś. Již jsi se nedávno oživil. @@ -8829,6 +10124,7 @@ Te recuperas de la lesión, pero no te sientes muy bien. Vous vous remettez de la blessure, mais ne vous sentez pas très bien. 당신은 부상을 털어내지만, 썩 기분이 좋지 않습니다. + Ты избавляешься от травмы, но чувствуешь себя неважно. Otrząsnąłeś się po kontuzji, ale nie czujesz się najlepiej. Zbavuješ se zranění, ale necítíš se dobře. @@ -8838,6 +10134,7 @@ Te sientes mucho mejor. Vous vous sentez beaucoup mieux. 당신은 훨씬 상태가 좋아졌다. + Вы чувствуете себя намного лучше. Czujesz się znacznie lepiej. Cítíš se mnohem lépe @@ -8847,6 +10144,7 @@ Auto revivir Se Réanimer 자가소생 + Лечиться Oživit sám sebe 自我复苏 @@ -8855,206 +10153,567 @@ %1 is about to execute an airstrike. %1 세력이 공습을 시작함 + %1 собираются нанести авиаудар. Airstrike 공습 + Авиаудар A %1 heavy artillery piece has opened fire. %1 세력의 대규모 야포 포격 발사가 시작됨 + Тяжелая артиллерия %1 открыла огонь. Artillery strike 포병 타격 + Артиллерийский удар A %1 fighter started chasing a target. %1 세력의 제공전투기가 목표를 추적하기 시작함 + Истребитель %1 начал преследование цели. Air superiority target 제공 목표물 + Истребитель атакует цель A %1 heavy bomber is performing a carpet bombing. %1 세력의 중폭격기가 융단폭격을 수행함 + Тяжелый бомбардировщик %1 выполняет ковровую бомбардировку. Carpet bombing 융단폭격 + Ковровая бомбардировка A %1 CAS aircraft is attacking a target. %1 세력의 근접지원항공기가 목표를 공격하기 시작함 + Самолет воздушной поддержки %1 атакует цень. CAS Target CAS 목표물 + Воздешная поддержка Confirmed launch of %1 cruise missile. %1 세력의 순항 미사일 발사가 확인됨 + Подтвержден запуск крылатой ракеты %1. Projected missile impact 미사일 타격 예상 + Предполагаемый ракетный удар %1 is executing an unknown support now. %1 세력이 지금 알 수 없는 지원을 실행함 + %1 вызвало неизвестную поддержку. A %1 heavy gunship started circling the area. %1 세력의 중무장 건쉽이 해당 지역을 선회하기 시작함 + Тяжелый боевой вертолет %1 начал кружить над районом. Gunship 건쉽 + Боевой вертолет A %1 mortar has opened fire. %1 세력의 박격포 사격이 시작됨 + Миномет %1 открыл огонь. Mortar strike 박격포 포격 + Минометный удар A %1 satellite has fired an orbital strike. %1 세력의 위성이 궤도 폭격을 수행함 + Спутник %1 нанес орбитальный удар. Orbital strike 궤도 폭격 + Орбитальный удар A %1 air QRF is arriving. %1 세력의 공중 신속대응군이 도착 + Прибывает воздушный спецназ %1. Air QRF 공중 신속대응군 + Воздушный спецназ A %1 land QRF just arrived. %1 세력의 지상 신속대응군이 도착 + Только что прибыл спецназ %1. Land QRF 지상 신속대응군 + Спецназ Confirmed launch of %1 SAM. %1 세력의 지대공미사일 발사가 확인됨 + Подтверждена работа ЗРК %1 Projected SAM target 지대공미사일 예상 표적 + Подтверждена работа ЗРК Target marked on map! 목표물이 지도에 표시됨! + Цель отмечена на карте! %1 is executing a %2 support now. %1 세력이 지금 %2 지원을 실행함 + %1 сейчас выполняет поддержку %2. %1 support %1 지원군 + %1 поддержка %1 is preparing an airstrike. %1 세력이 공습을 준비 중 + %1 готовит авиаудар. Estimated arrival in %1 minutes. %1분 후에 도착 예상 + Предполагаемое прибытие через %1 мин. %1 is preparing a heavy artillery position. %1 세력이 대규모 포격을 준비 중 + %1 готовит позицию для тяжелой артиллерии. %1 is preparing an air superiority fighter. %1 세력이 제공전투기를 준비 중 + %1 готовит истребитель для завоевания превосходства в воздухе. A %1 heavy bomber is on the way. %1 세력이 중폭격기를 보냄 + Тяжелый бомбардировщик %1 уже в пути. %1 is preparing fixed-wing CAS. %1 세력이 고정익 근접지원항공기를 준비 중 + %1 готовит авиаподдержку. %1 just sent a counterattack force. %1 세력이 반격군을 보냄 + %1 только что отправил силы для контратаки. A %1 launcher is preparing to launch a cruise missile. %1 세력이 순항 미사일 발사를 준비 중 + Пусковая установка %1 готовится к запуску крылатой ракеты. %1 is setting up a %2 support. %1 세력이 %2 지원을 준비 중 + %1 готовит поддержку %2. %1 is loading up a heavy gunship. %1 세력이 중무장 건쉽을 준비 중 + %1 готовит самолет. %1 just sent a major attack wave. %1 세력이 대규모 공격 웨이브를 보냄 + %1 только что отправил большую волну атак. %1 is setting up a mortar position. %1 세력이 박격포를 준비 중 + %1 минирует позицию. A %1 satellite is charging an orbital strike. %1 세력의 위성이 궤도 폭격을 충전 중 + Спутник %1 готовит орбитальный удар. %1 just sent an airborne QRF. %1 세력이 공중 신속대응군을 보냄 + %1 только что отправил воздушный спецназ. %1 just sent a land QRF. %1 세력이 지상 신속대응군을 보냄 + %1 только что отправил спецназ. %1 is setting up a SAM launcher. %1 세력이 지대공미사일 발사기를 준비 중 + %1 готовит пусковую установку ЗРК. Estimated setup: %1 minutes. 예상 설정 시간: %1분 + Осталось времени: %1 мин. + + + %1 just sent a tank platoon. + %1 только что прислал танковый взвод. %1 is sending a spotting UAV. %1 세력이 감시형 UAV를 보냄 + %1 отправляет дрон. %1 is setting up an unknown support. %1 세력이 알 수 없는 지원을 준비 중 + %1 готовит неизвестную поддержку. Airstrike Vessel Destroyed 공습지원기 파괴됨 + Самолет уничтожен Fighter Destroyed 전투기 파괴됨 + Истребитель уничтожен CAS Plane Destroyed 근접지원항공기 파괴됨 + Самолет уничтожен %1 Destroyed %1 파괴됨 + %1 уничтожен + + + + + As well as managing a large country in the middle of Europe, France also controls several offshore territories. Throughout all of these provinces, the French civilians simply wish for the war to end in their home country. + Франция не только управляет большой страной в центре Европы, но и контролирует несколько оффшорных территорий. Во всех этих провинциях мирные жители Франции просто желают, чтобы война закончилась в их родной стране. + + + In World War II, Poland was trapped in a very awkward position between the Soviets and Germans. The people of Poland have suffered through an occupied, and the recent change in relations has opened a window of opportunity for the Polish Resistance. + Во время Второй мировой войны Польша оказалась в очень неудобном положении между Советами и немцами. Народ Польши пережил оккупацию, и недавнее изменение отношений открыло окно возможностей для польского Сопротивления. + + + The Polish resistance is in an extremely bad spot. Surrounded by the Wehrmacht on one side and the Soviets on the other, the Polish townspeople have no choice but to fight for the safety and freedom of their country. They use a much older but wealthy supply of Walther PPKs. + Польское сопротивление находится в крайне тяжелом положении. Окруженные с одной стороны вермахтом, а с другой - советскими войсками, жители польских городов не имеют иного выбора, кроме как сражаться за безопасность и свободу своей страны. Они используют старые, но богатые запасы пистолетов Walther PPK. + + + The French Resistance is battling the Wehrmacht invasion of their country, along with the Allied powers who they believe are being far too heavy-handed with civilian casualities and need to be stopped. They use a much older but healthy supply of Walther PPKs. + Французское Сопротивление борется с вторжением вермахта в свою страну вместе с союзными войсками, которые, по их мнению, слишком жестоко расправляются с мирным населением и должны быть остановлены. Для этого они используют старые, но надежные пистолеты Walther PPK. + + + The Altis Armed Forces are comprised mostly of combat veterans and patriotic citizens from their home island, with an outdated arsenal of U.S. and Soviet equipment, which is being actively renovated. They typically use the HK G3 and HK G36. + Вооруженные силы Алтиса состоят в основном из ветеранов боевых действий и патриотически настроенных граждан с родного острова. Они располагают устаревшим арсеналом американского и советского оборудования, который активно обновляется. Как правило, они используют HK G3 и HK G36. + + + The African Desert Army is a coalition of North African nations around the Sahara. They primarily use very old Soviet equipment and Vietnam-War era US equipment, and prefer a variety of mass-produced rifles like the M16, AK-74, and G3. + Африканская армия пустыни - коалиция стран Северной Африки, расположенных в районе Сахары. В основном они используют очень старое советское оборудование и американскую технику времен Вьетнамской войны, а также предпочитают различные массовые винтовки, такие как M16, AK-74 и G3. + + + The Afghan National Army has, like its host country, undergone quite the history since it's conception in 1997. They use a mix of locally-sourced, Soviet, and American weapons, as well as Soviet surplus equipment supported by the remnants of American occupation. + С момента своего создания в 1997 году Афганская национальная армия, как и принимающая ее страна, пережила немало историй. Они используют сочетание местного, советского и американского оружия, а также советские излишки техники, поддерживаемые остатками американской оккупации. + + + The Soviets after the end of World War II built up their own military superpower and nuclear program, independent of the US. With the development of the AK-47 and mass-produced variants like the AKM, the Soviets became one of the two leading world powers. + После окончания Второй мировой войны Советский Союз создал свою собственную военную сверхдержаву и ядерную программу, независимую от США. Благодаря разработке АК-47 и его массовых вариантов, таких как АКМ, Советы стали одной из двух ведущих мировых держав. + + + After the victories on the Pacific Front during World War II, the United States realized it was woefully ill-prepared for another prolonged war and put itself at the forefront of military innovation and industry. They typically use the M16 and M14 rifles which have been in service to this day. + После побед на Тихоокеанском фронте во время Второй мировой войны Соединенные Штаты осознали, что крайне плохо подготовлены к новой затяжной войне, и выдвинулись на передовые позиции в области военных инноваций и промышленности. Как правило, они используют винтовки M16 и M14, которые стоят на вооружении и по сей день. + + + The Horizon Island Defense Force are the small military force defending the Pacific island of Tanoa. They typically use Vietnam-war era and similar US gear, rounded with a variety of imported European weapons and vehicles. + Силы обороны острова Горизонт - это небольшие военные силы, защищающие тихоокеанский остров Таноа. Как правило, они используют американское снаряжение времен Вьетнамской войны и аналогичное, а также разнообразное импортное европейское оружие и транспортные средства. + + + The Kyrgystan Royal Guard is the primary defending force of the Middle-Eastern country of Kyrgystan. Outfitted primarily with U.S. surplus equipment, the KRG make use of a variety of small arms imported from various neighboring countries. + Королевская гвардия Киргизстана - основная оборонительная сила ближневосточной страны Киргизстан. Оснащенная в основном американским оборудованием, Королевская гвардия Киргизии использует различные виды стрелкового оружия, импортируемого из различных соседних стран. + + + The dedicated protectors of a small Eastern European territory near Belarus, the Livonia Defense Force are a relatively small but deceptively capable army. As a former Soviet territory, the military uses any surplus Soviet gear it can scavenge. + Самоотверженные защитники небольшой восточноевропейской территории, расположенной недалеко от Белоруссии, Силы обороны Ливонии - относительно небольшая, но обманчиво боеспособная армия. Будучи бывшей советской территорией, военные используют все излишки советского снаряжения, которые им удается раздобыть. + + + The Malden Defense Force are the small military force defending the island of Malden, close to the Gibraltar Strait. They use US imported weaponry and vehicles, as well as the French Mystere fighter for aerial operations. + Силы обороны Мальдена - это небольшие военные силы, защищающие остров Мальден, расположенный недалеко от Гибралтарского пролива. Они используют оружие и транспортные средства, импортируемые из США, а также французский истребитель Mystere для воздушных операций. + + + The Takistani Army is backed by a variety of sources, which are represented as individual templates in the faction selector. This faction uses primarily Eastern, or Russian, vehicles and weaponry. + Такистанская армия опирается на различные источники, которые представлены в виде отдельных шаблонов в селекторе фракций. Эта фракция использует преимущественно восточные, или российские, транспортные средства и оружие. + + + The Takistani Army is backed by a variety of sources, which are represented as individual templates in the faction selector. This faction is transitioning between military backers and uses a mix of United States and Russian vehicles and weaponry. + Такистанская армия поддерживается различными источниками, которые представлены в виде отдельных шаблонов в селекторе фракций. Эта фракция переходит от одного военного сторонника к другому и использует смесь американских и российских транспортных средств и оружия. + + + The Takistani Army is backed by a variety of sources, which are represented as individual templates in the faction selector. This faction uses primarily Western, or United States, vehicles and weaponry. + Такистанская армия опирается на различные источники, которые представлены в виде отдельных шаблонов в селекторе фракций. Эта фракция использует в основном западные, или американские, транспортные средства и оружие. + + + The Chernorussian Communist Militia is quite similar to NAPA, with a group of citizens that takes faith in the old ways of the Soviet Union over the modern ideology of capitalism. Similar to NAPA, they scavenge whatever Soviet weapons they can. + Чернорусское коммунистическое ополчение очень похоже на NAPA. Это группа граждан, которые верят в старый путь Советского Союза, а не в современную идеологию капитализма. Как и NAPA, они собирают все советское оружие, которое могут найти. + + + A detachment of ION Services, Incorporated, is sent by an unknown client to cause instability in the region. ION mercenaries have better funding and access to a wider variety of assets than other grassroots rebellions. + Отряд ION Services, Incorporated отправлен неизвестным клиентом, чтобы вызвать нестабильность в регионе. Наемники ION имеют лучшее финансирование и доступ к более широкому спектру активов, чем другие низовые повстанцы. + + + The Livonia Separatist Militia works against the, per their view, tyrannic rule of the current government. They use scavenged weapons wherever possible since many members are defectors with previous military experience, but many prefer to fall back on the CZ550, a hunting rifle in 8mm Mauser. + Ливонское сепаратистское ополчение выступает против тиранического, по их мнению, правления нынешнего правительства. По возможности они пользуются оружием, добытым на свалках, так как многие члены ополчения - дезертиры с военным опытом, но многие предпочитают использовать охотничью винтовку CZ550 калибра 8 мм Mauser. + + + The Altis Armed Forces are comprised mostly of combat veterans and patriotic citizens from their home island, with an outdated arsenal being actively renovated. They prefer to use the Mk20 bullpup assault rifle chambered in 5.56x45mm STANAG NATO-standard magazines. + Вооруженные силы Алтиса состоят в основном из ветеранов боевых действий и патриотически настроенных граждан родного острова, а устаревший арсенал активно обновляется. Они предпочитают использовать штурмовую винтовку Mk20 под патрон 5,56x45 мм STANAG NATO. + + + The Army of the Czech Republic, as a landlocked country, primarily focuses on it's Air Force and ground forces. Many of the weapons the ACR use are standard NATO-issue, but they tend to diversify with a variety of homegrown weapons, such as the vz. 58 or CZ BREN. + Армия Чешской Республики, как страны, не имеющей выхода к морю, в первую очередь ориентирована на ВВС и сухопутные войска. Многие виды оружия, используемые ACR, являются стандартным оружием НАТО, но они склонны к разнообразию, используя различные виды отечественного оружия, такие как vz. 58 или CZ BREN. + + + The Armed Forces of the Russian Federation are the current-age Russian Army. Equipping a variety of cutting edge and Cold-War era vehicles, the AFRF typically use homegrown AK assault rifles chambered in 5.45 and 7.62 calibers. + Вооруженные силы Российской Федерации - это современная российская армия. Оснащенные разнообразной новейшей техникой времен холодной войны, ВС РФ обычно используют отечественные автоматы АК калибров 5,45 и 7,62. + + + The British Armed Forces have quite the history, and their unique assortment of weaponry and equipment clearly shows it. They typically use the L85 series of assault rifles, chambered in 5.56 NATO. + Британские вооруженные силы имеют богатую историю, о чем ярко свидетельствует их уникальный ассортимент оружия и снаряжения. Как правило, они используют штурмовые винтовки серии L85 под патрон 5,56 НАТО. + + + The Bundesweher are the current armed forces for Germany. They frequently use domestically produced rifles, such as the G27, G36, and G38 for small arms. Their armored units are rounded out with many NATO and U.S. produced vehicles. + Бундесвер - это действующие вооруженные силы Германии. В качестве стрелкового оружия они часто используют винтовки отечественного производства, такие как G27, G36 и G38. Их бронетанковые подразделения укомплектованы многочисленными машинами производства НАТО и США. + + + The Chernarus Defense Force are the culmination of the land, air, and sea branches dedicated to the defense of Chernarus. They typically use a variety of surplus Russian weaponry, but have cut all ties with the previous government. They are the primary counter-insurgency force against the ChDKZ. + Силы обороны Чернаруса - это совокупность наземных, воздушных и морских подразделений, занимающихся обороной Чернаруса. Как правило, они используют различные излишки российского оружия, но разорвали все связи с предыдущим правительством. Они являются основной противоповстанческой силой в борьбе с ЧДКЗ. + + + The civilians of Chernarus already have enough on their plate with the active civil war in their home country. It's your job to end the rule of the corrupt government over these people's lives. + У мирных жителей Чернаруса и так хватает забот из-за активной гражданской войны в их родной стране. Ваша задача - положить конец господству коррумпированного правительства над жизнью этих людей. + + + No rebellion is won without the support of the civilians, whether they choose to report information to the rebels or volunteer to fight for what is right. Whatever their role may be, the rebellion is always fighting for their freedom. + Ни одно восстание не победит без поддержки мирных жителей, независимо от того, решают ли они сообщать информацию повстанцам или добровольно сражаются за правое дело. Какова бы ни была их роль, повстанцы всегда борются за свою свободу. + + + A coalition of Middle-Eastern and Asian nations led by Iran and China, the Canton protocol Strategic Alliance Treaty's meteoric rise rivals the power of the western NATO coalition. CSAT forces prefer to use the Katiba assault rifle, chambered in 6.5x39mm Caseless. + Коалиция ближневосточных и азиатских стран во главе с Ираном и Китаем, стремительный взлет которой по Кантонскому протоколу Договора о стратегическом союзе соперничает с мощью западной коалиции НАТО. Силы CSAT предпочитают использовать штурмовую винтовку Katiba под патрон 6,5x39 мм Caseless. + + + CSAT forces are frequently operating in the Pacific island of Tanoa at the request of the local government and use Chinese weapons more frequently. They prefer the 5.8x42mm intermediate caliber for the CAR-95 assault rifles. + Силы CSAT часто действуют на тихоокеанском острове Таноа по просьбе местного правительства и чаще используют китайское оружие. Они предпочитают промежуточный калибр 5,8x42 мм для штурмовых винтовок CAR-95. + + + CSAT forces operating in Livonia are Russian-based and use modern Russian gear along with weapons from other nations in the alliance. They typically use the Katiba assault rifle, similar to traditional CSAT doctrine. + Силы CSAT, действующие в Ливонии, базируются в России и используют современное российское снаряжение, а также оружие других стран, входящих в альянс. Как правило, они используют штурмовую винтовку "Катиба", что соответствует традиционной доктрине CSAT. + + + The Bundesweher are the current armed forces for Germany. They frequently use domestically produced rifles, such as the G36, HK416, and HK417 for small arms. Their armored units are rounded out with many NATO and U.S. produced vehicles. + Бундесвер - это действующие вооруженные силы Германии. В качестве стрелкового оружия они часто используют винтовки отечественного производства, такие как G36, HK416 и HK417. Их бронетанковые подразделения укомплектованы многими машинами производства НАТО и США. + + + The Horizon Island Legion are the small military force defending the Pacific island of Tanoa. They typically use Gulf-war era and similar US gear, rounded with a variety of imported European weapons and vehicles and a substantial amount of Vietnam-era small arms. + Легион острова Горизонт - небольшая военная сила, защищающая тихоокеанский остров Таноа. Как правило, они используют американское снаряжение времен войны в Персидском заливе и аналогичное, дополненное различными видами импортного европейского оружия и транспортных средств, а также значительным количеством стрелкового оружия вьетнамской эпохи. + + + The Royal Army Corps of Sahrani use a variety of NATO and U.S. vehicles and weaponry, with some diversity depending on individual preference, often including versions of the FN FAL or HK G36. + Королевский армейский корпус Сахрани использует различные транспортные средства и вооружение НАТО и США, с некоторым разнообразием в зависимости от индивидуальных предпочтений, часто включая версии FN FAL или HK G36. + + + The Sahrani Liberation Army are a group that opposes the Western support of the current government and has successfully acquired assets from a variety of Eastern nations to execute a violent coup in Sahrani. They use a wide variety of AK-pattern rifles. + Освободительная армия Сахрани - группа, выступающая против поддержки Западом нынешнего правительства, которая успешно приобрела активы у различных восточных стран, чтобы совершить насильственный переворот в Сахрани. Они используют широкий спектр автоматов типа АК. + + + The Takistani Army maintains a healthy stockpile of Soviet-era equipment and small arms after the end of official Soviet occupation. Their arsenal is rounded out with the occaisonal foreign rifle, such as the FAL 50.61. + После окончания официальной советской оккупации армия Такистана сохранила значительные запасы советского снаряжения и стрелкового оружия. Их арсенал пополняется редкой иностранной винтовкой, например FAL 50.61. + + + The AAF's treatment of the civilans on Altis has left many moving for a change in leadership, and the Freedom and Independence Army is here to restore freedom and a government with the people in mind. The FIA primarily use sub-machine guns to start with, quickly transitioning to stolen enemy weapons. + Обращение AAF с гражданским населением на Алтисе привело к тому, что многие стали требовать смены руководства, и Армия свободы и независимости пришла сюда, чтобы восстановить свободу и правительство, ориентированное на людей. Для начала FIA использует в основном пистолеты-пулеметы, быстро переходя на краденое оружие противника. + + + The Bundesweher are the current armed forces for Germany. They frequently use domestically produced rifles, such as the G36 and HK33 for small arms. Their armored units are rounded out with many NATO and U.S. produced vehicles. + Бундесвер - это действующие вооруженные силы Германии. В качестве стрелкового оружия они часто используют винтовки отечественного производства, такие как G36 и HK33. Их бронетанковые подразделения укомплектованы многочисленными машинами производства НАТО и США. + + + The NVA were the predominant armed forces in Germany from 1956 to 1990, with the fall of the Soviet Union. They typically use a wide variety of AK pattern rifles due to the overwhelming availability. + NVA были доминирующими вооруженными силами в Германии с 1956 по 1990 год, после распада Советского Союза. Они обычно используют широкий спектр автоматов типа АК, что объясняется их широкой доступностью. + + + The civilians of Germany never wanted a civil war, yet the conflicting interests of two leaders has led the country and its citizens into a very poor position. The FIA aim to lift this burden by taking matters into their own hands. + Граждане Германии никогда не хотели гражданской войны, но конфликт интересов двух лидеров привел страну и ее граждан в крайне бедственное положение. FIA стремится снять это бремя, взяв дело в свои руки. + + + The Freedom and Independence Army is a group of civilians opposing the occupation of the BW and NVA. They make good use of their ample suply of Mosin-Nagants, but rapidly switch to locally produced rifles when they can be acquired. + Армия свободы и независимости - это группа гражданских лиц, выступающих против оккупации BW и NVA. Они используют достаточные запасы винтовок Мосина-Наганта, но быстро переходят на винтовки местного производства, когда их удается приобрести. + + + The Allies of World War II were a coalition of nations dedicated to fighting the Wehrmacht's ruthless invasion of its neighboring countries. They most often use American-exported weapons, such as the M1 Garand, M1A1 Thompson, and M1 Carbine. + Союзники во Второй мировой войне - это коалиция стран, призванная бороться с безжалостным вторжением вермахта в соседние страны. Чаще всего они использовали оружие американского производства, такое как M1 Garand, M1A1 Thompson и M1 Carbine. + + + The Soviets during World War II worked with the Allies after Russian territory was invaded during the Wehrmacht's destructive path to power. They most often use the PPSH-41 submachine gun and Mosin-Nagant rifle, with few exceptions. + Советские войска во время Второй мировой войны сотрудничали с союзниками после того, как территория России была захвачена в ходе разрушительного пути вермахта к власти. Чаще всего они использовали пистолет-пулемет ППШ-41 и винтовку Мосина-Наганта, за редким исключением. + + + The United Kingdom was at the forefront of World War II, a final show of force from a once-great empire. They commonly use a variety of home-grown weapons like the Sten and Enfield, mixed with a variety of American export weaponry. + Великобритания была на переднем крае Второй мировой войны - последняя демонстрация силы некогда великой империи. Они обычно используют различные виды отечественного оружия, такие как "Стен" и "Энфилд", в сочетании с американским экспортным оружием. + + + Ruthless and willing to do anything for a quick buck, the private military corporation of ION Services, Incorporated and it's diverse set of contractors believe every job has a reasonable price. The company buys assets in bulk for dirt-cheap, and there is no standard-issue rifle. + Безжалостная и готовая на все ради быстрой наживы частная военная корпорация ION Services, Incorporated и ее разнообразные подрядчики считают, что у каждой работы есть разумная цена. Компания закупает имущество оптом и по дешевке, а стандартных винтовок не существует. + + + The dedicated protectors of a small Eastern European territory near Belarus, the Livonia Defense Force are a relatively small but deceptively capable army. They use custom-made Promet rifles, often utilizing custom sights and underbarrel shotgun attachments. + Самоотверженные защитники небольшой восточноевропейской территории, расположенной неподалеку от Белоруссии, Силы обороны Ливонии - относительно небольшая, но обманчиво боеспособная армия. Они используют сделанные на заказ винтовки Promet, часто с прицелами и подствольными дробовиками. + + + The Livonia Freedom Fighters believe that the LDF has grown corrupt and that the government needs to be reevaluated, whether peacefully or with force by the hands of the rebellion forming in Livonia. The LFF often use basic hunting shotguns until the opportunity to steal an enemy weapon presents itself. + Ливонские борцы за свободу считают, что ЛДФ стал коррумпированным и что правительство нуждается в переоценке, будь то мирным путем или с применением силы руками восстания, формирующегося в Ливонии. LFF часто пользуются простыми охотничьими ружьями, пока не представится возможность украсть оружие противника. + + + The National Party formed as a civilian militia during the civil war between the CDF and the ChDKZ. As the territory was previously part of the Soviet Union, NAPA uses weapons it can steal from either Russian-backed force, but many militiamen fall back on the commonly available Kar98K. + Национальная партия сформировалась как гражданское ополчение во время гражданской войны между ХДС и ЧДКЗ. Поскольку территория ранее входила в состав Советского Союза, НАПА использует оружие, которое она может украсть у любой из поддерживаемых Россией сил, но многие ополченцы предпочитают использовать общедоступный Kar98K. + + + Since its founding in 1949, the North Atlantic Treaty Organization has been dedicated to ensuring the safety and security of all nations involved in the alliance, leading to one of the world's most lethal superpowers. NATO forces use the 6.5x39mm cartridge for almost all small arms. + С момента своего основания в 1949 году Организация Североатлантического договора посвятила себя обеспечению безопасности всех стран, входящих в альянс, и стала одной из самых смертоносных сверхдержав в мире. Силы НАТО используют патрон 6,5x39 мм почти для всего стрелкового оружия. + + + Since its founding in 1949, the North Atlantic Treaty Organization has been dedicated to ensuring the safety and security of all nations involved in the alliance, with this regiment hailing from the United Kingdom and using the SPAR-16 and SPAR-17 rifles. + С момента своего основания в 1949 году Организация Североатлантического договора призвана обеспечивать безопасность всех стран, входящих в альянс. Полк, в котором используются винтовки SPAR-16 и SPAR-17, дислоцируется в Великобритании. + + + The Chernarussian Movement of the Red Star is a pro-Russian separatist movement that quickly evolved to an active civilian militia to a powerful force capable of challenging governments directly. They normally use Cold-War era Soviet equipment and vehicles. + Чернарусское движение Красной Звезды - это пророссийское сепаратистское движение, которое быстро превратилось из активного гражданского ополчения в мощную силу, способную бросить прямой вызов правительству. Они обычно используют советское оборудование и транспортные средства времен холодной войны. + + + The Serbian Armed Forces used to primarily use Soviet equipment, but have since diversified their arsenal after the fall of the Soviet Union. They often wield the HK G36, and commonly use American Humvees along with a host of more modern Russian vehicles. + Раньше сербские вооруженные силы использовали в основном советскую технику, но после распада Советского Союза их арсенал стал более разнообразным. Они часто используют HK G36 и американские "Хаммеры", а также множество более современных российских машин. + + + Syndikat supporters see through the reign of CSAT on the Pacific island of Tanoa and are actively attempting to overthrow the government responsible for allowing foreign occupation. Similar to the FIA, they typically use sub-machine guns for hit-and-run tactics. + Сторонники Синдиката видят, что на тихоокеанском острове Таноа правят CSAT, и активно пытаются свергнуть правительство, допустившее иностранную оккупацию. Подобно FIA, они обычно используют пистолеты-пулеметы для тактики "налета и бегства". + + + The Swedish Defense Force was never focused on any exploratory ventures into surrounding nations, instead opting to maintain its alliances and fortify the Swedish border from any kind of enemy attack. They use a variety of homegrown weapons, often using the AK4, a variant of the G3. + Шведские силы обороны никогда не были нацелены на исследовательские экспедиции в соседние страны, предпочитая поддерживать свои союзы и укреплять шведскую границу от любых вражеских нападений. Они используют разнообразное отечественное оружие, часто применяя АК4, вариант G3. + + + The Swedish Defense Force was never focused on any exploratory ventures into surrounding nations, instead opting to maintain its alliances and fortify the Swedish border from any kind of enemy attack. They use a variety of homegrown weapons, often using the AK5, a variant of the FN FNC. + Шведские силы обороны никогда не были нацелены на исследовательские экспедиции в соседние страны, предпочитая поддерживать свои союзы и укреплять шведскую границу от любых вражеских нападений. Они используют разнообразное отечественное оружие, часто применяя АК5 - вариант FN FNC. + + + The United States represented the industrial backbone of the Allies during World War II. U.S. forces typically use a wide variety of battle rifles and SMGs, such as the M1 Garand and M1A1 Thompson. + Во время Второй мировой войны Соединенные Штаты составляли промышленную основу союзников. Американские войска обычно используют широкий спектр боевых винтовок и SMG, таких как M1 Garand и M1A1 Thompson. + + + The Wehrmacht were the armed forces of Germany during World War II. They typically use the Kar98K, and a variety of sub-machine guns like the MP38 and MP40, and created the first true assault rifle, the STG 44. + Вермахт был вооруженными силами Германии во время Второй мировой войны. Они обычно использовали Kar98K и различные пистолеты-пулеметы, такие как MP38 и MP40, а также создали первую настоящую штурмовую винтовку STG 44. + + + The civilians of France have certainly seen their fair share of turmoil over the last 300 years, but the impact of World War II has been unlike anything seen before. The FFF wishes to liberate these people from the clutches of the Germans. + За последние 300 лет мирные жители Франции пережили немало потрясений, но последствия Второй мировой войны не похожи ни на какие другие. FFF хочет освободить этих людей из лап немцев. + + + The Free French Forces are a separatist movement defending themselves primarily against the Wehrmacht, and later against the aggression of the United Kingdom and other Allied countries. Many Kar98K rifles are available, making them the precision weapon of choice for any revolutionary. + Силы Свободной Франции - сепаратистское движение, защищавшееся в первую очередь от вермахта, а затем от агрессии Великобритании и других союзных стран. В наличии имеется множество винтовок Kar98K, что делает их высокоточным оружием для любого революционера. + + + The remainder of the civilians who were unable to evacuate the combat zone, the Takistani civilians are always on alert and have learned not to trust anyone. Make sure you restore peace to their lands. + Оставшиеся мирные жители, которые не смогли эвакуироваться из зоны боевых действий, - такистанцы всегда начеку и научились никому не доверять. Убедитесь, что вы восстановили мир на их землях. + + + The Takistani militia is an unexpectedly well-armed group of civilians who hold a significant opposition to the foreign occupation and support the acting government is attempting to use to bolster its ranks. They use a variety of scavenged weapons, commonly relying on bolt-action rifles. + Такистанское ополчение - неожиданно хорошо вооруженная группа гражданских лиц, выступающих против иностранной оккупации и поддержки, которую действующее правительство пытается использовать для укрепления своих рядов. Они используют разнообразное оружие, добытое в мусорных баках, в основном полагаясь на винтовки с продольно-скользящим затвором. + + + The Tanoa Liberation Army is built on the dreams of hundreds, even thousands of soldiers to return the volcanic island of Tanoa to its former glory. They are very poorly funded, and typically use some of the oldest Cold War Soviet technology. + Освободительная армия Таноа построена на мечтах сотен и даже тысяч солдат вернуть вулканическому острову Таноа его былую славу. Они очень плохо финансируются и обычно используют самые старые советские технологии времен холодной войны. + + + The People's Army of Vietnam are the citizens and militia of Vietnam dedicated to fighting the invasion of the US, with weapons funded from surrounding Eastern countries such as China and the Soviet Union. They typically use Type 56 assault rifles and the SKS battle rifle. + Народная армия Вьетнама - это граждане и ополченцы Вьетнама, призванные бороться против вторжения США, с оружием, полученным от окружающих восточных стран, таких как Китай и Советский Союз. Как правило, они используют штурмовые винтовки Тип 56 и боевую винтовку СКС. + + + This is the Military Assistance Command, Vietnam, and are the operational of the US military tasked with invading Vietnam. They normally use later World War 2 weapons with a few fresh faces, like the M14, M16, and M60. + Это Командование военной помощи Вьетнаму, оперативное подразделение вооруженных сил США, которому поручено вторжение во Вьетнам. Обычно они используют оружие времен Второй мировой войны, а также несколько новых образцов, таких как M14, M16 и M60. + + + The Vietcong are a milita separatist force directly fighting the PAVN and it's reliance on the power of foreign nations. Due to the high availablilty, the VC typically use similar weapons as the PAVN, including a variety of AK variants and AK clones. + Вьетконг - сепаратистская военная сила, напрямую борющаяся с ПАВН и его зависимостью от власти иностранных государств. Из-за высокой доступности оружия ВК, как правило, используют то же оружие, что и ПАВН, включая различные варианты АК и клоны АК. + + + The United States Army are one of the world's most dangerous military superpowers, with their alliance to NATO making them a difficult threat. They typically produce and use a substantial amount of NATO weaponry, including 5.56 STANAG and 7.62 calibers. + Армия Соединенных Штатов - одна из самых опасных военных сверхдержав в мире, а их союз с НАТО делает их сложной угрозой. Как правило, они производят и используют значительное количество оружия НАТО, включая калибры 5,56 STANAG и 7,62. + + + The United States Marine Corps are the primary branch of the US military deployed overseas. They retain the same lethality as their domestic counterparts, with equipment fitted for operating on the high seas. Their small arms are predominantly the same as the standard US Army. + Корпус морской пехоты США - основное подразделение вооруженных сил США, развернутое за рубежом. Они сохраняют ту же смертоносность, что и их отечественные коллеги, а их снаряжение приспособлено для действий в открытом море. Их стрелковое оружие в основном такое же, как и в армии США. + + + The Russian Air Forces fill a vital gap in the AFRF's capability of cohesive aerial assaults. They typically use standard issue Russian equipment, but their vehicles and gear are modified to be more lightweight for ease of aerial operations. + Российские ВВС заполняют жизненно важный пробел в возможностях ВСРФ по проведению сплоченных воздушных десантов. Как правило, они используют стандартное российское оборудование, но их машины и снаряжение модифицированы для облегчения воздушных операций. + + + The Military Assistance Command, Vietnam are the operational group of the US military tasked with invading Vietnam. They normally use later World War II weapons with a few fresh faces, like the M14, M16, and M60. + Командование военной помощи Вьетнаму - оперативная группа вооруженных сил США, которой поручено вторжение во Вьетнам. Обычно они используют оружие времен Второй мировой войны, а также несколько новых образцов, таких как M14, M16 и M60. + + + The People's Army of Vietnam are the citizens and militia of Vietnam dedicated to fighting the invasion of the US, with weapons funded from surrounding Eastern countries such as China and the Soviet Union. They typically use Type 56 assault rifles and the SKS battle rifle. + Народная армия Вьетнама - это граждане и ополченцы Вьетнама, призванные бороться против вторжения США, с оружием, полученным от окружающих восточных стран, таких как Китай и Советский Союз. Как правило, они используют штурмовые винтовки Тип 56 и боевую винтовку СКС. + + + The noncombatant civilians of Vietnam wish for no part in this war, solely looking to go back to the time where they could farm in peace. + Не участвующие в боевых действиях мирные жители Вьетнама не желают принимать никакого участия в этой войне, а лишь хотят вернуться в то время, когда они могли спокойно заниматься сельским хозяйством. + + + The Pissed Off Farmers are an excellent example of what happens when you mess with the rice paddies. They have a high supply of Mosin-Nagants, due to the incredible mass-production during World War II. + Взбешенные фермеры - отличный пример того, что бывает, если возиться с рисовыми полями. У них большой запас пистолетов Мосина-Наганта, благодаря невероятно массовому производству во время Второй мировой войны. + + + The Arganian Defense Force is the organized army defending Argana. They take the role of the benevolent overlords, leaving the SFIA to do the dirty work under the sponsorship of the ADF. They use the Velko rifles along with the Mk20 bullpup rifle. + Силы обороны Арганы - это организованная армия, защищающая Аргану. Они выступают в роли доброжелательных владык, оставляя SFIA выполнять грязную работу под патронажем ADF. Они используют винтовки Велко, а также винтовку Mk20 буллпап. + + + ION Services, Incorporated forces around Sefrou Ramal are still classified as independent contractors, but are hired by third parties for specific jobs in the destabilized region. They use the custom-made XMS bullpup rifles with standard STANAG magazines. + Силы ION Services, Incorporated вокруг Сефру Рамаль по-прежнему классифицируются как независимые подрядчики, но нанимаются третьими сторонами для выполнения конкретных работ в дестабилизированном регионе. Они используют сделанные на заказ винтовки XMS в стиле буллпап со стандартными магазинами STANAG. + + + The Sefrawi Freedom and Independence Army is a state-backed paramilitary group, funded and reporting directly to the Arganian government for the work that's too dirty for the ADF's soldiers. They typically use the Velko rifles, which are domestically sourced. + Армия свободы и независимости Сефрауи - это военизированная группировка, поддерживаемая государством, финансируемая и подчиняющаяся непосредственно правительству Аргании для выполнения работы, которая слишком грязная для солдат ADF. Они обычно используют винтовки Велко, которые производятся внутри страны. + + + Many of the citizens of Sefrou-Ramal have not had the chance to evacuate yet, making the area very dangerous for any noncombatants. The Tura look to help the residents of their homeland however possible. + Многие жители Сефру-Рамаля еще не успели эвакуироваться, что делает эту местность очень опасной для всех, кто не участвует в боевых действиях. Тура стремятся помочь жителям своей родины, насколько это возможно. + + + The Tura are an ancient tribe that opposes the urbanization and military presence in Sefrawi and is willing to take up arms to retake what once was their home. They use weapons stolen from the enemy, as well as armored pickups and technicals for assault. + Тура - древнее племя, которое выступает против урбанизации и военного присутствия в Сефрауи и готово взяться за оружие, чтобы отвоевать то, что когда-то было их домом. Для нападения они используют оружие, украденное у врага, а также бронированные пикапы и технику. @@ -9088,8 +10747,15 @@ Take control of a selected AI squad member or High Command Squad Leader. All actions can be performed through the AI for 60 seconds. You will lose control if the player or unit receives any damage Prendi il controllo di un membro di squadra IA selezionato o un Capo squadra assegnato all'Alto Comando. Puoi compiere tutte le azioni che vuoi per 60 secondi. Il controllo verrà perso se il giocatore o l'IA controllata ricevono ogni tipo di danno + Toma el control personal de un miembro de la escuadra seleccionado. Te permitirá tomar cualquier acción por 60 segundos. El control será cancelado si el jugador o el soldado seleccionado reciben cualquier tipo de daño + Prenez le contrôle personnel du membre d'escouade sélectionné ou du chef d'escouade HC et soyez capable d'effectuer n'importe quel type d'actions pendant 60 secondes. L'état de contrôle sera annulé si le joueur ou l'unité contrôlée subit tout type de dommage 선택된 분대원 또는 하이 커맨드 분대장을 개인적으로 통제하고 60초 동안 어떠한 종류의 행동이든 수행할 수 있습니다. 플레이어 또는 조종하는 유닛에게 어떠한 종류든 데미지를 입으면 조종 상태가 취소됩니다. + Возьмите под личный контроль выбранного члена отряда или лидера отряда через меню Командующего и получите возможность выполнять любые действия в течение 60 секунд. Состояние контроля будет отменено, если игрок или управляемый юнит получит какой-либо урон. + Przejmij kontrolę nad wybranym członkiem oddziału lub dowódcą oddziału HC i bądź w stanie wykonywać dowolne czynności przez 60 sekund. Stan kontroli zostanie anulowany, jeśli gracz lub kontrolowana jednostka otrzyma jakiekolwiek obrażenia Převezměte osobní kontrolu nad vybraným členem družstva nebo velitelem HC družstva a budete moci provádět jakékoli akce po dobu 60 sekund. Stav kontroly bude zrušen, pokud hráč nebo kontrolovaná jednotka dostane jakýkoli druh poškození + Toma controlo pessoal do membro do pelotão selcionado ou o líder de pelotão do AC e serás capaz de realizar qualquer tipo de ação durante 60 segundos. O estado de controlo será cancelado assim que o jogador ou a unidades receba qualquer tipo de dano. + Seçilen manga üyesi veya Yüksek Komuta manga liderinin kişisel kontrolünü elinize alın ve 60 saniye boyunca her türlü eylemi gerçekleştirebileceksiniz. Oyuncu veya kontrol edilen birim herhangi bir hasar alırsa kontrol durumu iptal edilecektir. + 亲自控制选定的班组成员或指挥部班组的班长, 并可在60秒内执行任何动作。如果玩家或受控单位受到任何伤害, 控制状态将被取消 Auto Heal @@ -9108,16 +10774,27 @@ AI squad mates will proactively heal each other I compagni di squadra IA si cureranno attivamente tra di loro + Los compañeros de la IA se curarán proactivamente unos a otros + Les coéquipiers de l'escouade IA se soigneront mutuellement de manière proactive AI 분대원들은 서로를 적극적으로 치료할 것입니다. + ИИ-соотрядники будут активно лечить друг друга + Członkowie drużyny AI będą się aktywnie leczyć AI členové družstev se navzájem aktivně léčí + YZ takım arkadaşları proaktif olarak birbirlerini iyileştirecek + AI将会主动互相治疗 Auto Rearm / Loot Automatisches Aufmunitionieren/Plündern Auto Riarmo / Saccheggio + Auto Rearme / Botín Réarmement automatique \ Loot 자동 재무장 / 노획 + Автоперезарядка \ Лут + Automatyczne Dozbrajanie \ Zbieranie Automatické přezbrojování / Rabování + Otomatik Silahlanma \ Yağma + 自动重新武装\战利品 AI will search for better weapons, vests, helmets etc. If they are in a vehicle, they will just store what they scavenge in the vehicle. If not, they will equip them @@ -9221,8 +10898,15 @@ Gets a situation report from the selected HC squad. Recupera info approposito lo stato della squadra selezionata in Alto Comando + Recupera informacion sobre el estado de una Escuadra de HC. + Récupérer des informations sur le statut d'une escouade HC 하이 커맨드 분대로부터 상황 보고를 받습니다. + Доложить информацию о статусе отряда + Odzyskaj informacje o stanie drużyny HC Získat informace o statusu počtu jednotek v družstvu. + Recolher informação sobre o status de um pelotão do AC + Bir HC takım durumu hakkında bilgi kurtarın + 回报指挥部班组的状态 Squad Add Vehicle @@ -9239,8 +10923,14 @@ Look at some vehicle and assign it to the selected squad for its use Guarda qualche veicolo e assegnalo alla squadra selezionata in modo che possano usarlo + Mira hacia un vehículo y asignalo a la escuadra seleccionada para su uso + Regardez un véhicule et attribuez-le à l'escouade sélectionnée pour son usage 차량을 보고 선택된 분대에 차량을 할당합니다. + Посмотрите на какую-нибудь технику и назначьте ее выбранному отряду для использования + Spójrz na jakiś pojazd i przypisz go do wybranego oddziału Podívejte se na nějaké vozidlo a přiřaďte jej vybranému družstvu pro jeho použití + Bir araca bakın ve onu kullanması için seçilen mangaya atayın + 将面前的载具分配给选定的班组使用 @@ -9349,6 +11039,7 @@ La caja del constructor ya está en uso por %1 La boite de construction est déjà utilisée par %1 건물 배치기는 이미 %1에 의해 사용되는 중입니다 + Ящик строителя уже используется %1 You can not use the placer while there are enemies nearby. @@ -9356,6 +11047,7 @@ No puede usar el colocador mientras haya enemigos cerca. Vous ne pouvez pas utiliser le placeur tant que des ennemis sont proches. 적들이 근처에 있을 때는 배치기를 사용할 수 없습니다. + Вы не можете использовать площадку, если рядом находятся враги. You are not eligible to use the building placer. @@ -9363,6 +11055,7 @@ Usted no es elegible para usar el colocador de construcciones. Vous n'êtes pas éligible pour utiliser le placeur de constructions. 당신은 건물 배치기를 사용할 자격이 없습니다. + Вы не имеете права использовать строительную площадку. Server failed to respond to building placer request. @@ -9370,6 +11063,7 @@ El servidor falló al responder a la petición del colocador de construcciones. Le serveur n'a pas répondu à la requête du placeur de constructions. 서버가 건물 배치 요청에 응답하지 못했습니다. + Серверу не удалось ответить на запрос "Строительная площадка". Building Placer @@ -9377,6 +11071,7 @@ Colocador de construcciones Placeur de Constructions 건물 배치기 + Строительная площадка @@ -9407,8 +11102,14 @@ Gain air support points by sacrificing the aircraft you're looking at. Use these points to call in HE, Cluster, and Napalm strikes. Ottieni Punti Supporto Aereo consegnando questo veivolo alla fazione. Usa questi punti per richiedere bombardamenti. + Gana puntos de ataque aéreo dando esta nave al almacén de la facción + Gagnez des points de support aérien en donnant cet avion à la réserve aérienne de la faction 현재 보고 있는 항공기를 희생하고 항공 지원 포인트를 얻습니다. 이 포인트를 사용하여 고폭, 집속, 네이팜 폭격을 요청하십시오. + Получайте очки за авиаудар, отдавая этот самолет в пул авиации фракции. + Zdobądź punkty Nalotu, dając ten pojazd do puli pojazdów latających twojej frakcji Získejte body letecké podpory obětováním vozidla, na které se díváte. Použijte tyto body na zavolání HE, klusterového nebo napalmového bombardování. + Bu uçağı Hava Havuzu grubuna vererek Hava Saldırısı puanları kazanın + 将这架飞机添加至阵营空军, 并获得空袭点数 Cluster Bombs @@ -9511,8 +11212,22 @@ Cleans dead bodies, dropped gear, destroyed vehicles and similar entities. Helps massively with client and server performance, and running this every hour is recommended. Pulisce corpi, equipaggiamento a terra, veicoli distrutti e entità simili. Aiuta massivamente con le performance di client e server, è raccomandato di eseguirlo una volta ogni ora. + Limpia varias cosas en el juego. Utilizalo con precaución ya que congela la misión. + Nettoie plusieurs choses dans le jeu. À utiliser avec prudence car cela gèle la mission 시체, 떨어진 장비, 파괴된 차량 및 이와 유사한 개체들을 청소합니다. 클라이언트 및 서버 성능에 큰 도움이 되며 매 시간 실행하는 것이 좋습니다. + Очищает некоторые предметы в игре. Используйте с осторожностью, так как это заставляет миссию залагать. + Czyści niepotrzebne przedmioty i ciała z ziemi poprawiając wydajność gry. Używaj ostrożnie, ponieważ zamraża misję Vyčistí mrtvá těla, zahozenou výzbroj, zničené vozidla a podobné entity. Výrazně pomáhá s chodem klienta a servru, doporučuje se spustit alespoň jednou za hodinu. + Oyunda birçok şeyi temizler. Görevi dondurduğu için dikkatli kullanın + 清理游戏中的一些东西。谨慎使用, 因为它可能导致任务卡死 + + + Convert to Squad + Преобразование в отряд + + + Convert currently selected AI units to a high command squad. + Преобразуйте выбранные в данный момент отряды AI в отряды высшего командования. Faction Garage @@ -9602,15 +11317,26 @@ Outpost-Roadblock Delete Elimina Punto di osservazione - Posti di Blocco + Borrar P. Observación - Bloqueo Suppression de Poste d'Obs. - Barrage routier 감시초소 - 검문소 제거 + Удалить НП / БП + Usuń Stanowisko Obserwacyjne - Blokade Drogową O.Post-Odstranit zátaras + Karakol - Kontrol Noktası Kaldır + 拆除观察哨/路障 Remove selected observation post or roadblock, the money spent will be refunded Rimuovi il posto di osservazione o il posto di blocco selezionato, i soldi verranno rimborsati + Borra el punto de observación o bloqueo de carretera, el dinero sera reembolsado + Supprimer le poste d'observation ou le barrage routier sélectionné, l'argent sera remboursé 선택한 감시초소 또는 검문소를 제거하면 자금으로 환불됩니다. + Удалите выбранный наблюдательный пункт или блокпост, деньги будут возвращены + Usuń wybrane stanowisko obserwacyjne lub blokadę drogową, pieniądze zostaną zwrócone Odstraňte vybraný pozorovací bod nebo zátaras, peníze budou vráceny + Seçili Gözetleme Noktasını veya Kontrol Noktasını kaldırın, para iade edilecektir + 拆除选定的观察哨或路障并退回费用 Establish a new watchpost or roadblock depending on the type of terrain you select @@ -9840,8 +11566,14 @@ Build your rebellion from scratch and defeat the occupants and invading forces in a persistent whole map Dynamic Mission. Formiere deine Rebellen-Armee und bezwinge die Besatzer und die eindringenden Kräfte in einer dynamischen Mission auf der gesamten Karte. Costruisci la tua ribellione da zero e sconfiggi le forze occupanti e aggressori in una missione dinamica su tutta la mappa. + Construye el ejército FIA desde cero y derrota a las fuerzas AAF y CSAT en una misión dinámica en todo el mapa. + Recrutez une armée de la FIA à partir de rien et vainquez les forces de l'AAF et CSAT à travers toute la carte dans une Mission Dynamique 기초부터 반군을 일으켜 지도 전체에서 일어나는 다이나믹한 임무와 함께 점령군과 침략군을 물리치십시오. + Создайте свою армию с нуля и заставьте силы AAF и CSAT отступить в Динамической Миссии на всей карте. + Zbuduj armię FIA od podstaw i pokonaj siły AAF i CSAT w dynamicznej misji na całej mapie. Postavte armádu rebelů od nuly a porazte síly okupantů a vetřelců na celé mapě v dynamické perzistentní misi. + FIA Ordusunu sıfırdan oluşturun ve AAF ve CSAT güçlerini tüm harita Dinamik Görevinde yenin + 从头开始建立FIA军队, 在整张地图上执行动态任务, 击败AAF和CSAT部队。 @@ -10087,23 +11819,36 @@ Recruit AA Missile Unit Recluta Unità Missilistica AA Reclutar Unidad con lanzacohetes AA + Recruter un Missile AA 대공미사일전문가 모집 + Нанять Специалиста ПВО Rekrutovat AA jednotku. + Hava Savunma Roketçisi Göreve Al + 招募防空导弹兵 Recruit AT Unit Panzerabwehreinheit rekrutieren Recluta unità Anti Carro + Reclutar AT Recruter un AT 대전차병 모집 + Нанять ПТ Стрелка + Rekrutuj Celowniczego PPANC Rekrutovat Raketometčíka + Anti-Tank Askeri Göreve Al + 招募反坦克手 Recruit AT Missile Unit Recluta Unità Missilistica AT Reclutar Unidad con lanzacohetes AT + Recruter un Missile AT 대전차미사일전문가 모집 + Нанять Стрелка с ПТУР Rekrutovat Raketometnou jednotku + Anti-Tank Roketcisi Göreve Al + 招募反坦克导弹兵 Recruit Autorifleman @@ -10161,9 +11906,14 @@ Recruit Mortar Unit Mörsereinheit rekrutieren Recluta unità Mortaio + Reclutar Mortero Recruter un Mortier 박격포병 모집 + Нанять Минометный расчет + Rekrutuj Moździerz Rekrutovat Minometčíka + Havan Göreve Al + 招募迫击炮 Recruit Rifleman @@ -10379,8 +12129,16 @@ Petros will join your group. To rebuild, select the Build HQ here option on Petros. + Petros tritt deiner Gruppe bei. Inventar der Arsenal-Kiste muss leer sein um das HQ versetzen zu können. Zur Neuerrichtung die Bauaktion an Petros auswählen. + Petros si unirà al tuo gruppo. La cassa di munizioni deve essere vuota per muovere il QG. Per ricostruirla, seleziona la voce Costruisci QG da Petros + Pertos se unirá a tu grupo. La caja de munición debe estar vacía. Para reconstruir, selecciona la acción Construir cerca de Petros + Petros va rejoindre votre groupe. L'Arsenal doit être vide. Pour reconstruire, sélectionnez l'action "Construire" à côté de Petros. 페트로스가 당신의 그룹에 합류할 것입니다. 재건축하려면 페트로스에게서 여기에 본부 건설하기를 선택하십시오. + Петрос присоединится к вашей группе. Чтобы построить Штаб, выберите действие "Построить" возле Петроса. Арсенал должен быть пуст. + Petros dołączy do twojej drużyny. Skrzynka na amunicję musi być pusta. Aby odbudować, wybierz akcję Buduj w pobliżu Petrosa Petros se připojí k vaší skupině. Chcete-li vytvořit velitelství, vyberte možnost u Petrose „Zřídit velitelství“. + Petros grubunuza katılacak. Cephane kutusu boş olmalıdır. Yeniden inşa etmek için Petros yakınında İnşa eylemini seçin + Petros将会加入您的小队。弹药箱必须为空。在Petros附近选择"建造"选项来重建总部。 Rebuild Assets @@ -10412,9 +12170,14 @@ Train your Troops Bilde deine Truppen aus Addestra le tue truppe + Entrenar tropas FIA Entrainer les troupes 아군 병사 훈련 + Тренировать Войска + Trenuj Siły FIA Vycvičit vaše jednotky + Askerleri Eğit + 训练FIA部队 Upgrades the AI skill level @@ -10500,8 +12263,16 @@ Recruit Anti-Tank Soldier + Panzerabwehrsoldat rekrutieren + Recluta Soldato Anticarro + Reclutar AT + Recruter un Soldat Antichar 대전차병 모집 + Нанять ПТ стрелка + Rekrutuj Celowniczego PPANC Rekrutovat Raketometčíka + Anti-Tank Askeri Al + 招募反坦克手 Recruit AT Missile Soldier @@ -10663,8 +12434,14 @@ Civilian vehicles allow you to travel in Undercover mode. You will be spotted if you stray too far from the road, as well as if you get too close to outposts, seaports, roadblocks, or airbases Zivilfahrzeuge erlauben dir unentdeckt zu reisen. Du wirst entdeckt sofern du dich zu weit von Straßen entfernst und wenn du zu nah Basen, Außenposten oder Straßensperren gerätst. I veicoli civili ti permetteranno di viaggiare in modalità Sotto copertura ma solo rimanendo vicino alle strade e non entrando in basi, avamposti e posti di blocco. + Los vehículos civiles te permiten viajar en modo encubierto mientras estés cerca de caminos y no entres a bases, bloqueos militares ni zonas de vigilancia + Les véhicules civils vous permettent de vous déplacer Incognito, tant que vous restez près des routes et n'entrez pas dans les bases, avant-postes et barrages routiers. 민간 차량을 사용하면 위장 모드로 여행이 가능합니다. 도로에서 너무 멀리 벗어나거나 전초 기지, 항구, 검문소 또는 공군 기지에 너무 가까이 다가가면 발각될 것입니다. + Гражданская техника позволяет Вам передвигаться как гражданскому лицу, пока Вы движетесь по дорогам вдалеке от баз, аванпостов и блокпостов. + Pojazdy cywilne pozwolą ci podróżować w trybie incognito, jedynie kiedy zostajesz blisko dróg i nie wjeżdżasz na teren baz wojskowych, posterunków i blokad drogowych. Civilní vozidla vám umožní cestovat v režimu "utajení". Budete prozrazeni pokud se ocitnete příliš daleko od cesty, nebo když se příliš přiblížíte k postavením, přístavům, zátarasám nebo letištím. + Sivil araçlar, yollardayken (üslere, karakollara ve kontrol noktalarına girmeden) gizli modda seyahat etmenize olanak tanıyacak. + 民用载具可以让您在伪装模式下旅行, 前提是您待在道路附近, 不要靠近基地、前哨站或路障. Military Vehicle @@ -11253,8 +13030,14 @@ Affects performance. Please use this with caution. Set it to lower distances if you feel Antistasi is running poorly. Affligge le prestazioni. Usare con estrema cautela. Imposta distanze inferiori se ritieni che Antistasi stia girando male. + Afecta al rendimiento. Por favor, usa esto con cautela. Seleccionalo a menor distancia si notas que Antistasi está funcionando mal. + Affecte les performances. Veuillez l'utiliser avec prudence. Réglez-le sur des distances plus courtes si vous pensez qu'Antistasi fonctionne mal. 성능에 영향을 미칩니다. 주의하여 사용하십시오. 안티스타시가 작동하지 않는 것 같으면 더 낮은 거리로 조정하십시오. + Влияет на производительность. Пожалуйста, используйте это с осторожностью. Установите меньшее расстояние, если чувствуете, что Antistasi работает плохо. + Wpływa na wydajność. Proszę używać tego ostrożnie. Ustaw go na mniejsze odległości, jeśli czujesz, że Antistasi działa źle. Má vliv na výkon. Prosím používejte s opatrností. Nastavte na nižší vzdálenosti pokud vaše Antistasi běží špatně. + Performansı etkiler. Lütfen bunu dikkatli kullanın. Antistasi'nin kötü çalıştığını düşünüyorsanız daha düşük mesafelere ayarlayın. + 影响性能。请小心使用。如果你觉得 Antistasi 运行不够流畅, 把它调到更低的距离。 @@ -11779,7 +13562,7 @@ RH RH 인력 - ЛР + HR Zasoby ludzkie Lidské zdroje İK @@ -11854,8 +13637,14 @@ Arsenal transfer Arsenal Transfer Trasferimento Arsenale + Transferir Caja de Munición + Tranfert vers l'Arsenal 아스널 전송 + Погрузка ящика + Transfer zawartości Arsenału Přenos z bedny + Cephane Kutusu Transferi + 弹药箱转移 Fast Travel @@ -12375,15 +14164,27 @@ AI Medic squad-mates will heal other AI’s automatically without the need to give any orders. If in combat, your AI will use smoke grenades for cover. If there is no medic in the group, the AI will use their own first aid kits. + KI Sanitäter heilen andere KI Einheiten in der gleichen Gruppe automatisch, ohne dass ein gesonderter Befehl gegeben werden muss. Im Feuergefecht nutzt die KI Rauchgranaten zur Deckung. Sollte kein Sanitäter in der Gruppe sein, wird die KI eigene Erste-Hilfe Ausrüstung nutzen. I compagni di squadra dell'IA Medici cureranno automaticamente le altre IA senza bisogno di dare ordini. In combattimento, la tua IA utilizzerà le granate fumogene come copertura. Se non ci sono medici nel gruppo, l'IA utilizzerà i propri medikit. + Los médicos IA de la escuadra curarán automáticamente a sus compañeros sin necesidad de dar órdenes concretas. Si están en combate, la IA usará granadas de humo como cobertura. Si no hay médicos en la escuadra, la IA usará sus propios kits médicos. + Les médecins IA du groupes soigneront automatiquement les autres IA sans avoir à donner d'ordre. En combat, votre IA utilisera des grenades fumigènes pour se couvrir. S'il n'y a pas de médecin dans le groupe, l'IA utilisera ses propres medikits. AI 의무병 분대원은 명령을 내릴 필요 없이 자동으로 다른 AI을 치료할 것입니다. 만약 전투 중이라면 당신의 AI은 엄호를 위해 연막탄을 사용할 것입니다. 그룹에 AI 의무병이 없다면 AI은 자신들의 메디킷을 사용할 것입니다. + ИИ-медики будут лечить других ИИ автоматически без необходимости отдавать приказы. В бою ваш ИИ будет использовать дымовые гранаты для укрытия. Если в группе нет медика, ИИ будет использовать свои перевязочные пакеты. + Medycy AI automatycznie leczą inne AI bez konieczności wydawania jakichkolwiek rozkazów. Jeśli walczysz, twoja sztuczna inteligencja użyje granatów dymnych jako osłony. Jeśli w grupie nie ma medyka, AI użyje własnych apteczek. AI Zdravotník uzdraví ostatní AI automaticky, aniž byste museli vydávat příkazy. Pokud se budete bojovat, vaše AI použije kouřové granáty pro zakrytí. Pokud ve skupině není žádný lékař, použije AI své vlastní léky. + AI医疗兵无需下达任何指令即可自动治疗其他AI。在战斗中, AI将会使用烟雾弹掩护。如果小组里没有医疗兵, AI将会使用自己的医疗包。 Your AI squad-mates will automatically look for and scavenge any ammunition from nearby corpses, vehicles, and loot boxes if needed. They will also try to improve their weapons if given the chance. If AI is inside a vehicle, they will loot weapons and launchers, and drop them in their truck until there is nothing in the area. Use this instead of the vanilla Rearm radio option. + Deine KI Gruppenmitglieder werden automatisch versuchen Munition von ausgeschalteten Feinden, Fahrzeugen oder Munitionskisten zu erbeuten. Außerdem versuchen sie ihre Waffen gegen durchschlagskräftigere auszutauschen. Sind die KI Einheiten in einem Fahrzeug, werden sie Waffen und Werfer plünern und sie in ihrem Fahrzeug verstauen, bis der Bereich komplett geplündert ist. Dies sollte statt des Vanilla Funkbefehls genutzt werden. I tuoi compagni di squadra IA cercheranno automaticamente tutte le munizioni dai cadaveri, dai veicoli e dalle scatole di munizioni nelle vicinanze, se necessario. Inoltre cercheranno di rinnovare le loro armi con armi migliori. Se l'IA si trova all'interno di un veicolo, saccheggeranno armi e lanciatori e li lasceranno nel loro veicolo finché non ci sarà nulla nell'area. Usa questo al posto dell'opzione radio di riarmo vanilla. + Tus compañeros IA buscarán automátiocamente armas y municiones de bajas cercanas, vehículos y cajas de munición en su defecto. También intentaran cambiar sus armas por unas mejores. Si la IA está dentro de un vehículo, saquearán fusiles y armas autoptopulsadas y las dejaran en el maletero hasta que no haya nada en el área. Usa esta opción en vez de la opción vanila de Rearmar en las opciones de radio. + Vos compagnons IA rechercheront et récupèreront automatiquement toutes les munitions sur des cadavres, véhicules et boites de munitions à proximité si nécessaire. Ils essaieront également de remplacer leurs armes avec des armes plus puissantes. Si l'IA est à l'intérieur d'un véhicule, ils pilleront des armes et des lanceurs et les déposeront dans leur camion jusqu'à ce qu'il n'y ait plus rien dans la zone. Utilisez-le à la place de l'option réarmer à la radio de base. 당신의 AI 분대원들은 필요에 따라 근처의 시체, 차량 또는 전리품 상자에서 탄약을 자동으로 찾고 노획할 것입니다. 또한 그들은 더 강력한 무기로 무기를 재무장할 것입니다. 만약 AI가 차량 안에 있다면, 그들은 무기와 발사기를 노획하고, 그 지역에 아무것도 남지 않을 때까지 그것들을 그들의 트럭에 놓을 것입니다. 바닐라 재무장 무전 대신 이 옵션을 사용하십시오. + Ваши товарищи по отряду ИИ будут автоматически искать и собирать любое снаряжение с ближайших трупов, транспортных средств и ящиков с боеприпасами если это необходимо. Также они попытаются обновить свое оружие на более мощное. Если ИИ находится внутри транспортного средства, они будут собирать оружие и пусковые установки и бросать их в свой грузовик, пока в области ничего не останется. Используйте это вместо ванильных приказов переснаряжения. + AI z twojej drużyny będą automatycznie szukać i w razie potrzeby zbierać amunicję z pobliskich zwłok, pojazdów i skrzyń. Będą też próbowali wymienić swoją broń na lepszą. Jeśli AI znajduje się w pojeździe, będą plądrować broń i wyrzutnie i wrzucać je do ciężarówki, dopóki w okolicy nie zostanie nic więcej do podniesienia. Używaj tej opcji zamiast Rearm z podstawowej wersji gry. Členové skupiny AI budou automaticky hledat a vybírat jakoukoli munici z okolních mrtvol, vozidel a beden s municí, pokud to bude potřeba. Také se pokusí vyzbrojit silnějšími zbraněmi. Pokud je umělá inteligence uvnitř vozidla, vezme zbraně a nosné rakety a hodí je do nákladního automobilu, dokud nebude v oblasti nic. Použijte toto místo možnosti „Přezbrojit" ze základního rádia hry. + 在必要情况下, 你的AI队友将会自动在附近的尸体, 载具和弹药箱中搜集弹药。他们还会更换强大的武器。如果AI在载具内, 让门将会将武器和发射器作为战利品装到卡车里, 直到该区域再也没有战利品。你应该使用此功能, 而不是原版无线电中的重新武装选项。 Commander Only. Use this option to assign the vehicle you are looking at to any HC squad. Check vehicle status, order them to mount or disembark, and automate mounted static squads. @@ -12399,14 +14200,27 @@ Select the unit and use the 'Dismiss AI/Group' option to send them back to HQ. You will recover some of the money you spent on them. + Wähle die gewünschte Einheit und nutze die "Gruppenmitglied entlassen" Option, um sie zurück zum HQ zu schicken. Dabei wirst du einen Anteil des Geldes zurückerhalten, welches du vorher für es ausgegeben hast. Seleziona un'unità e usa l'opzione "Congeda IA/grupo" per rimandarli al quartier generale. Recupererai parte dei soldi che hai speso. + Selecciona la unidad y usa la opción 'Desmovilizar Compañero' para mandarlos de vuelta al CG. Recuperarás parete del dinero invertido en ellos. + Sélectionnez l'unité et utilisez l'option «Renvoyer le membre d'escouade» pour les renvoyer au QG. Vous récupérerez une partie de l'argent qu'ils ont couté. 유닛을 선택하고 '분대원 해산' 설정을 사용하여 본부로 돌려보냅니다. 그들에게 쓴 돈의 일부를 되찾을 것입니다. + Выберите отряд и используйте опцию «Роспуск ИИ», чтобы отправить его обратно в штаб. Вы вернете часть потраченных на них денег. + Wybierz jednostkę i użyj opcji „Odwołaj członka drużyny”, aby odesłać je z powrotem do kwatery głównej. Odzyskasz część pieniędzy, które na nie wydałeś. Vyberte jednotku a pomocí možnosti „Propustit“ je odešlete zpět na velitelství. Získáte zpět část peněz, které jste na ně utratili. + 选择单位并使用"解散班组成员"来将他们送回总部。你将回收部分开销。 Having a commander is necessary because he is the commander of the Faction attacking ground forces. Many options are available only to the commander and, depending on your settings, if you play multiplayer, the most experienced player will usually occupy this position. + Einen Kommandanten zu haben ist unumgänglich, da er die Bodentruppen der Fraktion befehligt. Viele Optionen und Möglichkeiten stehen nur dem Kommandanten zur Verfügung. Je nach deinen gewählten Einstellungen, wenn du im Multiplayer spielst, wird der Spieler mit der meisten Erfahrung den Platz des Kommandanten einnehmen. Avere un comandante è necessario perché è il comandante delle forze offensive di terra della fazione. Molte opzioni sono disponibili solo per il comandante e, a seconda delle tue impostazioni, se giochi in multigiocatore, il giocatore più esperto di solito occuperà questa posizione. + Tener un comandante es necesario ya que es el comandante de las fuerzas terrestres de la Facción. El comandante tiene muchas opciones únicas y, dependiendo de tus ajustes, si juegas online, el jugador más experto suele ocpuar el puesto. + Avoir un commandant est nécessaire car il est le commandant des forces d'attaque terrestre de la faction. De nombreuses options ne sont disponibles que pour le commandant et, selon vos paramètres, si vous jouez en MP, le joueur le plus expérimenté occupera généralement cette position. 지상군을 공격하는 팩션의 지휘관이기 때문에 지휘관이 필요할 것입니다. 많은 옵션은 지휘관만 사용할 수 있으며, 설정에 따라 멀티 플레이로 플레이하는 경우 일반적으로 가장 경험이 많은 플레이어가 이 위치를 차지하게 됩니다. + Наличие Командующего необходимо, потому что он является Командующим Фракцией, атакующей наземные силы. Многие параметры доступны только ему, и, в зависимости от ваших настроек, если вы играете онлайн, наиболее опытный игрок обычно занимает эту позицию. + Posiadanie dowódcy jest konieczne, ponieważ dowodzi on całą rebelią. Wiele opcji jest dostępnych tylko dla dowódcy, jeśli grasz w trybie wieloosobowym, i w zależności od ustawień, tę pozycję zazwyczaj zajmie najbardziej doświadczony gracz. + Mít velitele je nezbytné, protože je velitelem frakce útočící na pozemní síly. Mnoho možností je k dispozici pouze pro velitele a v závislosti na vašich nastaveních, pokud hrajete MP, obvykle tuto pozici zaujme nejzkušenější hráč. + 指挥官是必需的, 因为他能够指挥我方阵营的地面攻击部队。许多选项仅限指挥官使用, 并且根据你的设置, 如果你玩的是多人游戏, 经验最丰富的玩家通常会占据这个位置。 Take the engineers truck to the desired position to build a minefield. Cover them while they deploy mines. From then on, no one will be able to pass the area safely (even your own units - so use with caution). Mines (AT and AP) are taken from your Ammobox. The quantity of mines in the field will depend on the contents of your ammobox, up to a max. number depending on the type of minefield. Delete those minefields to recover the mines. @@ -12434,8 +14248,15 @@ Use the radio and select a spot on the map with a good line of sight to enemy roads and markers. A group of snipers will join you. Send them to the selected place and they will spot for you, attempting to remain hidden and not engaging enemies upon contact. + Benutze dein Funkgerät und wähle einen Ort auf der Karte mit einer guten Übersicht. Eine Gruppe Scharfschützen wird sich dir anschließen. Schicke diese zu dem gewählten Ort und sie werden dort einen Beobachtungsposten einrichten. Dabei versuchen sie verdeckt zu bleiben und Feinde bei Kontakt nicht anzugreifen. Usa la radio e seleziona un punto sulla mappa con un buon campo visivo. Un gruppo di cecchini si unirà a te. Inviali nel luogo selezionato e individueranno i nemici per te, cercando di rimanere nascosti e non ingaggieranno al contatto. + Usa la radio y selecciona un punto en el mapa con buena visión del horizonte. Un grupo de tiradores se unirá. Mándalos al sitio seleccionado y observarán por ti, intentando mantenerse ocultos y evitando el combate hasta que sea inevitable. + Utilisez la radio et sélectionnez un endroit sur la carte avec un bon champ de vision. Un groupe de tireurs d'élite se joindra à vous. Envoyez-les à l'endroit sélectionné et ils feront du repérage pour vous, essayant de rester cachés et n'engageant pas les ennemis au contact. 무전기를 사용하여 지도에서 시야가 트인 곳을 선택합니다. 그러면 저격 팀이 합류할 것입니다. 선택한 위치에 그들을 보내면, 그들은 당신을 대신해 숨어 있는 상태를 유지하고 접촉 시 적과 교전하지 않으려고 할 것입니다. + Используйте радио и выберите на карте место с хорошим обзором. К вам присоединится группа снайперов. Отправьте их в выбранное место, и они будут осматривать местность для вас, стараясь оставаться скрытыми и не вступая в бой с врагами при контакте. + Skorzystaj z radia i wybierz miejsce na mapie z dobrym polem widzenia. Dołączy do ciebie grupa snajperów. Wyślij je w wybrane miejsce, a będą wykrywać wrogów, starając się pozostać w ukryciu. W przypadku kontaktu z wrogami, nie będą od razu atakować + Použijte rádio a vyberte místo na mapě s dobrým zorným polem. Připojí se k vám skupina ostřelovačů. Pošlete je na vybrané místo a oni tam zřídí pozorovací stanoviště. Snaží se zůstat v utajení a neútočit na nepřátele v kontaktu. + 使用无线电并在地图上选择一个视野良好的地点。一个狙击小组将会加入你的小队。将他们运送至选定的地点, 他们会为你提供侦查, 并在遭遇敌人时保持隐蔽并避免交战。 Use the menu and select a spot on the map. Click where a road is. A group of AT soldiers will join you. Send them to the selected place and they will establish a roadblock there. @@ -12444,7 +14265,7 @@ Usa el menú y selecciona una zona en el mapa. Haz click donde haya una carretera. Un grupo de soldados AT se unirá. Mándalos al sitio seleccionado para establecer un bloqueo de carretera ahí. Utilisez le menu et sélectionnez un endroit sur la carte. Cliquez où se trouve une route. Un groupe de soldats AT se joindra à vous. Envoyez-les à l'endroit choisi et ils y établiront un barrage routier. 메뉴를 사용하여 지도에서 도로가 있는 곳을 선택합니다. 그러면 대전차화기 팀이 합류합니다. 그들을 선택한 곳에 보내면 검문소를 설치합니다. - Воспользуйтесь меню и выберите место на карте. Щелкните, где находится дорога. К вам присоединится группа солдат. Отправьте их в выбранное место, и они установят там блокпост. + Воспользуйтесь меню и выберите место на карте. Щелкните, где находится дорога. К вам присоединится отряд солдат. Отправьте их в выбранное место, и они установят там блокпост. Skorzystaj z menu i wybierz miejsce na mapie. Kliknij tam, gdzie jest droga. Dołączy do ciebie grupa żołnierzy PPANC. Wyślij ich we wcześniej wybrane miejsce, a tam ustawią blokadę. Použijte nabídku a vyberte místo na mapě. Klikněte na místo, kde je silnice. Skupina protitankových vojáků se k vám připojí. Pošlete je na vybrané místo a oni tam vytvoří zátaras. 使用菜单并在地图上选择地点。点击道路所在的地方。一个反坦克小组将会加入你的小队。将他们运送至选定的地点, 他们会在那里设置路障。 @@ -12475,8 +14296,15 @@ The Commander is responsible for assigning units as garrisons in conquered areas. Use the Garrison Management option inside the HQ Management action on Petros in order to add or remove garrison troops at each zone. Check Map Info screen for a quick overview of how many soldiers are assigned to each zone. + Der Kommandant ist verantwortlich den Garnisonen der eroberten Bereiche Einheiten zuzuweisen. Mit der Garnisonsverwaltung am Flaggenmast im HQ kannst du Einheiten einer Garnison hinzufügen oder entfernen. Über den Kartenbildschirm kannst du dir einen schnellen Überblick über die Größe der jeweiligen Garnisonen verschaffen. Il comandante è responsabile dell'assegnazione delle unità come guarnigioni in aree conquistate. Usa l'opzione gestione della guarnigione da Petros per aggiungere o rimuovere truppe di guarnigione in ogni zona. Controlla la schermata Informazioni alla mappa per una rapida panoramica di quanti soldati sono assegnati a ciascuna zona. + El comandante es responsable de asignar unidades a la guarnición de las zonas conquistadas. Usa la opción de Gestionar Guarnición la bandera del CG para añadir o borrar tropas guarnicionadas de cada zona. Comprueba la información de Mapa para un vistazo general sobre cuantos soldados estan asignados en cada zona. + Le commandant est responsable de l'affectation d'unités comme garnisons dans les zones conquises. Utilisez l'option de gestion de garnison au drapeau du QG afin d'ajouter ou de supprimer des troupes de garnison dans chaque zone. Consultez l'écran Info carte pour un aperçu rapide du nombre de soldats affectés à chaque zone. 정복된지역에부대를 주둔지로 배치할 책임이 있습니다. 각 지역에 수비대 병력을 추가하거나 제거하려면 페트로스의 본부 관리 행동 내에서 주둔지 관리 옵션을 사용하십시오. 각 구역에 할당된 병사 수에 대한 간략한 개요를 보려면 지도 정보 화면을 확인하십시오. + Командующий отвечает за назначение подразделений в качестве гарнизонов на завоеванных территориях. Используйте опцию «Управление гарнизоном» на Флаге Штаба, чтобы добавлять или удалять войска гарнизона в каждой зоне. Проверьте информационное окно Карты, чтобы получить быстрый обзор того, сколько солдат назначено на каждую зону. + Dowódca jest odpowiedzialny za przydzielanie jednostek jako garnizonów na podbitych obszarach. Użyj opcji Zarządzanie Garnizonem na fladze w swojej siedzibie, aby dodać lub usunąć wojska garnizonowe w każdej strefie. Sprawdź Informacje na stojącej mapie w siedzibie, aby szybko sprawdzić, ilu żołnierzy jest przydzielonych do każdej strefy. + Velitel je zodpovědný za přidělování jednotek jako posádky v dobývaných oblastech. Chcete-li přidat nebo odebrat posádkové jednotky v každé zóně, použijte možnost Správa posádky v vlajce HQ. Na obrazovce Informace o mapě získáte rychlý přehled o tom, kolik vojáků je přiřazeno každé zóně. + 指挥官负责向占领区派遣驻军单位。使用总部旗帜上的驻军管理选项, 开向各个区域增派或删除驻军。打开地图信息界面, 即可快速了解每个区域分配的士兵数量。 For a price, you can upgrade Faction training so that future recruits will have better skills. @@ -12497,20 +14325,34 @@ Pide a Petros por cualquier tipo de misión que quieras. La disponibilidad de las misiones estás sujetas al posicionamiento del CG, las tareas ya asignadas y del control de las zonas colindantes. Demandez à Petros tout type de mission que vous souhaitez. La disponibilité de la mission dépend du positionnement du QG, des tâches actuellement attribuées et de la propriété des zones environnantes. 원하는 타입의 사이드 임무를 페트로스에게 문의하십시오. 본부의 위치, 현재 할당된 임무, 주변 지역의 소유에 따라 결정됩니다. - Запрашивайте у Петроса любую миссию, какую захотите. Доступность миссии зависит от расположения штаб-квартиры, текущих назначенных задач и владения прилегающими территориями. + Запрашивайте у Петроса любую миссию, какую захотите. Доступность миссии зависит от расположения штаба, текущих назначенных задач и владения прилегающими территориями. Zapytaj Petrosa o dowolny rodzaj misji. Dostępność misji zależy od lokalizacji twojej kwatery dowodzenia, aktualnie przydzielonych zadań i posiadanych okolicznych obszarów. Zeptejte se Petrose na jakýkoli typ mise, kterou chcete. Dostupnost mise závisí na umístění velitelství, aktuálně přidělených úkolech a vlastnictví okolních oblastí. 向Petros申请任何你想要的任务。任务的可用性取决于总部的位置、当前已分配的任务和周围地区的所有权。 The Commander may select this option on Petros in order to move the HQ emplacement to another spot. This will allow you to move your HQ to a safer location or move closer to the front-lines. The closer your HQ is to the enemy, the greater the number of possibile side-missions you will have available. Remember! Keep Petros Safe or you will lose the game! + Der Kommandant kann über eine Option am Flaggenmast das HQ zu einem anderen Ort verlegen lassen. Dies gibt dir die Möglichkeit dein HQ zu einer sichereren Position oder näher an die Frontlinie zu verlegen. Umso näher dein HQ am feindlichen Gebiet ist, umso größer ist die Anzahl an möglichen Sekundärmissionen. Vorsicht! Beschütze Petros oder du verlierst das Spiel! Il Comandante può selezionare questa opzione da Petros per spostare il Quartier Generale in un altro punto. Ciò ti consentirà di spostare il tuo QG in un luogo più sicuro o di avvicinarti alla prima linea. Più il tuo QG è vicino al nemico, maggiore sarà il numero di possibili missioni secondarie che avrai a disposizione. Ricorda! Tieni Petros al sicuro o perderai la partita! + El comandante podra seleccionar esta opción o en la bandera del CG con tal de mover la posición del HQ a otra. Esto te permitirá mover el HQ a una posición más segura o moverla más cercana a la linea de frente. Como más cercano sea tu HQ al enemigo, mayores las posibilidades de misiones secundarias. ¡Y recuerda mantener a Petros a Salvo o perderás la partida! + Le commandant peut sélectionner cette option sur le drapeau du QG afin de déplacer le QG à un autre endroit. Cela vous permettra de déplacer votre QG vers un endroit plus sûr ou de vous rapprocher des lignes de front. Plus votre QG est proche de l'ennemi, plus vous aurez de missions secondaires possibles. Attention! Gardez Petros en sécurité ou vous perdrez la partie! 지휘관은 본부를 다른 장소로 이동하기 위해 본부 깃발에서 본부 옮기기를 사용할 수 있습니다. 본부를 더 안전한 곳으로 혹은 최전방으로 이동시킬 수 있습니다. 만약 본부가 적과 가깝다면 더 많은 사이드 임무가 가능합니다. 기억하십시오! 페트로스를 지키지 않으면 게임에서 패배합니다! + Командующий может выбрать эту опцию у Петроса, чтобы переместить Штаб в другое место. Это позволит вам переместить свой Штаб в более безопасное место или приблизиться к линии фронта. Чем ближе ваш штаб к противнику, тем большее количество возможных побочных миссий у вас будет. Помните! Держите Петроса в безопасности, иначе вы проиграете игру + Dowódca może wybrać tę opcję na fladze w kryjówce, aby przesunąć stanowisko sztabu w inne miejsce. Pozwoli ci to przenieść sztab w bezpieczniejsze miejsce lub zbliżyć się do linii frontu. Im bliżej wroga znajduje się twoja kwatera główna, tym będzie większa liczba dostępnych misji pobocznych. Pamiętaj! Trzymaj Petrosa w bezpiecznym miejscu, inaczej przegrasz! + Velitel může vybrat tuto možnost na velitelské vlajce, aby přesunul umístění velitelství na jiné místo. To vám umožní přesunout své velitelství na bezpečnější místo nebo se přiblížit ke frontě. Čím blíže je vaše velitelství k nepřátelům, tím větší je počet možných vedlejších misí, které budete mít k dispozici. Pamatujte si! Zachovejte Petrose v bezpečí, jinak hru prohrajete! + 指挥官可在总部旗帜上选择此选项, 以便将总部移动到其他地点。你可以将总部移动到更安全或者更靠近前线的地方。你的总部离敌人越近, 你可以执行的支线任务就越多。记住! 保护Petros的安全, 否则游戏将会失败! Use the action menu on the tent at HQ to rest for 8 hours. + Mit dieser Aktion kannst du dich am Lagerfeuer des HQs für 8 Stunden ausruhen. Interagisci con la tenda al quartier generale per riposare 8 ore. + Usa la acción en el menu de tu fogata del CG para descansar 8 horas. + Utilisez le menu d'action de votre feu de camp au QG pour vous reposer pendant 8 heures. 본부 텐트에서 행동 메뉴를 사용해 8시간 동안 휴식을 취합니다. + Используйте меню действий у Палатки, чтобы отдохнуть в течении 8 часов. + Użyj menu akcji na ognisku w kwaterze głównej, aby odpocząć przez 8 godzin. + Použijte možnost na vašem táborovém ohni, abyste si mohli odpočnou na 8 hodin + 使用总部营火上的动作菜单来休息8小时。 Use your Airstrike points to perform a bombing run of the specified type. @@ -12585,25 +14427,51 @@ Welcome to Arma 3 - %1. This mission aims to simulate guerilla combat, tactics and strategic situations. It is not a quick and easy mod, it is a long term, step-by-step mission with LOTS of features and enhanced AI. + Willkommen zu Arma 3 - %1. Diese Mission zielt darauf ab Guerillakrieg, -taktiken und -strategien zu simulieren. Es ist kein schneller und einfacher Spielmodus. Es ist eine Mission ausgelegt auf eine lange Spielzeit mit einer MENGE an Features und erweiterter KI. Benvenuto in Arma 3 - %1. Questa missione cerca di simulare il combattimento da guerrilla, tattiche e situazioni strategiche. Non è una mod facile e veloce, è a lungo termine, una missione passo dopo passo con MOLTE caratteristiche e un IA migliorata. + Bienvenidos a Arma 3 - %1. Esta misión quiere simular el combate de guerrillas, así como situaciones tácticas y estratégicas. No es un modo rápido ni fácil, es a largo plazo, misiones paso a paso con MUCHAS opciones e IA avanzada. + Bienvenue sur Arma 3 - %1. Cette mission vise à simuler des combats de guérilla, des tactiques et des situations stratégiques. Ce n'est pas un mod rapide et facile, c'est une mission à long terme, étape par étape, avec BEAUCOUP de fonctionnalités et une IA améliorée. 아르마 3 - %1에 오신 것을 환영합니다. 이 임무는 게릴라전, 전술, 전략적 상황을 시뮬레이션하는 것을 목표로 합니다. 이 임무는 빠르고 쉬운 모드가 아니라 많은 기능과 향상된 AI 가진 장기적이고 단계적인 임무입니다. + Добро пожаловать в Arma 3 - %1. Эта миссия направлена на моделирование партизанского боя, тактики и стратегических ситуаций. Это не быстрый и легкий мод, это долгосрочная, пошаговая миссия с МНОЖЕСТВОМ функций и улучшенным ИИ. + Witamy w Arma 3 - %1. Ta misja ma na celu symulację walki partyzanckiej, taktyki i sytuacji strategicznych. Nie jest to szybki i łatwy mod, to długoterminowa misja z dużą ilością funkcji i ulepszoną sztuczną inteligencją. Vítejte v Arma 3 - %1. Cílem této mise je simulovat partyzánský boj, taktiku a strategické situace. Není to rychlý a snadný mód, je to dlouhodobá, postupná mise s mnoha funkcemi a vylepšeným AI. + 欢迎来到 Arma 3 - %1。本任务旨在模拟游击战的战斗、战术和战略态势。这不是一个快速、简单的模式, 而是长期的、循序渐进的, 带有大量特性和增强型AI的任务。 You will win the game when most of the population supports the rebellion and you have conquered all the Airbases. + Du erringst den Sieg, wenn der Großteil der Zivilbevölkerung deine Fraktion unterstützt und sich alle Flugplätze in deiner Hand befinden. Vincerai una volta che la maggior parte della popolazione supporta la tua Fazione e quando avrai conquistato tutte le basi aeree + Conseguiras la victoria si la mayoria de la población apoya tu facción y si conquistas todas las bases aéreas. + Vous gagnerez la partie lorsque la majorité de la population soutiendra la faction et que vous aurez conquis toutes les bases aériennes. 인구의 대부분이 당신의 팩션을 지지하고 당신이 모든 공군 기지를 점령했을 때 게임에서 승리할 것입니다. + Вы выиграете игру, когда большая часть населения поддержит фракцию и вы захватите все авиабазы. + Wygrasz grę, gdy większość populacji mapy poprze rebelie i podbijesz wszystkie Bazy Lotnicze wroga. Vyhrajete hru, když většina populace podporuje rebely a dobyli jste všechny letecké základny. + 当绝大多数民众支持我方阵营, 并且我方已占领所有空军基地时, 你将赢得游戏胜利。 You will lose the game if %1 murders 1/3 of the total population. To prevent this, respond to %1 punishment attacks against civilians. + Du verlierst das Spiel, wenn %1 1/3 der gesamten Bevölkerung ermordet hat. Perderai se il %1 ha ucciso 1/3 della popolazione totale. Per evitare questo, rispondi agli attacchi punitivi di %1 contro i civili. + Perderás si %1 asesina a 1/3 del total de la población. + Vous perdrez la partie si %1 a tué 1/3 de la population totale. %1이(가) 전체 인구의 1/3을 학살할 경우 게임에서 패배합니다. 이를 방지하려면 민간인을 대상으로 한 %1의 학살에 대응하십시오. + Вы проиграете игру, если %1 убил 1/3 всего населения. + Przegrasz grę, jeśli %1 zamordował 1/3 całej populacji. Prohrajete hru, pokud %1 zavraždí 1/3 celkové populace. Aby jste tomuto zabránili, odpovídejte útokům %1 proti civilistům. + 如果 %1 谋杀了总人口的1/3, 你将输掉这场游戏。 There is a total war on %4. The three factions competing for total control of the island are the rogue occupant military of %1, the ruthless invaders of %2, and the emerging rebellion of %3. %1 and %2 are constantly fighting, but also shoot %3 members on sight.<br/><br/>%1 and %2 Aggro points represent how much threat they see in %3 faction.<br/><br/>Generally speaking those points will low or raise depending on your actions against them and civilians. + Es ist ein Jeder gegen Jeden Krieg in %4. %1 und %2 greifen sind ununterbrochen gegenseitig an. Dies bedeutet aber nicht, dass sie nicht bei Kontakt direkt %3 angreifen.<br/><br/>%1 und %2 Aggressivitätspunkte zeigen an, wie hoch diese die Bedrohung der %3 Fraktion einschätzen.<br/><br/>Grundsätzlich erhöhen und verringern sich diese Werte gemäß deinen Unternehmungen gegen die jeweilige Fraktion oder die Zivilbevölkerung. + C'è una guerra Tutti contro Tutti in %4. %1 e %2 si attaccano costantemente a vicenda, ma ciò non significa che non sparino a %3 a prima vista.<br/><br/>%1 e %2 punti Aggro rappresentano la quantità di minaccia che vedono in %3 fazione.<br/><br/>In generale, quei punti diminuiranno o aumenteranno a seconda delle tue azioni contro di loro e contro i civili. + Esta guerra es un todos contra todos en %4. %1 y %2 están constantemente atacándose, pero esto no significa que no dispararán si previo aviso a %3.<br/><br/>Puntos de Aggre de %1 y de %2 representan cuanto pelígro ven en la facción %3.<br/><br/>En términos generales, estos puntos incrementarán o descenderán dependiendo de tus acciones contra ellos y/o civiles. + Il y a une guerre tous contre tous dans %4. %1 et %2 s'attaquent constamment, mais cela ne signifie pas qu'ils ne tirent pas sur %3 à vue.<br/><br/> Les points Aggressivité de %1 et %2 représentent la menace qu'ils voient dans la faction %3.<br/><br/>De manière générale, cette valeur augmentera et baissera en fonction de vos actions contre eux et les civils. %4는 총력전입니다. 영토의 완전한 지배권을 놓고 경쟁하는 세 세력은 %1인 불량 점령군, %2인 무자비한 침략자, %3인 새 반군입니다.<br/><br/>%1과(와) %2은(는) 서로 끊임없이 싸우지만 %3 소속의 사람이 눈에 띄면 총격을 가하기도 합니다.<br/><br/>%1과(와) %2의 공격성 포인트는 %3 세력에서 얼마나 많은 위협을 받는지를 나타냅니다.<br/><br/>일반적으로 말하면 그들과 민간인에 대한 당신의 행동에 따라 해당 포인트는 낮아지거나 높아질 것입니다. + В %4 идет война Все против Всех. %1 и %2 постоянно атакуют друг друга, но это не значит, что они не стреляют по %3 при обнаружении.<br/><br/>Агрессия %1 и %2 показывает насколько сильную угрозу они видят в %3. <br/><br/>В общем, эти очки будут уменьшаться или увеличиваться в зависимости от ваших действий против них и мирных жителей + W %4 trwa wojna Wszyscy Kontra Wszyscy. %1 i %2 nieustannie atakują się nawzajem, ale to nie znaczy, że nie strzelają do %3 .<br/><br/>%1 i %2 Punkty Agresji oznaczają, jak duże zagrożenie inne frakcje widzą we frakcji %3.<br/><br/>Ogólnie rzecz biorąc, punkty te zmniejszą się lub rosną w zależności od twoich działań przeciwko nim i cywilom. + V %4 je válka Všichni proti Všem. %1 a %2 neustále útočí na sebe, ale to neznamená, že na první pohled nestřílejí na %3.<br/><br/>%1 a %2 Aggro body představují to, jak velkou hrozbu představují vidět ve frakci %3.<br/><br/>Obecně řečeno, tyto body se budou snižovat nebo zvyšovat v závislosti na vašem jednání proti nim a civilistům. + %4 发生了全面战争。%1 和 %2 在持续地互相攻击, 但这并不意味着他们在见到 %3 时不会开火。<br/><br/>%1 和 %2 点侵略性表示他们认为 %3 的威胁程度有多大。<br/><br/>通常而言, 取决于你对他们和平民的行动, 这一点数将会提升或降低。 HR or Manpower comes from citizen support on each city. Manpower is needed to recruit more units (1 HR Point = 1 Soldier) @@ -12655,8 +14523,15 @@ Flag: Squad Unit Recruitment. Commander Options.<br/>Petros: Side-missions (Commander Only) and other actions related to managing HQ.<br/>Map: Game Options.<br/>Tent: Rest for 8 hours and Clear Forest (Commander Only) + Flaggenmast: Fahrzeug und Gruppen kaufen/rekrutieren, Kommandantenoptionen.<br/>Petros: Sekundärmissionen (nur Kommandant).<br/>Karte: Spieloptionen.<br/>Lagerfeuer: 8 Stunden ausruhen und Wald abholzen (nur Kommandant). Bandiera: Reclutamento Squadre e Unità. Opzioni del Comandante. <br/>Petros: Missioni-Secondarie (Solo per il Comandante) e altre azioni riguardanti la gestione del QG.<br/>Mappa: Opzioni di Gioco.<br/>Tenda: Riposa per 8 ore e ripulisci la foresta (Solo per il Comandante). + Bandera: Vehículos y recltamiento de escuadras. Opciones del Comandante.<br/>Petros: Misiones secundarias (Solo para el Comandante).<br/>Mapa: Opciones de Juego.<br/>Campamento: Descansa por 8 horas y despeja la maleza (Solo para el Comandante). + Drapeau : Achat de véhicule et d'escouade. Options de Commandant.<br/>Petros : Missions secondaires (Commandant uniquement).<br/>Carte : Options de la partie.<br/>Feu de camp : Se reposer pendant 8 heures et défricher la forêt (Commandant uniquement). 깃발: 차량 및 분대원 모집. 지휘관 옵션.<br/>페트로스 : 사이드 임무(지휘관 전용) 및 본부 관리와 관련된 기타 작업.<br/>지도: 게임 설정.<br/>텐트: 8시간 동안 휴식을 취하거나 숲을 없앱니다(지휘관 전용). + Флаг: Найм отрядов и техники. Опции Командующего.<br/>Петрос: миссии для стороны (только для Командующего).<br/>Карта: Настройки Игры.<br/>Палатка: отдых на 8 часов и очистка леса (только для Командующего). + Flaga: Rekrutacja pojazdów i oddziałów. Opcje dowódcy.<br/>Petros: Misje poboczne (tylko dowódca).<br/>Mapa: Opcje gry.<br/>Ognisko: Odpoczynek przez 8 godzin i Wyczyść las (tylko dowódca). + Vlajka: Nábor vozidel a jednotek. Možnosti velitele.<br/>Petros: Vedlejší mise (pouze velitel).<br/>Mapa: Možnosti hry.<br/>Táborový oheň: Odpočinek po dobu 8 hodin a Vyklidit les (Pouze velitel). + 旗帜: 载具和班组招募, 指挥官选项。<br/>Petros: 支线任务(仅限指挥官使用)。<br/>地图: 游戏选项。<br/>营火: 休息8小时并清理森林(仅限指挥官使用)。 Just as with any resistance movement, leadership is not as stable as in organised states. Any player can take the role of Faction Force Commander if the current one is not very popular... Demonstrate your skill while accomplishing missions and killing enemies and maybe you will become the next leader. @@ -12677,7 +14552,7 @@ Cuando te montas en un camión, puedes usar la acción de transferir en el Menú de Acción. Esto buscará por cajas de munición cercanas y cargará el contenido del más cercano al camión. Entonces podrás descargar el camion en tu caja de munición del CG para su uso en el futuro. Antes de transferirlo, asegurate separar el contenido de dentro de las mochilas/chalecos y meterlas en el camión. CONSEJO: Si tu caja de munición del CG está llena, usa esta función desde un camión cercano para añadir más contenido a tu caja de munción ya que aceptará todo :) Lorsque vous êtes dans un camion, vous pouvez utiliser l'action Transférer dans le menu d'action. Il recherchera les boîtes de munitions à proximité et chargera le contenu de la plus proche dans l'espace de chargement du camion. Vous pouvez ensuite décharger le camion dans votre Arsenal au QG pour une utilisation future. Avant le transfert, assurez-vous de décharger le contenu du sac à dos / gilet dans l'espace de chargement du camion, puis transférez. CONSEIL: Si votre Arsenal au QG est plein, utilisez cette fonctionnalité à partir d'un camion à proximité pour ajouter plus de contenu à la boite car il acceptera alors tout :) 트럭에 마운트할 때 행동 메뉴에서 전송 상호작용을 사용할 수 있습니다. 근처의 탄약상자를 수색하고 가장 가까운 탄약상자의 내용물을 트럭의 화물칸에 싣을 것입니다. 그런 다음 나중에 사용할 수 있도록 본부의 탄약상자에 트럭의 내용물을 내리면 됩니다. 전송하기 전에, 배낭/조끼 내용물을 트럭 화물칸에 내린 후 전송해야 합니다. 팁: 본부의 탄약상자가 가득 차면 근처 트럭의 이 기능을 사용하여 탄약상자의 내용물을 추가하십시오. 탄약상자는 모든 걸 넣을 수 있습니다. :) - Когда вы садитесь в грузовик, вы можете использовать действие «Переместить» в меню действий. Он будет искать ближайшие ящики и загружать содержимое ближайшего в грузовое пространство грузовика. Затем вы можете разгрузить грузовик в свой боезапас в штаб-квартире для будущего использования. Перед перемещением убедитесь, что содержимое рюкзака/жилета выгружено в грузовое пространство грузовика, а затем перенесите его. СОВЕТ: если ваша штаб-квартира с боеприпасами заполнена, используйте эту функцию из ближайшего грузовика, чтобы добавить больше содержимого в ящик с боеприпасами, поскольку он станет принимать вообще всё. + Когда вы садитесь в грузовик, вы можете использовать действие «Переместить» в меню действий. Он будет искать ближайшие ящики и загружать содержимое ближайшего в грузовое пространство грузовика. Затем вы можете разгрузить грузовик в свой боезапас в штабе для будущего использования. Перед перемещением убедитесь, что содержимое рюкзака/жилета выгружено в грузовое пространство грузовика, а затем перенесите его. СОВЕТ: если ваш штаб с боеприпасами заполнен, используйте эту функцию из ближайшего грузовика, чтобы добавить больше содержимого в ящик с боеприпасами, поскольку он станет принимать вообще всё. Kiedy wsiadasz do ciężarówki, możesz użyć akcji Transfer w menu akcji. Gra wyszuka wtedy wszystkie pobliskie skrzynie z amunicją i załaduje zawartość najbliższej do przestrzeni ładunkowej ciężarówki. Następnie możesz rozładować ciężarówkę w swojej skrzynce na amunicję w kryjówce do wykorzystania w przyszłości. Przed przeniesieniem upewnij się, że zawartość plecaka/kamizelki została wyładowana do przestrzeni ładunkowej ciężarówki, a następnie przenieś. WSKAZÓWKA: Jeśli twoja skrzynka w kryjówce jest pełna, wtedy użyj tej funkcji na pobliskiej ciężarówce, aby dodać więcej zawartości do skrzyni. Při použití nákladního vozu můžete použít akci „Přenos" v nabídce akcí. Vyhledá v blízkém okolí krabici s municí a vloží ji do nákladního prostoru. Poté můžete nákladní vůz vyložit na velitelství pro budoucí použití. Před přenosem se ujistěte, že jste obsahy baťohů/vest vyložili do nákladního prostoru nákladního vozu a poté jej přenesli. TIP: Pokud je váš inventář arzenálu plný, použijte tuto funkci z blízkého náklaďáku a přidejte do arzenálu další obsah, protože ten sežere všechno :) 搭乘卡车时, 你可以使用动作选单中的转移动作。该动作会搜索附近的弹药箱, 并将最近的弹药箱中的内容装进卡车的货物空间。你可以在总部的弹药箱处卸货以供将来使用。在转移前, 确保已将背包/背心中的内容卸载至卡车的货物空间在进行转移。提示: 如果总部的弹药箱已满, 可以在附近的卡车上使用此功能向弹药箱中添加更多内容, 这样它就会接受任何东西 :) @@ -12696,13 +14571,27 @@ Purchased static weapons won't despawn if you leave them in a base or zone, the AI garrison will instead man them. Reinforce places as you desire. + Gekaufte statische Geschütze werden werden nicht entfernt, wenn du sie in der Nähe einer Basis oder Zone stehen lässt. Die KI Garnison wird sie dann bemannen. Verstärke somit Orte ganz nach deinem Geschmack. Le armi fisse acquistate non scompariranno se le lasci in una base o vicino a zone alleante, verranno utilizzate dall'IA, Rinforza come desideri. + Las armas estáticas compradas no desaparecerán si las dejas en una base o zona, la guarnición de la IA las manejarán. Refuerza posiciones a tu gusto. + Les armes fixes achetées ne disparaîtront pas si vous les laissez dans une base ou une zone, la garnison IA les utilisera. Renforcez les lieux à votre guise. 구매한 고정화기는 기지나 구역에 놓아두면 사라지지 않으며, AI 주둔군이 관리할 것입니다. 원하는 장소에 놓아서 방어를 강화하십시오. + Купленное стационарное вооружение не исчезнет, если вы оставите его на базе или в зоне, им будет управлять гарнизон ИИ. Укрепляйте места по своему желанию. + Zakupione stanowiska bojowe nie znikną, jeśli zostawisz je w bazie lub strefie, obsadzi ją garnizon AI. + Zakoupené lafetované zbraně nebudou odebrána, pokud je necháte na základně nebo v zóně, posádka AI je bude ovládat. Posilujte místa, jak si přejete. + 如果你将购买的固定式武器留在基地或占领区内, 他们不会消失。AI守军将会管理他们。按你的意愿加强该地区的防守。 You can build groups with human players to organize different squads for different tasks. + Eine Gruppe kann aus bis zu 10 Spielern bestehen. Der Kommandant ist hiervon ausgenommen. Puoi creare gruppi con giocatori umani per organizzare varie squadre per missioni differenti. + Puedes construir grupos con 10 personas reales. El comandante tiene excluida esta opción. + Vous pouvez créer des groupes avec jusqu'à 10 joueurs humains. Le commandant est exclu de cette fonction. 플레이어로 그룹을 구성하여 다양한 작업을 위한 다양한 분대를 구성할 수 있습니다. + Вы можете создавать группы до 10 игроков-людей. Командующий исключен из этой функции. + Możesz tworzyć grupy z maksymalnie 10 graczami. Dowódca jest wyłączony z tej funkcji. + Skupina se může skládat až z 10 hráčů. Velitel je z této funkce vyloučen. + 你可以建立由最多10个玩家组成的小队。指挥官除外。 If enabled, this feature will exclude all non-members from using the HQ Ammobox and become Commander. This feature is intended to avoid having your game ruined by the casual troll in open server environments. Commanders may add or remove players from the Server Members List if the feature is enabled. @@ -12730,8 +14619,15 @@ Armored vehicles can be breached by engineers with shaped charges to make the crew surrender and capture the vehicle for the rebellion. Look at the 'Breaching charges' section for a detailed description of what charges you need. If you are an engineer and have the charges, you simply need to approach the vehicle and select the breaching option. + Panzer und Truppentransporter können von Ingenieuren mit Sprengstoff aufgebrochen werden, um die Besatzung absitzen zu lassen. Unter "Aufspengladungen" findest du die benötigten Sprengstoffe. Ein Fahrzeug derart aufzubrechen verursacht Schaden. Sei also vorsichtig, wenn du dies an einem bereits schwer beschädigten Fahrzeug durchführst. Um ein Fahrzeug aufzubrechen, gehe nah an es heran und wähle die "Aufbrechen" Aktion. I veicoli corazzati possono essere violati dagli ingegneri con esplosivi per aprirli e far arrendere il loro equipaggio. Seleziona "Cariche da irruzione" per una descrizione accurata di quali cariche hai bisogno. Se sei un ingegnere e hai le cariche, devi semplicemente avvicinarti al veicolo e selezionare l'opzione di irruzione. + Puedes abrir y sacar a la tripulación de los Tanques y TBPs con un ingeniero y explosivos. Comprueba "Cargas de Apertura" para las cargas necesarias. Abrir vehículos implica daños, así que ten cuidado cuando abras vehñiculos muy dañados. Para rabrir un vehículo, acércate a él y selecciona la opción de apertura. + Les chars et les véhicules de Transports de troupes peuvent être percés par des ingénieurs avec des explosifs pour les ouvrir et faire sortir leur équipage. Cochez «Charges explosives» pour les explosifs nécessaires. Forcer des véhicules inflige des dégâts, alors faites attention lorsque vous forcez des véhicules fortement endommagés. Pour forcer un véhicule, approchez-vous de celui-ci et sélectionnez l'option de forçage! 장갑 차량은 공병이 성형작약 폭탄을 이용하고 파괴하여 승무원이 항복하고 반란을 위해 차량을 탈취할 수 있습니다. 어떤 폭탄이 필요한지에 대한 자세한 설명은 '브리칭 전용 폭발물' 섹션을 참조하십시오. 당신이 공병이고 폭탄을 가지고 있다면, 차량에 접근하여 브리칭 옵션을 선택하기만 하면 됩니다. + Инженеры могут штурмовать танки и БТР с помощью взрывчатки, чтобы открыть их и выкурить экипаж. Проверьте «Пробивные заряды», чтобы узнать о необходимом количестве. Штурм транспортных средств наносит ему ущерб, поэтому будьте осторожны при штурме на сильно поврежденные автомобили. Чтобы взломать машину, подойдите к ней и выберите вариант "Штурм". + Do czołgów i transporterów opancerzonych można się włamać. Włamania może dokonać inżynier za pomocą materiałów wybuchowych. Pojazdy wtedy otworzą się, a załoga ucieknie ze środka. Potrzebujesz ładunków wyburzeniowych alby dokonać włamania. Wyważanie pojazdów powoduje uszkodzenia pojazdu, więc zachowaj ostrożność podczas włamywania się do mocno uszkodzonych pojazdów. Aby włamać się do pojazdu, podejdź do niego i wybierz odpowiednią opcje! + Tanky a APC mohou být požkozeny inženýry s výbušninami, aby je otevřeli a dostali jejich posádku ven. Zkontrolujte potřebné vybavení na „proražení vozidla“. Proražení vozidel způsobí poškození, takže při proražení silně poškozených vozidel buďte opatrní. Chcete-li vozidlo proražení, přibližte se k němu a vyberte možnost proražení! + 工程师可以使用炸药爆破并打开坦克和装甲车, 并使其成员离开载具。查看"爆破炸药"来了解所需的炸药。爆破载具会对载具造成伤害, 因此在需要爆破严重受损的载具时要小心。要爆破载具, 靠近它并选择爆破选项! To breach an APC you need %1 %2To breach a tank you need %3 @@ -12776,7 +14672,7 @@ Encuentra equipo, armas y cargadores y ponlos en tu caja de munición del CG. Una vez tengas un número específico de cierto objeto, lo desbloquearás y será añadido a tu Arsenal para uso personal. (y para tu Facción).<brs/>La cantidad requerida depende en cuantos objetos de Facción han sido desbloqueados y el número de fábricas en poder. Las armas desbloqueadas, miras y gafas de visión nocturna también pueden cambiar el equipamiento de la IA. Los Guerrilleros estan especialmente expuestos a esto: su equipo empezará por pequeñas SMGs y progresarán a tener una arma AA / AT extra. Ten en cuenta que no cambiará su uniforme, el cual depende del Nivel de Habilidad de la Facción (cascos y vestimenta). Arsenal es el estándar Arsenal BIS, comprueba la documentación para uso e interacción.<br/><br/> Para ver la cantidad necesaria para ser debloqueados, abre la caja de munición del CG y aparecerá un detallado reporte a la derecha. Récupérez des objets, des armes et des chargeurs et mettez-les dans votre Arsenal au QG. Une fois que vous en avez un nombre spécifique, ils seront déverrouillés et ajoutés à l'arsenal pour un usage personnel (et pour vos escouades de faction).<br/>Le montant requis pour déverrouiller dépend du nombre d'actifs débloqués par la faction et du nombre d'usines possédées. Les armes déverrouillées, les viseurs et les lunettes de vision nocturne peuvent également modifier les équipements de vos IA. Les miliciens de base sont particulièrement touchés par cela: leur équipement commencera par de petites SMG et passera à un lanceur AA / AT supplémentaire. Veuillez noter que cela n'affectera pas leur tenue, qui dépendra du niveau de compétence de faction actuel (casques et uniformes). Arsenal est l'arsenal BIS standard, consultez leur documentation pour l'interaction et l'utilisation.<br/><br/>Pour voir les montants nécessaires pour déverrouiller chaque groupe d'articles, ouvrez l'Arsenal au QG et vous recevrez un rapport détaillé sur la droite. 아이템, 무기와 탄약을 모아 본부 탄약상자에 넣으십시오. 아이템이 특정 갯수를 넘으면 무기고에서 언락되고 개인적으로 사용할 수 있습니다(AI 분대도 포함).<br/>언락하기 위한 조건은 팩션 자금과 점령한 공장 수에 따라 다릅니다. 언락된 무기, 광학장비, 야시경은 AI 병사 장비도 바꿀 수 있습니다. 기본적인 소총수는 언락된 무기에 영향받아 기관단총에서 시작해서 중화기(대공/대전차화기)까지 무장합니다. 이는 현재 팩션 숙련도 레벨(헬멧 및 유니폼)에 따라 달라지는 그들의 복장에 영향을 미치지 않는다는 점에 유의하십시오. 무기고는 표준 바닐라 무기고입니다. 자세한 사항은 BIS 문서를 확인하십시오.<br/><br/>각 아이템의 언락 조건을 보려면 본부의 탄약상자를 열면 오른쪽에 자세한 정보가 제공됩니다. - Ищите предметы, оружие и патроны и положите их в ящик для боеприпасов в штаб-квартире. Как только у вас будет определенное их количество, они будут разблокированы и добавлены в Арсенал для личного использования (и для отрядов вашей фракции). <br/> Количество, необходимое для разблокировки, зависит от того, сколько снаряжения разблокировала фракция и количество принадлежащих фабрик. Разблокированное оружие, оптика и очки ночного видения также могут изменить снаряжение ИИ. Это особенно касается обычных ополченцев: их снаряжение начнется с небольших пистолетов-пулеметов и перейдет к дополнительным зенитным/противотанковым гранатометам. Обратите внимание, это не повлияет на их одежду, которая будет зависеть от текущего уровня навыков фракции (шлемы и униформа). Арсенал - это стандартный арсенал BIS, проверьте его документацию для взаимодействия и использования. <br/><br/> Чтобы увидеть суммы, необходимые для разблокировки каждой группы предметов, откройте HQ Ammobox, и вы получите подробный отчет справа + Ищите предметы, оружие и патроны и положите их в ящик для боеприпасов в штабе. Как только у вас будет определенное их количество, они будут разблокированы и добавлены в Арсенал для личного использования (и для отрядов вашей фракции). <br/> Количество, необходимое для разблокировки, зависит от того, сколько снаряжения разблокировала фракция и количество принадлежащих фабрик. Разблокированное оружие, оптика и очки ночного видения также могут изменить снаряжение ИИ. Это особенно касается обычных ополченцев: их снаряжение начнется с небольших пистолетов-пулеметов и перейдет к дополнительным зенитным/противотанковым гранатометам. Обратите внимание, это не повлияет на их одежду, которая будет зависеть от текущего уровня навыков фракции (шлемы и униформа). Арсенал - это стандартный арсенал BIS, проверьте его документацию для взаимодействия и использования. <br/><br/> Чтобы увидеть суммы, необходимые для разблокировки каждой группы предметов, откройте HQ Ammobox, и вы получите подробный отчет справа Zbieraj przedmioty, broń i magazyny i umieszczaj je w arsenale. Gdy zdobędziesz określoną ilość przedmiotów, zostaną one odblokowane i dodane do arsenału do użytku osobistego (i dla oddziałów AI frakcji).<br/>Ilość przedmiotów wymagana do odblokowania zależy od tego, ile odblokowała cała frakcja i od liczby posiadanych fabryk. Odblokowane bronie, optyka i noktowizory mogą również zmienić wyposażenie AI. Szczególnie dotyczy się to oddziałów milicji: ich wyposażenie zacznie się od małych pistoletów maszynowych i przejdzie do posiadania dodatkowej wyrzutni przeciwlotniczej / przeciwpancernej. Pamiętaj, że nie wpłynie to na ich ubiór, który będzie zależał od aktualnego poziomu umiejętności frakcji (hełmy i mundury). Arsenał to standardowy Arsenał BIS, sprawdź ich dokumentację pod kątem interakcji i użycia.<br/><br/>Aby zobaczyć kwoty wymagane do odblokowania każdej grupy przedmiotów, otwórz skrzynkę w sztabie, a otrzymasz szczegółowy raport. Hledejte předměty, zbraně a zásobníky a vložte je do svého arzenálu. Jakmile budete mít určité množství z nich, budou odemčeny a přidány do Arzenálu pro osobní potřebu (a pro vaše frakce družstva).<br/>Částka potřebná k odemčení závisí na tom, kolik aktiv frakce odemkla a počet vlastněných továren. Odemčené zbraně, optika a noční vidění může také změnit vybavení AI. Základní milicionáři jsou tímto obzvláště postiženi: jejich vybavení začne od malých SMG až po odpalovací zařízení AA / AT. Vezměte prosím na vědomí, že to nebude mít vliv na jejich oblečení, které bude záviset na aktuální úrovni dovedností frakce (přilby a uniformy). Arzenal je standardní BIS Arsenal, zkontrolujte jejich dokumentaci pro interakci a použití.<br/><br/> Chcete-li zobrazit částky potřebné k odemknutí každé skupiny položek, otevřete okno hq a obdržíte podrobnou zprávu vpravo. 搜寻物品、武器和弹夹, 并将其放进总部的弹药箱中。当你拥有超过一定数量的物品之后, 它们将会解锁并添加到军火库以供个人(以及阵营班组)使用。<br/>解锁物品所需的数量取决于我方阵营已解锁的资产和拥有的工厂数量。解锁的武器、瞄具和夜视仪也会改变AI的装备。最基础的民兵将尤其受此影响: 他们的装备将从小型冲锋枪开始, 发展到拥有一个额外的防空/反坦克发射器。请注意, 这不会影响到AI小队的着装, 而着装(头盔和制服)取决于我方阵营当前的技能等级。军火库是标准的BIS军火库, 查看它们的文档来了解如何交互和使用。<br/><br/>要查看解锁每组物品所需的数量, 打开总部的弹药箱, 你将在右侧看到详细报告。 @@ -12824,15 +14720,22 @@ Puedes robar armas estáticas que se encuentran en aeropuertos enemigos. Debes usar la acción de "Robar Estática" para ello. ¡NO las desmanteles antes de usar la acción "Robar Estática"! Vous pouvez voler des armes statiques trouvées dans les aéroports ennemis. Vous devez utiliser l'action 'Steal Static' pour le faire. NE PAS les démonter avant d'utiliser l'action 'Voler l'arme statique" ! 적 공항에서 발견된 고정화기는 훔칠 수 있습니다. '고정화기 훔치기' 행동을 사용해야 합니다. '고정화기 훔치기' 행동을 사용하기 전엔 "절대" 분해하지 마십시오! - Вы можете украсть стационарное оружие найденное во вражеских аэропортах. Для этого вы должны использовать действие «Украсть стац. оружие». НЕ разбирайте их прежде чем использовать действие «Украсть стац. оружие». + Вы можете украсть стационарное оружие найденное во вражеских авиабазах. Для этого вы должны использовать действие «Украсть стац. оружие». НЕ разбирайте их прежде чем использовать действие «Украсть стац. оружие». Możesz ukraść stanowiska boje znalezioną na lotniskach wroga. Aby to zrobić, musisz użyć akcji „Ukradnij Stanowisko Bojowe”. NIE demontuj ich na części przed użyciem akcji „Ukradnij Stanowisko Bojowe”! Můžete ukrást lafetované zbraně na nepřátelských letištích. K tomu musíte použít akci „Ukrást lafetovanou zbraň“. NEPOUŽÍVEJTE „rozložit" před použitím akce „Ukrást lafetovanou zbraň“ 你可以偷取在敌方机场发现的固定式武器。你必须使用"偷取固定式武器"动作来执行此操作。在使用"偷取固定式武器"动作之前, 不要拆解固定式武器! Once you have defeated the enemy garrison, you can go to the marker and select the "Take the Flag" option to convert the outpost to your faction. Roadblock flags are cosmetic and cannot be taken. + Um eine Zone, wie z.B. einen Flugplatz, einzunehmen, musst du die "Nimm die Flagge" Aktion an dem entsprechenden Flaggenmast vor Ort nutzen. Una volta sconfitta la guarnigione nemica, puoi andare alla bandiera e selezionare l'opzione "Prendi la bandiera" per convertire l'outpost alla tua fazione. Le bandiere dei posti di blocco sono solamente ornamentali e non possono essere prese. + Algunas zonas como aeropuertos requieren de ti para usar la acción de "Tomar la Bandera" en las respectivas banderas para conquistarlas. Algunas otras, como bloqueos de carreteras y algunos puntos de control, solo requieren que derrotes a la guarnición. + Certaines zones, comme les aéroports, vous obligent à utiliser l'action ""Prendre le drapeau"" sur leurs drapeaux respectifs afin de les conquérir. D'autres, comme les barrages routiers et certains avant-postes, vous demandent simplement de vaincre la garnison. 적 주둔군을 물리치고 나면 마커로 가서 "깃발 올리기" 옵션을 선택하여 전초 기지를 자신의 팩션으로 전환할 수 있습니다. 검문소 깃발은 장식용이므로 사용할 수 없습니다. + Некоторые зоны, например авиабазы, требуют от вас использования действия «Взять флаг» на соответствующих флагах, чтобы захватить их. Некоторые другие, такие как блокпосты и некоторые заставы, просто требуют, чтобы вы уничтожили гарнизон. + Niektóre strefy, takie jak lotniska, wymagają użycia akcji „Przejmij Flagę” na odpowiednich flagach, aby je podbić. Inne, takie jak blokady dróg i niektóre posterunki, wymagają po prostu pokonania całego garnizonu. + Některé zóny, jako jsou letiště, vyžadují, abyste na jejich příslušných vlajkách použili akci „Převzít vlajku“, abyste je mohli dobýt. Někteří jiní, jako jsou zátarasy a některé základny, prostě vyžadují, abyste porazili posádku. + 你需要在敌方旗帜上使用"夺取旗帜"动作来占领某些区域, 比如机场。对于另一些区域, 比如路障和前哨, 只需要击败敌方驻军即可。 %2 vs %1 war. @@ -12991,8 +14894,15 @@ When you are the Commander, hit CTRL + SPACE to give way-points and other orders to your AI squads using the HC mode. + Wenn du der Kommandant bist, kannst du über Strg + Leertaste in den Oberbefehlsmodus wechseln und somit KI Gruppen Befehle geben. Nicht-Kommandanten können dies nutzen, um Berichte über feindliche Kontakte zu überprüfen. Quando sei il comandante, premi CTRL+SPAZIO per dare direzioni e altri ordini alle squadre AI usando la modalità Alto Comando + Cuando eres el comandante, presiona CTRL + ESPACIO para dar puntos de reunión y otras ordenes a las escuadras controladas por IA usando el modo HC. Los no comandantes pueden usarlo para visualizar las unidades enemigas reportadas por la red de comunicaciones de la Facción. + Lorsque vous êtes le commandant, appuyez sur CTRL + ESPACE pour donner des points de cheminement et d'autres ordres à vos escouades d'IA en utilisant le mode HC. Les non-commandants peuvent l'utiliser pour vérifier les contacts ennemis signalés par le réseau de communication de la faction. 당신이 지휘관일 때 컨트롤 + 스페이스를 눌러 하이 커맨드 모드를 사용하여 AI 분대에 경유지 및 기타 명령을 제공하십시오. + Когда вы являетесь командиром, нажмите CTRL + ПРОБЕЛ, чтобы отдать команды вашим отрядам ИИ, используя режим ВК. Не командующие могут использовать его для проверки контактов с противником, сообщаемых сетью связи Фракции. + Kiedy jesteś dowódcą, naciśnij CTRL + SPACJA, aby dać punkty nawigacyjne i inne rozkazy swoim oddziałom AI za pomocą trybu HC. Pozostali gracze mogą go używać do sprawdzania kontaktów wroga zgłoszonych przez sieć komunikacyjną frakcji. + Pokud jste velitel, můžete přepnout do příkazového režimu pomocí kláves Ctrl + Mezera a tak dát příkazy skupinám AI. Nevelitelé mohou použít k ověření zpráv o nepřátelských kontaktech. + 当你是指挥官时, 按下 Ctrl + 空格 即可使用指挥部模式向AI小队分配路径点或下达其他命令。非指挥官可以使用它来查询阵营通讯网络上报告的接敌情况。 Press SHIFT + Y in-game while having an artillery squad selected on the HC bar. @@ -13048,15 +14958,22 @@ No esperes ser capaz de conquistar nada en las etapas iniciales. Primero debes juntar suficientes recursos (HR y Dinero) para ser capaz de conquistar y mantener tus posiciones. Esta misión trata de simular situaciones de la Guerrilla real. En caso de duda, pregúntate a ti mismo que harías en la vida real. No esperes ganar cada vez. Golpear e huir es la maniobra básica aquí. Gana cada recurso, arma y bala para suponer un reto real al enemigo. Mientras tanto, estorba las operaciones enemigas y/o ganate el apoyo de la población. Ne vous attendez pas à pouvoir conquérir quoi que ce soit au début. Vous devez d'abord rassembler suffisamment de ressources (RH et Argent) pour pouvoir conquérir et conserver vos positions. Cette mission tente de simuler des situations de guérilla réelles. En cas de doute, demandez-vous ce que vous feriez dans la vraie vie. Ne vous attendez pas à gagner à chaque fois. Le Hit and Run est la manœuvre de base ici. Recupérez de l'argent, des armes et des munitions pour rassembler suffisamment de ressources afin d'être un véritable défi pour l'ennemi. En attendant, perturbez ses opérations et gagnez le soutien de la population. 초기부터 점령할 수 있을 거라고 기대하지 마십시오. 충분한 자원(인력과 자금)을 모아야 당신의 힘이 유지됩니다. 이 미션은 게릴라 상황을 재현합니다. 의심이 들면, 당신이 실제라면 무엇을 할 지 스스로 물어보십시오. 모든 걸 이길 것 이라고 기대하지 마십시오. 힛 앤 런이 기본 전술입니다. 적을 위협하기 위해 모든 자원, 무기, 탄약을 모으십시오. 그리고 적을 방해하고 현지에서 지지를 얻으십시오. - Не ожидайте, что сможете что-либо победить на ранних стадиях. Сначала вам нужно собрать достаточно ресурсов (ЛР и Деньги), чтобы иметь возможность завоевать и удерживать свои позиции. Эта миссия пытается смоделировать реальные партизанские ситуации. Если сомневаетесь, спросите себя, что бы вы делали в реальной жизни. Не надейтесь на победу каждый раз. Бей и беги - обычная тактика. Собирайте все возможные ресурсы, оружие и боеприпасы, чтобы сформировать серьезную силу и стать настоящим испытанием для врага. А пока помешайте его работе и заручитесь поддержкой населения. + Не ожидайте, что сможете что-либо победить на ранних стадиях. Сначала вам нужно собрать достаточно ресурсов (HR и Деньги), чтобы иметь возможность завоевать и удерживать свои позиции. Эта миссия пытается смоделировать реальные партизанские ситуации. Если сомневаетесь, спросите себя, что бы вы делали в реальной жизни. Не надейтесь на победу каждый раз. Бей и беги - обычная тактика. Собирайте все возможные ресурсы, оружие и боеприпасы, чтобы сформировать серьезную силу и стать настоящим испытанием для врага. А пока помешайте его работе и заручитесь поддержкой населения. Nie oczekuj, że we wczesnych etapach będziesz w stanie podbić cokolwiek. Najpierw musisz zebrać wystarczającą ilość zasobów (Rekruci i Pieniądze), aby móc podbić i utrzymać swoje pozycje. Ta misja próbuje symulować rzeczywistą wojnę partyzancką. Jeśli masz wątpliwości, zadaj sobie pytanie, co byś zrobił w prawdziwym życiu. Nie oczekuj, że wygrasz za każdym razem. Ataki typu Uderz i Uciekaj są tutaj podstawową taktyką. Zdobądź wszystkie zasoby, broń i amunicję aby stać się prawdziwym wyzwaniem dla wroga. W międzyczasie zakłócaj jego działalność i zyskaj wsparcie ludności. Neočekávejte, že v časných stádiích dokážete něco dobýt. Nejprve musíte shromáždit dostatek zdrojů (HR a peníze), abyste mohli dobýt a udržet své pozice. Tato mise se pokouší simulovat partyzánské situace v reálném životě. Pokud máte pochybnosti, zeptejte se sami sebe, co byste udělali v reálném životě. Nečekejte, že vyhrajete pokaždé. Udeřit a Utéct je zde základní manévr. Získejte všechny zdroje, zbraně a střelivo, abyste shromáždili dostatek prostředků, aby pro nepřítele představovali skutečnou výzvu. Mezitím narušit její činnost a získat podporu od obyvatelstva. 不要指望在前期就征服一切。首先, 你必须获取足够的资源(人力资源和资金), 才能攻占并守住你的领地。本任务试图模拟真实世界中的游击态势。如果你有疑问, 问问自己在现实生活中会怎么做。不要期待百战百胜。打完就跑是这里的基本策略。赚取各种资源、武器和弹药, 来积攒真正足以对抗敌人的资产。与此同时, 扰乱敌军的行动, 并获得民众的支持。 Keep an eye on both faction's Aggro level. A higher level means more attacks with more powerful weaponry. + Behalte dies im Auge. Wenn sie zu hoch wird, wirst du dich deutlich mehr Angriffen und besseren Einheiten entgegenstellen müssen. Tieni d'occhio il livello di aggressività delle fazioni. Più è alto e più attacchi dovrai affrontare con truppe migliori. + Echale un ojo, si es muy alto, te tendrás que enfrentar a más ataques con mejores tropas + Gardez un œil dessus. S'il est trop haut, vous devrez faire face à plus d'attaques avec de meilleures troupes. 두 팩션의 공격성 레벨을 주시하십시오. 레벨이 높을 수록 더 강력한 무기로 더 많은 공격을 가할 수 있습니다. + Следите за уровнем агрессии. Если он слишком высок, вам придется встретить больше атак с лучшими войсками. + Miej na to oko. Jeśli będzie zbyt wysoki, będziesz musiał stawić czoła większej liczbie ataków wroga z coraz to lepszymi oddziałami. + Dávejte pozor na to. Pokud je příliš vysoká, budete muset čelit více útokům s lepšími jednotkami. + 密切关注侵略性。如果侵略性太高, 你将不得不面对更多、更强的进攻部队。 Once you have a nice amount of resources, focus on enemy communications. If you disturb them enough, you won't have to face big counter-attacks. @@ -13077,7 +14994,7 @@ No esperes un leve contraataque cuando conquistes zonas estratégicas como aeropuertos o recursos. El enemigo enviará todo lo que tenga, si puede. Si conquistas una zona y esperas un contraataque, retirarse es una buena opción. Ne vous attendez pas à une contre-attaque légère lorsque vous conquérez des zones stratégiques telles que des ressources ou des aéroports. L'ennemi enverra tout ce qu'il peut, s'il est disponible. Si vous conquérez une zone et vous attendez à une contre-attaque, la fuite est une bonne option. 전략 요충지 또는 공항을 점령할 때 적들이 쉽게 내줄 거라 기대하지 마십시오. 적들은 가능한 선에서 보낼 수 있는 모든 것을 보낼 것입니다. 만약 점령 후 반격이 예상된다면, 도망가는 것도 좋은 선택입니다. - Не ожидайте легкой контратаки при захвате стратегических зон, таких как ресурсы или аэропорты. Враг пошлет все, что сможет, если возможно. Если вы захватываете зону и ожидаете контратаки, бегство - хороший вариант. + Не ожидайте легкой контратаки при захвате стратегических зон, таких как ресурсы или авиабазы. Враг пошлет все, что сможет, если возможно. Если вы захватываете зону и ожидаете контратаки, бегство - хороший вариант. Nie spodziewaj się lekkiego kontrataku, gdy podbijasz strategiczne ważne strefy, takie jak zasoby czy lotniska. Wróg wyśle wszystko, co może, żeby tobie przeszkodzić. Gdy podbijesz którąś strefę i spodziewasz się kontrataku, ucieczka jest dobrą opcją. Neočekávejte lehký protiútok, když dobýváte strategické zóny, jako jsou zdroje nebo letiště. Nepřítel pošle vše, co může, pokud bude k dispozici. Pokud dobýváte zónu a očekáváte protiútok, prchání je dobrá volba. 当你攻占了资源点或者机场等战略要地时, 不要指望会只有轻微的反击。敌军会竭尽所能地派兵。如果你攻占了一个区域并遭到反击, 逃走是一个不错的选择。 @@ -13126,6 +15043,7 @@ Se ha cargado una partida de Antistasi anterior a la actualización de mod de esta misión. Para jugar esta misión, no cargues el mod de Antistasi. Si planeas cargar una misión desde el mod de Antistasi, selecciona la misión correcta. Une mission incompatible avec Antistasi a été demarrée. Pour jouer cette mission, desactiver le mod Antistasi. Si vous souhaitiez lancer une mission du mod Antistasi, selectionnez la bonne mission. 호환되지 않는 사전 모드로 안티스타시 임무가 시작되었습니다. 이 임무를 수행하려면 안티스타시 모드를 언로드하십시오. 안티스타시 모드에서 임무를 로드하려는 경우 올바른 임무를 선택하십시오. + Запущена несовместимая с модом миссия Antistasi. Чтобы выполнить эту миссию, загрузите мод Antistasi. Если вы намеревались загрузить миссию из мода Antistasi, выберите правильную миссию. Rozpoczęto starą niekompatybilną misję z modem Antistasi. Aby rozegrać tę misję, usuń mod Antistasi. Jeśli chcesz wczytać misję z modem Antistasi, wybierz właściwą misję. Byla zahájena nekompatibilní mise Antistasi před modifikací. Chcete-li hrát tuto misi, vyjměte modul Antistasi. Pokud jste zamýšleli načíst misi z modu Antistasi, vyberte správnou misi. 已启动不兼容的旧版本Antistasi模组任务。要玩此任务,请卸载Antistasi模组。如果你想要载入Antistasi模组中的任务,请选择正确的任务。 @@ -13137,6 +15055,7 @@ Misión guardada obsoleta Mission Obsolète 사용되지 않는 임무 + Устаревшая миссия Przestarzała misja Zastaralá mise 已弃用的任务 @@ -13147,6 +15066,7 @@ Esta misión esta desactualizada y puede faltarle detalles importantes del mapa que pueden romper la partida. Informa al editor de la misión o actualiza la extensión a la última versión. Cette mission est périmée et pourrait ne pas avoir des détails important qui pourraient casser le jeu. Informez votre créateur de missions ou mettez à jour l'expansion. 이 임무는 구식이며 게임을 망칠 수 있는 중요한 지도의 세부 정보가 부족할 수 있습니다. 미션메이커에게 알리거나 확장 버전을 최신 버전으로 업데이트하십시오. + Эта миссия устарела, и в ней могут отсутствовать важные детали карты, которые могут нарушить работу вашей игры. Сообщите об этом создателю миссии или обновите расширение до последней версии. Ta misja jest przestarzała i może nie zawierać ważnych szczegółów mapy, które mogą zepsuć grę. Poinformuj twórcę misji lub zaktualizuj mod/rozszerzenie do najnowszej wersji. Tato mise je zastaralá a může postrádat důležité detaily mapy, které mohou narušit vaši hru. Informujte svého tvůrce mise nebo aktualizujte rozšíření na nejnovější verzi. 此任务已过时,可能缺少重要的地图细节,这可能会破坏您的游戏。通知您的任务制作者或将扩展更新到最新版本 @@ -13158,6 +15078,7 @@ Misión desactualizada Mission Périmée 구식 임무 + Устаревшая миссия Nieaktualna misja Zastaralá mise 过时的任务 @@ -13491,12 +15412,24 @@ You've turned off the top information bar. To enable it, press %1. Hai disabilitato la Barra Informazioni. Per abilitarla, premi %1. + Has ocultado la barra de información superior. Para activarla, pulsa %1 + Vous avez désactivé la barre d'informations supérieure. Pour l'activer, appuyez sur %1. 상단의 정보 표시줄을 껐습니다. 활성화하려면 %1 키를 누르십시오. + Вы выключили отображение информационной строки. Чтобы включить её снова, нажмите %1. + Wyłączyłeś górny pasek informacji. Aby go włączyć, naciśnij %1. + Vypnuli jste horní informační lištu. Chcete-li ji povolit, stiskněte %1. + 你关闭了顶部信息栏。 要启用它,请按%1。 You've turned on the top information bar. To disable it, press %1. Hai abilitato la Barra Informazioni. Per disabilitarla, premi %1. + Has activado la barra de información superior. Para ocultarla, pulsa %1 + Vous avez activé la barre d'informations supérieure. Pour la désactiver, appuyez sur %1. 상단의 정보 표시줄을 켰습니다. 비활성화하려면 %1 키를 누르십시오. + Вы включили отображение информационной строки. Чтобы выключить её, нажмите %1. + Włączyłeś górny pasek informacyjny. Aby go wyłączyć, naciśnij %1. + Zapnuli jste horní informační lištu. Chcete-li ji deaktivovat, stiskněte %1. + 你打开了顶部信息栏。 要关闭它,请按%1。 Information Bar @@ -13583,6 +15516,14 @@ To construct buildings in this version, buy a construction kit from the Buy Vehicle menu and use the action on it + Costruisci nel punto dove hai selezionato una struttura rivolta verso questa direzione + Construye en el sitio el edificio seleccionado mirando hacia esta dirección + Construire à l'endroit où vous vous trouvez un bâtiment sélectionné faisant face à cette direction + 해당 버전의 건물을 건설하려면 차량 구입 메뉴에서 건설 도구를 구입하고 관련된 행동을 수행하십시오. + Постройте в том месте, где вы выбрали здание, обращенное в этом направлении + Zbuduj, w miejscu w którym jesteś, wybrany budynek zwrócony w tym kierunku + Stavějte na místě, kde jste vybraly budovu otočenou tímto směrem + 在你所在的位置, 朝向此方向建造所选建筑 Fast Travel @@ -13655,9 +15596,25 @@ Undercover ON + Sotto Copertura ON + Encubierto ON + Incognito ON + 위장 토글 + Скрытность ВКЛ + Tryb Incognito WŁ + Utajení ZAPNUTO + 启用伪装 Become Undercover if you match the requirements. Enemy AI won't attack you until they discover you. + Vai sotto copertura se soddisfi i requisiti. I nemici non ti attaccheranno finché verrai scoperto + Pasa a Encubierto si cumples los requisitos. La IA enemiga no te atacará hasta que te descubra. + Devenez Incognito si vous remplissez les conditions. L'IA ennemie ne vous attaquera pas tant qu'elle ne vous aura pas découverte + 요구 사항과 일치하는 경우 위장이 시작됩니다. 적 AI는 당신을 알아볼 때까지 당신을 공격하지 않을 것입니다. + Станьте скрытным, если вы соответствуете требованиям. Вражеский ИИ не нападет на вас, пока не обнаружит вас + Stań się Incognito, jeśli spełniasz wymagania. Wrogowie nie zaatakuje cię, dopóki cię nie odkryją + Buď v utajení pokud splníš podmíky. Nepřátelské AI na tebe nebude útočit pokud tě neodhalí. + 满足条件时可进入伪装状态。敌方AI在识破你之前不会攻击你 Unlock Vehicle @@ -13678,7 +15635,7 @@ Permite a otros grupos montarse a este vehículo Autoriser d'autres groupes à monter dans ce véhicule 다른 그룹이 이 차량에 탑승하도록 허용합니다. - Разрешить другим группам садиться на этот автомобиль + Разрешить другим отрядам садиться в этот транспорт Pozwól innym grupom na używanie tego pojazdu Umožněte ostatním skupinám nasednout do tohoto vozidla 允许其他小队搭乘该载具 @@ -13704,6 +15661,7 @@ Admin está configurando la partida. L'admin prépare le jeu. 관리자가 게임을 설정 중입니다. + Админ настраивает игру. Administrator konfiguruje grę. Admin nastavuje hru. 管理员正在设置游戏。 @@ -13715,6 +15673,7 @@ Esperando a que se autentique un Admin... Attente qu'un Admin se connecte... 관리자가 로그인하길 기다리는 중... + Ожидание входа администратора... Oczekiwanie na zalogowanie się admina... Čeká se na přihlášení administrátora... 等待管理员登录... @@ -13726,6 +15685,7 @@ Esperando a que un Admin se autentique, o que comience automáticamente al terminal el contador... Attente qu'un Admin se connecte, ou délai de demarrage auto... 관리자가 로그인하거나 자동 시작 시간 초과를 기다리는 중... + Ожидание входа администратора или автозапуска... Oczekiwanie na zalogowanie się administratora lub przekroczenie limitu czasu autostartu... Čekání na přihlášení správce nebo vypršení časového limitu automatického spuštění... 等待管理员登录,或自动启动超时... @@ -13760,6 +15720,7 @@ Error de discordancia de versión:<br><br/>Servidor: %1<br/>Cliente: %2 Erreur d'incohérence de version :<br/><br/>Serveur : %1<br/>Client : %2 버전 불일치 오류:<br/><br/>서버: %1<br/>클라이언트: %2 + Ошибка несоответствия версии:<br/><br/>Сервер: %1<br/>Клиент: %2 Błąd niezgodności wersji:<br/><br/>Serwer: %1<br/>Klient: %2 Nesouhlasí verze:<br/><br/>Server: %1<br/>Klient: %2 版本不匹配错误:<br/><br/>服务器: %1<br/>客户端: %2 @@ -13784,6 +15745,7 @@ Esperando al servidor... Attente du serveur... 서버 기다리는 중... + Ожидание сервера... Oczekiwanie na serwer... Čekání na server... 等待服务器... @@ -14148,7 +16110,7 @@ Minutos Minutes - минут + Мин Minuty minut 分钟 @@ -14337,10 +16299,13 @@ Kit de construcción grande Grand kit de construction 대형 건설 도구 + Большой строительный набор 大型建筑包 Medium construction kit + 중형 건설 도구 + Средний строительный набор Small construction kit @@ -14348,6 +16313,7 @@ Kit de construcción pequeño Petit kit de construction 소형 건설 도구 + Небольшой строительный набор 小型建筑包 @@ -14473,8 +16439,14 @@ Gain air support points by sacrificing the aircraft you're looking at. Use these points to call in HE, Cluster, and Napalm strikes. Ottieni Punti Supporto Aereo consegnando questo velivolo alla fazione. Usa questi punti per chiamare bombardamenti. + Gana puntos de ataque aéreo dando este vehículo al almacen de la Facción + Gagnez des points de frappe aérienne en donnant ce véhicule à la réserve aérienne de la faction 현재 보고 있는 항공기를 희생하고 항공 지원 포인트를 얻습니다. 이 포인트를 사용하여 고폭, 집속, 네이팜 폭격을 요청하십시오. + Получите очки авиаудара, отдав этот автомобиль в запас воздуха фракции + Zdobądź punkty Nalotu, dając ten pojazd do puli pojazdów latających twojej frakcji + Získejte body leteckého úderu dáním tohoto vozidla do frakčního leteckého poolu Bu uçağı Hava Havuzu grubuna vererek Hava Saldırısı puanları kazanın + 将此载具捐献给阵营空军以换取空袭点数 Garage\Sell Vehicle @@ -14518,7 +16490,7 @@ Permite a otros grupos montarse a este vehículo Autoriser d'autres groupes à monter dans ce véhicule 다른 그룹이 이 차량에 탑승하도록 허용합니다. - Разрешить другим группам садиться на этот автомобиль + Разрешить другим отрядам садиться в этот транспорт Pozwól innym grupom na używanie tego pojazdu Umožněte ostatním skupinám nasednout do tohoto vozidla 允许其他小队搭乘该载具 diff --git a/A3A/addons/core/Templates/AircraftLoadouts/3CB/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/3CB/config.cpp new file mode 100644 index 0000000000..9e89623e7a --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/3CB/config.cpp @@ -0,0 +1,135 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_3CB) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"rhsgref_main_loadorder", "UK3CB_Factions_Vehicles_SUV"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + + class RHS_A10; + class UK3CB_CW_US_B_EARLY_A10 : RHS_A10{}; + + class RHS_Su25SM_vvsc; + class UK3CB_TKA_B_Su25SM_CAS : RHS_Su25SM_vvsc{}; + class UK3CB_LDF_B_Su25SM_CAS : RHS_Su25SM_vvsc{}; + class UK3CB_ADA_I_Su25SM_CAS : RHS_Su25SM_vvsc{}; + class UK3CB_KDF_B_Su25SM_CAS : RHS_Su25SM_vvsc{}; + class UK3CB_CW_SOV_O_LATE_Su25SM_CAS : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_A_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_B_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_F_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_M_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_G_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_N_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_U_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_S_O_Su25SM : RHS_Su25SM_vvsc{}; + class UK3CB_CSAT_W_O_Su25SM : RHS_Su25SM_vvsc{}; + + class UK3CB_B_Mystere_HIDF_CAS1 : baseCAS { + loadout[] = {"PylonRack_3Rnd_Missile_AGM_02_F","PylonRack_12Rnd_missiles","PylonRack_12Rnd_missiles","PylonRack_3Rnd_Missile_AGM_02_F"}; + mainGun[] = {"uk3cb_mystere_cannon_30mm"}; + rocketLauncher[] = {"missiles_DAR"}; + missileLauncher[] = {"Missile_AGM_02_Plane_CAS_01_F"}; + }; + class UK3CB_MDF_B_Mystere_CAS1 : UK3CB_B_Mystere_HIDF_CAS1{}; + + class UK3CB_ADA_B_L39_PYLON : baseCAS { + loadout[] = {"PylonRack_7Rnd_Rocket_04_AP_F","PylonRack_3Rnd_LG_scalpel","PylonRack_12Rnd_missiles","PylonWeapon_300Rnd_20mm_shells","PylonRack_12Rnd_missiles","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_AP_F"}; + mainGun[] = {"Twin_Cannon_20mm"}; + rocketLauncher[] = {"Rocket_04_AP_Plane_CAS_01_F", "missiles_DAR"}; + missileLauncher[] = {"missiles_SCALPEL"}; + }; + class UK3CB_AAF_B_L39_PYLON : UK3CB_ADA_B_L39_PYLON{}; + class UK3CB_KRG_B_L39_PYLON : UK3CB_ADA_B_L39_PYLON{}; + class UK3CB_LDF_B_L39_PYLON : UK3CB_ADA_B_L39_PYLON{}; + + class UK3CB_TKA_B_MIG21_AT : baseCAS { + loadout[] = {"uk3cb_mag_kh25MA","rhs_mag_b8m1_bd3_umk2a_s8t","rhs_mag_b8m1_bd3_umk2a_s8t","uk3cb_mag_kh25MA"}; + mainGun[] = {"uk3cb_mig21_GSh23L_23mm"}; + rocketLauncher[] = {"rhs_weap_s8t"}; + missileLauncher[] = {"uk3cb_weap_kh25ma_Launcher"}; + }; + + class UK3CB_AAF_B_Gripen_G : baseCAS { + loadout[] = {"","","PylonRack_Missile_AGM_02_x1","PylonRack_Missile_AGM_02_x1","PylonRack_Missile_AGM_02_x2","PylonRack_Missile_AGM_02_x2"}; + mainGun[] = {"weapon_Fighter_Gun20mm_AA"}; + missileLauncher[] = {"weapon_AGM_65Launcher"}; + }; + class UK3CB_AAF_B_Gripen_DG : UK3CB_AAF_B_Gripen_G {}; + + class UK3CB_B_T28Trojan_HIDF_CAS : baseCAS { + loadout[] = {"rhs_mag_AGM114L_2","PylonWeapon_300Rnd_20mm_shells","PylonWeapon_300Rnd_20mm_shells","rhs_mag_AGM114L_2"}; + mainGun[] = {"Twin_Cannon_20mm_gunpod"}; + missileLauncher[] = {"rhs_weap_AGM114L_Launcher"}; + gunnerLaser = "Laserdesignator_mounted"; + }; + class UK3CB_AAF_B_T28Trojan_CAS : UK3CB_B_T28Trojan_HIDF_CAS {}; + class UK3CB_ION_B_Desert_T28Trojan_CAS : UK3CB_B_T28Trojan_HIDF_CAS {}; + class UK3CB_MDF_B_T28Trojan_NAVY_CAS : UK3CB_B_T28Trojan_HIDF_CAS {}; + class UK3CB_MDF_B_T28Trojan_CAS : UK3CB_B_T28Trojan_HIDF_CAS {}; + }; + class CAPPlane + { + class baseCAP; + class rhs_mig29sm_vvs; + class UK3CB_TKA_O_MIG29SM : rhs_mig29sm_vvs {}; + class UK3CB_CW_SOV_O_LATE_MIG29S : rhs_mig29sm_vvs {}; + class UK3CB_LDF_B_MIG29SM : rhs_mig29sm_vvs {}; + class UK3CB_KDF_B_MIG29SM : rhs_mig29sm_vvs {}; + class UK3CB_AAF_O_MIG29S : rhs_mig29sm_vvs {}; + class UK3CB_CSAT_A_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_B_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_F_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_M_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_N_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_G_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_S_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_U_O_MIG29SM : rhs_mig29sm_vvs{}; + class UK3CB_CSAT_W_O_MIG29SM : rhs_mig29sm_vvs{}; + + class UK3CB_ANA_B_L39_PYLON : baseCAP { + loadout[] = {"PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_GAA_missiles","PylonWeapon_300Rnd_20mm_shells","PylonRack_1Rnd_GAA_missiles","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_Missile_AA_04_F"}; + }; + class UK3CB_ADA_B_L39_PYLON : UK3CB_ANA_B_L39_PYLON {}; + class UK3CB_ADA_I_L39_PYLON : UK3CB_ANA_B_L39_PYLON {}; + class UK3CB_TKA_B_L39_PYLON : UK3CB_ANA_B_L39_PYLON {}; + class UK3CB_KRG_B_L39_PYLON : UK3CB_ANA_B_L39_PYLON {}; + class UK3CB_LDF_B_L39_PYLON : UK3CB_ANA_B_L39_PYLON {}; + + class UK3CB_AAF_B_Gripen_G : baseCAP { + loadout[] = {"PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x2","PylonRack_Missile_AMRAAM_C_x2"}; + }; + class UK3CB_AAF_B_Gripen_DG : UK3CB_AAF_B_Gripen_G {}; + + class UK3CB_LDF_B_MIG21_AA : baseCAP { + loadout[] = {"rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73"}; + }; + class UK3CB_TKA_B_MIG21_AA : UK3CB_LDF_B_MIG21_AA {}; + + class UK3CB_B_Mystere_HIDF_AA1 : baseCAP { + loadout[] = {"PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_Missile_AA_04_F"}; + }; + class UK3CB_MDF_B_Mystere_AA1 : UK3CB_B_Mystere_HIDF_AA1 {}; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/CUP/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/CUP/config.cpp new file mode 100644 index 0000000000..d91dc2b4e7 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/CUP/config.cpp @@ -0,0 +1,94 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_CUP) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class CUP_B_L39_CZ : baseCAS { + loadout[] = {"CUP_PylonPod_20Rnd_S8_plane_M","PylonRack_1Rnd_Missile_AGM_01_F","PylonRack_1Rnd_Missile_AGM_01_F","CUP_PylonPod_20Rnd_S8_plane_M"}; + mainGun[] = {"CUP_Vacannon_GSh23L_L39"}; + rocketLauncher[] = {"CUP_Vmlauncher_S8_veh"}; + missileLauncher[] = {"Missile_AGM_01_Plane_CAS_02_F"}; + }; + + class CUP_B_Su25_Dyn_CDF : baseCAS { + loadout[] = {"CUP_PylonPod_1Rnd_R73_Vympel","PylonRack_20Rnd_Rocket_03_HE_F","PylonRack_20Rnd_Rocket_03_AP_F","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_20Rnd_Rocket_03_HE_F","CUP_PylonPod_1Rnd_R73_Vympel"}; + mainGun[] = {"CUP_Vacannon_GSh302K_veh"}; + rocketLauncher[] = {"Rocket_03_HE_Plane_CAS_02_F", "Rocket_03_AP_Plane_CAS_02_F"}; + missileLauncher[] = {"CUP_Vmlauncher_Kh29L_veh"}; + }; + class CUP_O_Su25_Dyn_RU : CUP_B_Su25_Dyn_CDF {}; + class CUP_O_Su25_Dyn_SLA : CUP_B_Su25_Dyn_CDF {}; + class CUP_O_Su25_Dyn_TKA : CUP_B_Su25_Dyn_CDF {}; + + class CUP_B_A10_DYN_USA : baseCAS { + loadout[] = {"CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_19Rnd_Rocket_FFAR_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_ALQ_131","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_Rocket_FFAR_plane_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M"}; + mainGun[] = {"CUP_Vacannon_GAU8_veh"}; + rocketLauncher[] = {"CUP_Vmlauncher_FFAR_veh", "CUP_Vmlauncher_CRV7_veh"}; + missileLauncher[] = {"CUP_Vmlauncher_AGM65pod_veh"}; + }; + + class CUP_B_GR9_DYN_GB : baseCAS { + loadout[] = {"CUP_PylonPod_19Rnd_CRV7_FAT_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","PylonWeapon_300Rnd_20mm_shells","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_FAT_plane_M"}; + mainGun[] = {"Twin_Cannon_20mm"}; + rocketLauncher[] = {"CUP_Vmlauncher_CRV7_veh"}; + missileLauncher[] = {"CUP_Vmlauncher_AGM65pod_veh"}; + }; + + class CUP_B_AV8B_DYN_USMC : baseCAS { + loadout[] = {"CUP_PylonPod_19Rnd_CRV7_FAT_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_FAT_plane_M"}; + mainGun[] = {"CUP_Vacannon_GAU12_veh"}; + rocketLauncher[] = {"CUP_Vmlauncher_CRV7_veh"}; + missileLauncher[] = {"CUP_Vmlauncher_AGM65pod_veh"}; + }; + }; + class CAPPlane + { + class baseCAP; + class CUP_B_L39_CZ : baseCAP { + loadout[] = {"PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1"}; + }; + class CUP_O_L39_TK : CUP_B_L39_CZ{}; + + class CUP_B_GR9_DYN_GB : baseCAP { + loadout[] = {"CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_ALQ_131","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"}; + }; + class CUP_B_SU34_CDF : baseCAP { + loadout[] = {"CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel"}; + }; + class CUP_O_SU34_RU : CUP_B_SU34_CDF {}; + class CUP_O_SU34_SLA : CUP_B_SU34_CDF {}; + + class CUP_B_F35B_USMC : baseCAP { + loadout[] = {"CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonWeapon_220Rnd_TE1_Red_Tracer_GAU22_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"}; + }; + class CUP_B_AV8B_DYN_USMC : baseCAP { + loadout[] = {"CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"}; + }; + class CUP_I_JAS39_RACS : baseCAP { + loadout[] = {"CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_2Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_2Rnd_AIM_120_AMRAAM_M"}; + }; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/IFA/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/IFA/config.cpp new file mode 100644 index 0000000000..0a04a64c05 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/IFA/config.cpp @@ -0,0 +1,89 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_IFA) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"IFA3_Core"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class LIB_Ju87 : baseCAS { + loadout[] = {"LIB_1Rnd_SC50","LIB_1Rnd_SC50","LIB_1Rnd_SC500","LIB_1Rnd_SC50","LIB_1Rnd_SC50"}; + mainGun[] = {"LIB_2xMG151_JU87"}; + rocketLauncher[] = {"LIB_2xMG151_JU87"}; + bombRacks[] = {"LIB_SC500_Bomb_Mount","LIB_SC50_Bomb_Mount"}; + diveParams[] = {1200, 300, 110, 55, 15, {15, -2}}; + }; + class LIB_Pe2 : baseCAS { + loadout[] = {"LIB_1Rnd_FAB250","LIB_1Rnd_FAB250","LIB_1Rnd_FAB250","LIB_1Rnd_FAB250"}; + mainGun[] = {"LIB_UBK_PE2", "LIB_ShKAS_PE2"}; + rocketLauncher[] = {"LIB_UBK_PE2"}; + bombRacks[] = {"LIB_FAB250_Bomb_Mount"}; + diveParams[] = {1200, 300, 110, 55, 15, {12, 0}}; + }; + class LIB_FW190F8_2 : baseCAS { + loadout[] = {"LIB_1Rnd_SC50","LIB_1Rnd_SC50","LIB_1Rnd_SC500","LIB_1Rnd_SC50","LIB_1Rnd_SC50", "LIB_2000Rnd_MG131_FW190","LIB_500Rnd_MG151_FW190"}; + mainGun[] = {"LIB_2xMG131_FW190","LIB_2xMG151_FW190"}; + rocketLauncher[] = {"LIB_2xMG151_FW190"}; + bombRacks[] = {"LIB_SC500_Bomb_Mount","LIB_SC50_Bomb_Mount"}; + diveParams[] = {1200, 300, 110, 55, 15, {15, -2}}; + }; + class LIB_P47 : baseCAS { + loadout[] = {"LIB_1Rnd_US_500lb","LIB_1Rnd_US_500lb","LIB_1Rnd_US_500lb", "LIB_6Rnd_M8_P47", "LIB_6Rnd_M8_P47", "LIB_4000Rnd_M2_P47"}; + mainGun[] = {"LIB_8xM2_P47"}; + rocketLauncher[] = {"LIB_M8_Launcher_P47"}; + bombRacks[] = {"LIB_US_500lb_Bomb_Mount"}; + diveParams[] = {1200, 350, 110, 55, 15, {20, 0}}; + }; + class LIB_P39 : baseCAS { + loadout[] = {"LIB_1Rnd_US_500lb","LIB_30Rnd_M4_P39","LIB_1000Rnd_M2_P39"}; + mainGun[] = {"LIB_4xM2_P39"}; + rocketLauncher[] = {"LIB_M4_P39"}; + bombRacks[] = {"LIB_US_500lb_Bomb_Mount"}; + diveParams[] = {1200, 350, 110, 55, 15, {20, 0}}; + }; + class LIB_RAF_P39 : LIB_P39 { + loadout[] = {"LIB_1Rnd_US_500lb","LIB_30Rnd_M4_P39","LIB_1000Rnd_M2_P39"}; + bombRacks[] = {"LIB_US_500lb_Bomb_Mount"}; + diveParams[] = {1200, 350, 110, 55, 15, {20, 0}}; + }; + class LIB_US_P39 : LIB_RAF_P39 {}; + }; + class CAPPlane + { + class baseCAP; + class LIB_P39 : baseCAP{ + loadout[] = {""}; + }; + class LIB_RA_P39_2 : LIB_P39{}; + class LIB_RA_P39_3 : LIB_P39{}; + class LIB_RAF_P39 : LIB_P39{}; + class LIB_US_P39 : LIB_P39{}; + class LIB_US_P39_2 : LIB_P39{}; + class LIB_P47 : baseCAP{ + loadout[] = {"","",""}; + }; + class LIB_FW190F8 : baseCAP{ + loadout[] = {"","","","",""}; + }; + class LIB_FW190F8_2 : LIB_FW190F8{}; + class LIB_FW190F8_3 : LIB_FW190F8{}; + class LIB_FW190F8_4 : LIB_FW190F8{}; + class LIB_FW190F8_5 : LIB_FW190F8{}; + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/RHS/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/RHS/config.cpp new file mode 100644 index 0000000000..78cf9380f9 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/RHS/config.cpp @@ -0,0 +1,97 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_RHS) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"rhsgref_main_loadorder"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class RHS_A10 : baseCAS { + loadout[] = {"rhs_mag_ANALQ131","rhs_mag_M151_7_USAF_LAU131","rhs_mag_agm65d_3","rhs_mag_M151_21_USAF_LAU131_3","rhs_mag_M151_7_USAF_LAU131","","rhs_mag_M151_7_USAF_LAU131","rhs_mag_M151_21_USAF_LAU131_3","rhs_mag_agm65d_3","rhs_mag_M151_7_USAF_LAU131","","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x16"}; + mainGun[] = {"RHS_weap_gau8"}; + rocketLauncher[] = {"rhs_weap_FFARLauncher"}; + missileLauncher[] = {"rhs_weap_agm65d"}; + }; + class rhs_l159_cdf_b_CDF : baseCAS { + loadout[] = {"rhs_mag_M151_7_USAF_LAU131","rhs_mag_agm65d","rhs_mag_agm65d","rhs_mag_zpl20_apit","rhs_mag_agm65d","rhs_mag_agm65d","rhs_mag_M151_7_USAF_LAU131","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"}; + mainGun[] = {"RHS_weap_zpl20"}; + rocketLauncher[] = {"rhs_weap_FFARLauncher"}; + missileLauncher[] = {"rhs_weap_agm65d"}; + }; + class RHS_Su25SM_vvsc : baseCAS { + loadout[] = {"rhs_mag_kh29D","rhs_mag_kh29D","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_b8m1_s8kom","rhs_mag_b8m1_s8kom","rhs_mag_R60M","rhs_mag_R60M","rhs_ASO2_CMFlare_Chaff_Magazine_x4"}; + mainGun[] = {"rhs_weap_gsh302"}; + rocketLauncher[] = {"rhs_weap_s8"}; + missileLauncher[] = {"rhs_weap_kh29d_Launcher", "rhs_weap_kh25mtp_Launcher"}; + }; + class RHS_Su25SM_CAS_vvs : RHS_Su25SM_vvsc {}; + class rhsgref_cdf_b_su25 : RHS_Su25SM_vvsc {}; + + class RHS_T50_vvs_generic_ext : baseCAS { + loadout[] = {"rhs_mag_Kh38mte_int","rhs_mag_Kh38mte_int","rhs_mag_Kh38mte_int","rhs_mag_Kh38mte_int","","","rhs_mag_kab250","rhs_mag_kab250","rhs_mag_Kh38mte","rhs_mag_Kh38mte","rhs_mag_kab250","rhs_mag_kab250"}; + mainGun[] = {"rhs_weap_gsh301"}; + missileLauncher[] = {"rhs_weap_kh38mae_Launcher"}; + }; + + class rhssaf_airforce_l_18 : baseCAS { + loadout[] = {"rhs_mag_b8m1_bd3_umk2a_s8kom","rhs_mag_b8m1_bd3_umk2a_s8kom","rhs_mag_kh25MTP_apu68_mig29","rhs_mag_kh25MTP_apu68_mig29","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"}; + mainGun[] = {"rhs_weap_gsh301"}; + rocketLauncher[] = {"rhs_weap_s8", "rhs_weap_s8df"}; + missileLauncher[] = {"rhs_weap_kh25mtp_Launcher"}; + }; + class RHSGREF_A29B_HIDF : baseCAS { + loadout[] = {"rhs_mag_AGM114L_2","rhs_mag_M151_19","rhs_mag_gbu12","rhs_mag_M151_19","rhs_mag_AGM114L_2","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"}; + mainGun[] = {"rhs_weap_M3W_A29"}; + rocketLauncher[] = {"rhs_weap_FFARLauncher"}; + missileLauncher[] = {"rhs_weap_AGM114L_Launcher", "rhs_weap_gbu12"}; + gunnerLaser = "rhs_weap_laserDesignator_AI"; + }; + }; + class CAPPlane + { + class baseCAP; + class rhsusf_f22 : baseCAP { + loadout[] = {"rhs_mag_Sidewinder_int","rhs_mag_aim120d_int","rhs_mag_aim120d_2_F22_l","rhs_mag_aim120d_2_F22_r","rhs_mag_aim120d_int","rhs_mag_Sidewinder_int","rhsusf_ANALE52_CMFlare_Chaff_Magazine_x4"}; + }; + class rhs_l159_cdf_b_CDF_CAP : baseCAP { + loadout[] = {"rhs_mag_aim9m","rhs_mag_aim120","rhs_mag_aim120","rhs_mag_zpl20_mixed","rhs_mag_aim120","rhs_mag_aim120","rhs_mag_aim9m","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"}; + }; + class rhs_mig29sm_vvs : baseCAP { + loadout[] = {"rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R77_AKU170_MIG29","rhs_mag_R77_AKU170_MIG29","","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"}; + }; + class rhs_mig29s_vvs : rhs_mig29sm_vvs {}; + class rhsgref_cdf_b_mig29s : rhs_mig29sm_vvs {}; + + class RHS_T50_vvs_generic_ext : baseCAP { + loadout[] = {"rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R74M2_int","rhs_mag_R74M2_int","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170"}; + }; + class RHS_T50_vvs_blueonblue : baseCAP { + loadout[] = {"rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R74M2_int","rhs_mag_R74M2_int"}; + }; + class RHS_T50_vvs_054 : RHS_T50_vvs_blueonblue {}; + + class rhssaf_airforce_o_l_18_101 : baseCAP { + loadout[] = {"rhs_mag_R27ER_APU470","rhs_mag_R27ER_APU470","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"}; + }; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/SFP/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/SFP/config.cpp new file mode 100644 index 0000000000..5ddb77cd7a --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/SFP/config.cpp @@ -0,0 +1,53 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_SFP) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"Swedish_Forces_Pack","CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class sfp_jas39 : baseCAS { + loadout[] = {"sfp_1x_rb98","sfp_1x_rb98","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","sfp_6rnd_arak135_AP","sfp_6rnd_arak135_AP","CUP_PylonPod_3Rnd_AGM65_Maverick_M"}; + mainGun[] = {"sfp_mauser_bk27_27mm"}; + rocketLauncher[] = {"sfp_arak135_launcher"}; + missileLauncher[] = {"CUP_Vmlauncher_AGM65pod_veh","missiles_SCALPEL"}; + }; + class sfp_jas39_bk90 : sfp_jas39 { + loadout[] = {"sfp_1x_rb98","sfp_1x_rb98","CUP_PylonPod_3Rnd_AGM65_Maverick_M","CUP_PylonPod_3Rnd_AGM65_Maverick_M","sfp_6rnd_arak135_AP","sfp_6rnd_arak135_AP","sfp_1rnd_bk90"}; + missileLauncher[] = {"sfp_bk90_launcher","CUP_Vmlauncher_AGM65pod_veh","missiles_SCALPEL"}; + code = "params ['_plane']; _plane setVehicleRadar 1;"; + }; + class sfp_jas39_rb15 : sfp_jas39 { + loadout[] = {"sfp_1x_rb98","sfp_1x_rb98","sfp_6rnd_arak135_AP","sfp_6rnd_arak135_AP","sfp_6rnd_arak135_AP","sfp_6rnd_arak135_AP","CUP_PylonPod_3Rnd_AGM65_Maverick_M"}; + missileLauncher[] = {"CUP_Vmlauncher_AGM65pod_veh"}; + }; + }; + class CAPPlane + { + class baseCAP; + class sfp_jas39 : baseCAP { + loadout[] = {"sfp_1x_rb98","sfp_1x_rb98","CUP_PylonPod_2Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_2Rnd_AIM_9L_LAU_Sidewinder_M","sfp_2x_rb100","sfp_2x_rb100","CUP_PylonPod_2Rnd_AGM114L_Hellfire_II_Plane_M"}; + }; + class sfp_jas39_cap : sfp_jas39 {}; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/SPE/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/SPE/config.cpp new file mode 100644 index 0000000000..e5aba3d6df --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/SPE/config.cpp @@ -0,0 +1,43 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_SPE) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"ww2_spe_assets_c_characters_germans_c"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class SPE_FW190F8 : baseCAS { + loadout[] = {"SPE_250Rnd_MG151","SPE_250Rnd_MG151","SPE_400Rnd_MG131","SPE_400Rnd_MG131","SPE_1Rnd_SC50","SPE_1Rnd_SC50","SPE_1Rnd_SC500","SPE_1Rnd_SC50","SPE_1Rnd_SC50"}; + mainGun[] = {"SPE_2xMG151"}; + bombRacks[] = {"SPE_SC500_Bomb_Mount","SPE_SC50_Bomb_Mount"}; + diveParams[] = {1200, 300, 110, 55, 15, {0, 0}}; + }; + class SPE_P47 : baseCAS { + loadout[] = {"SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_3Rnd_M8_P47","SPE_3Rnd_M8_P47","SPE_1Rnd_US_500lb","SPE_1Rnd_US_500lb","SPE_1Rnd_US_500lb"}; + mainGun[] = {"SPE_8xM2_P47"}; + rocketLauncher[] = {"SPE_M8_Launcher_P47"}; + bombRacks[] = {"SPE_US_500lb_Bomb_Mount"}; + diveParams[] = {1200, 350, 110, 55, 15, {3, 0}}; + }; + }; + class CAPPlane + { + class baseCAP; + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/Tornado_AWS/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/Tornado_AWS/config.cpp new file mode 100644 index 0000000000..eed70e5684 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/Tornado_AWS/config.cpp @@ -0,0 +1,41 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_Tornado_AWS) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"Tornado_AWS"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class Tornado_AWS_camo_ger : baseCAS { + loadout[] = {"Tornado_AWS_ECMpod_1rnd_M","FIR_IRIS_T_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_Litening_std_P_1rnd_M","FIR_Brimstone_DM_type1_P_3rnd_M","FIR_Brimstone_DM_type1_P_3rnd_M","FIR_GBU12_P_1rnd_M","FIR_Brimstone_DM_type2_P_3rnd_M","FIR_Brimstone_DM_type2_P_3rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_IRIS_T_P_1rnd_M","Tornado_AWS_AIRCMpod_1rnd_M","FIR_BK27_R_M","FIR_BK27_L_M"}; + mainGun[] = {"Tornado_AWS_CANNON_W"}; + missileLauncher[] = {"FIR_Brimstone"}; + }; + }; + class CAPPlane + { + class baseCAP; + class Tornado_AWS_ecr_ger : baseCAP { + loadout[] = {"Tornado_AWS_AIRCMpod_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","","FIR_AGM88_P_1rnd_M","FIR_AGM88_P_1rnd_M","","","","Tornado_AWS_fuelsmall_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_ECMpod_1rnd_M","",""}; + }; + class Tornado_AWS_GER : baseCAP { + loadout[] = {"Tornado_AWS_AIRCMpod_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_Litening_std_P_1rnd_M","FIR_Brimstone_type1_P_3rnd_M","FIR_Brimstone_type1_P_3rnd_M","FIR_GBU12_P_1rnd_M","FIR_Brimstone_type2_P_3rnd_M","FIR_Brimstone_type2_P_3rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_ECMpod_1rnd_M","FIR_BK27_R_M","FIR_BK27_L_M"}; + }; + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/UNS/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/UNS/config.cpp new file mode 100644 index 0000000000..83a5bb8395 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/UNS/config.cpp @@ -0,0 +1,76 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_UNS) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"uns_weap_w"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class uns_A1J_CAS : baseCAS { + loadout[] = {"uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_fuel_A1"}; + mainGun[] = {"uns_Uns_M2_4x20mm"}; + rocketLauncher[] = {"Uns_FFAR_HEAT_Launcher_dl", "Uns_HVARLauncher_dl"}; + }; + + class uns_A7_CAS : baseCAS { + loadout[] = {"uns_pylonRack_19Rnd_Rocket_FFAR_WP","uns_pylonRack_19Rnd_Rocket_FFAR_WP","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E"}; + mainGun[] = {"uns_M61A1"}; + rocketLauncher[] = {"Uns_FFAR_WP_Launcher_dl", "Uns_FFAR_HEAT_Launcher_dl"}; + missileLauncher[] = {"uns_AGM12_Launcher_dl"}; + }; + + class uns_A6_Intruder_CAS : baseCAS { + loadout[] = {"uns_pylonRack_12Rnd_Rocket_Zuni_AT","uns_pylonRack_12Rnd_Rocket_Zuni_AT","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12"}; + rocketLauncher[] = {"Uns_ZuniLauncher_dl", "Uns_HVARLauncher_dl"}; + missileLauncher[] = {"uns_AGM12_Launcher_dl"}; + }; + + class uns_F4J_CAS : baseCAS { + loadout[] = {"uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_f4_38Rnd_Rocket_FFAR_HEAT","uns_pylonRack_f4_38Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AGM12"}; + rocketLauncher[] = {"Uns_FFAR_HEAT_Launcher_dl"}; + missileLauncher[] = {"uns_AGM12_Launcher_dl"}; + }; + + class uns_Mig21_CAS : baseCAS { + loadout[] = {"","","uns_pylonRack_32Rnd_Rocket_57_HE","uns_pylonRack_32Rnd_Rocket_57_HE","uns_pylonRack_1Rnd_Bomb_kab500","uns_pylonRack_1Rnd_Bomb_kab500","uns_pylonRack_96Rnd_Rocket_57_HE"}; + mainGun[] = {"uns_NR30"}; + rocketLauncher[] = {"uns_57mmLauncher_dl"}; + }; + }; + class CAPPlane + { + class baseCAP; + class vn_b_air_f4c_cap : baseCAP { + loadout[] = {"vn_fuel_f4_370_mag","vn_fuel_f4_370_mag","","","vn_fuel_f4_600_mag","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1"}; + }; + class vn_b_air_f100d_cap : baseCAP { + loadout[] = {"vn_rocket_ffar_f4_lau59_m229_he_x21","vn_rocket_ffar_f4_lau59_m229_he_x21","vn_fuel_f100_335_mag","vn_fuel_f100_335_mag","vn_missile_aim9e_mag_x1","vn_missile_aim9e_mag_x1"}; + }; + class vn_o_air_mig19_cap : baseCAP { + loadout[] = {"vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1"}; + }; + class vn_o_air_mig21_cap : baseCAP { + loadout[] = {"vn_missile_mig21_aa2_mag_x1","vn_missile_mig21_aa2_mag_x1","vn_gunpod_gsh23l_v_200_mag"}; + }; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/VN/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/VN/config.cpp new file mode 100644 index 0000000000..4668473bc2 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/VN/config.cpp @@ -0,0 +1,71 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_VN) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"vn_weapons"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class vn_b_air_f4c_at : baseCAS { + loadout[] = {"vn_missile_f4_out_agm45_mag_x1","vn_missile_f4_out_agm45_mag_x1","vn_rocket_ffar_f4_lau3_m229_he_x57","vn_rocket_ffar_f4_lau3_m229_he_x57","vn_bomb_f4_out_750_blu1b_fb_mag_x3","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1"}; + rocketLauncher[] = {"vn_rocket_ffar_275in_launcher_m229"}; + missileLauncher[] = {"vn_missile_agm45_launcher"}; + }; + + class vn_b_air_f100d_at : baseCAS { + loadout[] = {"vn_rocket_ffar_f4_lau59_m229_he_x21","vn_rocket_ffar_f4_lau59_m229_he_x21","vn_fuel_f100_335_camo_01_mag","vn_fuel_f100_335_camo_01_mag","vn_missile_agm45_03_mag_x1","vn_missile_agm45_03_mag_x1"}; + mainGun[] = {"vn_m39a1_v_quad"}; + rocketLauncher[] = {"vn_rocket_ffar_275in_launcher_m229"}; + missileLauncher[] = {"vn_missile_agm45_launcher"}; + }; + + class vn_o_air_mig19_at : baseCAS { + loadout[] = {"vn_rocket_s5_heat_x16","vn_rocket_s5_heat_x16","vn_missile_kh66_mag_01_x1","vn_missile_kh66_mag_01_x1"}; + mainGun[] = {"vn_nr30_v_01"}; + rocketLauncher[] = {"vn_rocket_s5_heat_launcher"}; + missileLauncher[] = {"vn_missile_kh66_launcher"}; + }; + + class vn_o_air_mig21_cas : baseCAS { + loadout[] = {"vn_missile_mig21_kh66_mag_x1","vn_missile_mig21_kh66_mag_x1","vn_gunpod_gsh23l_v_200_mag"}; + mainGun[] = {"vn_gunpod_gsh23l"}; + missileLauncher[] = {"vn_missile_kh66_launcher"}; + }; + }; + class CAPPlane + { + class baseCAP; + class vn_b_air_f4c_cap : baseCAP { + loadout[] = {"vn_fuel_f4_370_mag","vn_fuel_f4_370_mag","","","vn_fuel_f4_600_mag","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1"}; + }; + class vn_b_air_f100d_cap : baseCAP { + loadout[] = {"vn_rocket_ffar_f4_lau59_m229_he_x21","vn_rocket_ffar_f4_lau59_m229_he_x21","vn_fuel_f100_335_mag","vn_fuel_f100_335_mag","vn_missile_aim9e_mag_x1","vn_missile_aim9e_mag_x1"}; + }; + class vn_o_air_mig19_cap : baseCAP { + loadout[] = {"vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1"}; + }; + class vn_o_air_mig21_cap : baseCAP { + loadout[] = {"vn_missile_mig21_aa2_mag_x1","vn_missile_mig21_aa2_mag_x1","vn_gunpod_gsh23l_v_200_mag"}; + }; + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/Vanilla/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/Vanilla/config.cpp new file mode 100644 index 0000000000..8820861ce5 --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/Vanilla/config.cpp @@ -0,0 +1,69 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_Vanilla) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"A3_Data_F_AoW_Loadorder"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS; + class B_Plane_CAS_01_dynamicLoadout_F : baseCAS { + loadout[] = {"PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F"}; + mainGun[] = {"Gatling_30mm_Plane_CAS_01_F"}; + rocketLauncher[] = {"Rocket_04_HE_Plane_CAS_01_F"}; + missileLauncher[] = {"Missile_AGM_02_Plane_CAS_01_F", "missiles_SCALPEL"}; + }; + class O_Plane_CAS_02_dynamicLoadout_F : baseCAS { + loadout[] = {"PylonMissile_1Rnd_LG_scalpel","PylonRack_19Rnd_Rocket_Skyfire","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_19Rnd_Rocket_Skyfire","PylonMissile_1Rnd_LG_scalpel"}; + mainGun[] = {"Cannon_30mm_Plane_CAS_02_F"}; + rocketLauncher[] = {"Rocket_03_AP_Plane_CAS_02_F", "rockets_Skyfire"}; + missileLauncher[] = {"missiles_SCALPEL"}; + }; + class I_Plane_Fighter_03_dynamicLoadout_F : baseCAS { + loadout[] = {"PylonRack_7Rnd_Rocket_04_AP_F","PylonRack_3Rnd_LG_scalpel","PylonRack_1Rnd_Missile_AGM_02_F","PylonWeapon_300Rnd_20mm_shells","PylonRack_1Rnd_Missile_AGM_02_F","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_AP_F"}; + mainGun[] = {"Twin_Cannon_20mm"}; + rocketLauncher[] = {"Rocket_04_AP_Plane_CAS_01_F"}; + missileLauncher[] = {"Missile_AGM_02_Plane_CAS_01_F", "missiles_SCALPEL"}; + }; + class a3a_Plane_Fighter_03_grey_F : I_Plane_Fighter_03_dynamicLoadout_F{}; + }; + class CAPPlane + { + class baseCAP; + class B_Plane_Fighter_01_F : baseCAP { + loadout[] = {"PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1"}; + }; + class O_Plane_Fighter_02_F : baseCAP { + loadout[] = {"PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R77_x1","PylonMissile_Missile_AA_R77_x1","PylonMissile_Missile_AA_R77_INT_x1","PylonMissile_Missile_AA_R77_INT_x1","PylonMissile_Missile_AA_R77_INT_x1"}; + }; + class I_Plane_Fighter_04_F : baseCAP { + loadout[] = {"PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2"}; + }; + class a3a_Plane_Fighter_04_grey_F : I_Plane_Fighter_04_F {}; + + class I_Plane_Fighter_03_dynamicLoadout_F : baseCAP { + loadout[] = {"PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_GAA_missiles","PylonWeapon_300Rnd_20mm_shells","PylonRack_1Rnd_GAA_missiles","PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_AAA_missiles"}; + }; + class a3a_Plane_Fighter_03_grey_F : I_Plane_Fighter_03_dynamicLoadout_F{}; + + }; + class Helicopter + { + + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/WS/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/WS/config.cpp new file mode 100644 index 0000000000..60cbccabda --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/WS/config.cpp @@ -0,0 +1,27 @@ +#include "..\..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_WS) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"A3_Data_F_AoW_Loadorder","Vehicles_F_lxWS"}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class B_Plane_CAS_01_dynamicLoadout_F; + class B_D_Plane_CAS_01_dynamicLoadout_lxWS : B_Plane_CAS_01_dynamicLoadout_F {}; + }; + }; +}; diff --git a/A3A/addons/core/Templates/AircraftLoadouts/config.cpp b/A3A/addons/core/Templates/AircraftLoadouts/config.cpp new file mode 100644 index 0000000000..7b1de2c34f --- /dev/null +++ b/A3A/addons/core/Templates/AircraftLoadouts/config.cpp @@ -0,0 +1,60 @@ +#include "..\..\script_component.hpp" + +class CfgPatches { + class PATCHNAME(AirLoadout_defaults) { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {}; + skipWhenMissingDependencies = 1; + author = AUTHOR; + authors[] = { AUTHORS }; + authorUrl = ""; + VERSION_CONFIG; + }; +}; + +class A3A { + class Loadouts + { + class CASPlane + { + class baseCAS + { + //Pylons + loadout[] = {}; + //Weapons + mainGun[] = {}; + rocketLauncher[] = {}; + missileLauncher[] = {}; + //Dive bombing requirements + bombRacks[] = {}; + diveParams[] = {}; + //General script, runs just after spawn + code = ""; + gunnerLaser = ""; + }; + }; + class CAPPlane + { + class baseCAP + { + //Pylons + loadout[] = {}; + //General script, runs just after spawn + code = ""; + }; + }; + class Helicopter + { + class baseHelicopter + { + //Pylons + loadout[] = {}; + //General script, runs just after spawn + code = ""; + }; + }; + }; +}; diff --git a/A3A/addons/core/Templates/Templates.hpp b/A3A/addons/core/Templates/Templates.hpp index 31476c3851..1e4d635b6d 100644 --- a/A3A/addons/core/Templates/Templates.hpp +++ b/A3A/addons/core/Templates/Templates.hpp @@ -18,6 +18,8 @@ class Templates name = "A3 CSAT Arid"; file = "Vanilla_AI_CSAT_Arid"; climate[] = {"arid", "arctic"}; + shortName = "CSAT"; + lore = $STR_A3A_templates_lore_CSAT; }; class Vanilla_CSAT_Temperate : Vanilla_CSAT_Arid { @@ -31,6 +33,7 @@ class Templates file = "Vanilla_AI_CSAT_Apex"; climate[] = {"tropical"}; forceDLC[] = {"expansion"}; + lore = $STR_A3A_templates_lore_CSATApex; }; class Vanilla_CSAT_Enoch : Vanilla_CSAT_Arid { @@ -38,6 +41,7 @@ class Templates file = "Vanilla_AI_CSAT_Enoch"; climate[] = {"temperate"}; forceDLC[] = {"enoch"}; + lore = $STR_A3A_templates_lore_CSATEnoch; }; class Vanilla_NATO_Arid : Vanilla_Base @@ -47,6 +51,8 @@ class Templates name = "A3 NATO Arid"; file = "Vanilla_AI_NATO_Arid"; climate[] = {"arid"}; + shortName = "NATO"; + lore = $STR_A3A_templates_lore_NATO; }; class Vanilla_NATO_Tropical : Vanilla_NATO_Arid { @@ -67,6 +73,28 @@ class Templates climate[] = {"tropical"}; forceDLC[] = {"expansion"}; }; + class Vanilla_NATO_UK_Tropical : Vanilla_NATO_Apex + { + flagTexture = "\A3\Data_F\Flags\flag_uk_co.paa"; + name = "A3 NATO/UK Tropical"; + file = "Vanilla_AI_NATO_UK_Tropical"; + climate[] = {"tropical"}; + forceDLC[] = {"expansion"}; + priority = 5; + lore = $STR_A3A_templates_lore_NATOUK; + }; + class Vanilla_NATO_UK_Temperate : Vanilla_NATO_UK_Tropical + { + name = "A3 NATO/UK Temperate"; + climate[] = {"temperate", "arctic"}; + }; + class Vanilla_NATO_UK_Arid : Vanilla_NATO_UK_Tropical + { + name = "A3 NATO/UK Arid"; + file = "Vanilla_AI_NATO_UK_Arid"; + climate[] = {"arid"}; + forceDLC[] = {"expansion"}; + }; class Vanilla_LDF : Vanilla_Base { @@ -77,6 +105,8 @@ class Templates maps[] = {"enoch","vt7"}; climate[] = {"temperate"}; forceDLC[] = {"enoch"}; + shortName = "LDF"; + lore = $STR_A3A_templates_lore_LDF; }; class Vanilla_AAF : Vanilla_Base @@ -87,6 +117,20 @@ class Templates file = "Vanilla_AI_AAF"; maps[] = {"altis"}; climate[] = {"arid"}; + shortName = "AAF"; + lore = $STR_A3A_templates_lore_AAF; + }; + class Vanilla_ION : Vanilla_Base + { + side = "Inv"; + flagTexture = "\A3\Data_F\Flags\flag_ion_CO.paa"; + name = "A3 ION"; + file = "Vanilla_AI_PMC"; + climate[] = {}; + forceDLC[] = {"enoch","expansion"}; + priority = 5; + shortName = "ION"; + lore = $STR_A3A_templates_lore_ION; }; class Vanilla_FIA : Vanilla_Base @@ -95,6 +139,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "A3 FIA"; file = "Vanilla_Reb_FIA"; + shortName = "FIA"; + lore = $STR_A3A_templates_lore_FIA; }; class Vanilla_SDK : Vanilla_Base @@ -106,6 +152,8 @@ class Templates maps[] = {"Tanoa"}; climate[] = {"tropical"}; forceDLC[] = {"expansion"}; + shortName = "SDK"; + lore = $STR_A3A_templates_lore_SDK; }; class Vanilla_LFF : Vanilla_Base @@ -117,13 +165,17 @@ class Templates maps[] = {"enoch","vt7"}; climate[] = {"temperate"}; forceDLC[] = {"enoch"}; + shortName = "LFF"; + lore = $STR_A3A_templates_lore_LFF; }; class Vanilla_Civ : Vanilla_Base { side = "Civ"; flagTexture = "a3\data_f\flags\flag_aaf_co.paa"; - name = "Vanilla"; + name = "A3 Civilians"; file = "Vanilla_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_CIV; }; // ***************************** Western Sahara ***************************** @@ -142,6 +194,8 @@ class Templates flagTexture = "\A3\Data_F\Flags\flag_ion_CO.paa"; name = "WS ION"; file = "WS_AI_ION"; + shortName = "ION"; + lore = $STR_A3A_templates_lore_WS_AI_ION; }; class WS_SIFA : WS_Base { @@ -149,6 +203,8 @@ class Templates flagTexture = "\lxws\data_f_lxws\img\flags\flag_SFIA_CO.paa"; name = "WS SFIA"; file = "WS_AI_SFIA"; + shortName = "SFIA"; + lore = $STR_A3A_templates_lore_WS_AI_SIFA; }; class WS_ADF : WS_Base { @@ -156,6 +212,8 @@ class Templates flagTexture = "\lxws\data_f_lxws\img\flags\flag_Argana_CO.paa"; name = "WS ADF"; file = "WS_AI_ADF"; + shortName = "ADF"; + lore = $STR_A3A_templates_lore_WS_AI_ADF; }; class WS_CSAT : WS_Base { @@ -163,6 +221,8 @@ class Templates flagTexture = "A3\Data_F\Flags\Flag_CSAT_CO.paa"; name = "WS CSAT North Africa"; file = "WS_AI_CSAT_NAfrica"; + shortName = "CSAT"; + lore = $STR_A3A_templates_lore_CSAT; }; class WS_TURA : WS_Base { @@ -170,6 +230,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "WS Tura"; file = "WS_Reb_TURA"; + shortName = "Tura"; + lore = $STR_A3A_templates_lore_WS_Reb_Tura; }; class WS_Civ : WS_Base { @@ -177,6 +239,8 @@ class Templates flagTexture = "\lxws\data_f_lxws\img\flags\flag_Argana_CO.paa"; name = "Western Sahara"; file = "WS_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_WS_CIV; }; class WS_NATO : WS_Base { @@ -184,6 +248,8 @@ class Templates flagTexture = "\A3\Data_F\Flags\Flag_NATO_CO.paa"; name = "WS NATO Desert"; file = "WS_AI_NATO_Desert"; + shortName = "NATO"; + lore = $STR_A3A_templates_lore_NATO; }; // ***************************** VN ***************************** @@ -203,6 +269,8 @@ class Templates flagTexture = "vn\objects_f_vietnam\flags\data\vn_flag_01_usa_co.paa"; name = "VN MACV"; file = "VN_AI_MACV"; + shortName = "MACV"; + lore = $STR_A3A_templates_lore_VN_AI_MACV; }; class VN_PAVN : VN_Base @@ -211,6 +279,8 @@ class Templates flagTexture = "vn\objects_f_vietnam\flags\data\vn_flag_01_pavn_co.paa"; name = "VN PAVN"; file = "VN_AI_PAVN"; + shortName = "PAVN"; + lore = $STR_A3A_templates_lore_VN_AI_PAVN; }; class VN_POF : VN_Base @@ -219,6 +289,8 @@ class Templates flagTexture = "vn\objects_f_vietnam\flags\data\vn_flag_01_lao_dmg_ca.paa"; name = "VN POF"; file = "VN_Reb_POF"; + shortName = "POF"; + lore = $STR_A3A_templates_lore_VN_Reb_POF; }; class VN_Civ : VN_Base @@ -227,6 +299,8 @@ class Templates flagTexture = "\vn\objects_f_vietnam\flags\vn_flag_01_lao_co.paa"; name = "Cam Lao Nam"; file = "VN_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_VN_Civ; }; // ***************************** RHS ***************************** @@ -247,6 +321,8 @@ class Templates name = "RHS AFRF Arid"; file = "RHS_AI_AFRF_Arid"; climate[] = {"arid"}; + shortName = "AFRF"; + lore = $STR_A3A_templates_lore_AFRF; }; class RHS_AFRF_Temperate : RHS_AFRF_Arid { @@ -255,6 +331,25 @@ class Templates climate[] = {"temperate","tropical","arctic"}; }; + class RHS_VDV_Temperate : RHS_Base + { + side = "Inv"; + flagTexture = "rhsafrf\addons\rhs_main\data\Flag_vdv_CO.paa"; + name = "RHS VDV Temperate"; + file = "RHS_AI_VDV_Temperate"; + climate[] = {"temperate","tropical","arctic"}; + logo = "\rhsafrf\addons\rhs_main\data\rhs_logo_ca.paa"; + shortName = "VDV"; + lore = $STR_A3A_templates_lore_VDV; + }; + + class RHS_VDV_Arid : RHS_VDV_Temperate + { + name = "RHS VDV Arid"; + file = "RHS_AI_VDV_Arid"; + climate[] = {"arid"}; + }; + class RHS_CHDKZ : RHS_Base { side = "Inv"; @@ -263,6 +358,33 @@ class Templates file = "RHS_AI_ChDKZ"; maps[] = {"chernarus_summer","chernarus_winter","chernarus"}; logo = "\rhsgref\addons\rhsgref_main\data\rhs_logo_ca.paa"; + shortName = "ChDKZ"; + lore = $STR_A3A_templates_lore_RHS_AI_ChDKZ; + }; + class RHS_HIDF : RHS_Base + { + side = "Occ"; + flagTexture = "\A3\Data_F_Exp\Flags\flag_GEN_CO.paa"; + name = "RHS HIDF"; + file = "RHS_AI_HIDF"; + maps[] = {"Tanoa"}; + climate[] = {"tropical"}; + logo = "\rhsgref\addons\rhsgref_main\data\rhs_logo_ca.paa"; + shortName = "HIDF"; + lore = $STR_A3A_templates_lore_3CB_AI_HIDF; + }; + + class RHS_TLA : RHS_Base + { + side = "Inv"; + flagTexture = "\rhsafrf\addons\rhs_main\data\Flag_trn_CO.paa"; + name = "RHS TLA"; + file = "RHS_AI_TLA"; + maps[] = {"Tanoa"}; + climate[] = {"tropical"}; + logo = "\rhsgref\addons\rhsgref_main\data\rhs_logo_ca.paa"; + shortName = "TLA"; + lore = $STR_A3A_templates_lore_TLA; }; class RHS_CDF : RHS_Base @@ -272,6 +394,8 @@ class Templates name = "RHS CDF"; file = "RHS_AI_CDF"; maps[] = {"chernarus_summer","chernarus_winter","chernarus"}; + shortName = "CDF"; + lore = $STR_A3A_templates_lore_CDF; }; class RHS_USAF_Army_Arid : RHS_Base @@ -281,6 +405,8 @@ class Templates name = "RHS US Army Arid"; file = "RHS_AI_USAF_Army_Arid"; climate[] = {"arid"}; + shortName = "US Army"; + lore = $STR_A3A_templates_lore_USAF; }; class RHS_USAF_Army_Temperate : RHS_USAF_Army_Arid { @@ -292,6 +418,8 @@ class Templates { name = "RHS USMC Arid"; file = "RHS_AI_USAF_Marines_Arid"; + shortName = "US Marines"; + lore = $STR_A3A_templates_lore_USMC; }; class RHS_USAF_Marines_Temperate : RHS_USAF_Army_Temperate { @@ -305,6 +433,8 @@ class Templates flagTexture = "\rhsgref\addons\rhsgref_main\data\Flags\flag_NAPA_co.paa"; name = "RHS NAPA"; file = "RHS_Reb_NAPA"; + shortName = "NAPA"; + lore = $STR_A3A_templates_lore_NAPA; }; class RHS_Civ : RHS_Base @@ -313,6 +443,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "RHS"; file = "RHS_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_CIV; }; class RHS_SAF_Base @@ -328,9 +460,54 @@ class Templates flagTexture = "rhssaf\addons\rhssaf_main\data\flags\flag_serbia_co.paa"; name = "RHS SAF"; file = "RHS_AI_SAF"; + shortName = "SAF"; + lore = $STR_A3A_templates_lore_RHS_AI_SAF; }; + - // ***************************** 3CB Factions ***************************** + //************* SFP ******************************************************** + class SFP_Base + { + requiredAddons[] = {"Swedish_Forces_Pack","CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core"}; + basepath = QPATHTOFOLDER(Templates\Templates\SFP); + logo = "\sfp_config\data\logos\sfp_logo_ca.paa"; + flagTexture = "\sfp_config\data\flag_sweden_co.paa"; + priority = 70; + shortName = "SDF"; + }; + class SFP_SAF00 : SFP_Base + { + side = "Occ"; + name = "SFP Early SDF"; + file = "SFP_AI_SWE_early"; + climate[] = {"temperate","tropical","arid"}; + lore = $STR_A3A_templates_lore_SFP_SAF00; + }; + class SFP_SAF00_Arctic : SFP_Base + { + side = "Occ"; + name = "SFP Early SDF ARCTIC"; + file = "SFP_AI_SWE_early_snow"; + climate[] = {"arctic"}; + lore = $STR_A3A_templates_lore_SFP_SAF00; + }; + class SFP_SAF15 : SFP_Base + { + side = "Occ"; + name = "SFP Modern SDF"; + file = "SFP_AI_SWE"; + climate[] = {"temperate","tropical","arid"}; + lore = $STR_A3A_templates_lore_SFP_SAF15; + }; + class SFP_SAF15_Arctic : SFP_Base + { + side = "Occ"; + name = "SFP Modern SDF ARCTIC"; + file = "SFP_AI_SWE_snow"; + climate[] = {"arctic"}; + lore = $STR_A3A_templates_lore_SFP_SAF15; + }; + //************* 3CB Factions *************************************************** class 3CBF_Base { @@ -339,6 +516,51 @@ class Templates logo = QPATHTOFOLDER(Templates\Templates\3CB\logo_small_3cb_ca.paa); // unknown, may need rethink priority = 40; }; + + class 3CBF_CSAT_Base : 3CBF_Base + { + basepath = QPATHTOFOLDER(Templates\Templates\3CB\3CB_CSAT); + }; + + class 3CB_CSAT_BRU : 3CBF_CSAT_Base { + side = "Inv"; + //Belarusian CSAT - proper camo for: temperate, arctic - suitable for: tropical and arid + climate[] = {"temperate","tropical","arctic","arid"}; + maps[] = {"enoch","vt7"}; + flagTexture = "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_w_regiment_flag_co.paa"; + name = "3CB CSAT BEAR"; + file = "3CB_AI_CSAT_Bru"; + }; + + class 3CB_CSAT_CHI : 3CBF_CSAT_Base { + side = "Inv"; + //Chinese CSAT - proper camo for: tropical - Suitable for: temperate + climate[] = {"temperate","tropical"}; + maps[] = {"tanoa"}; + flagTexture = "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_g_regiment_flag_co.paa"; + name = "3CB CSAT VIPER"; + file = "3CB_AI_CSAT_Chi"; + }; + + class 3CB_CSAT_FRE : 3CBF_CSAT_Base { + side = "Inv"; + //African CSAT - proper camo for: arid - ok for: temperate + climate[] = {"arid"}; + maps[] = {"malden"}; + flagTexture = "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_a_regiment_flag_co.paa"; + name = "3CB CSAT SCIMITAR"; + file = "3CB_AI_CSAT_Fre"; + }; + + class 3CB_CSAT_PER : 3CBF_CSAT_Base { + side = "Inv"; + //Iranian CSAT - proper camo for: arid, temperate - suitable for: arctic - ok for: tropical + climate[] = {"temperate","tropical","arctic","arid"}; + maps[] = {"altis"}; + flagTexture = "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_b_regiment_flag_co.paa"; + name = "3CB CSAT GRYPHON"; + file = "3CB_AI_CSAT_Per"; + }; class 3CBF_ADA : 3CBF_Base { @@ -347,6 +569,8 @@ class Templates name = "3CB ADA"; file = "3CB_AI_ADA"; climate[] = {"arid"}; + shortName = "ADA"; + lore = $STR_A3A_templates_lore_3CB_AI_ADA; }; class 3CBF_ANA : 3CBF_Base @@ -356,6 +580,8 @@ class Templates name = "3CB ANA"; file = "3CB_AI_ANA"; climate[] = {"arid"}; + shortName = "ANA"; + lore = $STR_A3A_templates_lore_3CB_AI_ANA; }; class 3CBF_CW_SOV : 3CBF_Base @@ -365,6 +591,8 @@ class Templates name = "3CB Cold War USSR"; file = "3CB_AI_CW_Sov"; climate[] = {"temperate","tropical","arctic"}; + shortName = "CW SOV"; + lore = $STR_A3A_templates_lore_3CB_AI_CW_Sov; }; class 3CBF_CW_US : 3CBF_Base @@ -374,6 +602,8 @@ class Templates name = "3CB Cold War US"; file = "3CB_AI_CW_US"; climate[] = {"temperate","tropical","arctic"}; + shortName = "CW US"; + lore = $STR_A3A_templates_lore_3CB_AI_CW_US; }; class 3CBF_HIDF : 3CBF_Base @@ -384,6 +614,8 @@ class Templates file = "3CB_AI_HIDF"; maps[] = {"tanoa"}; climate[] = {"temperate","tropical","arctic"}; + shortName = "HIDF"; + lore = $STR_A3A_templates_lore_3CB_AI_HIDF; }; class 3CBF_MDF : 3CBF_Base @@ -394,6 +626,8 @@ class Templates file = "3CB_AI_MDF"; maps[] = {"malden"}; climate[] = {"arid"}; + shortName = "MDF"; + lore = $STR_A3A_templates_lore_3CB_AI_MDF; }; class 3CBF_TKA_East : 3CBF_Base @@ -404,12 +638,16 @@ class Templates file = "3CB_AI_TKA_East"; maps[] = {"takistan","tem_anizay","kunduz"}; climate[] = {"arid"}; + shortName = "TKA East"; + lore = $STR_A3A_templates_lore_3CB_AI_TKA_East; }; class 3CBF_TKA_West : 3CBF_TKA_East { side = "Occ"; name = "3CB TKA West"; file = "3CB_AI_TKA_West"; + shortName = "TKA West"; + lore = $STR_A3A_templates_lore_3CB_AI_TKA_West; }; class 3CBF_TKA_Mix : 3CBF_TKA_East { @@ -417,6 +655,8 @@ class Templates name = "3CB TKA Mix"; file = "3CB_AI_TKA_Mix"; priority = 39; // not default anywhere + shortName = "TKA Mix"; + lore = $STR_A3A_templates_lore_3CB_AI_TKA_Mix; }; class 3CBF_AAF : 3CBF_Base @@ -427,6 +667,8 @@ class Templates file = "3CB_AI_AAF"; maps[] = {"altis"}; climate[] = {"arid"}; + shortName = "AAF"; + lore = $STR_A3A_templates_lore_3CB_AAF; }; class 3CBF_AAF_arid : 3CBF_Base { @@ -436,6 +678,8 @@ class Templates file = "3CB_AI_AAF_arid"; maps[] = {"altis"}; climate[] = {"arid"}; + shortName = "AAF"; + lore = $STR_A3A_templates_lore_3CB_AAF; }; class 3CBF_LDF : 3CBF_Base @@ -446,16 +690,19 @@ class Templates file = "3CB_AI_LDF"; maps[] = {"enoch","vt7"}; climate[] = {"temperate"}; + shortName = "LDF"; + lore = $STR_A3A_templates_lore_3CB_AI_LDF; }; class 3CBF_KRG : 3CBF_Base { - // TODO: What is this faction? side = "Occ"; flagTexture = "uk3cb_factions\addons\uk3cb_factions_krg\flag\krg_flag_co.paa"; name = "3CB KRG"; file = "3CB_AI_KRG"; climate[] = {"arid"}; + shortName = "KRG"; + lore = $STR_A3A_templates_lore_3CB_AI_KRG; }; class 3CBF_ION_Arid : 3CBF_Base { @@ -464,6 +711,8 @@ class Templates name = "3CB ION Arid"; file = "3CB_AI_ION_Arid"; climate[] = {"arid"}; + shortName = "ION"; + lore = $STR_A3A_templates_lore_ION; }; class 3CBF_ION_Temperate : 3CBF_ION_Arid { @@ -483,6 +732,8 @@ class Templates flagTexture = "\UK3CB_Factions\addons\UK3CB_Factions_CCM\Flag\ccm_i_flag_co.paa"; name = "3CB CCM"; file = "3CB_Reb_CNM"; + shortName = "CCM"; + lore = $STR_A3A_templates_lore_3CB_Reb_CCM; }; class 3CB_Reb_ION : 3CBF_Base { @@ -490,6 +741,8 @@ class Templates flagTexture = "uk3cb_factions\addons\uk3cb_factions_ion\flag\ion_flag_co.paa"; name = "3CB ION"; file = "3CB_Reb_ION"; + shortName = "ION"; + lore = $STR_A3A_templates_lore_3CB_Reb_ION; }; class 3CBF_TKM : 3CBF_Base { @@ -498,6 +751,8 @@ class Templates name = "3CB TKM"; file = "3CB_Reb_TKM"; maps[] = {"takistan","tem_anizay","kunduz"}; + shortName = "TKM"; + lore = $STR_A3A_templates_lore_TKM; }; class 3CB_Reb_FIA : 3CBF_Base { @@ -505,6 +760,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "3CB FIA"; file = "3CB_Reb_FIA"; + shortName = "FIA"; + lore = $STR_A3A_templates_lore_FIA; }; class 3CB_Reb_LSM : 3CBF_Base { @@ -513,6 +770,8 @@ class Templates name = "3CB LSM"; file = "3CB_Reb_LSM"; maps[] = {"enoch"}; + shortName = "LSM"; + lore = $STR_A3A_templates_lore_3CB_Reb_LSM; }; class 3CBF_CHC : 3CBF_Base { @@ -520,6 +779,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "3CB Cherno"; file = "3CB_Civ_CHC"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_CHC; }; class 3CBF_TKC : 3CBF_Base @@ -529,6 +790,8 @@ class Templates name = "3CB Takistan"; file = "3CB_Civ_TKC"; maps[] = {"takistan","tem_anizay","kunduz"}; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_TKC; }; // ***************************** 3CB BAF ***************************** @@ -549,6 +812,8 @@ class Templates name = "3CB BAF Arid"; file = "3CB_AI_BAF_Arid"; climate[] = {"arid"}; + shortName = "BAF"; + lore = $STR_A3A_templates_lore_BAF; }; class 3CBBAF_Arctic : 3CBBAF_Arid { @@ -587,6 +852,8 @@ class Templates name = "CUP ACR Arid"; file = "CUP_AI_ACR_Arid"; climate[] = {"arid"}; + shortName = "ACR"; + lore = $STR_A3A_templates_lore_ACR; }; class CUP_ACR_Temperate : CUP_ACR_Arid { @@ -602,6 +869,8 @@ class Templates name = "CUP AFRF Arid"; file = "CUP_AI_AFRF_Arid"; climate[] = {"arid"}; + shortName = "AFRF"; + lore = $STR_A3A_templates_lore_AFRF; }; class CUP_AFRF_Temperate : CUP_AFRF_Arid { @@ -629,6 +898,8 @@ class Templates name = "CUP BAF Arid"; file = "CUP_AI_BAF_Arid"; climate[] = {"arid"}; + shortName = "BAF"; + lore = $STR_A3A_templates_lore_BAF; }; class CUP_BAF_Temperate : CUP_BAF_Arid { @@ -645,6 +916,8 @@ class Templates file = "CUP_AI_CDF_Arctic"; climate[] = {"arctic"}; maps[] = {"chernarus_winter"}; + shortName = "CDF"; + lore = $STR_A3A_templates_lore_CDF; }; class CUP_CDF_Temperate : CUP_CDF_Arctic { @@ -662,6 +935,8 @@ class Templates file = "CUP_AI_RACS_Arid"; climate[] = {"arid"}; maps[] = {"sara"}; + shortName = "RACS"; + lore = $STR_A3A_templates_lore_CUP_AI_RACS; }; class CUP_RACS_Tropical : CUP_RACS_Arid { @@ -679,6 +954,8 @@ class Templates file = "CUP_AI_SLA_Temperate"; // Sahrani is a bit weird climate[] = {"arid","temperate"}; maps[] = {"sara"}; + shortName = "SLA"; + lore = $STR_A3A_templates_lore_CUP_AI_SLA; }; class CUP_TKA : CUP_Base @@ -689,6 +966,8 @@ class Templates file = "CUP_AI_TKA_Arid"; climate[] = {"arid"}; maps[] = {"takistan","kunduz"}; + shortName = "TKA"; + lore = $STR_A3A_templates_lore_CUP_AI_TKA; }; class CUP_USAF_Arid : CUP_Base @@ -698,6 +977,8 @@ class Templates name = "CUP US Army Arid"; file = "CUP_AI_US_Army_Arid"; climate[] = {"arid"}; + shortName = "US Army"; + lore = $STR_A3A_templates_lore_USAF; }; class CUP_USAF_Temperate : CUP_USAF_Arid { @@ -713,6 +994,8 @@ class Templates name = "CUP USMC Arid"; file = "CUP_AI_US_Marine_Arid"; climate[] = {"arid"}; + shortName = "US Marines"; + lore = $STR_A3A_templates_lore_USMC; }; class CUP_USMC_Temperate : CUP_USMC_Arid { @@ -728,6 +1011,8 @@ class Templates name = "CUP ION Arid"; file = "CUP_AI_ION_Arid"; climate[] = {"arid","temperate","tropical"}; + shortName = "ION"; + lore = $STR_A3A_templates_lore_ION; }; class CUP_ION_Temperate : CUP_ION_Arid { @@ -743,6 +1028,8 @@ class Templates name = "CUP BW Arid"; file = "CUP_AI_BW_Arid"; climate[] = {"arid"}; + shortName = "BW"; + lore = $STR_A3A_templates_lore_CUP_AI_BW; }; class CUP_BW_Temperate : CUP_BW_Arid { @@ -757,6 +1044,8 @@ class Templates name = "CUP HIL"; file = "CUP_AI_HIL"; climate[] = {"temperate","tropical"}; + shortName = "HIL"; + lore = $STR_A3A_templates_lore_CUP_AI_HIL; }; class CUP_TKM : CUP_Base { @@ -764,13 +1053,17 @@ class Templates flagTexture = "\CUP\BaseConfigs\CUP_BaseConfigs\data\Flags\flag_tka_co.paa"; name = "CUP TKM"; file = "CUP_Reb_TKM"; + shortName = "TKM"; + lore = $STR_A3A_templates_lore_TKM; }; class CUP_Reb : CUP_Base - { - side = "Reb"; + { // why is this just Reb? + side = "Reb"; flagTexture = "cup\baseconfigs\cup_baseconfigs\data\flags\flag_napa_co.paa"; name = "CUP NAPA"; file = "CUP_Reb_NAPA"; + shortName = "NAPA"; + lore = $STR_A3A_templates_lore_NAPA; }; class CUP_TKC : CUP_Base { @@ -778,13 +1071,17 @@ class Templates flagTexture = "\CUP\BaseConfigs\CUP_BaseConfigs\data\Flags\flag_tka_co.paa"; name = "CUP TKC"; file = "CUP_Civ_TKC"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_TKC; }; class CUP_Civ : CUP_Base { side = "Civ"; flagTexture = "\CUP\BaseConfigs\CUP_BaseConfigs\data\Flags\flag_chernarus_co.paa"; - name = "CUP CHC"; + name = "CUP CH"; file = "CUP_Civ_CHC"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_CHC; }; //***************************** Unsung ***************************** @@ -804,6 +1101,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_us_co.paa"; name = "Unsung US"; file = "UNS_AI_US"; + shortName = "US"; + lore = $STR_A3A_templates_lore_UNS_AI_US; }; class UNS_PAVN : UNS_Base @@ -812,6 +1111,8 @@ class Templates flagTexture = "\uns_flags\flag_pavn_co.paa"; name = "Unsung PAVN"; file = "UNS_AI_PAVN"; + shortName = "PAVN"; + lore = $STR_A3A_templates_lore_UNS_AI_PAVN; }; class UNS_VC : UNS_Base @@ -820,6 +1121,8 @@ class Templates flagTexture = "\uns_flags\flag_vc_co.paa"; name = "Unsung VC"; file = "UNS_Reb_VC"; + shortName = "VC"; + lore = $STR_A3A_templates_lore_UNS_Reb_VC; }; class UNS_Civ : UNS_Base @@ -828,6 +1131,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "Unsung civs"; file = "UNS_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_VN_Civ; }; // ***************************** Global Mobilization ***************************** @@ -849,6 +1154,8 @@ class Templates name = "GM NVA Temperate"; file = "GM_AI_NVA"; climate[] = {"temperate","tropical"}; + shortName = "NVA"; + lore = $STR_A3A_templates_lore_GM_AI_NVA; }; class GM_NVA_Arctic : GM_Base @@ -858,6 +1165,8 @@ class Templates name = "GM NVA Arctic"; file = "GM_AI_NVA_arctic"; climate[] = {"arctic"}; + shortName = "NVA"; + lore = $STR_A3A_templates_lore_GM_AI_NVA; }; class GM_NVA_Desert : GM_Base @@ -867,6 +1176,8 @@ class Templates name = "GM NVA Desert"; file = "GM_AI_NVA_desert"; climate[] = {"arid"}; + shortName = "NVA"; + lore = $STR_A3A_templates_lore_GM_AI_NVA; }; class GM_BW : GM_Base @@ -876,6 +1187,8 @@ class Templates name = "GM BW Temperate"; file = "GM_AI_BW"; climate[] = {"temperate","tropical"}; + shortName = "BW"; + lore = $STR_A3A_templates_lore_GM_AI_BW; }; class GM_BW_Arctic : GM_Base @@ -885,6 +1198,8 @@ class Templates name = "GM BW Arctic"; file = "GM_AI_BW_arctic"; climate[] = {"arctic"}; + shortName = "BW"; + lore = $STR_A3A_templates_lore_GM_AI_BW; }; class GM_BW_Desert : GM_Base @@ -894,6 +1209,8 @@ class Templates name = "GM BW Desert"; file = "GM_AI_BW_desert"; climate[] = {"arid"}; + shortName = "BW"; + lore = $STR_A3A_templates_lore_GM_AI_BW; }; class GM_Reb : GM_Base @@ -902,6 +1219,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "GM FIA"; file = "GM_Reb"; + shortName = "FIA"; + lore = $STR_A3A_templates_lore_GM_Reb; }; class GM_Civ : GM_Base @@ -910,6 +1229,8 @@ class Templates flagTexture = "a3\data_f\flags\flag_fia_co.paa"; name = "GM civs"; file = "GM_Civ"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_GM_Civ; }; // ***************************** BWA3 ***************************** @@ -929,6 +1250,8 @@ class Templates name = "BWA3 BW Arid"; file = "BWA3_AI_BW_Arid"; climate[] = {"arid"}; + shortName = "BW"; + lore = $STR_A3A_templates_lore_BWA3_AI_BW; }; class BWA3_BW_Temperate : BWA3_BW_Arid { @@ -981,6 +1304,109 @@ class Templates file = "SPE_CIV"; }; */ + // ***************************** IFA ***************************** + class IFA_Base + { + requiredAddons[] = {"IFA3_Core"}; + basepath = QPATHTOFOLDER(Templates\Templates\IFA); + logo = ""; //Can't figure out how to path to the logo at the base of the IFA AiO mod?? + priority = 60; + equipFlags[] = {"lowTech"}; + //climate[] = {"temperate","tropical"}; + forceDLC[] = {}; + }; + class IFA_WEH : IFA_Base + { + side = "Inv"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_weh.paa"; + name = "IFA WEHRMACHT"; + priority = 65; + file = "IFA_AI_WEH"; + shortName = "WEH"; + lore = $STR_A3A_templates_lore_SPE_IFA_AI_WEH; + }; + class IFA_SOV : IFA_Base + { + side = "Inv"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_sov.paa"; + name = "IFA SOVIET ARMY"; + file = "IFA_AI_SOV"; + shortName = "SOV"; + lore = $STR_A3A_templates_lore_IFA_AI_SOV; + }; + class IFA_ALLIES : IFA_Base + { + side = "Occ"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_allies.paa"; + name = "IFA ALLIES"; + priority = 65; + file = "IFA_AI_ALLIES"; + shortName = "ALLIES"; + lore = $STR_A3A_templates_lore_IFA_AI_ALLIES; + }; + class IFA_US : IFA_Base + { + side = "Occ"; + flagTexture = "a3\data_f\flags\flag_us_co.paa"; + name = "IFA US ARMY"; + file = "IFA_AI_US"; + shortName = "US"; + lore = $STR_A3A_templates_lore_SPE_IFA_AI_US; + }; + class IFA_UK : IFA_Base + { + side = "Occ"; + flagTexture = "\A3\Data_F\Flags\flag_uk_co.paa"; + name = "IFA UK ARMY"; + file = "IFA_AI_UK"; + shortName = "UK"; + lore = $STR_A3A_templates_lore_IFA_AI_UK; + }; + class IFA_FFI : IFA_Base + { + side = "Reb"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_ffi.paa"; + name = "IFA French Resistance"; + priority = 65; + file = "IFA_REB_FFI"; + maps[] = {}; + climate[] = {}; + shortName = "FFI"; + lore = $STR_A3A_templates_IFA_Reb_FFI; + }; + class IFA_AK : IFA_Base + { + side = "Reb"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_ak.paa"; + name = "IFA Polish Resistance"; + file = "IFA_REB_AK"; + maps[] = {"Staszow"}; + climate[] = {}; + shortName = "AK"; + lore = $STR_A3A_templates_IFA_REB_AK; + }; + class IFA_CIV_FR : IFA_Base + { + side = "Civ"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_fr.paa"; + name = "IFA French"; + priority = 65; + file = "IFA_CIV_FR"; + climate[] = {}; + shortName = "CIV"; + lore = $STR_A3A_templates_IFA_CIV_FR; + }; + class IFA_CIV_PL : IFA_Base + { + side = "Civ"; + flagTexture = "\x\A3A\addons\core\Pictures\Flags\ifa_pl.paa"; + name = "IFA Polish"; + file = "IFA_CIV_PL"; + maps[] = {"Staszow"}; + climate[] = {}; + shortName = "CIV"; + lore = $STR_A3A_templates_IFA_CIV_PL; + }; // ***************************** SPE with IFA ***************************** class SPE_IFA_Base @@ -999,6 +1425,8 @@ class Templates flagTexture = QPATHTOFOLDER(Templates\Templates\SPE_IFA\flag_us.paa); name = "SPE_IFA US"; file = "SPE_IFA_AI_US"; + shortName = "US"; + lore = $STR_A3A_templates_lore_SPE_IFA_AI_US; }; class SPE_IFA_WEH : SPE_IFA_Base @@ -1007,6 +1435,8 @@ class Templates flagTexture = QPATHTOFOLDER(Templates\Templates\SPE_IFA\flag_ger.paa); name = "SPE_IFA WEH"; file = "SPE_IFA_AI_WEH"; + shortName = "WEH"; + lore = $STR_A3A_templates_lore_SPE_IFA_AI_WEH; }; class SPE_IFA_Reb : SPE_IFA_Base @@ -1015,6 +1445,8 @@ class Templates flagTexture = "\WW2\SPE_Core_t\Data_t\Flags\flag_FFF_co.paa"; name = "SPE_IFA FFF"; file = "SPE_IFA_Reb_FFF"; + shortName = "FFF"; // Free French Forces + lore = $STR_A3A_templates_lore_SPE_IFA_Reb_FFF; }; class SPE_IFA_CIV : SPE_IFA_Base @@ -1023,5 +1455,7 @@ class Templates flagTexture = QPATHTOFOLDER(Templates\Templates\SPE_IFA\flag_fr.paa); name = "SPE_IFA Civs"; file = "SPE_IFA_CIV"; + shortName = "Civilian"; + lore = $STR_A3A_templates_lore_SPE_IFA_CIV; }; }; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CBFactions_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/3CB/3CBFactions_Vehicle_Attributes.sqf index 1999d227f7..98d31ada05 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CBFactions_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CBFactions_Vehicle_Attributes.sqf @@ -24,6 +24,11 @@ ["UK3CB_ADA_I_L39_PYLON", ["cost", 150]], ["rhs_l159_cdf_b_CDF_CAP", ["cost", 150]], ["RHSGREF_A29B_HIDF", ["cost", 120]], + ["UK3CB_AAF_B_T28Trojan_CAS", ["cost", 120]], + ["UK3CB_ION_B_Desert_T28Trojan_CAS", ["cost", 120]], + ["UK3CB_B_T28Trojan_HIDF_CAS", ["cost", 120]], + ["UK3CB_MDF_B_T28Trojan_CAS", ["cost", 120]], + ["UK3CB_MDF_B_T28Trojan_NAVY_CAS", ["cost", 120]], ["UK3CB_B_Mystere_HIDF_CAS1", ["cost", 200]], // not many missiles. Gun is actually good though ["UK3CB_B_Mystere_HIDF_AA1", ["cost", 200]], // no mid-range AA missiles ["UK3CB_MDF_B_Mystere_AA1", ["cost", 200]] diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_AAF.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_AAF.sqf index 0a1989076d..d18a317434 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_AAF.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_AAF.sqf @@ -37,7 +37,7 @@ ["vehiclesGunBoats", ["UK3CB_AAF_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_AAF_B_AAV"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_AAF_B_L39_PYLON"]] call _fnc_saveToTemplate; +["vehiclesPlanesCAS", ["UK3CB_AAF_B_L39_PYLON", "UK3CB_AAF_B_T28Trojan_CAS"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["UK3CB_AAF_O_MIG29S"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["UK3CB_AAF_B_C130J"]] call _fnc_saveToTemplate; @@ -84,6 +84,7 @@ ["faces", ["GreekHead_A3_02", "GreekHead_A3_03", "GreekHead_A3_04", "GreekHead_A3_05", "GreekHead_A3_06", "GreekHead_A3_07", "GreekHead_A3_08", "GreekHead_A3_09", "Ioannou", "Mavros"]] call _fnc_saveToTemplate; ["voices", ["Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE"]] call _fnc_saveToTemplate; +"GreekMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ADA.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ADA.sqf index 5d2692cdfc..2b9599df20 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ADA.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ADA.sqf @@ -82,6 +82,7 @@ ["faces", ["AfricanHead_01", "AfricanHead_02", "AfricanHead_03", "Barklem"]] call _fnc_saveToTemplate; ["voices", ["Male01FRE", "Male02FRE", "Male03FRE"]] call _fnc_saveToTemplate; +"AfricanDesertMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -342,7 +343,9 @@ _militaryLoadoutData set ["machineGuns", [ ["rhs_weap_fnmag", "rhsusf_acc_ARDEC_M240", "", "rhsusf_acc_ACOG_MDO", ["rhsusf_100Rnd_762x51_m80a1epr", "rhsusf_100Rnd_762x51_m80a1epr", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_pkp", "", "", "rhs_acc_1p29", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], ["rhs_weap_pkp", "", "", "rhs_acc_1p78", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], -["rhs_weap_pkp", "", "", "rhs_acc_pkas", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""] +["rhs_weap_pkp", "", "", "rhs_acc_pkas", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militaryLoadoutData set ["marksmanRifles", [ ["UK3CB_M14DMR_Railed", "", "", "rhsusf_acc_ACOG_RMR", ["UK3CB_M14_20rnd_762x51"], [], ""], @@ -372,7 +375,7 @@ _policeLoadoutData set ["shotGuns", [ ["rhs_weap_M590_5RD", "", "", "", ["rhsusf_5Rnd_00Buck", "rhsusf_5Rnd_Slug"], [], ""] ]]; _policeLoadoutData set ["SMGs", [ -["UK3CB_MP5A2", "", "uk3cb_acc_surefiregrip", "", [], [], ""], +"uk3cb_port_said_m45", ["UK3CB_HK33KA2_RIS", "", "rhsusf_acc_M952V", "", [], [], ""], ["rhs_weap_ak74n", "", "rhs_acc_2dpZenit", "", ["rhs_30Rnd_545x39_7N10_AK"], [], ""] ]]; @@ -401,10 +404,12 @@ _militiaLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_akmn_gp25", "", "", "", [], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], ["rhs_weap_ak74n_gp25", "", "", "", [], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] ]]; -_militiaLoadoutData set ["SMGs", ["UK3CB_MP5A2"]]; +_militiaLoadoutData set ["SMGs", ["uk3cb_port_said_m45"]]; _militiaLoadoutData set ["machineGuns", [ ["rhs_weap_fnmag", "", "", "", ["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], -"rhs_weap_pkm" +"rhs_weap_pkm", +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militiaLoadoutData set ["marksmanRifles", [ ["UK3CB_FNFAL_FULL", "", "", "uk3cb_optic_SUIT_FNFAL", ["UK3CB_FNFAL_20rnd_762x51"], [], ""] diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ANA.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ANA.sqf index 325105d041..f51fdb326a 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ANA.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ANA.sqf @@ -81,6 +81,7 @@ ["faces", ["PersianHead_A3_01","PersianHead_A3_02","PersianHead_A3_03"]] call _fnc_saveToTemplate; ["voices", ["Male01PER","Male02PER","Male03PER"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arctic.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arctic.sqf index 4ab317e2bd..824e8ab9c7 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arctic.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arctic.sqf @@ -86,6 +86,7 @@ "WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", "WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +"EnglishMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arid.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arid.sqf index 2124e2eb36..6360387034 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Arid.sqf @@ -86,6 +86,7 @@ "WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", "WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +"EnglishMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Temperate.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Temperate.sqf index 4a13eee98e..6dea483598 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Temperate.sqf @@ -86,6 +86,7 @@ "WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", "WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +"EnglishMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Tropical.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Tropical.sqf index 9d1a0e6798..d0143373ad 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Tropical.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_BAF_Tropical.sqf @@ -86,6 +86,7 @@ "WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", "WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +"EnglishMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_SOV.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_SOV.sqf index 6dba873d6a..94341e6f34 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_SOV.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_SOV.sqf @@ -47,7 +47,7 @@ ["vehiclesArtillery", ["UK3CB_CW_SOV_O_LATE_2S1", "UK3CB_CW_SOV_O_LATE_2S3", "UK3CB_CW_SOV_O_LATE_BM21"]] call _fnc_saveToTemplate; //this line determines artillery vehicles -- Example: ["vehiclesArtillery", ["B_MBT_01_arty_F"]] -- Array, can contain multiple assets ["magazines", createHashMapFromArray [ -["UK3CB_CW_SOV_O_LATE_2S1", ["rhs_mag_3of56_10"]], +["UK3CB_CW_SOV_O_LATE_2S1", ["rhs_mag_3of56_35"]], ["UK3CB_CW_SOV_O_LATE_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], ["UK3CB_CW_SOV_O_LATE_BM21", ["rhs_mag_m21of_1"]] ]] call _fnc_saveToTemplate; @@ -88,6 +88,7 @@ "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_18", "WhiteHead_19", "WhiteHead_20"]] call _fnc_saveToTemplate; ["voices", ["RHS_Male01RUS", "RHS_Male02RUS", "RHS_Male03RUS", "RHS_Male04RUS", "RHS_Male05RUS"]] call _fnc_saveToTemplate; +"RussianMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -259,7 +260,9 @@ _militaryLoadoutData set ["machineGuns", [ ["rhs_weap_pkm", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], ["rhs_weap_pkp", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], ["UK3CB_RPK_74N", "", "", "", ["UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_GT"], [], ""], -["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""] +["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militaryLoadoutData set ["marksmanRifles", [ ["rhs_weap_svdp_wd", "", "", "rhs_acc_pso1m2", [], [], ""], @@ -317,7 +320,9 @@ _militiaLoadoutData set ["grenadeLaunchers", [ _militiaLoadoutData set ["machineGuns", [ ["rhs_weap_pkm", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], ["UK3CB_RPK_74N", "", "", "", ["UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_GT"], [], ""], -["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""] +["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militiaLoadoutData set ["marksmanRifles", [ ["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""] diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_US.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_US.sqf index 7a2448ba1a..59f2f122be 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_US.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_CW_US.sqf @@ -89,6 +89,7 @@ "WhiteHead_10","WhiteHead_11","WhiteHead_13","WhiteHead_14","WhiteHead_15", "WhiteHead_16","WhiteHead_17","WhiteHead_18","WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_HIDF.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_HIDF.sqf index 1277a4a9d5..73f633c0ac 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_HIDF.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_HIDF.sqf @@ -36,7 +36,7 @@ ["vehiclesGunBoats", ["UK3CB_TKA_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_B_LAV25_HIDF", "UK3CB_B_AAV_HIDF"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_B_Mystere_HIDF_CAS1"]] call _fnc_saveToTemplate; // "RHSGREF_A29B_HIDF" -> needs laser activation +["vehiclesPlanesCAS", ["UK3CB_B_Mystere_HIDF_CAS1", "RHSGREF_A29B_HIDF", "UK3CB_B_T28Trojan_HIDF_CAS"]] call _fnc_saveToTemplate; // "UK3CB_B_Mystere_HIDF_CAS1" -> commented for testing of A29 & T28 ["vehiclesPlanesAA", ["UK3CB_B_Mystere_HIDF_AA1"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; @@ -83,6 +83,7 @@ ["faces", ["TanoanHead_A3_01","TanoanHead_A3_02","TanoanHead_A3_03","TanoanHead_A3_04","TanoanHead_A3_05", "TanoanHead_A3_06","TanoanHead_A3_07","TanoanHead_A3_08"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGFRE","Male02ENGFRE"]] call _fnc_saveToTemplate; +"TanoanMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -290,7 +291,7 @@ _policeLoadoutData set ["vests", ["V_TacVest_gen_F"]]; _policeLoadoutData set ["helmets", ["H_MilCap_gen_F", "H_Beret_gen_F"]]; _policeLoadoutData set ["SMGs", [ -["UK3CB_MP5", "", "", "", ["UK3CB_MP5_30Rnd_Magazine"], [], ""] +["uk3cb_mat49", "", "", "", ["UK3CB_MAT49_32Rnd_9x19_Magazine"], [], ""] ]]; _policeLoadoutData set ["shotGuns", [ ["rhs_weap_M590_8RD", "", "", "", ["rhsusf_8Rnd_00Buck"], [], ""] @@ -322,20 +323,22 @@ _militiaLoadoutData set ["grenadeLaunchers", [ ]]; _militiaLoadoutData set ["SMGs", [ ["rhs_weap_m3a1", "", "", "", ["rhsgref_30rnd_1143x23_M1911B_SMG"], [], ""], -["UK3CB_Sten", "", "", "", ["UK3CB_Sten_34Rnd_Magazine"], [], ""] +["uk3cb_mat49", "", "", "", ["UK3CB_MAT49_32Rnd_9x19_Magazine"], [], ""] ]]; _militiaLoadoutData set ["machineGuns", [ -["UK3CB_Bren", "", "", "", ["UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine_GT"], [], ""], -["UK3CB_Bren", "", "", "", ["UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine_GT"], [], ""], +["UK3CB_Bren_L4_LMG", "", "", "", ["UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine_GT"], [], ""], +["UK3CB_Bren_L4_LMG", "", "", "", ["UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine", "UK3CB_Bren_30Rnd_762x51_Magazine_GT"], [], ""], ["rhs_weap_mg42", "", "", "rhsgref_mg42_acc_AAsight", ["rhsgref_50Rnd_792x57_SmK_drum", "rhsgref_50Rnd_792x57_SmK_drum", "rhsgref_50Rnd_792x57_SmK_alltracers_drum"], [], ""], ["UK3CB_M60", "", "", "", ["UK3CB_M60_100rnd_762x51", "UK3CB_M60_100rnd_762x51", "UK3CB_M60_100rnd_762x51_GT"], [], ""] ]]; _militiaLoadoutData set ["marksmanRifles", [ -["rhs_weap_m1garand_sa43", "", "", "", ["rhsgref_8Rnd_762x63_M2B_M1rifle"], [], ""] +["rhs_weap_m1garand_sa43", "", "", "", ["rhsgref_8Rnd_762x63_M2B_M1rifle"], [], ""], +["uk3cb_enfield_l42", "", "", "uk3cb_optic_no32", ["uk3cb_l42_enfield_762_10Rnd_magazine"], [], ""], +["uk3cb_enfield_l8t", "", "", "uk3cb_optic_no32", ["uk3cb_l42_enfield_762_10Rnd_magazine"], [], ""] ]]; _militiaLoadoutData set ["sniperRifles", [ -["rhs_weap_kar98k", "", "", "", ["rhsgref_5Rnd_792x57_kar98k"], [], ""], -["rhs_weap_m38", "", "", "", ["rhsgref_5Rnd_762x54_m38"], [], ""] +["uk3cb_enfield_l42", "", "", "uk3cb_optic_no32", ["uk3cb_l42_enfield_762_10Rnd_magazine"], [], ""], +["uk3cb_enfield_l8t", "", "", "uk3cb_optic_no32", ["uk3cb_l42_enfield_762_10Rnd_magazine"], [], ""] ]]; _militiaLoadoutData set ["ATLaunchers", [ diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arctic.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arctic.sqf index 85bae7d429..298938ec7a 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arctic.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arctic.sqf @@ -36,7 +36,7 @@ ["vehiclesGunBoats", ["UK3CB_MDF_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_B_AAV_US_WDL"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_KDF_B_Su25SM_CAS"]] call _fnc_saveToTemplate; +["vehiclesPlanesCAS", ["UK3CB_KDF_B_Su25SM_CAS", "UK3CB_ION_B_Desert_T28Trojan_CAS"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["UK3CB_ADA_I_L39_PYLON"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; @@ -86,7 +86,7 @@ "WhiteHead_03", "WhiteHead_04", "WhiteHead_05", "WhiteHead_07", "WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_11", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_18", "WhiteHead_19", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG", "Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE", "Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB", "Male01ENGFRE", "Male02ENGFRE"]] call _fnc_saveToTemplate; - +"NATOMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -197,8 +197,8 @@ _sfLoadoutData set ["facewear", ["rhsusf_shemagh2_gogg_white", "rhsusf_shemagh2_ _sfLoadoutData set ["slRifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a_mrds", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["UK3CB_FAMAS_25rnd_556x45"], [], ""], @@ -209,8 +209,8 @@ _sfLoadoutData set ["slRifles", [ _sfLoadoutData set ["rifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_20Rnd_SCAR_762x51_m80_ball_bk"], [], "rhsusf_acc_kac_grip"], @@ -219,9 +219,9 @@ _sfLoadoutData set ["rifles", [ ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["UK3CB_FAMAS_25rnd_556x45"], [], ""] ]]; _sfLoadoutData set ["carbines", [ -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36", "rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"] @@ -231,10 +231,10 @@ _sfLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _sfLoadoutData set ["SMGs", [ ["rhsusf_weap_MP7A2", "rhsusf_acc_rotex_mp7", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhsusf_mag_40Rnd_46x30_AP"], [], "rhs_acc_grip_ffg2"], @@ -258,8 +258,8 @@ _sfLoadoutData set ["machineGuns", [ ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230_mrds", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], //Makeshift MG36 -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ELCAN", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_MDO", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230a", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], @@ -322,28 +322,28 @@ _militaryLoadoutData set ["helmets", ["rhsusf_ach_helmet_ucp_norotos", "rhsusf_a _militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; _militaryLoadoutData set ["slRifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_su230a_mrds", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""], ["rhs_weap_hk416d145", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["rifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""] ]]; _militaryLoadoutData set ["carbines", [ -["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["rhs_weap_hk416d10", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] ]]; _militaryLoadoutData set ["SMGs", [ -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""] ]]; _militaryLoadoutData set ["grenadeLaunchers", [ -["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["machineGuns", [ diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arid.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arid.sqf index 51c59888a9..a350ec9ae4 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Arid.sqf @@ -36,7 +36,7 @@ ["vehiclesGunBoats", ["UK3CB_MDF_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_B_AAV_US_DES"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_ADA_I_Su25SM_CAS"]] call _fnc_saveToTemplate; +["vehiclesPlanesCAS", ["UK3CB_ADA_I_Su25SM_CAS", "UK3CB_ION_B_Desert_T28Trojan_CAS"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["UK3CB_ADA_I_L39_PYLON"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["UK3CB_ADA_I_C130J"]] call _fnc_saveToTemplate; @@ -86,7 +86,7 @@ "WhiteHead_03", "WhiteHead_04", "WhiteHead_05", "WhiteHead_07", "WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_11", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_18", "WhiteHead_19", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG", "Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE", "Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB", "Male01ENGFRE", "Male02ENGFRE"]] call _fnc_saveToTemplate; - +"NATOMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -202,8 +202,8 @@ _sfLoadoutData set ["facewear", ["rhsusf_shemagh2_gogg_tan", "rhsusf_shemagh2_ta _sfLoadoutData set ["slRifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a_mrds", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["UK3CB_FAMAS_25rnd_556x45"], [], ""], @@ -214,8 +214,8 @@ _sfLoadoutData set ["slRifles", [ _sfLoadoutData set ["rifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_20Rnd_SCAR_762x51_m80_ball_bk"], [], "rhsusf_acc_kac_grip"], @@ -224,9 +224,9 @@ _sfLoadoutData set ["rifles", [ ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["UK3CB_FAMAS_25rnd_556x45"], [], ""] ]]; _sfLoadoutData set ["carbines", [ -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36", "rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"] @@ -236,10 +236,10 @@ _sfLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _sfLoadoutData set ["SMGs", [ ["rhsusf_weap_MP7A2", "rhsusf_acc_rotex_mp7", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhsusf_mag_40Rnd_46x30_AP"], [], "rhs_acc_grip_ffg2"], @@ -263,8 +263,8 @@ _sfLoadoutData set ["machineGuns", [ ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230_mrds", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], //Makeshift MG36 -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ELCAN", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_MDO", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230a", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], @@ -329,28 +329,28 @@ _militaryLoadoutData set ["sniHats", ["H_Booniehat_tan"]]; _militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; _militaryLoadoutData set ["slRifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_su230a_mrds", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""], ["rhs_weap_hk416d145", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["rifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""] ]]; _militaryLoadoutData set ["carbines", [ -["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["rhs_weap_hk416d10", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] ]]; _militaryLoadoutData set ["SMGs", [ -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""] ]]; _militaryLoadoutData set ["grenadeLaunchers", [ -["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["machineGuns", [ diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Temperate.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Temperate.sqf index ec5f1ffa3d..be1486bef8 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_ION_Temperate.sqf @@ -36,7 +36,7 @@ ["vehiclesGunBoats", ["UK3CB_MDF_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_B_AAV_US_WDL"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_KDF_B_Su25SM_CAS"]] call _fnc_saveToTemplate; +["vehiclesPlanesCAS", ["UK3CB_KDF_B_Su25SM_CAS", "UK3CB_ION_B_Desert_T28Trojan_CAS"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["UK3CB_KDF_B_MIG29SM"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; @@ -86,7 +86,7 @@ "WhiteHead_03", "WhiteHead_04", "WhiteHead_05", "WhiteHead_07", "WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_11", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_18", "WhiteHead_19", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG", "Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE", "Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB", "Male01ENGFRE", "Male02ENGFRE"]] call _fnc_saveToTemplate; - +"NATOMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -199,8 +199,8 @@ _sfLoadoutData set ["facewear", ["rhsusf_shemagh2_gogg_od", "rhsusf_shemagh2_od" _sfLoadoutData set ["slRifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230a_mrds", ["rhs_mag_20Rnd_SCAR_762x51_m61_ap_bk"], [], "rhsusf_acc_kac_grip"], ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["UK3CB_FAMAS_25rnd_556x45"], [], ""], @@ -211,8 +211,8 @@ _sfLoadoutData set ["slRifles", [ _sfLoadoutData set ["rifles", [ ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsd2", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], ["rhs_weap_SCARH_STD", "rhsusf_acc_aac_762sdn6_silencer", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_20Rnd_SCAR_762x51_m80_ball_bk"], [], "rhsusf_acc_kac_grip"], @@ -221,9 +221,9 @@ _sfLoadoutData set ["rifles", [ ["UK3CB_FAMAS_F1", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["UK3CB_FAMAS_25rnd_556x45"], [], ""] ]]; _sfLoadoutData set ["carbines", [ -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], -["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36", "rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_xps3", ["rhssaf_30rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36A1_KSK_K", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_compm4", ["rhssaf_30rnd_556x45_SOST_G36"], [], ""], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_552", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_vhsk2", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_eotech_xps3", ["rhsgref_30rnd_556x45_vhs2", "rhsgref_30rnd_556x45_vhs2_t"], [], "rhsusf_acc_kac_grip"] @@ -233,10 +233,10 @@ _sfLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhssaf_30rnd_556x45_SOST_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36_KSK", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhssaf_30rnd_556x45_EPR_G36"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _sfLoadoutData set ["SMGs", [ ["rhsusf_weap_MP7A2", "rhsusf_acc_rotex_mp7", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhsusf_mag_40Rnd_46x30_AP"], [], "rhs_acc_grip_ffg2"], @@ -260,8 +260,8 @@ _sfLoadoutData set ["machineGuns", [ ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230_mrds", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"], //Makeshift MG36 -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], -["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhs_mag_100Rnd_556x45_Mk262_cmag", "rhs_mag_100Rnd_556x45_M855A1_cmag_mixed"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_eotech_552", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], +["UK3CB_G36V", "rhsusf_acc_nt4_black", "", "rhsusf_acc_su230_mrds", ["rhssaf_100rnd_556x45_EPR_G36"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ELCAN", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_MDO", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], ["rhs_weap_m240B", "rhsusf_acc_ARDEC_M240", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_su230a", ["rhsusf_100Rnd_762x51_m61_ap", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""], @@ -325,28 +325,28 @@ _militaryLoadoutData set ["helmets", ["rhsusf_ach_bare", "rhsusf_ach_bare_ess", _militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; _militaryLoadoutData set ["slRifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_su230a_mrds", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""], ["rhs_weap_hk416d145", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_su230_mrds", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["rifles", [ -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["UK3CB_G3A3V_RIS", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""] ]]; _militaryLoadoutData set ["carbines", [ -["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["UK3CB_G36V_K", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""], ["rhs_weap_hk416d10", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] ]]; _militaryLoadoutData set ["SMGs", [ -["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +["UK3CB_G36V_C", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], [], ""] ]]; _militaryLoadoutData set ["grenadeLaunchers", [ -["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["UK3CB_AG36V", "", "", "rhsusf_acc_compm4", ["UK3CB_G36_30rnd_556x45", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_R", "UK3CB_G36_30rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["rhs_weap_hk416d145_m320", "", "", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_M855A1_Stanag_Tracer_Red", "rhs_mag_30Rnd_556x45_M855A1_Stanag", "rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["machineGuns", [ diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_KRG.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_KRG.sqf index af0eef9443..8507fcc5eb 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_KRG.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_KRG.sqf @@ -87,6 +87,7 @@ ["faces", ["PersianHead_A3_01", "PersianHead_A3_02", "PersianHead_A3_03"]] call _fnc_saveToTemplate; ["voices", ["Male01PER", "Male02PER", "Male03PER"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -254,9 +255,9 @@ _sfLoadoutData set ["machineGuns", [ ["rhs_weap_m249_light_L", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_ACOG_RMR", ["rhsusf_100Rnd_556x45_M995_soft_pouch"], [], "rhsusf_acc_kac_grip_saw_bipod"] ]]; _sfLoadoutData set ["marksmanRifles", [ -["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_M8541", ["rhsusf_20Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_bipod"], -["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_LEUPOLDMK4", ["rhsusf_20Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_bipod"], -["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_premier_mrds", ["rhsusf_20Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_bipod"] +["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_M8541", ["UK3CB_G3_20rnd_762x51"], [], "rhsusf_acc_harris_bipod"], +["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_G3_20rnd_762x51"], [], "rhsusf_acc_harris_bipod"], +["UK3CB_PSG1A1_RIS", "uk3cb_muzzle_snds_g3", "", "rhsusf_acc_premier_mrds", ["UK3CB_G3_20rnd_762x51"], [], "rhsusf_acc_harris_bipod"] ]]; _sfLoadoutData set ["sniperRifles", [ ["rhs_weap_m40a5", "", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_M8541", ["rhsusf_5Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_swivel"], @@ -291,8 +292,8 @@ _militaryLoadoutData set ["slRifles", [ ["UK3CB_HK33KA2_RIS_GL", "", "", "", ["UK3CB_HK33_30rnd_556x45_GT", "UK3CB_HK33_30rnd_556x45", "UK3CB_HK33_30rnd_556x45"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["rifles", [ -["UK3CB_G3A3", "", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""], -["UK3CB_G3A3V", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""] +["UK3CB_G3A3", "", "", "rhsusf_acc_eotech_552", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""], +["UK3CB_G3A3V", "", "", "", ["UK3CB_G3_20rnd_762x51_GT", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G"], [], ""] ]]; _militaryLoadoutData set ["carbines", [ ["UK3CB_HK33KA1", "", "", "", ["UK3CB_HK33_30rnd_556x45_GT", "UK3CB_HK33_30rnd_556x45", "UK3CB_HK33_30rnd_556x45"], [], ""] diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_LDF.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_LDF.sqf index d96c5777e2..79c0d3ea87 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_LDF.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_LDF.sqf @@ -208,9 +208,9 @@ _sfLoadoutData set ["NVGs", ["rhsusf_ANPVS_15"]]; //["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; _sfLoadoutData set ["slRifles", [ -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_ACOG_RMR", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230_mrds", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_su230", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], [], ""], ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk318_PMAG"], [], "rhsusf_acc_kac_grip"], @@ -220,18 +220,18 @@ _sfLoadoutData set ["slRifles", [ ["UK3CB_ACR_Carbine_UGL", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_ACR_Carbine_UGL", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_ACR_Carbine_UGL", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] +["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230_mrds", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG_RMR", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_su230", ["UK3CB_AUG_42Rnd_556x45_Magazine", "UK3CB_AUG_42Rnd_556x45_Magazine_R", "UK3CB_AUG_42Rnd_556x45_Magazine_RT"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _sfLoadoutData set ["rifles", [ ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], "rhsusf_acc_kac_grip"], ["rhs_weap_hk416d145", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_xps3", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], "rhsusf_acc_kac_grip"], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_EOTECH", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], -["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_g33_xps3_tan", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_eotech_552", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_EOTECH", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_compm4", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga3_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq16a", "rhsusf_acc_g33_xps3_tan", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], ["UK3CB_ACR_Rifle", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], ["UK3CB_ACR_Rifle", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], ["UK3CB_ACR_Rifle", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], [], ""], @@ -250,8 +250,8 @@ _sfLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_hk416d145_m320", "rhsusf_acc_nt4_black", "rhsusf_acc_anpeq15_bk", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_ACR_Carbine_UGL", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_ACR_Carbine_UGL", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], -["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_T1", ["rhs_mag_30Rnd_556x45_Mk262_PMAG"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] +["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_xps3", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], +["uk3cb_auga3_gl_blk", "rhsusf_acc_rotex5_grey", "rhsusf_acc_anpeq15A", "rhsusf_acc_g33_T1", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _sfLoadoutData set ["SMGs", [ ["uk3cb_auga2_para_blk", "uk3cb_muzzle_snds_a6aug", "", "rhsusf_acc_compm4", ["UK3CB_AUG_25Rnd_9x19mm_Magazine"], [], ""], @@ -292,12 +292,12 @@ _sfLoadoutData set ["marksmanRifles", [ _sfLoadoutData set ["sniperRifles", [ ["rhs_weap_XM2010_sa", "rhsusf_acc_M2010S_sa", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_m8541", [], [], "rhsusf_acc_harris_bipod"], ["rhs_weap_XM2010_sa", "rhsusf_acc_M2010S_sa", "rhsusf_acc_anpeq15side_bk", "rhsusf_acc_LEUPOLDMK4_2", [], [], "rhsusf_acc_harris_bipod"], -["rhs_weap_t5000", "rhsusf_acc_m24_silencer_black", "", "rhsusf_acc_m8541", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], -["rhs_weap_t5000", "rhsusf_acc_m24_silencer_black", "", "rhsusf_acc_LEUPOLDMK4_2", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], -["rhs_weap_t5000", "rhsusf_acc_m24_silencer_black", "", "rhs_acc_dh520x56", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], +["rhs_weap_t5000", "", "", "rhsusf_acc_m8541", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], +["rhs_weap_t5000", "", "", "rhsusf_acc_LEUPOLDMK4_2", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", ["rhs_5Rnd_338lapua_t5000"], [], "rhs_acc_harris_swivel"], ["rhs_weap_svdp_wd", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], -["rhs_weap_svdp_wd", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], -["rhs_weap_svdp_wd", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] +["rhs_weap_svdp_wd_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp_wd_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] ]]; _sfLoadoutData set ["sidearms", [ ["rhsusf_weap_glock17g4", "rhsusf_acc_omega9k", "acc_flashlight_pistol", "", ["rhsusf_mag_17Rnd_9x19_FMJ"], [], ""], @@ -324,22 +324,22 @@ _militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; _militaryLoadoutData set ["slRifles", [ ["UK3CB_ACR_Rifle", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], ["UK3CB_ACR_Rifle", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_blk", "", "", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_blk", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], +["uk3cb_auga2_blk", "", "", "rhsusf_acc_eotech_xps3", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga2_blk", "", "", "rhsusf_acc_compm4", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], ["UK3CB_ACR_Carbine_UGL", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_ACR_Carbine_UGL", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_ACOG_RMR", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; _militaryLoadoutData set ["rifles", [ ["UK3CB_ACR_Rifle", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], ["UK3CB_ACR_Rifle", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_blk", "", "", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_blk", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""] +["uk3cb_auga2_blk", "", "", "rhsusf_acc_eotech_xps3", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga2_blk", "", "", "rhsusf_acc_compm4", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""] ]]; _militaryLoadoutData set ["carbines", [ ["UK3CB_ACR_Carbine", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], ["UK3CB_ACR_Carbine", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_carb_blk", "", "", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""], -["uk3cb_auga2_carb_blk", "", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], [], ""] +["uk3cb_auga2_carb_blk", "", "", "rhsusf_acc_eotech_xps3", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""], +["uk3cb_auga2_carb_blk", "", "", "rhsusf_acc_compm4", ["UK3CB_AUG_30Rnd_556x45_Magazine", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_R", "UK3CB_AUG_30Rnd_556x45_Magazine_RT"], [], ""] ]]; _militaryLoadoutData set ["grenadeLaunchers", [ ["UK3CB_ACR_Carbine_UGL", "", "rhsusf_acc_anpeq15A", "rhsusf_acc_eotech_xps3", ["rhs_mag_30Rnd_556x45_M855A1_PMAG", "rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red"], ["rhs_mag_M441_HE", "rhs_mag_M397_HET", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], @@ -428,13 +428,18 @@ _militiaLoadoutData set ["machineGuns", [ ["rhs_weap_pkm", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], ["UK3CB_UKM2000P", "", "", "", ["UK3CB_UKM_100rnd_762x51", "UK3CB_UKM_100rnd_762x51_GT"], [], ""], ["UK3CB_RPK_74N", "", "", "", ["UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_GT"], [], ""], -["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""] +["UK3CB_RPK", "", "", "", ["UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_G", "UK3CB_RPK_75rnd_762x39_GT"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militiaLoadoutData set ["marksmanRifles", [ -["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""] +["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""], +["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""], +["UK3CB_CZ550", "", "", "uk3cb_optic_sro", ["UK3CB_CZ550_5rnd_Mag"], [], ""] ]]; _militiaLoadoutData set ["sniperRifles", [ -["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""] +["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""], +["UK3CB_CZ550", "", "", "uk3cb_optic_sro", ["UK3CB_CZ550_5rnd_Mag"], [], ""] ]]; _militiaLoadoutData set ["lightATLaunchers", [ "rhs_weap_rpg18", "rhs_weap_rpg26", "rhs_weap_rpg75", "rhs_weap_m80" diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_MDF.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_MDF.sqf index 79477748ab..cafe92f1f6 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_MDF.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_MDF.sqf @@ -36,7 +36,7 @@ ["vehiclesGunBoats", ["UK3CB_MDF_B_RHIB_Gunboat"]] call _fnc_saveToTemplate; ["vehiclesAmphibious", ["UK3CB_MDF_B_M113_M2", "UK3CB_MDF_B_M113_M240", "UK3CB_MDF_B_M113_MK19"]] call _fnc_saveToTemplate; -["vehiclesPlanesCAS", ["UK3CB_MDF_B_Mystere_CAS1"]] call _fnc_saveToTemplate; +["vehiclesPlanesCAS", ["UK3CB_MDF_B_Mystere_CAS1", "UK3CB_MDF_B_Mystere_CAS1", "UK3CB_MDF_B_T28Trojan_CAS", "UK3CB_MDF_B_T28Trojan_NAVY_CAS"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["UK3CB_MDF_B_Mystere_AA1"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["UK3CB_MDF_B_C130J"]] call _fnc_saveToTemplate; @@ -88,6 +88,7 @@ "WhiteHead_16","WhiteHead_17","WhiteHead_18","WhiteHead_19","WhiteHead_20", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENGFRE","Male02ENGFRE"]] call _fnc_saveToTemplate; +"GreekMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -405,7 +406,7 @@ _militiaLoadoutData set ["carbines", [ _militiaLoadoutData set ["grenadeLaunchers", [ ["UK3CB_FAMAS_F1_GLM203", "", "", "", ["UK3CB_FAMAS_25rnd_556x45", "UK3CB_FAMAS_25rnd_556x45", "UK3CB_FAMAS_25rnd_556x45_RT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; -_militiaLoadoutData set ["SMGs", ["UK3CB_MP5A2"]]; +_militiaLoadoutData set ["SMGs", ["uk3cb_mat49"]]; _militiaLoadoutData set ["machineGuns", [ ["rhs_weap_fnmag", "", "", "", ["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""] ]]; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_East.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_East.sqf index 927fc5bcff..24856644c0 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_East.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_East.sqf @@ -82,6 +82,7 @@ ["voices", ["Male01PER", "Male02PER", "Male03PER"]] call _fnc_saveToTemplate; ["faces", ["PersianHead_A3_01", "PersianHead_A3_02", "PersianHead_A3_03"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -307,10 +308,12 @@ _militaryLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_ak74n_gp25", "rhs_acc_dtk3", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], ["rhs_weap_ak74n_gp25", "rhs_acc_dtk3", "", "rhs_acc_1p63", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] ]]; -_militaryLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_militaryLoadoutData set ["SMGs", ["uk3cb_port_said_m45"]]; _militaryLoadoutData set ["machineGuns", [ ["rhs_weap_pkm", "", "", "",["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], -["rhs_weap_pkm", "", "", "",["rhs_100Rnd_762x54mmR_7N13", "rhs_100Rnd_762x54mmR_green"], [], ""] +["rhs_weap_pkm", "", "", "",["rhs_100Rnd_762x54mmR_7N13", "rhs_100Rnd_762x54mmR_green"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] ]]; _militaryLoadoutData set ["marksmanRifles", [ ["rhs_weap_svdp", "", "", "rhs_acc_pso1m2", [], [], ""], @@ -333,7 +336,7 @@ _policeLoadoutData set ["antiInfantryGrenades", ["rhs_mag_fakel", "rhs_mag_fakel _policeLoadoutData set ["rifles", [ ["rhs_weap_ak103_1", "rhs_acc_dtk", "", "", ["rhs_10Rnd_762x39mm"], [], ""] ]]; -_policeLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_policeLoadoutData set ["SMGs", ["uk3cb_port_said_m45"]]; _policeLoadoutData set ["sidearms", [ ["rhs_weap_pya", "", "", "", [], [""], ""] ]]; @@ -364,8 +367,11 @@ _militiaLoadoutData set ["grenadeLaunchers", [ ["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], ["rhs_weap_aks74n_gp25", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] ]]; -_militiaLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; -_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm"]]; +_militiaLoadoutData set ["SMGs", ["uk3cb_port_said_m45"]]; +_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm", +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] +]]; _militiaLoadoutData set ["marksmanRifles", [ ["rhs_weap_svdp", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""] ]]; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_Mix.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_Mix.sqf index 4bc4b42946..2e2a0bf4a2 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_Mix.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_AI_TKA_Mix.sqf @@ -83,6 +83,7 @@ ["voices", ["Male01PER", "Male02PER", "Male03PER"]] call _fnc_saveToTemplate; ["faces", ["PersianHead_A3_01", "PersianHead_A3_02", "PersianHead_A3_03"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -408,7 +409,7 @@ _policeLoadoutData set ["shotGuns", [ ]]; _policeLoadoutData set ["SMGs", [ -["rhs_weap_pp2000", "", "", "", [], [], ""], +["uk3cb_port_said_m45", "", "", "", [], [], ""], ["UK3CB_MP5", "", "", "", ["UK3CB_MP5_30Rnd_Magazine"], [""], ""], ["rhsusf_weap_MP7A2", "", "rhsusf_acc_wmx_bk", "rhsusf_acc_eotech_xps3", [], [], ""] ]]; @@ -452,8 +453,11 @@ _militiaLoadoutData set ["grenadeLaunchers", [ ["UK3CB_HK33KA2_RIS_GL", "", "", "", ["UK3CB_HK33_30rnd_556x45_G", "UK3CB_HK33_30rnd_556x45_G", "UK3CB_HK33_30rnd_556x45_YT"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""], ["UK3CB_M16A2_UGL", "", "", "", ["rhs_mag_30Rnd_556x45_M855_Stanag", "rhs_mag_30Rnd_556x45_M855_Stanag", "rhs_mag_30Rnd_556x45_M855_Stanag_Tracer_Red"], ["rhs_mag_M441_HE", "rhs_mag_M441_HE", "rhs_mag_M433_HEDP", "rhs_mag_m714_White"], ""] ]]; -_militiaLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; -_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm"]]; +_militiaLoadoutData set ["SMGs", ["uk3cb_port_said_m45"]]; +_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm", +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39"], [], ""], +["UK3CB_RPD", "", "", "", ["UK3CB_RPD_100rnd_762x39", "UK3CB_RPD_100rnd_762x39_GM"], [], ""] +]]; _militiaLoadoutData set ["marksmanRifles", [ ["rhs_weap_svdp", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N1"], [], ""], ["UK3CB_G3SG1", "", "", "uk3cb_optic_STANAGZF_G3", [], [], ""] diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru.sqf new file mode 100644 index 0000000000..bdd0eb35ef --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru.sqf @@ -0,0 +1,907 @@ + +////////////////////////// +// Side Information // +////////////////////////// + +["name", "CSAT"] call _fnc_saveToTemplate; +["spawnMarkerName", "CSAT Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_AAF_F"] call _fnc_saveToTemplate; +["flagTexture", "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_w_regiment_flag_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "UK3CB_Marker_CSAT_Woodland"] call _fnc_saveToTemplate; +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesTransportBoats", ["UK3CB_CSAT_F_O_Rubber_Rhib"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Armed_Boat_GMG_Minigun","UK3CB_CSAT_F_O_Seafox_GMG","UK3CB_CSAT_F_O_Seafox_HMG","UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Seafox_HMG"]] call _fnc_saveToTemplate; + +["vehiclesPlanesTransport", ["UK3CB_AAF_B_C130J_G"]] call _fnc_saveToTemplate; + +["staticMGs", ["UK3CB_CSAT_B_O_M2_TriPod"]] call _fnc_saveToTemplate; +["staticAT", ["UK3CB_CSAT_B_O_Kornet"]] call _fnc_saveToTemplate; +["staticMortars", ["RHS_M252_D"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_12Rnd_m821_HE"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +private _uniforms = []; +private _slUniforms = []; +private _sfUniforms = []; + +private _tankUniforms = []; +private _pilotUniforms = []; +private _officerUniforms = []; + +private _vests = []; +private _Hvests = []; +private _glVests = []; +private _milVests = []; + +private _medicVests = []; +private _crewVests = []; +private _sfVests = []; + +private _backpacks = []; + +private _helmets = []; +private _sfHelmets = []; +private _slHat = []; +private _sniHats = []; + +private _milHelmets = []; +private _milMedicHelmets = []; + +switch (A3A_climate) do +{ + case "arid":{ + //Urban + #include "3CB_AI_CSAT_Bru_U.sqf" + }; + case "arctic": { + //Winter + #include "3CB_AI_CSAT_Bru_S.sqf" + }; + case "temperate"; + case "tropical": { + //europe + #include "3CB_AI_CSAT_Bru_W.sqf" + }; + default { + //europe + #include "3CB_AI_CSAT_Bru_W.sqf" + }; +}; + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["AsianHead_A3_01", "AsianHead_A3_02", "AsianHead_A3_03", "AsianHead_A3_04", +"AsianHead_A3_05", "AsianHead_A3_06", "AsianHead_A3_07", "LivonianHead_6", "Sturrock", +"WhiteHead_02", "WhiteHead_03", "WhiteHead_05", "WhiteHead_06", "WhiteHead_07", +"WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_12", "WhiteHead_13", +"WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_18", "WhiteHead_19", +"WhiteHead_20"]] call _fnc_saveToTemplate; +["voices", ["RHS_Male01RUS", "RHS_Male02RUS", "RHS_Male03RUS", "RHS_Male04RUS", "RHS_Male05RUS"]] call _fnc_saveToTemplate; +"RussianMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_OG7V_mag"], [], ""], +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rshg2", +"rhs_weap_rshg2" +]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_PG7VR_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_TBG7V_mag", "rhs_rpg7_PG7VR_mag"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +"uk3cb_saeghe2" +]]; +_loadoutData set ["AALaunchers", [ +"rhs_weap_igla" +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhsusf_m112_mag"]]; +_loadoutData set ["heavyExplosives", ["rhsusf_m112x4_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgd5","rhs_mag_rgn","rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_an_m8hc"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_m18_green", "rhs_mag_m18_purple", "rhs_mag_m18_red", "rhs_mag_m18_yellow"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhsusf_ANPVS_14"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhsusf_bino_lerca_1200_black"]]; + +_loadoutData set ["uniforms", _uniforms]; +_loadoutData set ["slUniforms", _slUniforms]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", _backpacks]; +_loadoutData set ["helmets", []]; +_loadoutData set ["medicHelmets", []]; +_loadoutData set ["slHat", _slHat]; +_loadoutData set ["sniHats", _sniHats]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", _sfUniforms]; +_sfLoadoutData set ["slUniforms", _sfUniforms]; +_sfLoadoutData set ["vests", _sfVests]; +_sfLoadoutData set ["helmets", _sfHelmets]; +_sfLoadoutData set ["glVests", _sfVests]; +_sfLoadoutData set ["Hvests", _sfVests]; +_sfLoadoutData set ["slHat", _sfHelmets]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_02"]]; +//SF Weapons +_sfLoadoutData set ["slRifles", [ +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_tgpa", "rhs_acc_perst3_top", "rhsusf_acc_ACOG", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak74mr", "rhs_acc_tgpa", "rhs_acc_perst3_top", "rhsusf_acc_su230_mrds", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhsusf_acc_rvg_blk"], +["rhs_weap_ak74mr_gp25", "rhs_acc_tgpa", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25P","rhs_VG40TB","rhs_GRD40_White"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_tgpa", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25P","rhs_VG40TB","rhs_GRD40_White"], ""], +["rhs_weap_vss_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a_mrds", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk6"], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a_mrds", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk6"] +]]; +_sfLoadoutData set ["rifles", [ +["rhs_weap_ak74mr", "rhs_acc_tgpa", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhsusf_acc_rvg_blk"], +["rhs_weap_ak74mr", "rhs_acc_tgpa", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_tgpa", "rhs_acc_perst3", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhsusf_acc_rvg_blk"], +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_tgpa", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk2"], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhs_acc_ekp8_18", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk2"] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak74mr_gp25", "rhs_acc_tgpa", "rhs_acc_perst3", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P","rhs_VG40TB","rhs_GRD40_White"], ""], +["rhs_weap_ak74m_gp25_npz", "rhs_acc_tgpa", "", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VG40TB","rhs_VOG25P","rhs_GRD40_White"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["rhs_weap_aks74un", "rhs_acc_tgpa", "", "rhs_acc_ekp1", ["rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_7N22_AK", "rhs_30Rnd_545x39_7U1_AK"], [], ""], +["rhs_weap_aks74un", "rhs_acc_tgpa", "", "rhs_acc_ekp1", ["rhs_30Rnd_545x39_7N22_AK", "rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk2"], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhs_acc_ekp8_18", ["rhs_20rnd_9x39mm_SP6","rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_rk2"] +]]; +_sfLoadoutData set ["machineGuns", [ +["rhs_weap_rpk74m_npz", "rhs_acc_tgpa", "rhs_acc_perst1ik", "rhsusf_acc_ELCAN", ["rhs_60Rnd_545X39_7N22_AK"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", [], [], ""], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", [], [], ""], +["rhs_weap_asval_grip1", "", "rhs_acc_perst1ik_ris", "rhs_acc_pso1m21", ["rhs_10rnd_9x39mm_SP6","rhs_10rnd_9x39mm_SP5"], [], "rhsusf_acc_grip1"], +["rhs_weap_asval_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a_mrds", ["rhs_10rnd_9x39mm_SP6","rhs_10rnd_9x39mm_SP5"], [], "rhsusf_acc_grip1"], +["rhs_weap_vss_grip", "", "rhs_acc_perst1ik_ris", "rhs_acc_pso1m21", ["rhs_10rnd_9x39mm_SP6","rhs_10rnd_9x39mm_SP5"], [], "rhsusf_acc_grip1"], +["rhs_weap_vss_npz_grip1", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a_mrds", ["rhs_10rnd_9x39mm_SP6","rhs_10rnd_9x39mm_SP5"], [], "rhsusf_acc_grip1"] +]]; +_sfLoadoutData set ["sniperRifles", [ +["uk3cb_HS50", "", "", "rhs_acc_dh520x56", [], [], ""], +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "rhsusf_acc_omega9k", "", "", [], [], ""], +["rhs_weap_pp2000_folded", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n31_44","rhs_mag_9x19mm_7n31_20"], [], ""], +["rhs_weap_6p53", "", "", "", ["rhs_18rnd_9x21mm_7N28", "rhs_18rnd_9x21mm_7N29", "rhs_18rnd_9x21mm_7BT3"], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["vests", _vests]; +_militaryLoadoutData set ["glVests", _glVests]; +_militaryLoadoutData set ["helmets", _helmets]; +_militaryLoadoutData set ["Hvests", _Hvests]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator_02"]]; + +_militaryLoadoutData set ["slRifles", [ +["rhs_weap_ak74m_zenitco01_b33", "rhs_acc_uuk", "rhs_acc_perst3_top", "rhsusf_acc_ACOG", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst3_top", "rhsusf_acc_su230_mrds", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74mr_gp25", "rhs_acc_uuk", "rhs_acc_perst3_top", "rhsusf_acc_su230", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P","rhs_VOG25P","rhs_GRD40_White"], ""], +["rhs_weap_ak74m_gp25_npz", "rhs_acc_uuk", "", "rhsusf_acc_ACOG_RMR", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P","rhs_VOG25P","rhs_GRD40_White"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["rhs_weap_ak74m_npz", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_AK_plum_green"], [], ""], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst3_top", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_AK_plum_green"], [], "rhs_acc_grip_ffg2"] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_ak105_npz", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_AK_plum_green"], [], ""], +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_uuk", "rhs_acc_perst1ik_ris", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_AK_plum_green"], [], "rhs_acc_grip_ffg2"] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak74mr_gp25", "rhs_acc_uuk", "rhs_acc_perst3", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P","rhs_VOG25","rhs_GRD40_White"], ""], +["rhs_weap_ak74m_gp25_npz", "rhs_acc_uuk", "", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P","rhs_VOG25","rhs_GRD40_White"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_rakursPM", ["rhs_mag_9x19mm_7n21_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_rakursPM", [], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_pkp", "", "", "rhs_acc_nita", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_rpk74m_npz", "rhs_acc_ak5", "rhs_acc_perst1ik", "rhs_acc_ekp8_18", ["UK3CB_RPK74_60rnd_545x39_G", "UK3CB_RPK74_60rnd_545x39_GM", "UK3CB_RPK74_60rnd_545x39_GT"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp_npz", "", "", "rhsusf_acc_M8541_low", [], [], ""], +["rhs_weap_svds_npz", "", "", "rhsusf_acc_M8541_low", [], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_militaryLoadoutData set ["sidearms", ["rhs_weap_pya"]]; +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["UK3CB_TKP_B_V_TacVest_Blk"]]; +_policeLoadoutData set ["helmets", ["UK3CB_H_Cap_APD", "UK3CB_H_Cap_Headset_APD"]]; + +_policeLoadoutData set ["SMGs", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""] +]]; +_policeLoadoutData set ["sidearms", [ +"rhs_weap_makarov_pm","rhs_weap_pya" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militiaLoadoutData set ["vests", _milVests]; +_militiaLoadoutData set ["glVests", _milVests]; +_militiaLoadoutData set ["Hvests", _milVests]; +_militiaLoadoutData set ["helmets", _milHelmets]; +_militiaLoadoutData set ["medicHelmets", _milMedicHelmets]; + +_militiaLoadoutData set ["rifles", [ +["rhs_weap_ak74n_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_2mag_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], ""], +["rhs_weap_ak74n_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_aks74n_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_2mag_AK", "rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], ""], +["rhs_weap_aks74n_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak74n_gp25_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25","rhs_VOG25","rhs_GRD40_White"], ""], +["rhs_weap_aks74n_gp25_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25","rhs_VOG25","rhs_GRD40_White"], ""], +["UK3CB_MP5N_UGL", "", "", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], ["rhs_mag_M433_HEDP","rhs_mag_M433_HEDP","rhs_mag_m662_red","rhs_mag_m714_White"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "", [], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["rhs_weap_pkm", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_rpk74m_npz", "rhs_acc_uuk", "rhs_acc_2dpZenit", "", ["rhs_45Rnd_545X39_7N10_AK", "rhs_45Rnd_545X39_7N10_AK", "rhs_45Rnd_545X39_AK_Green"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_ak74n", "rhs_acc_uuk", "rhs_acc_2dpZenit", "rhs_acc_pso1m21", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N10_AK","rhs_30Rnd_545x39_AK_green"], [], ""], +["UK3CB_SVD_OLD", "", "", "rhs_acc_pso1m21", [], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["UK3CB_SVD_OLD_NPZ", "", "", "rhsusf_acc_M8541_low", [], [], ""] +]]; +_militiaLoadoutData set ["sidearms", [ +"rhs_weap_makarov_pm" +]]; +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", _tankUniforms]; +_crewLoadoutData set ["vests", _crewVests]; +_crewLoadoutData set ["helmets", ["rhs_tsh4", "rhs_tsh4_bala", "rhs_tsh4_ess", "rhs_tsh4_ess_bala"]]; + +_crewLoadoutData set ["carbines", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", _pilotUniforms]; +_pilotLoadoutData set ["vests", _crewVests]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +_pilotLoadoutData set ["carbines", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", _officerUniforms]; +_officerLoadoutData set ["Hvests", _vests]; +_officerLoadoutData set ["helmets", ["UK3CB_CSAT_BEL_H_Beret"]]; + +_officerLoadoutData set ["slRifles", [ +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_aks74un", "rhs_acc_uuk", "", "rhs_acc_okp7_dovetail", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""] +]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medicHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["carbines"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_S.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_S.sqf new file mode 100644 index 0000000000..5a8f4a1718 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_S.sqf @@ -0,0 +1,84 @@ +//Woodland + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_S_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_S_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_S_O_Tigr_STS","UK3CB_CSAT_S_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_S_O_Marid_Unarmed_Cage","UK3CB_CSAT_S_O_GAZ_Vodnik","UK3CB_CSAT_S_O_MAZ_Transport_Open","UK3CB_CSAT_S_O_MAZ_Transport_Closed","UK3CB_CSAT_S_O_Kamaz_Open","UK3CB_CSAT_S_O_Kamaz_Covered","UK3CB_CSAT_S_O_Ural_Open","UK3CB_CSAT_S_O_Ural","UK3CB_CSAT_S_O_Marid_Unarmed_Cage","UK3CB_CSAT_S_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_S_O_MAZ_543_Recovery","UK3CB_CSAT_S_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_S_O_MAZ_543_Reammo","UK3CB_CSAT_S_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_S_O_MAZ_543_Repair","UK3CB_CSAT_S_O_Ural_Repair","UK3CB_CSAT_S_O_Kamaz_Repair","UK3CB_CSAT_S_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_S_O_MAZ_543_Refuel","UK3CB_CSAT_S_O_Ural_Fuel","UK3CB_CSAT_S_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_S_O_Gaz66_Med","UK3CB_CSAT_S_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_S_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_S_O_Marid","UK3CB_CSAT_S_O_BTR80a","UK3CB_CSAT_S_O_BTR80a","UK3CB_CSAT_S_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_S_O_BMP3MERA","UK3CB_CSAT_S_O_BMP3M","UK3CB_CSAT_S_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_S_O_T80A","UK3CB_CSAT_S_O_T80BV","UK3CB_CSAT_S_O_T80BVK","UK3CB_CSAT_S_O_T80U","UK3CB_CSAT_S_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_S_O_ZsuTank","UK3CB_CSAT_S_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_S_O_Marid","UK3CB_CSAT_S_O_BTR80a","UK3CB_CSAT_S_O_BTR80a","UK3CB_CSAT_S_O_BMD2","UK3CB_CSAT_S_O_BMP3MERA","UK3CB_CSAT_S_O_BMP3M","UK3CB_CSAT_S_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_S_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_S_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_S_O_Orca","UK3CB_CSAT_S_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_S_O_Taru_covered","UK3CB_CSAT_S_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_S_O_Orca_Armed_MULTI","UK3CB_CSAT_S_O_Bell412_Armed","UK3CB_CSAT_S_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_S_O_Kajman","UK3CB_CSAT_S_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_S_O_BM21","UK3CB_CSAT_S_O_2S3","UK3CB_CSAT_S_O_2S1","UK3CB_CSAT_S_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_S_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_S_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_S_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_S_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + + +["uavsAttack", ["UK3CB_CSAT_S_O_Ababil_AT","UK3CB_CSAT_S_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_S_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_S_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_S_O_Gaz66_Open","UK3CB_CSAT_S_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_S_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_CPD_O_Hilux_Open","UK3CB_CPD_O_Hilux_Closed","UK3CB_CPD_O_Hilux_Pkm","UK3CB_CPD_O_TIGR_FFV"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_S_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_S_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_S_O_U_CombatUniform", "UK3CB_CSAT_S_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_S_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_S_O_U_SF_CombatSmock_03_WIN"]; + +_tankUniforms = ["UK3CB_CSAT_S_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_S_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_S_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_S_O_V_TacVest", "UK3CB_CSAT_S_O_V_Carrier_Rig_Light","UK3CB_CSAT_S_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_S_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_S_O_V_Carrier_Rig_CQB","UK3CB_CSAT_S_O_V_Carrier_Rig", "UK3CB_CSAT_S_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_S_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_S_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_S_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_S_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_S_O_V_Carrier_Rig_Recon_WHI","UK3CB_CSAT_S_O_V_Carrier_Rig_Tactical_WHI"]; + +_backpacks = ["UK3CB_CSAT_S_O_B_FIELDPACK","UK3CB_CSAT_S_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_S_O_H_6b27m", "UK3CB_CSAT_S_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_S_O_H_6b47_6m2_1_WIN", "UK3CB_CSAT_S_O_H_6b47_WIN","UK3CB_CSAT_S_O_H_6b47_ess_WIN"]; +_slHat = ["UK3CB_CSAT_S_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_S_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_S_O_H_Patrolcap", "UK3CB_CSAT_S_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_S_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_U.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_U.sqf new file mode 100644 index 0000000000..3ddecca825 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_U.sqf @@ -0,0 +1,84 @@ +//Urban + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_U_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_U_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_U_O_Tigr_STS","UK3CB_CSAT_U_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_U_O_Marid_Unarmed_Cage","UK3CB_CSAT_U_O_GAZ_Vodnik","UK3CB_CSAT_U_O_MAZ_Transport_Open","UK3CB_CSAT_U_O_MAZ_Transport_Closed","UK3CB_CSAT_U_O_Kamaz_Open","UK3CB_CSAT_U_O_Kamaz_Covered","UK3CB_CSAT_U_O_Ural_Open","UK3CB_CSAT_U_O_Ural","UK3CB_CSAT_U_O_Marid_Unarmed_Cage","UK3CB_CSAT_U_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_U_O_MAZ_543_Recovery","UK3CB_CSAT_U_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_U_O_MAZ_543_Reammo","UK3CB_CSAT_U_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_U_O_MAZ_543_Repair","UK3CB_CSAT_U_O_Ural_Repair","UK3CB_CSAT_U_O_Kamaz_Repair","UK3CB_CSAT_U_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_U_O_MAZ_543_Refuel","UK3CB_CSAT_U_O_Ural_Fuel","UK3CB_CSAT_U_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_U_O_Gaz66_Med","UK3CB_CSAT_U_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_U_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_U_O_Marid","UK3CB_CSAT_U_O_BTR80a","UK3CB_CSAT_U_O_BTR80a","UK3CB_CSAT_U_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_U_O_BMP3MERA","UK3CB_CSAT_U_O_BMP3M","UK3CB_CSAT_U_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_U_O_T80A","UK3CB_CSAT_U_O_T80BV","UK3CB_CSAT_U_O_T80BVK","UK3CB_CSAT_U_O_T80U","UK3CB_CSAT_U_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_U_O_ZsuTank","UK3CB_CSAT_U_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_U_O_Marid","UK3CB_CSAT_U_O_BTR80a","UK3CB_CSAT_U_O_BTR80a","UK3CB_CSAT_U_O_BMD2","UK3CB_CSAT_U_O_BMP3MERA","UK3CB_CSAT_U_O_BMP3M","UK3CB_CSAT_U_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_U_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_U_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_U_O_Orca","UK3CB_CSAT_U_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_U_O_Taru_covered","UK3CB_CSAT_U_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_U_O_Orca_Armed_MULTI","UK3CB_CSAT_U_O_Bell412_Armed","UK3CB_CSAT_U_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_U_O_Kajman","UK3CB_CSAT_U_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_U_O_BM21","UK3CB_CSAT_U_O_2S3","UK3CB_CSAT_U_O_2S1","UK3CB_CSAT_U_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_U_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_U_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_U_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_U_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + + +["uavsAttack", ["UK3CB_CSAT_U_O_Ababil_AT","UK3CB_CSAT_U_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_U_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_U_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_U_O_Gaz66_Open","UK3CB_CSAT_U_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_U_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_CPD_O_Hilux_Open","UK3CB_CPD_O_Hilux_Closed","UK3CB_CPD_O_Hilux_Pkm","UK3CB_CPD_O_TIGR_FFV"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_U_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_U_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_U_O_U_CombatUniform", "UK3CB_CSAT_U_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_U_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_U_O_U_SF_CombatSmock_03_URB"]; + +_tankUniforms = ["UK3CB_CSAT_U_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_U_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_U_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_U_O_V_TacVest", "UK3CB_CSAT_U_O_V_Carrier_Rig_Light","UK3CB_CSAT_U_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_U_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_U_O_V_Carrier_Rig_CQB","UK3CB_CSAT_U_O_V_Carrier_Rig", "UK3CB_CSAT_U_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_U_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_U_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_U_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_U_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_U_O_V_Carrier_Rig_Tactical_BLK","UK3CB_CSAT_U_O_V_Carrier_Rig_Recon_BLK","UK3CB_CSAT_U_O_V_Carrier_Rig_CQB_BLK","UK3CB_CSAT_U_O_V_Carrier_Rig_Light_Blk","UK3CB_CSAT_U_O_V_Carrier_Rig_Heavy_Blk"]; + +_backpacks = ["UK3CB_CSAT_U_O_B_FIELDPACK","UK3CB_CSAT_U_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_U_O_H_6b27m", "UK3CB_CSAT_U_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_U_O_H_6b47_URB", "UK3CB_CSAT_U_O_H_6b47_6m2_1_URB","UK3CB_CSAT_U_O_H_6b47_ess_URB"]; +_slHat = ["UK3CB_CSAT_U_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_U_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_U_O_H_Patrolcap", "UK3CB_CSAT_U_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_U_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_W.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_W.sqf new file mode 100644 index 0000000000..698732c728 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Bru_W.sqf @@ -0,0 +1,84 @@ +//Woodland + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_W_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_W_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_W_O_Tigr_STS","UK3CB_CSAT_W_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_W_O_Marid_Unarmed_Cage","UK3CB_CSAT_W_O_GAZ_Vodnik","UK3CB_CSAT_W_O_MAZ_Transport_Open","UK3CB_CSAT_W_O_MAZ_Transport_Closed","UK3CB_CSAT_W_O_Kamaz_Open","UK3CB_CSAT_W_O_Kamaz_Covered","UK3CB_CSAT_W_O_Ural_Open","UK3CB_CSAT_W_O_Ural","UK3CB_CSAT_W_O_Marid_Unarmed_Cage","UK3CB_CSAT_W_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_W_O_MAZ_543_Recovery","UK3CB_CSAT_W_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_W_O_MAZ_543_Reammo","UK3CB_CSAT_W_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_W_O_MAZ_543_Repair","UK3CB_CSAT_W_O_Ural_Repair","UK3CB_CSAT_W_O_Kamaz_Repair","UK3CB_CSAT_W_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_W_O_MAZ_543_Refuel","UK3CB_CSAT_W_O_Ural_Fuel","UK3CB_CSAT_W_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_W_O_Gaz66_Med","UK3CB_CSAT_W_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_W_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_W_O_Marid","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_W_O_BMP3MERA","UK3CB_CSAT_W_O_BMP3M","UK3CB_CSAT_W_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_W_O_T80A","UK3CB_CSAT_W_O_T80BV","UK3CB_CSAT_W_O_T80BVK","UK3CB_CSAT_W_O_T80U","UK3CB_CSAT_W_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_W_O_ZsuTank","UK3CB_CSAT_W_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_W_O_Marid","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BTR80a","UK3CB_CSAT_W_O_BMD2","UK3CB_CSAT_W_O_BMP3MERA","UK3CB_CSAT_W_O_BMP3M","UK3CB_CSAT_W_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_W_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_W_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_W_O_Orca","UK3CB_CSAT_W_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_W_O_Taru_covered","UK3CB_CSAT_W_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_W_O_Orca_Armed_MULTI","UK3CB_CSAT_W_O_Bell412_Armed","UK3CB_CSAT_W_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_W_O_Kajman","UK3CB_CSAT_W_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_W_O_BM21","UK3CB_CSAT_W_O_2S3","UK3CB_CSAT_W_O_2S1","UK3CB_CSAT_W_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_W_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_W_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_W_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_W_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + + +["uavsAttack", ["UK3CB_CSAT_W_O_Ababil_AT","UK3CB_CSAT_W_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_W_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_W_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_W_O_Gaz66_Open","UK3CB_CSAT_W_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_W_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_CPD_O_Hilux_Open","UK3CB_CPD_O_Hilux_Closed","UK3CB_CPD_O_Hilux_Pkm","UK3CB_CPD_O_TIGR_FFV"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_W_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_W_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_W_O_U_CombatUniform", "UK3CB_CSAT_W_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_W_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_W_O_U_SF_CombatSmock_03_ATACS"]; + +_tankUniforms = ["UK3CB_CSAT_W_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_W_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_W_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_W_O_V_TacVest", "UK3CB_CSAT_W_O_V_Carrier_Rig_Light","UK3CB_CSAT_W_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_W_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_W_O_V_Carrier_Rig_CQB","UK3CB_CSAT_W_O_V_Carrier_Rig", "UK3CB_CSAT_W_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_W_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_W_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_W_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_W_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_W_O_V_Carrier_Rig_Heavy_Oli", "UK3CB_CSAT_W_O_V_Carrier_Rig_Light_Oli", "UK3CB_CSAT_W_O_V_Carrier_Rig_CQB_OLI","UK3CB_CSAT_W_O_V_Carrier_Rig_Recon_OLI","UK3CB_CSAT_W_O_V_Carrier_Rig_Tactical_OLI"]; + +_backpacks = ["UK3CB_CSAT_W_O_B_FIELDPACK","UK3CB_CSAT_W_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_W_O_H_6b27m", "UK3CB_CSAT_W_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_W_O_H_6b47_ATACS", "UK3CB_CSAT_W_O_H_6b47_6m2_1_ATACS","UK3CB_CSAT_W_O_H_6b47_ess_ATACS"]; +_slHat = ["UK3CB_CSAT_W_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_W_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_W_O_H_Patrolcap", "UK3CB_CSAT_W_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_W_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi.sqf new file mode 100644 index 0000000000..898a01fc62 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi.sqf @@ -0,0 +1,889 @@ + +////////////////////////// +// Side Information // +////////////////////////// + +["name", "CSAT"] call _fnc_saveToTemplate; +["spawnMarkerName", "CSAT Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_AAF_F"] call _fnc_saveToTemplate; +["flagTexture", "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_g_regiment_flag_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "UK3CB_Marker_CSAT_Green"] call _fnc_saveToTemplate; + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesTransportBoats", ["UK3CB_CSAT_N_O_Rubber_Rhib"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["UK3CB_CSAT_N_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_N_O_Armed_Boat_GMG_Minigun","UK3CB_CSAT_N_O_Seafox_GMG","UK3CB_CSAT_N_O_Seafox_HMG","UK3CB_CSAT_N_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_N_O_Seafox_HMG"]] call _fnc_saveToTemplate; + +["vehiclesPlanesTransport", ["UK3CB_AAF_B_C130J_G"]] call _fnc_saveToTemplate; + +["staticMGs", ["UK3CB_CSAT_G_O_M2_TriPod"]] call _fnc_saveToTemplate; +["staticAT", ["UK3CB_CSAT_G_O_Kornet"]] call _fnc_saveToTemplate; +["staticMortars", ["RHS_M252_D"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_12Rnd_m821_HE"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +private _uniforms = []; +private _slUniforms = []; +private _sfUniforms = []; + +private _tankUniforms = []; +private _pilotUniforms = []; +private _officerUniforms = []; + +private _vests = []; +private _Hvests = []; +private _glVests = []; +private _milVests = []; + +private _medicVests = []; +private _crewVests = []; +private _sfVests = []; + +private _backpacks = []; + +private _helmets = []; +private _sfHelmets = []; +private _slHat = []; +private _sniHats = []; + +private _milHelmets = []; +private _milMedicHelmets = []; + +switch (A3A_climate) do +{ + case "arctic"; + case "arid": { + //Navy (Pacific) + #include "3CB_AI_CSAT_Chi_N.sqf" + }; + case "temperate"; + case "tropical": { + //Pacific + #include "3CB_AI_CSAT_Chi_G.sqf" + }; + default { + //Pacific + #include "3CB_AI_CSAT_Chi_G.sqf" + }; +}; + +///////////////////// +/// Identities /// +///////////////////// + +["voices", ["Male01CHI","Male02CHI","Male03CHI"]] call _fnc_saveToTemplate; +["faces", ["AsianHead_A3_01","AsianHead_A3_02","AsianHead_A3_03","AsianHead_A3_04","AsianHead_A3_05","AsianHead_A3_06","AsianHead_A3_07"]] call _fnc_saveToTemplate; +"ChineseMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_OG7V_mag"], [], ""], +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rshg2", +"rhs_weap_rshg2" +]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_PG7VR_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_TBG7V_mag", "rhs_rpg7_PG7VR_mag"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +"uk3cb_saeghe2" +]]; +_loadoutData set ["AALaunchers", [ +"rhs_weap_igla" +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhsusf_m112_mag"]]; +_loadoutData set ["heavyExplosives", ["rhsusf_m112x4_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgd5","rhs_mag_rgn","rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_an_m8hc"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_m18_green", "rhs_mag_m18_purple", "rhs_mag_m18_red", "rhs_mag_m18_yellow"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhsusf_ANPVS_14"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhsusf_bino_lerca_1200_black"]]; + +_loadoutData set ["uniforms", _uniforms]; +_loadoutData set ["slUniforms", _slUniforms]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", _backpacks]; +_loadoutData set ["helmets", []]; +_loadoutData set ["medicHelmets", []]; +_loadoutData set ["slHat", _slHat]; +_loadoutData set ["sniHats", _sniHats]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", _sfUniforms]; +_sfLoadoutData set ["slUniforms", _sfUniforms]; +_sfLoadoutData set ["vests", _sfVests]; +_sfLoadoutData set ["glVests", _sfVests]; +_sfLoadoutData set ["helmets", _sfHelmets]; +_sfLoadoutData set ["Hvests", _sfVests]; +_sfLoadoutData set ["slHat", _sfHelmets]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_02"]]; +//SF Weapons +_sfLoadoutData set ["slRifles", [ +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_DBP88_30rnd_580x42"], [], ""], +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst3", "rhsusf_acc_su230_mrds", ["UK3CB_DBP88_30rnd_580x42"], [], ""], +["UK3CB_QBZ95_UGL", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230", ["UK3CB_DBP88_30rnd_580x42"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_QBZ95_UGL", "muzzle_snds_58_blk_F", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_DBP88_30rnd_580x42"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_552", ["UK3CB_DBP88_30rnd_580x42"], [], ""], +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst3", "rhsusf_acc_T1_high", ["UK3CB_DBP88_30rnd_580x42"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_552", ["UK3CB_DBP88_30rnd_580x42"], [], ""], +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst3", "rhsusf_acc_T1_high", ["UK3CB_DBP88_30rnd_580x42"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["UK3CB_QBZ95_UGL", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_552", ["UK3CB_DBP88_30rnd_580x42"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_QBZ95_UGL", "muzzle_snds_58_blk_F", "rhs_acc_perst3", "rhsusf_acc_T1_high", ["UK3CB_DBP88_30rnd_580x42"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["UK3CB_MP5SD5", "", "", "rhsusf_acc_mrds", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD5", "", "", "rhsusf_acc_RX01_NoFilter", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhsusf_acc_T1_low", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhsusf_acc_eotech_xps3", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_g33_xps3", ["UK3CB_DBP88_100rnd_580x42"], [], ""], +["UK3CB_QBZ95", "muzzle_snds_58_blk_F", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_552", ["UK3CB_DBP88_100rnd_580x42"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["UK3CB_QBU88", "rhsusf_acc_aac_scarh_silencer", "", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_DBP88_10rnd_580x42"], [], ""], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", [], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["uk3cb_HS50", "", "", "rhs_acc_dh520x56", [], [], ""], +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "rhsusf_acc_omega9k", "", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["vests", _vests]; +_militaryLoadoutData set ["glVests", _glVests]; +_militaryLoadoutData set ["helmets", _helmets]; +_militaryLoadoutData set ["Hvests", _Hvests]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator_02"]]; + +_militaryLoadoutData set ["slRifles", [ +["UK3CB_QBZ95", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""], +["UK3CB_QBZ95", "", "rhs_acc_perst3", "rhsusf_acc_su230_mrds", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""], +["UK3CB_QBZ95_UGL", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_QBZ95_UGL", "", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["UK3CB_QBZ95", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""], +["UK3CB_QBZ95", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["UK3CB_QBZ95", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_RX01", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""], +["UK3CB_QBZ95", "", "rhs_acc_perst3", "rhsusf_acc_RX01_NoFilter", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["UK3CB_QBZ95_UGL", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_QBZ95_UGL", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_m240G", "", "", "rhsusf_acc_ELCAN", ["rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_m240G", "", "", "rhs_acc_1p87", ["rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["UK3CB_QBZ95", "", "rhs_acc_perst1ik_ris", "rhs_acc_ekp8_18", ["UK3CB_DBP88_100rnd_580x42_YM","UK3CB_DBP88_100rnd_580x42_YM","UK3CB_DBP88_100rnd_580x42_YT"], [], ""], +["UK3CB_QBZ95", "", "rhs_acc_perst1ik_ris", "rhs_acc_ekp8_18", ["UK3CB_DBP88_100rnd_580x42_YM","UK3CB_DBP88_100rnd_580x42_YM","UK3CB_DBP88_100rnd_580x42_YT"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["UK3CB_QBU88", "", "", "rhsusf_acc_su230_mrds", ["UK3CB_DBP88_10rnd_580x42", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_YT"], [], ""], +["UK3CB_QBU88", "", "", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_DBP88_10rnd_580x42", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_YT"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_svds_npz", "", "", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_SVD_10rnd_762x54", "UK3CB_SVD_10rnd_762x54_Y", "UK3CB_SVD_10rnd_762x54_YT"], [], ""], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"] +]]; +_militaryLoadoutData set ["sidearms", ["UK3CB_PC9_ZOAF"]]; +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["UK3CB_TKP_B_V_TacVest_Blk"]]; +_policeLoadoutData set ["helmets", ["UK3CB_H_Cap_APD", "UK3CB_H_Cap_Headset_APD"]]; + +_policeLoadoutData set ["SMGs", [ +["UK3CB_MP5A4", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A2", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; +_policeLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militiaLoadoutData set ["vests", _milVests]; +_militiaLoadoutData set ["glVests", _milVests]; +_militiaLoadoutData set ["Hvests", _milVests]; +_militiaLoadoutData set ["helmets", _milHelmets]; +_militiaLoadoutData set ["medicHelmets", _milMedicHelmets]; + +_militiaLoadoutData set ["rifles", [ +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["UK3CB_M16A1", "", "", "rhs_acc_rakursPM", ["UK3CB_M16_30rnd_556x45_Y", "UK3CB_M16_30rnd_556x45_YT", "UK3CB_M16_20rnd_556x45_Y", "UK3CB_M16_20rnd_556x45_YT"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["rhs_weap_akm_zenitco01_b33", "rhs_acc_dtkakm", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], ["rhs_VOG25","rhs_VOG25","rhs_VOG25P","rhs_GRD40_White"], ""], +["UK3CB_MP5N_UGL", "", "", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], ["rhs_mag_M433_HEDP","rhs_mag_M433_HEDP","rhs_mag_m662_red","rhs_mag_m714_White"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["UK3CB_MP5A4", "", "rhs_acc_2dpZenit_ris", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A2", "", "uk3cb_acc_surefiregrip", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["rhs_weap_pkm", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], +["UK3CB_QBZ95_LSW", "", "rhs_acc_perst1ik_ris", "", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["UK3CB_QBU88", "", "", "rhsusf_acc_su230_mrds", ["UK3CB_DBP88_10rnd_580x42", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_YT"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["UK3CB_QBU88", "", "", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_DBP88_10rnd_580x42", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_Y", "UK3CB_DBP88_10rnd_580x42_YT"], [], ""], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"] +]]; +_militiaLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", _tankUniforms]; +_crewLoadoutData set ["vests", _crewVests]; +_crewLoadoutData set ["helmets", ["rhs_tsh4", "rhs_tsh4_bala", "rhs_tsh4_ess", "rhs_tsh4_ess_bala"]]; + +_crewLoadoutData set ["carbines", [ +["UK3CB_QBZ95", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_Y", "UK3CB_DBP88_30rnd_580x42_YT"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", _pilotUniforms]; +_pilotLoadoutData set ["vests", _crewVests]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +_pilotLoadoutData set ["carbines", [ +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", _officerUniforms]; +_officerLoadoutData set ["Hvests", _vests]; +_officerLoadoutData set ["helmets", ["UK3CB_CSAT_IRAN_H_Beret"]]; + +_officerLoadoutData set ["slRifles", [ +["rhs_weap_m4_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_m4a1_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_mk18_bk", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medicHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_G.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_G.sqf new file mode 100644 index 0000000000..fe771f8602 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_G.sqf @@ -0,0 +1,83 @@ +//mediterranean + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_G_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_G_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_G_O_Tigr_STS","UK3CB_CSAT_G_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_G_O_Marid_Unarmed_Cage","UK3CB_CSAT_G_O_GAZ_Vodnik","UK3CB_CSAT_G_O_MAZ_Transport_Open","UK3CB_CSAT_G_O_MAZ_Transport_Closed","UK3CB_CSAT_G_O_Kamaz_Open","UK3CB_CSAT_G_O_Kamaz_Covered","UK3CB_CSAT_G_O_Ural_Open","UK3CB_CSAT_G_O_Ural","UK3CB_CSAT_G_O_Marid_Unarmed_Cage","UK3CB_CSAT_G_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_G_O_MAZ_543_Recovery","UK3CB_CSAT_G_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_G_O_MAZ_543_Reammo","UK3CB_CSAT_G_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_G_O_MAZ_543_Repair","UK3CB_CSAT_G_O_Ural_Repair","UK3CB_CSAT_G_O_Kamaz_Repair","UK3CB_CSAT_G_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_G_O_MAZ_543_Refuel","UK3CB_CSAT_G_O_Ural_Fuel","UK3CB_CSAT_G_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_G_O_Gaz66_Med","UK3CB_CSAT_G_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_G_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_G_O_Marid","UK3CB_CSAT_G_O_BTR80a","UK3CB_CSAT_G_O_BTR80a","UK3CB_CSAT_G_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_G_O_BMP3MERA","UK3CB_CSAT_G_O_BMP3M","UK3CB_CSAT_G_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_G_O_T80A","UK3CB_CSAT_G_O_T80BV","UK3CB_CSAT_G_O_T80BVK","UK3CB_CSAT_G_O_T80U","UK3CB_CSAT_G_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_G_O_ZsuTank","UK3CB_CSAT_G_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_G_O_Marid","UK3CB_CSAT_G_O_BTR80a","UK3CB_CSAT_G_O_BTR80a","UK3CB_CSAT_G_O_BMD2","UK3CB_CSAT_G_O_BMP3MERA","UK3CB_CSAT_G_O_BMP3M","UK3CB_CSAT_G_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_G_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_G_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_G_O_Orca","UK3CB_CSAT_G_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_G_O_Taru_covered","UK3CB_CSAT_G_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_G_O_Orca_Armed_MULTI","UK3CB_CSAT_G_O_Bell412_Armed","UK3CB_CSAT_G_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_G_O_Kajman","UK3CB_CSAT_G_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_G_O_BM21","UK3CB_CSAT_G_O_2S3","UK3CB_CSAT_G_O_2S1","UK3CB_CSAT_G_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_G_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_G_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_G_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_G_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["UK3CB_CSAT_G_O_Ababil_AT","UK3CB_CSAT_G_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_G_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_G_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_G_O_Gaz66_Open","UK3CB_CSAT_G_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_G_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_TKP_O_LandRover_Closed","UK3CB_TKP_O_LandRover_Open"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_G_O_Igla_AA_pod","UK3CB_CSAT_G_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_G_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_G_O_U_CombatUniform", "UK3CB_CSAT_G_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_G_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_G_O_U_SF_CombatUniform", "UK3CB_CSAT_G_O_U_SF_CombatUniform_Shortsleeve"]; + +_tankUniforms = ["UK3CB_CSAT_G_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_G_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_G_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_G_O_V_TacVest", "UK3CB_CSAT_G_O_V_Carrier_Rig_Light","UK3CB_CSAT_G_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_G_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_G_O_V_Carrier_Rig_CQB","UK3CB_CSAT_G_O_V_Carrier_Rig", "UK3CB_CSAT_G_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_G_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_G_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_G_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_G_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_G_O_V_Carrier_Rig_Tactical_OLI","UK3CB_CSAT_G_O_V_Carrier_Rig_Recon_OLI","UK3CB_CSAT_G_O_V_Carrier_Rig_CQB_OLI","UK3CB_CSAT_G_O_V_Carrier_Rig_Light_Oli","UK3CB_CSAT_G_O_V_Carrier_Rig_Heavy_Oli"]; + +_backpacks = ["UK3CB_CSAT_G_O_B_FIELDPACK","UK3CB_CSAT_G_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_G_H_PASGT", "UK3CB_CSAT_G_H_PASGT_RHINO"]; +_sfHelmets = ["UK3CB_CSAT_G_O_H_OPSCORE", "UK3CB_CSAT_G_O_H_OPSCORE_PELT"]; +_slHat = ["UK3CB_CSAT_G_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_G_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_G_O_H_Patrolcap", "UK3CB_CSAT_G_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_G_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_N.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_N.sqf new file mode 100644 index 0000000000..6672a00ffb --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Chi_N.sqf @@ -0,0 +1,83 @@ +//mediterranean + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_N_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_N_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_N_O_Tigr_STS","UK3CB_CSAT_N_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_N_O_Marid_Unarmed_Cage","UK3CB_CSAT_N_O_GAZ_Vodnik","UK3CB_CSAT_N_O_MAZ_Transport_Open","UK3CB_CSAT_N_O_MAZ_Transport_Closed","UK3CB_CSAT_N_O_Kamaz_Open","UK3CB_CSAT_N_O_Kamaz_Covered","UK3CB_CSAT_N_O_Ural_Open","UK3CB_CSAT_N_O_Ural","UK3CB_CSAT_N_O_Marid_Unarmed_Cage","UK3CB_CSAT_N_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_N_O_MAZ_543_Recovery","UK3CB_CSAT_N_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_N_O_MAZ_543_Reammo","UK3CB_CSAT_N_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_N_O_MAZ_543_Repair","UK3CB_CSAT_N_O_Ural_Repair","UK3CB_CSAT_N_O_Kamaz_Repair","UK3CB_CSAT_N_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_N_O_MAZ_543_Refuel","UK3CB_CSAT_N_O_Ural_Fuel","UK3CB_CSAT_N_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_N_O_Gaz66_Med","UK3CB_CSAT_N_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_N_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_N_O_Marid","UK3CB_CSAT_N_O_BTR80a","UK3CB_CSAT_N_O_BTR80a","UK3CB_CSAT_N_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_N_O_BMP3MERA","UK3CB_CSAT_N_O_BMP3M","UK3CB_CSAT_N_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_N_O_T80A","UK3CB_CSAT_N_O_T80BV","UK3CB_CSAT_N_O_T80BVK","UK3CB_CSAT_N_O_T80U","UK3CB_CSAT_N_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_N_O_ZsuTank","UK3CB_CSAT_N_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_N_O_Marid","UK3CB_CSAT_N_O_BTR80a","UK3CB_CSAT_N_O_BTR80a","UK3CB_CSAT_N_O_BMD2","UK3CB_CSAT_N_O_BMP3MERA","UK3CB_CSAT_N_O_BMP3M","UK3CB_CSAT_N_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_N_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_N_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_N_O_Orca","UK3CB_CSAT_N_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_N_O_Taru_covered","UK3CB_CSAT_N_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_N_O_Orca_Armed_MULTI","UK3CB_CSAT_N_O_Bell412_Armed","UK3CB_CSAT_N_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_N_O_Kajman","UK3CB_CSAT_N_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_N_O_BM21","UK3CB_CSAT_N_O_2S3","UK3CB_CSAT_N_O_2S1","UK3CB_CSAT_N_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_N_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_N_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_N_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_N_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["UK3CB_CSAT_N_O_Ababil_AT","UK3CB_CSAT_N_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_N_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_N_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_N_O_Gaz66_Open","UK3CB_CSAT_N_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_N_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_TKP_O_LandRover_Closed","UK3CB_TKP_O_LandRover_Open"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_G_O_Igla_AA_pod","UK3CB_CSAT_N_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_N_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_N_O_U_CombatUniform", "UK3CB_CSAT_N_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_N_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_N_O_U_SF_CombatUniform", "UK3CB_CSAT_N_O_U_SF_CombatUniform_Shortsleeve"]; + +_tankUniforms = ["UK3CB_CSAT_N_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_N_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_N_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_N_O_V_TacVest", "UK3CB_CSAT_N_O_V_Carrier_Rig_Light","UK3CB_CSAT_N_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_N_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_N_O_V_Carrier_Rig_CQB","UK3CB_CSAT_N_O_V_Carrier_Rig", "UK3CB_CSAT_N_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_N_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_N_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_N_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_N_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_N_O_V_Carrier_Rig_Tactical_BLK","UK3CB_CSAT_N_O_V_Carrier_Rig_Recon_BLK","UK3CB_CSAT_N_O_V_Carrier_Rig_CQB_BLK","UK3CB_CSAT_N_O_V_Carrier_Rig_Light_BLK","UK3CB_CSAT_N_O_V_Carrier_Rig_Heavy_BLK"]; + +_backpacks = ["UK3CB_CSAT_N_O_B_FIELDPACK","UK3CB_CSAT_N_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_N_H_PASGT", "UK3CB_CSAT_N_H_PASGT_RHINO"]; +_sfHelmets = ["UK3CB_CSAT_N_O_H_OPSCORE", "UK3CB_CSAT_N_O_H_OPSCORE_PELT"]; +_slHat = ["UK3CB_CSAT_N_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_N_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_N_O_H_Patrolcap", "UK3CB_CSAT_N_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_N_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Fre.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Fre.sqf new file mode 100644 index 0000000000..082c71b367 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Fre.sqf @@ -0,0 +1,906 @@ + +////////////////////////// +// Side Information // +////////////////////////// + +["name", "CSAT"] call _fnc_saveToTemplate; +["spawnMarkerName", "CSAT Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_AAF_F"] call _fnc_saveToTemplate; +["flagTexture", "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_a_regiment_flag_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "UK3CB_Marker_CSAT_Arid"] call _fnc_saveToTemplate; + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["UK3CB_CSAT_A_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_A_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_A_O_Tigr_STS","UK3CB_CSAT_A_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_A_O_Marid_Unarmed_Cage","UK3CB_CSAT_A_O_GAZ_Vodnik","UK3CB_CSAT_A_O_MAZ_Transport_Open","UK3CB_CSAT_A_O_MAZ_Transport_Closed","UK3CB_CSAT_A_O_Kamaz_Open","UK3CB_CSAT_A_O_Kamaz_Covered","UK3CB_CSAT_A_O_Ural_Open","UK3CB_CSAT_A_O_Ural","UK3CB_CSAT_A_O_Marid_Unarmed_Cage","UK3CB_CSAT_A_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_A_O_MAZ_543_Recovery","UK3CB_CSAT_A_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_A_O_MAZ_543_Reammo","UK3CB_CSAT_A_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_A_O_MAZ_543_Repair","UK3CB_CSAT_A_O_Ural_Repair","UK3CB_CSAT_A_O_Kamaz_Repair","UK3CB_CSAT_A_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_A_O_MAZ_543_Refuel","UK3CB_CSAT_A_O_Ural_Fuel","UK3CB_CSAT_A_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_A_O_Gaz66_Med","UK3CB_CSAT_A_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_A_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_A_O_Marid","UK3CB_CSAT_A_O_BTR80a","UK3CB_CSAT_A_O_BTR80a","UK3CB_CSAT_A_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_A_O_BMP3MERA","UK3CB_CSAT_A_O_BMP3M","UK3CB_CSAT_A_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_A_O_T80A","UK3CB_CSAT_A_O_T80BV","UK3CB_CSAT_A_O_T80BVK","UK3CB_CSAT_A_O_T80U","UK3CB_CSAT_A_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_A_O_ZsuTank","UK3CB_CSAT_A_O_ZSU39"]] call _fnc_saveToTemplate; + +["vehiclesTransportBoats", ["UK3CB_CSAT_F_O_Rubber_Rhib"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Armed_Boat_GMG_Minigun","UK3CB_CSAT_F_O_Seafox_GMG","UK3CB_CSAT_F_O_Seafox_HMG","UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Seafox_HMG"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["UK3CB_CSAT_A_O_Marid","UK3CB_CSAT_A_O_BTR80a","UK3CB_CSAT_A_O_BTR80a","UK3CB_CSAT_A_O_BMD2","UK3CB_CSAT_A_O_BMP3MERA","UK3CB_CSAT_A_O_BMP3M","UK3CB_CSAT_A_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_A_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_A_O_MIG29SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["UK3CB_AAF_B_C130J_G"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_A_O_Orca","UK3CB_CSAT_A_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_A_O_Taru_covered","UK3CB_CSAT_A_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_A_O_Orca_Armed_MULTI","UK3CB_CSAT_A_O_Bell412_Armed","UK3CB_CSAT_A_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_A_O_Kajman","UK3CB_CSAT_A_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_A_O_BM21","UK3CB_CSAT_A_O_2S3","UK3CB_CSAT_A_O_2S1","UK3CB_CSAT_A_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_A_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_A_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_A_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_A_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + + +["uavsAttack", ["UK3CB_CSAT_A_O_Ababil_AT","UK3CB_CSAT_A_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_A_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_A_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_A_O_Gaz66_Open","UK3CB_CSAT_A_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_A_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_ADP_O_LandRover_Closed","UK3CB_ADP_O_LandRover_Open","UK3CB_ADP_O_Hilux_Closed","UK3CB_ADP_O_Hilux_Open"]] call _fnc_saveToTemplate; + +["staticMGs", ["UK3CB_CSAT_A_O_M2_TriPod"]] call _fnc_saveToTemplate; +["staticAT", ["UK3CB_CSAT_A_O_Kornet"]] call _fnc_saveToTemplate; +["staticAA", ["UK3CB_CSAT_A_O_Igla_AA_pod","UK3CB_CSAT_A_O_RBS70"]] call _fnc_saveToTemplate; +["staticMortars", ["RHS_M252_D"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_12Rnd_m821_HE"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["AfricanHead_01", "AfricanHead_02", "AfricanHead_03", "Barklem"]] call _fnc_saveToTemplate; +["voices", ["Male01FRE", "Male02FRE", "Male03FRE"]] call _fnc_saveToTemplate; +"AfricanDesertMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +///////////////////////// + +private _uniforms = ["UK3CB_CSAT_A_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_A_O_U_CombatUniform", "UK3CB_CSAT_A_O_U_Tanktop"]; +private _slUniforms = ["UK3CB_CSAT_A_O_U_JumperUniform"]; +private _sfUniforms = ["UK3CB_CSAT_A_O_U_SF_CombatUniform", "UK3CB_CSAT_A_O_U_SF_CombatUniform_Shortsleeve"]; + +private _tankUniforms = ["UK3CB_CSAT_A_O_U_Tank_Uniform"]; +private _pilotUniforms = ["UK3CB_CSAT_A_O_U_H_Pilot"]; +private _officerUniforms = ["UK3CB_CSAT_A_O_U_Officer"]; + +private _vests = ["UK3CB_CSAT_A_O_V_TacVest", "UK3CB_CSAT_A_O_V_Carrier_Rig_Light","UK3CB_CSAT_A_O_V_Carrier_Rig_Compact"]; +private _glVests = ["UK3CB_CSAT_A_O_V_Carrier_Rig_Heavy"]; +private _Hvests = ["UK3CB_CSAT_A_O_V_Carrier_Rig_CQB","UK3CB_CSAT_A_O_V_Carrier_Rig", "UK3CB_CSAT_A_O_V_Carrier_Rig_Tactical"]; + +private _milVests = ["UK3CB_CSAT_A_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +private _medicVests = ["UK3CB_CSAT_A_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_A_O_V_Carrier_Rig_Light_Med"]; +private _crewVests = ["UK3CB_CSAT_A_O_V_Carrier_Rig_Crew"]; +private _sfVests = ["UK3CB_CSAT_A_O_V_Carrier_Rig_Tactical_TAN","UK3CB_CSAT_A_O_V_Carrier_Rig_Recon_TAN","UK3CB_CSAT_A_O_V_Carrier_Rig_CQB_TAN","UK3CB_CSAT_A_O_V_Carrier_Rig_Light_Tan","UK3CB_CSAT_A_O_V_Carrier_Rig_Heavy_Tan"]; + +private _backpacks = ["UK3CB_CSAT_A_O_B_FIELDPACK","UK3CB_CSAT_A_O_B_RIF"]; + +private _helmets = ["UK3CB_CSAT_A_H_PASGT", "UK3CB_CSAT_A_H_PASGT_RHINO"]; +private _slHat = ["UK3CB_CSAT_A_O_H_Patrolcap_Mic"]; +private _sniHats = ["UK3CB_CSAT_A_O_H_BoonieHat"]; + +private _milHelmets = ["UK3CB_CSAT_A_O_H_Patrolcap", "UK3CB_CSAT_A_O_H_SSh68_Covered"]; +private _milMedicHelmets = ["UK3CB_CSAT_A_O_H_SSh68_Covered_Medic"]; + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_OG7V_mag"], [], ""], +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rshg2", +"rhs_weap_rshg2" +]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_PG7VR_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_TBG7V_mag", "rhs_rpg7_PG7VR_mag"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +"uk3cb_saeghe2" +]]; +_loadoutData set ["AALaunchers", [ +"rhs_weap_igla" +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhsusf_m112_mag"]]; +_loadoutData set ["heavyExplosives", ["rhsusf_m112x4_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgd5","rhs_mag_rgn","rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_an_m8hc"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_m18_green", "rhs_mag_m18_purple", "rhs_mag_m18_red", "rhs_mag_m18_yellow"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhsusf_ANPVS_14"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhsusf_bino_lerca_1200_black"]]; + +_loadoutData set ["uniforms", _uniforms]; +_loadoutData set ["slUniforms", _slUniforms]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", _backpacks]; +_loadoutData set ["helmets", _helmets]; +_loadoutData set ["medicHelmets", []]; +_loadoutData set ["slHat", _slHat]; +_loadoutData set ["sniHats", _sniHats]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", _sfUniforms]; +_sfLoadoutData set ["slUniforms", _sfUniforms]; +_sfLoadoutData set ["vests", _sfVests]; +_sfLoadoutData set ["glVests", _sfVests]; +_sfLoadoutData set ["Hvests", _sfVests]; +_sfLoadoutData set ["helmets", ["UK3CB_CSAT_A_O_H_6b27m_Alt", "UK3CB_CSAT_A_O_H_6b27m_ESS_Alt"]]; +_sfLoadoutData set ["slHat", _helmets]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_02"]]; +//SF Weapons +_sfLoadoutData set ["slRifles", [ +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW_GL", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_FNFAL_OSW_GL", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_ak74mr", "rhs_acc_tgpa", "rhsusf_acc_wmx_bk", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak74mr", "rhs_acc_tgpa", "rhsusf_acc_wmx_bk", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk6"] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["UK3CB_FNFAL_OSW_GL", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_FNFAL_OSW_GL", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["UK3CB_MP5SD5", "", "", "rhs_acc_1p87", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD5", "", "", "rhs_acc_rakursPM", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhs_acc_1p87", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhs_acc_rakursPM", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhs_acc_1p87", ["UK3CB_FNFAL_30rnd_762x51_G","UK3CB_FNFAL_30rnd_762x51_G","UK3CB_FNFAL_30rnd_762x51_GT"], [], "rhs_acc_harris_swivel"], +["UK3CB_FNFAL_OSW", "rhsusf_acc_aac_762sd_silencer", "rhs_acc_perst3", "rhs_acc_1p87", ["UK3CB_FNFAL_30rnd_762x51_G","UK3CB_FNFAL_30rnd_762x51_G","UK3CB_FNFAL_30rnd_762x51_GT"], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["UK3CB_G3KA4", "uk3cb_muzzle_snds_g3", "rhs_acc_perst1ik_ris", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_G3_20rnd_762x51"], [], "rhs_acc_harris_swivel"], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", [], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["uk3cb_HS50", "", "", "rhs_acc_dh520x56", [], [], ""], +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "rhsusf_acc_omega9k", "", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["vests", _vests]; +_militaryLoadoutData set ["glVests", _glVests]; +_militaryLoadoutData set ["Hvests", _Hvests]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator_02"]]; + +_militaryLoadoutData set ["slRifles", [ +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst3", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW_GL", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_FNFAL_OSW_GL", "", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhsusf_acc_wmx_bk", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk6"] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["UK3CB_FNFAL_OSW_GL", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_FNFAL_OSW_GL", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["UK3CB_MP5N", "", "rhs_acc_perst1ik_ris", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n21_44","rhs_mag_9x19mm_7n21_20","rhs_mag_9x19mm_7n21_20"], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_fnmag", "", "", "rhsusf_acc_ELCAN", ["rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_fnmag", "", "", "rhs_acc_1p87", ["rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_fnmag", "", "", "rhs_acc_1p87", ["rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m80a1epr","rhsusf_50Rnd_762x51_m62_tracer"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst3", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], "rhs_acc_harris_swivel"], +["UK3CB_FNFAL_OSW", "", "rhs_acc_perst3", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_FNFAL_20rnd_762x51", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], "rhs_acc_harris_swivel"] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"] +]]; +_militaryLoadoutData set ["sidearms", ["UK3CB_PC9_ZOAF"]]; +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["UK3CB_TKP_B_V_TacVest_Blk"]]; +_policeLoadoutData set ["helmets", ["UK3CB_H_Cap_APD", "UK3CB_H_Cap_Headset_APD"]]; + +_policeLoadoutData set ["SMGs", [ +["rhs_weap_akmn_npz", "rhs_acc_dtkakm", "", "rhs_acc_okp7_picatinny", [], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n21_44","rhs_mag_9x19mm_7n21_20","rhs_mag_9x19mm_7n21_20"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", [], [], ""] +]]; +_policeLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militiaLoadoutData set ["vests", _milVests]; +_militiaLoadoutData set ["glVests", _milVests]; +_militiaLoadoutData set ["Hvests", _milVests]; +_militiaLoadoutData set ["helmets", _milHelmets]; +_militiaLoadoutData set ["medicHelmets", _milMedicHelmets]; + +_militiaLoadoutData set ["rifles", [ +["UK3CB_FNFAL_FOREGRIP", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_FULL_RAILS", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["UK3CB_FNFAL_PARA_RAILS", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["UK3CB_FNFAL_OSW_GL", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M441_HE","rhs_mag_m714_White"], ""], +["UK3CB_MP5N_UGL", "", "", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], ["rhs_mag_M433_HEDP","rhs_mag_M433_HEDP","rhs_mag_m662_red","rhs_mag_m714_White"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["rhs_weap_pp2000", "", "", "", ["rhs_mag_9x19mm_7n21_44","rhs_mag_9x19mm_7n21_20","rhs_mag_9x19mm_7n21_20"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["UK3CB_FNLAR", "", "", "", ["UK3CB_Bren_30Rnd_762x51_Magazine_G", "UK3CB_Bren_30Rnd_762x51_Magazine_G", "UK3CB_Bren_30Rnd_762x51_Magazine_GT"], [], ""], +["rhs_weap_fnmag", "", "", "", ["UK3CB_MG3_50rnd_762x51_G", "UK3CB_MG3_50rnd_762x51_GM","UK3CB_MG3_50rnd_762x51_GT"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["UK3CB_FNFAL_FOREGRIP", "", "", "rhsgref_acc_l1a1_l2a2", ["UK3CB_FNFAL_20rnd_762x51", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_PARA_RAILS", "", "", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_FULL_RAILS", "", "", "rhsusf_acc_su230a", ["UK3CB_FNFAL_20rnd_762x51", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"] +]]; +_militiaLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", _tankUniforms]; +_crewLoadoutData set ["vests", _crewVests]; +_crewLoadoutData set ["helmets", ["rhs_tsh4", "rhs_tsh4_bala", "rhs_tsh4_ess", "rhs_tsh4_ess_bala"]]; + +_crewLoadoutData set ["carbines", [ +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_uuk", "rhsusf_acc_wmx_bk", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", _pilotUniforms]; +_pilotLoadoutData set ["vests", _crewVests]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +_pilotLoadoutData set ["carbines", [ +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n21_44","rhs_mag_9x19mm_7n21_20","rhs_mag_9x19mm_7n21_20"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", _officerUniforms]; +_officerLoadoutData set ["Hvests", _vests]; +_officerLoadoutData set ["helmets", ["UK3CB_CSAT_IRAN_H_Beret"]]; + +_officerLoadoutData set ["slRifles", [ +["UK3CB_FNFAL_PARA", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_uuk", "rhsusf_acc_wmx_bk", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_545x39_7N10_AK"], [], ""] +]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medicHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per.sqf new file mode 100644 index 0000000000..5978a98517 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per.sqf @@ -0,0 +1,921 @@ + +////////////////////////// +// Side Information // +////////////////////////// + +["name", "CSAT"] call _fnc_saveToTemplate; +["spawnMarkerName", "CSAT Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_AAF_F"] call _fnc_saveToTemplate; +["flagTexture", "uk3cb_factions\addons\uk3cb_factions_cst\flag\csat_b_regiment_flag_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "UK3CB_Marker_CSAT_Brown"] call _fnc_saveToTemplate; + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesTransportBoats", ["UK3CB_CSAT_F_O_Rubber_Rhib", "UK3CB_CSAT_B_O_Skiff"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Armed_Boat_GMG_Minigun","UK3CB_CSAT_F_O_Seafox_GMG","UK3CB_CSAT_F_O_Seafox_HMG","UK3CB_CSAT_F_O_Armed_Boat_HMG_Minigun","UK3CB_CSAT_F_O_Seafox_HMG"]] call _fnc_saveToTemplate; + +["vehiclesPlanesTransport", ["UK3CB_AAF_B_C130J_G"]] call _fnc_saveToTemplate; + +["staticMGs", ["UK3CB_CSAT_B_O_M2_TriPod"]] call _fnc_saveToTemplate; +["staticAT", ["UK3CB_CSAT_B_O_Kornet"]] call _fnc_saveToTemplate; +["staticMortars", ["RHS_M252_D"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_12Rnd_m821_HE"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +private _uniforms = []; +private _slUniforms = []; +private _sfUniforms = []; + +private _tankUniforms = []; +private _pilotUniforms = []; +private _officerUniforms = []; + +private _vests = []; +private _Hvests = []; +private _glVests = []; +private _milVests = []; + +private _medicVests = []; +private _crewVests = []; +private _sfVests = []; + +private _backpacks = []; + +private _helmets = []; +private _sfHelmets = []; +private _slHat = []; +private _sniHats = []; + +private _milHelmets = []; +private _milMedicHelmets = []; + +switch (A3A_climate) do +{ + case "arid":{ + if (worldname in ["Stratis","Malden","Altis"]) then { + //Load mediterranean hex + #include "3CB_AI_CSAT_Per_M.sqf" + } else { + //Load brown hex + #include "3CB_AI_CSAT_Per_B.sqf" + }; + }; + case "arctic":{ + //load navy hex + #include "3CB_AI_CSAT_Per_F.sqf" + }; + case "temperate"; + case "tropical":{ + //Load mediterranean hex + #include "3CB_AI_CSAT_Per_M.sqf" + }; + default{ + //Load middle east / brown hex + #include "3CB_AI_CSAT_Per_B.sqf" + }; +}; + +///////////////////// +/// Identities /// +///////////////////// + +["voices", ["Male01PER","Male02PER","Male03PER"]] call _fnc_saveToTemplate; +["faces", ["PersianHead_A3_01","PersianHead_A3_02","PersianHead_A3_03"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_OG7V_mag"], [], ""], +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rpg26", +"rhs_weap_rshg2", +"rhs_weap_rshg2" +]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_PG7VR_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3", ["rhs_rpg7_TBG7V_mag", "rhs_rpg7_PG7VR_mag"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +"uk3cb_saeghe2" +]]; +_loadoutData set ["AALaunchers", [ +"rhs_weap_igla" +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhsusf_m112_mag"]]; +_loadoutData set ["heavyExplosives", ["rhsusf_m112x4_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgd5","rhs_mag_rgn","rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_an_m8hc"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_m18_green", "rhs_mag_m18_purple", "rhs_mag_m18_red", "rhs_mag_m18_yellow"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhsusf_ANPVS_14"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhsusf_bino_lerca_1200_black"]]; + +_loadoutData set ["uniforms", _uniforms]; +_loadoutData set ["slUniforms", _slUniforms]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", _backpacks]; +_loadoutData set ["helmets", _helmets]; +_loadoutData set ["medicHelmets", []]; +_loadoutData set ["slHat", _slHat]; +_loadoutData set ["sniHats", _sniHats]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", _sfUniforms]; +_sfLoadoutData set ["slUniforms", _sfUniforms]; +_sfLoadoutData set ["vests", _sfVests]; +_sfLoadoutData set ["glVests", _sfVests]; +_sfLoadoutData set ["Hvests", _sfVests]; +_sfLoadoutData set ["helmets", _sfHelmets]; +_sfLoadoutData set ["slHat", _sfHelmets]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_02"]]; +//SF Weapons +_sfLoadoutData set ["slRifles", [ +["UK3CB_KH2002_Carbine", "rhsusf_acc_rotex5_grey", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002", "rhsusf_acc_rotex5_grey", "rhs_acc_perst3", "rhsusf_acc_su230_mrds", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002_UGL", "rhsusf_acc_rotex5_grey", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_KH2002_UGL", "rhsusf_acc_rotex5_grey", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["UK3CB_KH2002", "rhsusf_acc_rotex5_grey", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002", "rhsusf_acc_rotex5_grey", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["UK3CB_KH2002", "rhsusf_acc_rotex5_grey", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002", "rhsusf_acc_rotex5_grey", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["UK3CB_KH2002_UGL", "rhsusf_acc_rotex5_grey", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_KH2002_UGL", "rhsusf_acc_rotex5_grey", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["UK3CB_MP5SD5", "", "", "rhs_acc_1p87", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD5", "", "", "rhs_acc_rakursPM", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhs_acc_1p87", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_MP5SD6", "", "", "rhs_acc_rakursPM", ["UK3CB_MP5_30Rnd_9x19_Magazine"], [], ""], +["UK3CB_Uzi", "rhsusf_acc_omega9k", "", "", ["UK3CB_Uzi_32Rnd_Magazine"], [], ""], +["UK3CB_Uzi", "rhsusf_acc_omega9k", "", "", ["UK3CB_Uzi_32Rnd_Magazine"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["UK3CB_MG3_Railed", "", "", "rhsusf_acc_ELCAN", ["UK3CB_MG3_250rnd_762x51_G", "UK3CB_MG3_250rnd_762x51_GM","UK3CB_MG3_250rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhsusf_acc_ELCAN", ["UK3CB_MG3_100rnd_762x51_G", "UK3CB_MG3_100rnd_762x51_GM", "UK3CB_MG3_100rnd_762x51_GT"], [], ""], +["UK3CB_G3KA4", "uk3cb_muzzle_snds_g3", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_xps3", ["UK3CB_G3_50rnd_762x51_G", "UK3CB_G3_50rnd_762x51_GM", "UK3CB_G3_50rnd_762x51_GM", "UK3CB_G3_50rnd_762x51_GT"], [], "rhs_acc_harris_swivel"], +["UK3CB_G3KA4", "uk3cb_muzzle_snds_g3", "rhs_acc_perst1ik_ris", "rhsusf_acc_eotech_xps3", ["UK3CB_G3_50rnd_762x51_G", "UK3CB_G3_50rnd_762x51_GM", "UK3CB_G3_50rnd_762x51_GM", "UK3CB_G3_50rnd_762x51_GT"], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["UK3CB_G3KA4", "uk3cb_muzzle_snds_g3", "rhs_acc_perst1ik_ris", "rhsusf_acc_LEUPOLDMK4", ["UK3CB_G3_20rnd_762x51"], [], "rhs_acc_harris_swivel"], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhsusf_acc_LEUPOLDMK4", [], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["uk3cb_HS50", "", "", "rhs_acc_dh520x56", [], [], ""], +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "rhsusf_acc_omega9k", "", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["vests", _vests]; +_militaryLoadoutData set ["glVests", _glVests]; +_militaryLoadoutData set ["Hvests", _Hvests]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator_02"]]; + +_militaryLoadoutData set ["slRifles", [ +["UK3CB_KH2002_Carbine", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_ACOG", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002", "", "rhs_acc_perst3", "rhsusf_acc_su230_mrds", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002_UGL", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_su230", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_KH2002_UGL", "", "rhs_acc_perst3", "rhsusf_acc_ACOG_RMR", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["UK3CB_KH2002", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["UK3CB_KH2002_Carbine", "", "rhs_acc_perst1ik_ris", "rhsusf_acc_RX01", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""], +["UK3CB_KH2002_Carbine", "", "rhs_acc_perst3", "rhsusf_acc_RX01_NoFilter", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["UK3CB_KH2002_UGL", "", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M433_HEDP","rhs_mag_M397_HET","rhs_mag_m714_White"], ""], +["UK3CB_KH2002_UGL", "", "rhs_acc_perst3", "rhs_acc_ekp8_18", ["UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_G", "UK3CB_KH2002_30rnd_556x45_GT"], ["rhs_mag_M397_HET","rhs_mag_M433_HEDP","rhs_mag_m714_White"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["UK3CB_MG3_Railed", "", "", "rhsusf_acc_ELCAN", ["UK3CB_MG3_50rnd_762x51_G", "UK3CB_MG3_50rnd_762x51_GM","UK3CB_MG3_50rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhsusf_acc_ELCAN", ["UK3CB_MG3_100rnd_762x51_G", "UK3CB_MG3_100rnd_762x51_GM", "UK3CB_MG3_100rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhs_acc_1p87", ["UK3CB_MG3_50rnd_762x51_G", "UK3CB_MG3_50rnd_762x51_GM","UK3CB_MG3_50rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhs_acc_1p87", ["UK3CB_MG3_100rnd_762x51_G", "UK3CB_MG3_100rnd_762x51_GM", "UK3CB_MG3_100rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhs_acc_1p87", ["UK3CB_MG3_50rnd_762x51", "UK3CB_MG3_50rnd_762x51","UK3CB_MG3_50rnd_762x51_GT"], [], ""], +["UK3CB_MG3_Railed", "", "", "rhs_acc_1p87", ["UK3CB_MG3_100rnd_762x51", "UK3CB_MG3_100rnd_762x51", "UK3CB_MG3_100rnd_762x51_GT"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["UK3CB_G3SG1_RIS", "", "", "uk3cb_optic_ZFSG1", ["UK3CB_G3_20rnd_762x51", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_GT"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"], +["UK3CB_G3SG1_RIS", "", "", "uk3cb_optic_accupoint_g3", ["UK3CB_G3_20rnd_762x51"], [], ""] +]]; +_militaryLoadoutData set ["sidearms", ["UK3CB_PC9_ZOAF"]]; +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["UK3CB_TKP_B_V_TacVest_Blk"]]; +_policeLoadoutData set ["helmets", ["UK3CB_H_Cap_APD", "UK3CB_H_Cap_Headset_APD"]]; + +_policeLoadoutData set ["SMGs", [ +["UK3CB_MP5A4", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A2", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; +_policeLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militiaLoadoutData set ["vests", _milVests]; +_militiaLoadoutData set ["glVests", _milVests]; +_militiaLoadoutData set ["Hvests", _milVests]; +_militiaLoadoutData set ["helmets", _milHelmets]; +_militiaLoadoutData set ["medicHelmets", _milMedicHelmets]; + +_militiaLoadoutData set ["rifles", [ +["UK3CB_FNFAL_FOREGRIP", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_FULL", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""], +["UK3CB_FNFAL_PARA", "", "", "", ["UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_G", "UK3CB_FNFAL_20rnd_762x51_GT"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["rhs_weap_akm_zenitco01_b33", "rhs_acc_dtkakm", "rhs_acc_perst3_2dp_light_h", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk", "", "", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], ["rhs_VOG25","rhs_VOG25","rhs_VOG25P","rhs_GRD40_White"], ""], +["UK3CB_MP5N_UGL", "", "", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], ["rhs_mag_M433_HEDP","rhs_mag_M433_HEDP","rhs_mag_m662_red","rhs_mag_m714_White"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["UK3CB_MP5A4", "", "rhs_acc_2dpZenit_ris", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A2", "", "uk3cb_acc_surefiregrip", "", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["rhs_weap_pkp", "", "", "", ["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], +["UK3CB_RPKN_BLK", "", "", "", ["UK3CB_RPK_40rnd_762x39_GM", "UK3CB_RPK_40rnd_762x39_GT"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_ak103_2", "rhs_acc_dtk", "rhs_acc_2dpZenit", "rhs_acc_pso1m21", ["rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer", "rhs_30Rnd_762x39mm_polymer_tracer"], [], ""], +["UK3CB_G3A3", "", "", "uk3cb_optic_ZFSG1", ["UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_G", "UK3CB_G3_20rnd_762x51_GT"], [], ""], +["rhs_weap_svdp", "", "", "rhs_acc_pso1m21", [], [], ""], +["rhs_weap_svds", "", "", "rhs_acc_pso1m21", [], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["rhs_weap_svdp_npz", "", "", "rhsusf_acc_M8541_low", [], [], ""], +["rhs_weap_svds_npz", "", "", "rhsusf_acc_M8541_low", [], [], ""], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4", [], [], "rhsusf_acc_harris_swivel"] +]]; +_militiaLoadoutData set ["sidearms", [ +["UK3CB_PC9_ZOAF", "", "acc_flashlight_pistol", "", [], [], ""] +]]; +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", _tankUniforms]; +_crewLoadoutData set ["vests", _crewVests]; +_crewLoadoutData set ["helmets", ["rhs_tsh4", "rhs_tsh4_bala", "rhs_tsh4_ess", "rhs_tsh4_ess_bala"]]; + +_crewLoadoutData set ["carbines", [ +["rhs_weap_m4_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_m4a1_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_mk18_bk", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""] +]]; +_crewLoadoutData set ["SMGs", [ +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", [], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", _pilotUniforms]; +_pilotLoadoutData set ["vests", _crewVests]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +_pilotLoadoutData set ["carbines", [ +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""] +]]; +_pilotLoadoutData set ["SMGs", [ +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", _officerUniforms]; +_officerLoadoutData set ["Hvests", _vests]; +_officerLoadoutData set ["helmets", ["UK3CB_CSAT_IRAN_H_Beret"]]; + +_officerLoadoutData set ["slRifles", [ +["rhs_weap_m4_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_m4a1_carryhandle", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["rhs_weap_mk18_bk", "", "", "", ["UK3CB_M16_20rnd_556x45_G"], [], ""], +["UK3CB_MP5N", "", "rhs_acc_2dpZenit_ris", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5A3", "", "uk3cb_acc_surefiregrip", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_MP5K_PDW", "", "", "rhs_acc_okp7_picatinny", ["UK3CB_MP5_30Rnd_9x19_Magazine_G"], [], ""], +["UK3CB_Uzi", "", "", "", ["UK3CB_Uzi_32Rnd_Magazine_G"], [], ""] +]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medicHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_B.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_B.sqf new file mode 100644 index 0000000000..fa2335137c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_B.sqf @@ -0,0 +1,84 @@ +//Arid + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_B_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_B_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_B_O_Tigr_STS","UK3CB_CSAT_B_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_B_O_Marid_Unarmed_Cage","UK3CB_CSAT_B_O_GAZ_Vodnik","UK3CB_CSAT_B_O_MAZ_Transport_Open","UK3CB_CSAT_B_O_MAZ_Transport_Closed","UK3CB_CSAT_B_O_Kamaz_Open","UK3CB_CSAT_B_O_Kamaz_Covered","UK3CB_CSAT_B_O_Ural_Open","UK3CB_CSAT_B_O_Ural","UK3CB_CSAT_B_O_Marid_Unarmed_Cage","UK3CB_CSAT_B_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_B_O_MAZ_543_Recovery","UK3CB_CSAT_B_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_B_O_MAZ_543_Reammo","UK3CB_CSAT_B_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_B_O_MAZ_543_Repair","UK3CB_CSAT_B_O_Ural_Repair","UK3CB_CSAT_B_O_Kamaz_Repair","UK3CB_CSAT_B_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_B_O_MAZ_543_Refuel","UK3CB_CSAT_B_O_Ural_Fuel","UK3CB_CSAT_B_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_B_O_Gaz66_Med","UK3CB_CSAT_B_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_B_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_B_O_Marid","UK3CB_CSAT_B_O_BTR80a","UK3CB_CSAT_B_O_BTR80a","UK3CB_CSAT_B_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_B_O_BMP3MERA","UK3CB_CSAT_B_O_BMP3M","UK3CB_CSAT_B_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_B_O_T80A","UK3CB_CSAT_B_O_T80BV","UK3CB_CSAT_B_O_T80BVK","UK3CB_CSAT_B_O_T80U","UK3CB_CSAT_B_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_B_O_ZsuTank","UK3CB_CSAT_B_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_B_O_Marid","UK3CB_CSAT_B_O_BTR80a","UK3CB_CSAT_B_O_BTR80a","UK3CB_CSAT_B_O_BMD2","UK3CB_CSAT_B_O_BMP3MERA","UK3CB_CSAT_B_O_BMP3M","UK3CB_CSAT_B_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_B_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_B_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_B_O_Orca","UK3CB_CSAT_B_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_B_O_Taru_covered","UK3CB_CSAT_B_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_B_O_Orca_Armed_MULTI","UK3CB_CSAT_B_O_Bell412_Armed","UK3CB_CSAT_B_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_B_O_Kajman","UK3CB_CSAT_B_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_B_O_BM21","UK3CB_CSAT_B_O_2S3","UK3CB_CSAT_B_O_2S1","UK3CB_CSAT_B_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_B_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_B_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_B_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_B_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + + +["uavsAttack", ["UK3CB_CSAT_B_O_Ababil_AT","UK3CB_CSAT_B_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_B_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_B_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_B_O_Gaz66_Open","UK3CB_CSAT_F_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_B_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_TKP_O_LandRover_Closed","UK3CB_TKP_O_LandRover_Open"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_B_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_B_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_B_O_U_CombatUniform", "UK3CB_CSAT_B_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_B_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_B_O_U_SF_CombatUniform", "UK3CB_CSAT_B_O_U_SF_CombatUniform_Shortsleeve"]; + +_tankUniforms = ["UK3CB_CSAT_B_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_B_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_B_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_B_O_V_TacVest", "UK3CB_CSAT_B_O_V_Carrier_Rig_Light","UK3CB_CSAT_B_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_B_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_B_O_V_Carrier_Rig_CQB","UK3CB_CSAT_B_O_V_Carrier_Rig", "UK3CB_CSAT_B_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_B_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_B_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_B_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_B_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_B_O_V_Carrier_Rig_Tactical_TAN","UK3CB_CSAT_B_O_V_Carrier_Rig_Recon_TAN","UK3CB_CSAT_B_O_V_Carrier_Rig_CQB_TAN","UK3CB_CSAT_B_O_V_Carrier_Rig_Light_Tan","UK3CB_CSAT_B_O_V_Carrier_Rig_Heavy_Tan"]; + +_backpacks = ["UK3CB_CSAT_B_O_B_FIELDPACK","UK3CB_CSAT_B_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_B_O_H_6b27m", "UK3CB_CSAT_B_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_B_O_H_6b27m_Alt", "UK3CB_CSAT_B_O_H_6b27m_ESS_Alt"]; +_slHat = ["UK3CB_CSAT_B_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_B_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_B_O_H_Patrolcap", "UK3CB_CSAT_B_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_B_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_F.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_F.sqf new file mode 100644 index 0000000000..75b6ba5b4c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_F.sqf @@ -0,0 +1,84 @@ +//Navy + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_F_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_F_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_F_O_Tigr_STS","UK3CB_CSAT_F_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_F_O_Marid_Unarmed_Cage","UK3CB_CSAT_F_O_GAZ_Vodnik","UK3CB_CSAT_F_O_MAZ_Transport_Open","UK3CB_CSAT_F_O_MAZ_Transport_Closed","UK3CB_CSAT_F_O_Kamaz_Open","UK3CB_CSAT_F_O_Kamaz_Covered","UK3CB_CSAT_F_O_Ural_Open","UK3CB_CSAT_F_O_Ural","UK3CB_CSAT_F_O_Marid_Unarmed_Cage","UK3CB_CSAT_F_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_F_O_MAZ_543_Recovery","UK3CB_CSAT_F_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_F_O_MAZ_543_Reammo","UK3CB_CSAT_F_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_F_O_MAZ_543_Repair","UK3CB_CSAT_F_O_Ural_Repair","UK3CB_CSAT_F_O_Kamaz_Repair","UK3CB_CSAT_F_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_F_O_MAZ_543_Refuel","UK3CB_CSAT_F_O_Ural_Fuel","UK3CB_CSAT_F_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_F_O_Gaz66_Med","UK3CB_CSAT_F_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_F_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_F_O_Marid","UK3CB_CSAT_F_O_BTR80a","UK3CB_CSAT_F_O_BTR80a","UK3CB_CSAT_F_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_F_O_BMP3MERA","UK3CB_CSAT_F_O_BMP3M","UK3CB_CSAT_F_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_F_O_T80A","UK3CB_CSAT_F_O_T80BV","UK3CB_CSAT_F_O_T80BVK","UK3CB_CSAT_F_O_T80U","UK3CB_CSAT_F_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_F_O_ZsuTank","UK3CB_CSAT_F_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_F_O_Marid","UK3CB_CSAT_F_O_BTR80a","UK3CB_CSAT_F_O_BTR80a","UK3CB_CSAT_F_O_BMD2","UK3CB_CSAT_F_O_BMP3MERA","UK3CB_CSAT_F_O_BMP3M","UK3CB_CSAT_F_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_F_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_F_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_F_O_Orca","UK3CB_CSAT_F_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_F_O_Taru_covered","UK3CB_CSAT_F_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_F_O_Orca_Armed_MULTI","UK3CB_CSAT_F_O_Bell412_Armed","UK3CB_CSAT_F_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_F_O_Kajman","UK3CB_CSAT_F_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_F_O_BM21","UK3CB_CSAT_F_O_2S3","UK3CB_CSAT_F_O_2S1","UK3CB_CSAT_F_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_F_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_F_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_F_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_F_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["UK3CB_CSAT_F_O_Ababil_AT","UK3CB_CSAT_F_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_F_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_F_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_F_O_Gaz66_Open","UK3CB_CSAT_F_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_F_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_TKP_O_LandRover_Closed","UK3CB_TKP_O_LandRover_Open"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_F_O_RBS70"]] call _fnc_saveToTemplate; + + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_F_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_F_O_U_CombatUniform", "UK3CB_CSAT_F_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_F_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_F_O_U_SF_CombatUniform", "UK3CB_CSAT_F_O_U_SF_CombatUniform_Shortsleeve"]; + +_tankUniforms = ["UK3CB_CSAT_F_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_F_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_F_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_F_O_V_TacVest", "UK3CB_CSAT_F_O_V_Carrier_Rig_Light","UK3CB_CSAT_F_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_F_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_F_O_V_Carrier_Rig_CQB","UK3CB_CSAT_F_O_V_Carrier_Rig", "UK3CB_CSAT_F_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_F_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_F_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_F_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_F_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_F_O_V_TacVest_UCP","UK3CB_CSAT_F_O_V_Carrier_Rig_Tactical_UCP","UK3CB_CSAT_F_O_V_Carrier_Rig_Recon_UCP","UK3CB_CSAT_F_O_V_Carrier_Rig_CQB_UCP","UK3CB_CSAT_F_O_V_Carrier_Rig_Light_UCP","UK3CB_CSAT_F_O_V_Carrier_Rig_Heavy_UCP"]; + +_backpacks = ["UK3CB_CSAT_F_O_B_FIELDPACK","UK3CB_CSAT_F_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_F_O_H_6b27m", "UK3CB_CSAT_F_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_F_O_H_6b27m_Alt", "UK3CB_CSAT_F_O_H_6b27m_ESS_Alt"]; +_slHat = ["UK3CB_CSAT_F_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_F_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_F_O_H_Patrolcap", "UK3CB_CSAT_F_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_F_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_M.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_M.sqf new file mode 100644 index 0000000000..00af527e8c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_CSAT/3CB_AI_CSAT_Per_M.sqf @@ -0,0 +1,83 @@ +//mediterranean + + +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesBasic", ["UK3CB_CSAT_M_O_M1030"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["UK3CB_CSAT_M_O_Tigr_FFV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["UK3CB_CSAT_M_O_Tigr_STS","UK3CB_CSAT_M_O_GAZ_Vodnik_Cannon"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["UK3CB_CSAT_M_O_Marid_Unarmed_Cage","UK3CB_CSAT_M_O_GAZ_Vodnik","UK3CB_CSAT_M_O_MAZ_Transport_Open","UK3CB_CSAT_M_O_MAZ_Transport_Closed","UK3CB_CSAT_M_O_Kamaz_Open","UK3CB_CSAT_M_O_Kamaz_Covered","UK3CB_CSAT_M_O_Ural_Open","UK3CB_CSAT_M_O_Ural","UK3CB_CSAT_M_O_Marid_Unarmed_Cage","UK3CB_CSAT_M_O_GAZ_Vodnik"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["UK3CB_CSAT_M_O_MAZ_543_Recovery","UK3CB_CSAT_M_O_Ural_Recovery"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["UK3CB_CSAT_M_O_MAZ_543_Reammo","UK3CB_CSAT_M_O_Ural_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["UK3CB_CSAT_M_O_MAZ_543_Repair","UK3CB_CSAT_M_O_Ural_Repair","UK3CB_CSAT_M_O_Kamaz_Repair","UK3CB_CSAT_M_O_Kamaz_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["UK3CB_CSAT_M_O_MAZ_543_Refuel","UK3CB_CSAT_M_O_Ural_Fuel","UK3CB_CSAT_M_O_Kamaz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["UK3CB_CSAT_M_O_Gaz66_Med","UK3CB_CSAT_M_O_GAZ_Vodnik_MedEvac","UK3CB_CSAT_M_O_Marid_Amb"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["UK3CB_CSAT_M_O_Marid","UK3CB_CSAT_M_O_BTR80a","UK3CB_CSAT_M_O_BTR80a","UK3CB_CSAT_M_O_BMD2"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["UK3CB_CSAT_M_O_BMP3MERA","UK3CB_CSAT_M_O_BMP3M","UK3CB_CSAT_M_O_BMP3LATE"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["UK3CB_CSAT_M_O_T80A","UK3CB_CSAT_M_O_T80BV","UK3CB_CSAT_M_O_T80BVK","UK3CB_CSAT_M_O_T80U","UK3CB_CSAT_M_O_T80UK"]] call _fnc_saveToTemplate; +["vehiclesAA", ["UK3CB_CSAT_M_O_ZsuTank","UK3CB_CSAT_M_O_ZSU39"]] call _fnc_saveToTemplate; + + +["vehiclesAmphibious", ["UK3CB_CSAT_M_O_Marid","UK3CB_CSAT_M_O_BTR80a","UK3CB_CSAT_M_O_BTR80a","UK3CB_CSAT_M_O_BMD2","UK3CB_CSAT_M_O_BMP3MERA","UK3CB_CSAT_M_O_BMP3M","UK3CB_CSAT_M_O_BMP3LATE"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["UK3CB_CSAT_M_O_Su25SM"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["UK3CB_CSAT_M_O_MIG29SM"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["UK3CB_CSAT_M_O_Orca","UK3CB_CSAT_M_O_Bell412_Utility"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["UK3CB_CSAT_M_O_Taru_covered","UK3CB_CSAT_M_O_Mi8"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["UK3CB_CSAT_M_O_Orca_Armed_MULTI","UK3CB_CSAT_M_O_Bell412_Armed","UK3CB_CSAT_M_O_Bell412_Armed_AT"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["UK3CB_CSAT_M_O_Kajman","UK3CB_CSAT_M_O_Mi_24G"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["UK3CB_CSAT_M_O_BM21","UK3CB_CSAT_M_O_2S3","UK3CB_CSAT_M_O_2S1","UK3CB_CSAT_M_O_D30"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["UK3CB_CSAT_M_O_2S1", ["rhs_mag_3of56_35","rhs_mag_bk13_5"]], +["UK3CB_CSAT_M_O_2S3",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["UK3CB_CSAT_M_O_BM21", ["rhs_mag_m21of_1"]], +["UK3CB_CSAT_M_O_D30", ["rhs_mag_3of56_10","rhs_mag_d462_2","rhs_mag_s463_2","rhs_mag_3of69m_2"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["UK3CB_CSAT_M_O_Ababil_AT","UK3CB_CSAT_M_O_Fenghuang"]] call _fnc_saveToTemplate; +["uavsPortable", ["UK3CB_CSAT_M_O_Darter"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["UK3CB_CSAT_M_O_Offroad_HMG"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["UK3CB_CSAT_M_O_Gaz66_Open","UK3CB_CSAT_M_O_Gaz66_Covered"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["UK3CB_CSAT_M_O_Offroad_Unarmed"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["UK3CB_TKP_O_LandRover_Closed","UK3CB_TKP_O_LandRover_Open"]] call _fnc_saveToTemplate; + +["staticAA", ["UK3CB_CSAT_B_O_Igla_AA_pod","UK3CB_CSAT_M_O_RBS70"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +_uniforms = ["UK3CB_CSAT_M_O_U_CombatUniform_Shortsleeve", "UK3CB_CSAT_M_O_U_CombatUniform", "UK3CB_CSAT_M_O_U_Tanktop"]; +_slUniforms = ["UK3CB_CSAT_M_O_U_JumperUniform"]; +_sfUniforms = ["UK3CB_CSAT_M_O_U_SF_CombatUniform", "UK3CB_CSAT_M_O_U_SF_CombatUniform_Shortsleeve"]; + +_tankUniforms = ["UK3CB_CSAT_M_O_U_Tank_Uniform"]; +_pilotUniforms = ["UK3CB_CSAT_M_O_U_H_Pilot"]; +_officerUniforms = ["UK3CB_CSAT_M_O_U_Officer"]; + +_vests = ["UK3CB_CSAT_M_O_V_TacVest", "UK3CB_CSAT_M_O_V_Carrier_Rig_Light","UK3CB_CSAT_M_O_V_Carrier_Rig_Compact"]; +_glVests = ["UK3CB_CSAT_M_O_V_Carrier_Rig_Heavy"]; +_Hvests = ["UK3CB_CSAT_M_O_V_Carrier_Rig_CQB","UK3CB_CSAT_M_O_V_Carrier_Rig", "UK3CB_CSAT_M_O_V_Carrier_Rig_Tactical"]; + +_milVests = ["UK3CB_CSAT_M_O_V_TacVest", "UK3CB_TKA_I_V_6Sh92_Oli","UK3CB_TKA_I_V_6Sh92_Radio_Oli","UK3CB_TKA_I_V_6Sh92_vog_Oli"]; + +_medicVests = ["UK3CB_CSAT_M_O_V_Carrier_Rig_Heavy_Med","UK3CB_CSAT_M_O_V_Carrier_Rig_Light_Med"]; +_crewVests = ["UK3CB_CSAT_M_O_V_Carrier_Rig_Crew"]; +_sfVests = ["UK3CB_CSAT_M_O_V_Carrier_Rig_Tactical_TAN","UK3CB_CSAT_M_O_V_Carrier_Rig_Recon_TAN","UK3CB_CSAT_M_O_V_Carrier_Rig_CQB_TAN","UK3CB_CSAT_M_O_V_Carrier_Rig_Light_Tan","UK3CB_CSAT_M_O_V_Carrier_Rig_Heavy_Tan"]; + +_backpacks = ["UK3CB_CSAT_M_O_B_FIELDPACK","UK3CB_CSAT_M_O_B_RIF"]; + +_helmets = ["UK3CB_CSAT_M_O_H_6b27m", "UK3CB_CSAT_M_O_H_6b27m_ESS"]; +_sfHelmets = ["UK3CB_CSAT_M_O_H_6b27m_Alt", "UK3CB_CSAT_M_O_H_6b27m_ESS_Alt"]; +_slHat = ["UK3CB_CSAT_M_O_H_Patrolcap_Mic"]; +_sniHats = ["UK3CB_CSAT_M_O_H_BoonieHat"]; + +_milHelmets = ["UK3CB_CSAT_M_O_H_Patrolcap", "UK3CB_CSAT_M_O_H_SSh68_Covered"]; +_milMedicHelmets = ["UK3CB_CSAT_M_O_H_SSh68_Covered_Medic"]; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_CHC.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_CHC.sqf index f232d4656d..6d2c380064 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_CHC.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_CHC.sqf @@ -29,7 +29,8 @@ ,"UK3CB_CHC_C_Pickup",0.5]] call _fnc_saveToTemplate; ["vehiclesCivIndustrial", [ - "UK3CB_CHC_C_Tractor", 0.2 + "UK3CB_C_Forklift", 0.05 + ,"UK3CB_CHC_C_Tractor", 0.2 ,"UK3CB_CHC_C_Tractor_Old", 0.2 ,"UK3CB_CHC_C_Kamaz_Covered", 0.3 ,"UK3CB_CHC_C_Kamaz_Open", 0.3 diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_TKC.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_TKC.sqf index bb9f8a42be..c1ce68d1a5 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_TKC.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Civ_TKC.sqf @@ -29,7 +29,8 @@ ,"UK3CB_TKC_C_Pickup",0.5]] call _fnc_saveToTemplate; ["vehiclesCivIndustrial", [ - "UK3CB_TKC_C_Tractor", 0.2 + "UK3CB_C_Forklift", 0.05 + ,"UK3CB_TKC_C_Tractor", 0.2 ,"UK3CB_TKC_C_Tractor_Old", 0.2 ,"UK3CB_TKC_C_Kamaz_Covered", 0.3 ,"UK3CB_TKC_C_Kamaz_Open", 0.3 diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_CNM.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_CNM.sqf index 6e88aae8d2..cd69e5cc4f 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_CNM.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_CNM.sqf @@ -103,6 +103,7 @@ private _rebUniforms = [ "WhiteHead_12", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_19", "WhiteHead_20", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["RHS_Male01CZ", "RHS_Male02CZ", "RHS_Male03CZ", "RHS_Male04CZ", "RHS_Male05CZ"]] call _fnc_saveToTemplate; +"ChernarusMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_FIA.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_FIA.sqf index ee1d6a1dd8..97d113485b 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_FIA.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_FIA.sqf @@ -165,6 +165,7 @@ private _rebUniforms = [ "GreekHead_A3_05", "GreekHead_A3_06", "GreekHead_A3_07", "GreekHead_A3_08", "GreekHead_A3_09", "Ioannou", "Mavros"]] call _fnc_saveToTemplate; ["voices", ["Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE"]] call _fnc_saveToTemplate; +"GreekMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_ION.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_ION.sqf index 578240fde0..cc6f0fea51 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_ION.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_ION.sqf @@ -131,6 +131,7 @@ default { "WhiteHead_03", "WhiteHead_04", "WhiteHead_05", "WhiteHead_07", "WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_11", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_18", "WhiteHead_19", "WhiteHead_21"]] call _fnc_saveToTemplate; ["voices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG", "Male01GRE", "Male02GRE", "Male03GRE", "Male04GRE", "Male05GRE", "Male06GRE", "Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB", "Male01ENGFRE", "Male02ENGFRE"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_TKM.sqf b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_TKM.sqf index c74b5c8f57..9c938a154c 100644 --- a/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_TKM.sqf +++ b/A3A/addons/core/Templates/Templates/3CB/3CB_Reb_TKM.sqf @@ -103,6 +103,7 @@ private _rebUniforms = [ ["voices", ["Male01PER", "Male02PER", "Male03PER"]] call _fnc_saveToTemplate; ["faces", ["PersianHead_A3_01", "PersianHead_A3_02", "PersianHead_A3_03"]] call _fnc_saveToTemplate; +"TakistaniMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Arid.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Arid.sqf index 4513d7f388..a6514d02b5 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Arid.sqf @@ -45,10 +45,9 @@ ["vehiclesHelisLightAttack", ["CUP_B_UH1D_armed_GER_KSK_Des", "CUP_B_UH1D_gunship_GER_KSK_Des", "CUP_B_AW159_GER"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_B_AH1Z_Dynamic_USMC"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_DPICM_USA","CUP_B_M270_HE_USA"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["CUP_B_M270_HE_USA"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["CUP_B_M270_HE_USA", ["CUP_12Rnd_MLRS_HE"]], -["CUP_B_M270_DPICM_USA", ["CUP_12Rnd_MLRS_DPICM"]] +["CUP_B_M270_HE_USA", ["CUP_12Rnd_MLRS_HE"]] ]] call _fnc_saveToTemplate; ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Temperate.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Temperate.sqf index 5b32e5c851..ced4cc5e9f 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_BW_Temperate.sqf @@ -45,10 +45,9 @@ ["vehiclesHelisLightAttack", ["CUP_B_UH1D_armed_GER_KSK", "CUP_B_UH1D_gunship_GER_KSK", "CUP_B_AW159_GER"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_B_AH1Z_Dynamic_USMC"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_HE_USMC", "CUP_B_M270_DPICM_USMC"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["CUP_B_M270_HE_USMC"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["CUP_B_M270_HE_USMC", ["CUP_12Rnd_MLRS_HE"]], -["CUP_B_M270_DPICM_USMC", ["CUP_12Rnd_MLRS_DPICM"]] +["CUP_B_M270_HE_USMC", ["CUP_12Rnd_MLRS_HE"]] ]] call _fnc_saveToTemplate; ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_HIL.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_HIL.sqf index 28d13449bb..bc4dd31663 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_HIL.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_HIL.sqf @@ -45,10 +45,9 @@ ["vehiclesHelisLightAttack", ["CUP_B_AW159_HIL","CUP_B_412_Military_Armed_AT_HIL","CUP_B_412_Military_Armed_HIL","CUP_B_412_dynamicLoadout_HIL"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_B_AH1Z_Dynamic_USMC"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_HE_HIL", "CUP_B_M270_DPICM_HIL"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["CUP_B_M270_HE_HIL"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["CUP_B_M270_HE_HIL", ["CUP_12Rnd_MLRS_HE"]], -["CUP_B_M270_DPICM_HIL", ["CUP_12Rnd_MLRS_DPICM"]] +["CUP_B_M270_HE_HIL", ["CUP_12Rnd_MLRS_HE"]] ]] call _fnc_saveToTemplate; ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arctic.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arctic.sqf index 1c383b6466..0fe573b20d 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arctic.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arctic.sqf @@ -45,8 +45,8 @@ ["vehiclesHelisLightAttack", ["CUP_I_412_dynamicLoadout_PMC", "CUP_I_412_Military_Armed_AT_PMC"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_I_Mi24_Mk3_ION"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_DPICM_BAF_DES"]] call _fnc_saveToTemplate; -["magazines", createHashMapFromArray [["CUP_B_M270_DPICM_BAF_DES", ["CUP_12Rnd_MLRS_DPICM"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] +["vehiclesArtillery", ["CUP_B_M270_HE_BAF"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [["CUP_B_M270_HE_BAF", ["CUP_12Rnd_MLRS_HE"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; ["uavsPortable", ["B_UAV_01_F"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arid.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arid.sqf index 19de07b330..36be4869a7 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_ION_Arid.sqf @@ -45,8 +45,8 @@ ["vehiclesHelisLightAttack", ["CUP_I_412_dynamicLoadout_PMC", "CUP_I_412_Military_Armed_AT_PMC"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_I_Mi24_Mk3_ION"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_DPICM_BAF_DES"]] call _fnc_saveToTemplate; -["magazines", createHashMapFromArray [["CUP_B_M270_DPICM_BAF_DES", ["CUP_12Rnd_MLRS_DPICM"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] +["vehiclesArtillery", ["CUP_B_M270_HE_BAF_DES"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [["CUP_B_M270_HE_BAF_DES", ["CUP_12Rnd_MLRS_HE"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; ["uavsPortable", ["B_UAV_01_F"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Arid.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Arid.sqf index 21f6709e8e..7e0195f05a 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Arid.sqf @@ -45,10 +45,9 @@ ["vehiclesHelisLightAttack", ["CUP_B_MH60L_DAP_4x_USN", "CUP_B_UH1Y_Gunship_Dynamic_USMC"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_B_AH1Z_Dynamic_USMC"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_DPICM_USA","CUP_B_M270_HE_USA"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["CUP_B_M270_HE_USA"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["CUP_B_M270_HE_USA", ["CUP_12Rnd_MLRS_HE"]], -["CUP_B_M270_DPICM_USA", ["CUP_12Rnd_MLRS_DPICM"]] +["CUP_B_M270_HE_USA", ["CUP_12Rnd_MLRS_HE"]] ]] call _fnc_saveToTemplate; ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Temperate.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Temperate.sqf index 7daad5b36c..8c77b8a622 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_AI_US_Marine_Temperate.sqf @@ -45,10 +45,9 @@ ["vehiclesHelisLightAttack", ["CUP_B_MH60L_DAP_4x_USN", "CUP_B_UH1Y_Gunship_Dynamic_USMC"]] call _fnc_saveToTemplate; ["vehiclesHelisAttack", ["CUP_B_AH1Z_Dynamic_USMC"]] call _fnc_saveToTemplate; -["vehiclesArtillery", ["CUP_B_M270_HE_USMC","CUP_B_M270_DPICM_USMC"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["CUP_B_M270_HE_USMC"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["CUP_B_M270_HE_USMC", ["CUP_12Rnd_MLRS_HE"]], -["CUP_B_M270_DPICM_USMC", ["CUP_12Rnd_MLRS_DPICM"]] +["CUP_B_M270_HE_USMC", ["CUP_12Rnd_MLRS_HE"]] ]] call _fnc_saveToTemplate; ["uavsAttack", ["CUP_B_USMC_DYN_MQ9"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_NAPA.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_NAPA.sqf index fb42a223ca..cb402057a4 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_NAPA.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_NAPA.sqf @@ -14,17 +14,17 @@ ["vehiclesTruck", ["CUP_V3S_Open_NAPA"]] call _fnc_saveToTemplate; ["vehiclesAT", ["CUP_I_Hilux_SPG9_NAPA"]] call _fnc_saveToTemplate; ["vehiclesAA", ["CUP_I_Ural_ZU23_NAPA", "CUP_I_Hilux_zu23_NAPA"]] call _fnc_saveToTemplate; -["vehiclesBoat", ["I_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesBoat", ["I_G_Boat_Transport_01_F", "CUP_I_RHIB_RACS"]] call _fnc_saveToTemplate; ["vehiclesPlane", ["CUP_C_DC3_CIV"]] call _fnc_saveToTemplate; // replace from civ varient s ["vehiclesCivPlane", ["CUP_C_AN2_CIV", "CUP_C_C47_CIV"]] call _fnc_saveToTemplate; ["vehiclesMedical", ["CUP_I_LR_Ambulance_RACS"]] call _fnc_saveToTemplate; -["vehiclesCivCar", ["CUP_O_Hilux_unarmed_CR_CIV"]] call _fnc_saveToTemplate; -["vehiclesCivTruck", ["CUP_C_Ural_Civ_03"]] call _fnc_saveToTemplate; +["vehiclesCivCar", ["CUP_O_Hilux_unarmed_CR_CIV","CUP_C_Pickup_unarmed_CIV", "CUP_C_SUV_CIV"]] call _fnc_saveToTemplate; +["vehiclesCivTruck", ["CUP_C_Ikarus_Chernarus", "CUP_C_Ural_Civ_03"]] call _fnc_saveToTemplate; ["vehiclesCivHeli", ["CUP_C_412", "CUP_C_SA330_Puma_HC1_ChernAvia", "CUP_I_Merlin_HC3_PMC_Lux_3C"]] call _fnc_saveToTemplate; -["vehiclesCivBoat", ["C_Rubberboat"]] call _fnc_saveToTemplate; +["vehiclesCivBoat", ["C_Rubberboat","C_Boat_Civil_01_F", "CUP_C_Fishing_Boat_Chernarus", "CUP_C_Zodiac_CIV"]] call _fnc_saveToTemplate; ["staticMGs", ["CUP_I_DSHKM_NAPA", "CUP_B_DSHkM_MiniTriPod_NAPA"]] call _fnc_saveToTemplate; ["staticAT", ["CUP_I_SPG9_NAPA"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_TKM.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_TKM.sqf index d75575b7f5..f5cffcef76 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_TKM.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_TKM.sqf @@ -14,16 +14,16 @@ ["vehiclesTruck", ["CUP_V3S_Open_NAPA"]] call _fnc_saveToTemplate; ["vehiclesAT", ["CUP_I_Hilux_SPG9_NAPA"]] call _fnc_saveToTemplate; ["vehiclesAA", ["CUP_I_Ural_ZU23_NAPA", "CUP_I_Hilux_zu23_NAPA"]] call _fnc_saveToTemplate; -["vehiclesBoat", ["I_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesBoat", ["I_G_Boat_Transport_01_F", "CUP_I_RHIB_RACS"]] call _fnc_saveToTemplate; ["vehiclesPlane", ["CUP_C_DC3_CIV"]] call _fnc_saveToTemplate; ["vehiclesCivPlane", ["CUP_C_AN2_CIV", "CUP_C_C47_CIV"]] call _fnc_saveToTemplate; ["vehiclesMedical", ["CUP_I_LR_Ambulance_RACS"]] call _fnc_saveToTemplate; -["vehiclesCivCar", ["CUP_O_Hilux_unarmed_CR_CIV"]] call _fnc_saveToTemplate; -["vehiclesCivTruck", ["CUP_C_Ural_Civ_03"]] call _fnc_saveToTemplate; +["vehiclesCivCar", ["CUP_O_Hilux_unarmed_CR_CIV", "CUP_C_Pickup_unarmed_CIV", "CUP_C_SUV_CIV"]] call _fnc_saveToTemplate; +["vehiclesCivTruck", ["CUP_C_Ikarus_Chernarus", "CUP_C_Ural_Civ_03"]] call _fnc_saveToTemplate; ["vehiclesCivHeli", ["CUP_C_Mi17_Civilian_RU"]] call _fnc_saveToTemplate; -["vehiclesCivBoat", ["C_Rubberboat"]] call _fnc_saveToTemplate; +["vehiclesCivBoat", ["C_Rubberboat", "CUP_C_Fishing_Boat_Chernarus", "CUP_C_Zodiac_CIV"]] call _fnc_saveToTemplate; ["staticMGs", ["CUP_I_DSHKM_NAPA"]] call _fnc_saveToTemplate; ["staticAT", ["CUP_I_SPG9_NAPA"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_Vehicle_Attributes.sqf index b3e5b5edb2..f5b54971ac 100644 --- a/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/CUP/CUP_Reb_Vehicle_Attributes.sqf @@ -1,11 +1,19 @@ ["attributesVehicles", [ - // light armed stuff + // light armed Cars ["CUP_I_Datsun_PK", ["rebCost", 600]], - - // heavy armed stuff - ["CUP_I_Hilux_UB32_NAPA", ["rebCost", 6000]], - ["CUP_I_Hilux_MLRS_NAPA", ["rebCost", 12000]], - ["CUP_I_Hilux_btr60_NAPA", ["rebCost", 6000]], + + // light armed boats + ["CUP_I_RHIB_RACS", ["rebCost", 1000]], + + // civ cars + ["CUP_C_Pickup_unarmed_CIV", ["rebcost", 300]], + ["CUP_C_SUV_CIV", ["rebcost", 400]], + + // civ trucks + ["CUP_C_Ikarus_Chernarus", ["rebcost", 500]], + + // civ plane + ["CUP_C_C47_CIV", ["rebcost", 8000]], // civ helicopters ["CUP_I_Merlin_HC3_PMC_Lux_3C", ["rebCost", 8000]] diff --git a/A3A/addons/core/Templates/Templates/FactionDefaults/EnemyDefaults.sqf b/A3A/addons/core/Templates/Templates/FactionDefaults/EnemyDefaults.sqf index c8acd29599..f2fa9a1cc0 100644 --- a/A3A/addons/core/Templates/Templates/FactionDefaults/EnemyDefaults.sqf +++ b/A3A/addons/core/Templates/Templates/FactionDefaults/EnemyDefaults.sqf @@ -12,7 +12,9 @@ ["placeIntel_itemLarge", ["Land_Laptop_unfolded_F",-25,true]] call _fnc_saveToTemplate; // [classname,azimuth,isComputer]. ["vehiclesLightTanks", []] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", []] call _fnc_saveToTemplate; +["vehiclesAirPatrol", []] call _fnc_saveToTemplate; ["attributesVehicles", []] call _fnc_saveToTemplate; ["faces", ["GreekHead_A3_02","GreekHead_A3_03","GreekHead_A3_04","GreekHead_A3_05","GreekHead_A3_06","GreekHead_A3_07","GreekHead_A3_08","GreekHead_A3_09","Ioannou","Mavros"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/FactionDefaults/RebelDefaults.sqf b/A3A/addons/core/Templates/Templates/FactionDefaults/RebelDefaults.sqf index 7d25f95e12..bc69e5f0d6 100644 --- a/A3A/addons/core/Templates/Templates/FactionDefaults/RebelDefaults.sqf +++ b/A3A/addons/core/Templates/Templates/FactionDefaults/RebelDefaults.sqf @@ -8,7 +8,7 @@ ["toolKits", ["ToolKit"]] call _fnc_saveToTemplate; // Relies on autodetection. ["itemMaps", ["ItemMap"]] call _fnc_saveToTemplate; // Relies on autodetection. ["diveGear", ["U_I_Wetsuit", "V_RebreatherIA", "G_Diving"]] call _fnc_saveToTemplate; -["flyGear", ["U_I_pilotCoveralls"]] call _fnc_saveToTemplate; +["flyGear", ["U_I_pilotCoveralls","B_Parachute"]] call _fnc_saveToTemplate; ["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/GM/GM_Reb.sqf b/A3A/addons/core/Templates/Templates/GM/GM_Reb.sqf index ddc963f953..00e7b142ba 100644 --- a/A3A/addons/core/Templates/Templates/GM/GM_Reb.sqf +++ b/A3A/addons/core/Templates/Templates/GM/GM_Reb.sqf @@ -17,7 +17,7 @@ ["mediKits", ["gm_gc_army_medbox","gm_ge_army_medkit_80"]] call _fnc_saveToTemplate; // Relies on autodetection. However, item is tested for for help and reviving. ["toolKits", ["gm_repairkit_01"]] call _fnc_saveToTemplate; // Relies on autodetection. -["flyGear", ["gm_ge_uniform_pilot_commando_blk", "gm_ge_uniform_pilot_commando_gry", "gm_ge_uniform_pilot_commando_oli", "gm_ge_uniform_pilot_commando_rolled_blk", "gm_ge_uniform_pilot_commando_rolled_gry", "gm_ge_uniform_pilot_commando_rolled_oli"]] call _fnc_saveToTemplate; +["flyGear", ["gm_ge_uniform_pilot_commando_blk", "gm_ge_uniform_pilot_commando_gry", "gm_ge_uniform_pilot_commando_oli", "gm_ge_uniform_pilot_commando_rolled_blk", "gm_ge_uniform_pilot_commando_rolled_gry", "gm_ge_uniform_pilot_commando_rolled_oli","gm_backpack_t10_parachute"]] call _fnc_saveToTemplate; ////////////////////////// // Vehicles // diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_AI_ALLIES.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_ALLIES.sqf new file mode 100644 index 0000000000..056b0f324f --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_ALLIES.sqf @@ -0,0 +1,856 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "Allies"] call _fnc_saveToTemplate; +["spawnMarkerName", "Allies Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\x\A3A\addons\core\Pictures\Flags\ifa_allies.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_ALLIES"] call _fnc_saveToTemplate; + +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports +["attributeLowAir", true] call _fnc_saveToTemplate; +["placeIntel_itemLarge", ["Intel_File2_F",-155,false]] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "LIB_WeaponsBox_Big_SU"] call _fnc_saveToTemplate; +["surrenderCrate", "LIB_BasicAmmunitionBox_US"] call _fnc_saveToTemplate; +["equipmentBox", "WW2_Cle_Container"] call _fnc_saveToTemplate; + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["LIB_US_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_US_Willys_MB", "LIB_US_Willys_MB_Hood", "LIB_UK_Willys_MB","LIB_UK_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["LIB_US_Willys_MB_M1919", "LIB_US_Scout_M3_FFV", "LIB_UK_Willys_MB_M1919", "LIB_US_NAC_Scout_M3"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", [ +"LIB_US_GMC_Tent","LIB_US_GMC_Tent","LIB_US_GMC_Open","LIB_US_GMC_Open", +"LIB_UniversalCarrier", "LIB_US_NAC_GMC_Tent","LIB_US_NAC_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["LIB_US_GMC_Tent","LIB_US_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["LIB_US_GMC_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["LIB_US_GMC_Parm"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["LIB_US_GMC_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_US_GMC_Ambulance"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["LIB_US_M3_Halftrack", "LIB_UK_M3_Halftrack"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["LIB_M4A3_75","LIB_Cromwell_Mk4"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers + +private _vehiclesLightTanks = ["LIB_M8_Greyhound", "LIB_M3A3_Stuart","LIB_M5A1_Stuart"]; //There's an argument to be made to put the Greyhound in lightArmed too, leaving it here for the moment though +private _vehiclesTanks = ["LIB_M4A4_FIREFLY","LIB_M4A3_76","LIB_M4A3_76_HVSS","LIB_M4A3_75","LIB_Cromwell_Mk4"]; +private _vehiclesHeavyTanks = ["LIB_Churchill_Mk7","LIB_Churchill_Mk7_Crocodile"]; + + +["vehiclesAA", ["LIB_Zis5v_61K"]] call _fnc_saveToTemplate; //Fake "truck with bofors" + + +["vehiclesTransportBoats", ["LIB_LCA", "LIB_LCVP"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["LIB_LCI"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["LIB_P47","LIB_RAF_P39"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["LIB_P47","LIB_RAF_P39","LIB_US_P39","LIB_US_P39_2"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["LIB_C47_RAF", "LIB_C47_Skytrain", "LIB_C47_Skytrain"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", []] call _fnc_saveToTemplate; +["vehiclesHelisTransport", []] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["LIB_leFH18"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["LIB_leFH18", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +//These intentionally appear again above among the regular 'military' vehile, to inject some british (militia) troops into the mix +["vehiclesMilitiaLightArmed", ["LIB_UK_Willys_MB_M1919", "LIB_UK_Willys_MB_M1919", "LIB_US_NAC_Scout_M3"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["LIB_UniversalCarrier", "LIB_UK_M3_Halftrack", "LIB_US_NAC_GMC_Tent","LIB_US_NAC_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["LIB_UK_Willys_MB","LIB_UK_Willys_MB"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["LIB_UK_Willys_MB_Hood"]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Armored_Cars")) then { + _vehiclesLightTanks append ["FA_T17E1", "FA_DaimlerMk2", "FA_DaimlerMk2"]; //There's an argument to be made to put these in lightArmed too, leaving them here for the moment though +}; +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + _vehiclesTanks append ["FA_ValentineMk3","FA_ValentineMk3"]; + _vehiclesHeavyTanks append ["FA_M26"]; +}; +["vehiclesLightTanks", _vehiclesLightTanks] call _fnc_saveToTemplate; +["vehiclesTanks", _vehiclesTanks] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", _vehiclesHeavyTanks] call _fnc_saveToTemplate; + +//["staticMGs", ["LIB_M1919_M2"]] call _fnc_saveToTemplate; +["staticMGs", ["a3a_hmg_02_high"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Pak40_g"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_61k"]] call _fnc_saveToTemplate; //Fake Bofors +["staticMortars", ["LIB_GrWr34_g"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "LIB_8Rnd_81mmHE_GRWR34"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "LIB_81mm_GRWR34_SmokeShell"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["LIB_US_M1A1_ATMINE"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["LIB_US_M3_MINE"]] call _fnc_saveToTemplate; + +#include "IFA_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +//UK Forces +["milVoices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", [ +["LIB_M1903A4_Springfield", "", "", "", [], [], ""], +["LIB_M1903A4_Springfield", "", "", "", ["LIB_5Rnd_762x63","LIB_5Rnd_762x63","LIB_5Rnd_762x63_t"], [], ""], +["LIB_M1903A4_Springfield", "", "", "", ["LIB_5Rnd_762x63","LIB_5Rnd_762x63","LIB_5Rnd_762x63_M1"], [], ""] +]]; + +_loadoutData set ["lightATLaunchers", []]; +_loadoutData set ["ATLaunchers", ["LIB_M1A1_Bazooka"]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", []]; +_loadoutData set ["sidearms", ["LIB_Colt_M1911"]]; +_loadoutData set ["slSidearms", ["LIB_Colt_M1911", "LIB_Colt_M1911", "LIB_FLARE_PISTOL"]]; + +_loadoutData set ["ATMines", ["LIB_US_M1A1_ATMINE_mag"]]; +_loadoutData set ["APMines", ["LIB_US_M3_MINE_mag"]]; +_loadoutData set ["lightExplosives", ["LIB_Ladung_Small_MINE_mag"]]; +_loadoutData set ["heavyExplosives", ["LIB_Ladung_Big_MINE_mag", "LIB_US_TNT_4pound_mag"]]; + +_loadoutData set ["antiTankGrenades", ["LIB_No82"]]; +_loadoutData set ["antiInfantryGrenades", ["LIB_US_Mk_2"]]; +_loadoutData set ["smokeGrenades", ["LIB_US_M18"]]; +_loadoutData set ["signalsmokeGrenades", ["LIB_US_M18_Green","LIB_US_M18_Red","LIB_US_M18_Yellow"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["LIB_Binocular_US"]]; +_loadoutData set ["rangefinders", ["LIB_Binocular_US"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["lightBackpacks", ["B_LIB_US_Bandoleer"]]; +_loadoutData set ["atBackpacks", ["B_LIB_US_RocketBag_Empty"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; + +_loadoutData set ["facewear", []]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_LIB_US_Rangers_Uniform", "U_LIB_US_Rangers_Private_1st"]]; +_sfLoadoutData set ["engUniforms", ["U_LIB_US_Rangers_Eng"]]; +_sfLoadoutData set ["medUniforms", ["U_LIB_US_Rangers_Med"]]; + +_sfLoadoutData set ["vests", ["V_LIB_US_Assault_Vest", "V_LIB_US_Assault_Vest_dday"]]; +_sfLoadoutData set ["medVests", ["V_LIB_US_Assault_Vest_Light"]]; +_sfLoadoutData set ["slVests", ["V_LIB_US_Assault_Vest_Thompson"]]; + +_sfLoadoutData set ["backpacks", ["B_LIB_US_M36_Bandoleer"]]; +_sfLoadoutData set ["helmets", ["H_LIB_US_Rangers_Helmet_ns", "H_LIB_US_Rangers_Helmet", "H_LIB_US_Rangers_Helmet_os"]]; +_sfLoadoutData set ["slHelmets", ["H_LIB_US_Rangers_Helmet_NCO", "H_LIB_US_Rangers_Helmet_First_lieutenant","H_LIB_US_Rangers_Helmet_Second_lieutenant", "H_LIB_US_Rangers_Helmet_Cap"]]; +_sfLoadoutData set ["atBackpacks", ["B_LIB_US_Backpack_RocketBag_Empty"]]; + +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["lightATLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_M9A1"], ""] +]]; +_sfLoadoutData set ["slWeapons", ["LIB_M1928_Thompson", "LIB_M1928A1_Thompson", "LIB_M1_Garand", "LIB_M1A1_Carbine", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["rifles", ["LIB_M1_Garand", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["carbines", ["LIB_M1A1_Carbine","a3a_lib_M2_Carbine"]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2"], ""], +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2", "LIB_1Rnd_G_M9A1"], ""] +]]; +_sfLoadoutData set ["SMGs", ["LIB_M1928_Thompson", "LIB_M1A1_Thompson", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["machineGuns", ["LIB_M1918A2_BAR", "LIB_M1919A6"]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["U_LIB_US_Private", "U_LIB_US_Private_1st"]]; +_militaryLoadoutData set ["engUniforms", ["U_LIB_US_Eng"]]; +_militaryLoadoutData set ["medUniforms", ["U_LIB_US_Med"]]; + +_militaryLoadoutData set ["vests", ["V_LIB_US_Vest_Garand", "V_LIB_US_Vest_Bar"]]; +_militaryLoadoutData set ["medVests", ["V_LIB_US_Vest_Medic", "V_LIB_US_Vest_Medic2"]]; +_militaryLoadoutData set ["slVests", ["V_LIB_US_Vest_Thompson_nco_Radio", "V_LIB_US_Vest_Carbine_nco_Radio"]]; + +_militaryLoadoutData set ["backpacks", ["B_LIB_US_Backpack"]]; +_militaryLoadoutData set ["helmets", ["H_LIB_US_Helmet_ns","H_LIB_US_Helmet","H_LIB_US_Helmet_os"]]; +_militaryLoadoutData set ["slHelmets", ["H_LIB_US_Helmet_CO","H_LIB_US_Helmet_NCO"]]; +_militaryLoadoutData set ["medHelmets", ["H_LIB_US_Helmet_Med_ns"]]; +_militaryLoadoutData set ["radios", ["ItemRadio"]]; + +_militaryLoadoutData set ["lightATLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_M9A1"], ""] +]]; +_militaryLoadoutData set ["slWeapons", ["LIB_M3_GreaseGun", "LIB_M1A1_Thompson", "LIB_M1_Garand", "LIB_M1_Carbine", "LIB_M1_Carbine"]]; +_militaryLoadoutData set ["rifles", [["LIB_M1_Garand", "LIB_ACC_M1_Bayo", "", "", [], [], ""],"LIB_M1_Garand" ]]; +_militaryLoadoutData set ["carbines", ["LIB_M1_Carbine"]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2"], ""], +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2", "LIB_1Rnd_G_M9A1"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["LIB_M3_GreaseGun", "LIB_M3_GreaseGun", "LIB_M1A1_Thompson"]]; +_militaryLoadoutData set ["machineGuns", [ +["LIB_M1918A2_BAR", "", "LIB_M1918A2_BAR_Handle", "", [], [], "LIB_M1918A2_BAR_Bipod"], +["LIB_M1918A2_BAR", "", "LIB_M1918A2_BAR_Handle", "", [], [], "LIB_M1918A2_BAR_Bipod"], +"LIB_M1919A4", "LIB_M1919A4"]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_LIB_US_Private"]]; +_policeLoadoutData set ["vests", ["V_LIB_SOV_RA_Belt"]]; +_policeLoadoutData set ["helmets", ["H_LIB_US_Helmet"]]; //I did want a US Garrison/Side cap + +_policeLoadoutData set ["rifles", [ +["LIB_M1903A3_Springfield", "LIB_ACC_M1_Bayo", "", "", [], [], ""],"LIB_M1903A3_Springfield" //The one gun worse than an enfield for the allies +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["U_LIB_UK_P37", "U_LIB_UK_P37Jerkins"]]; +_militiaLoadoutData set ["engUniforms", ["U_LIB_UK_P37_Corporal", "U_LIB_UK_P37Jerkins_Corporal"]]; +_militiaLoadoutData set ["medUniforms", []]; + +_militiaLoadoutData set ["vests", ["V_LIB_UK_P37_Rifleman"]]; +_militiaLoadoutData set ["medVests", ["V_LIB_UK_P37_Gasmask", "V_LIB_UK_P37_Heavy"]]; +_militiaLoadoutData set ["slVests", ["V_LIB_UK_P37_Holster", "V_LIB_UK_P37_Officer", "V_LIB_UK_P37_Sten"]]; + +_militiaLoadoutData set ["backpacks", ["B_LIB_UK_HSack_Blanco", "B_LIB_UK_HSack_Blanco_Tea", "B_LIB_UK_HSack_Blanco_Cape"]]; +_militiaLoadoutData set ["atBackpacks", ["B_LIB_UK_HSack_Blanco", "B_LIB_UK_HSack_Blanco_Tea", "B_LIB_UK_HSack_Blanco_Cape"]]; + +_militiaLoadoutData set ["helmets", ["H_LIB_UK_Helmet_Mk2"]]; +_militiaLoadoutData set ["slHelmets", ["H_LIB_UK_Helmet_Mk2_Beachgroup"]]; +_militiaLoadoutData set ["medHelmets", ["H_LIB_UK_Helmet_Mk2_FAK"]]; + +_militiaLoadoutData set ["binoculars", ["LIB_Binocular_UK"]]; +_militiaLoadoutData set ["rangefinders", ["LIB_Binocular_UK"]]; + +_militiaLoadoutData set ["antiInfantryGrenades", ["LIB_MillsBomb"]]; +_militiaLoadoutData set ["smokeGrenades", ["LIB_No77"]]; + +_militiaLoadoutData set ["ATLaunchers", ["LIB_PIAT"]]; +_militiaLoadoutData set ["lightATLaunchers", []]; +_militiaLoadoutData set ["slWeapons", [ +"LIB_M1_Carbine", "LIB_M1928A1_Thompson", +"LIB_Sten_Mk2", "LIB_Sten_Mk2", +"LIB_Sten_Mk5", +["LIB_Sten_Mk5", "LIB_ACC_No4_Mk2_Bayo", "", "", [], [], ""] +]]; +_militiaLoadoutData set ["rifles", [ +["LIB_LeeEnfield_No4", "LIB_ACC_No4_Mk2_Bayo", "", "", [], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["LIB_M1_Carbine", "LIB_LeeEnfield_No4"]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["LIB_LeeEnfield_No4_CUP", "LIB_ACC_GL_Enfield_CUP_Empty", "", "", [], ["LIB_1Rnd_G_MillsBomb"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["LIB_Sten_Mk2"]]; +_militiaLoadoutData set ["machineGuns", ["LIB_Bren_Mk2"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["LIB_LeeEnfield_No4_Scoped", "", "", "", [], [], ""], +["LIB_LeeEnfield_No4_Scoped", "", "", "", [], [], ""], +["LIB_LeeEnfield_No4_Scoped", "", "", "", ["LIB_10Rnd_770x56_MkVIII"], [], ""] +]]; + +_militiaLoadoutData set ["sidearms", ["LIB_Webley_mk6"]]; +_militiaLoadoutData set ["slSidearms", ["LIB_Webley_mk6", "LIB_Webley_mk6", "LIB_Webley_Flare"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_LIB_US_Tank_Crew", "U_LIB_US_Tank_Crew2"]]; +_crewLoadoutData set ["vests", ["V_LIB_US_Vest_Carbine"]]; +_crewLoadoutData set ["helmets", ["H_LIB_US_Helmet_Tank"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_LIB_US_Pilot", "U_LIB_US_Pilot_2"]]; +_pilotLoadoutData set ["vests", ["V_LIB_US_LifeVest"]]; +_pilotLoadoutData set ["backpacks", ["B_LIB_US_TypeA3"]]; +_pilotLoadoutData set ["helmets", ["H_LIB_US_Helmet_Pilot"]]; + +_pilotLoadoutData set ["sidearms", ["LIB_Colt_M1911"]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["slUniforms", ["U_LIB_US_Pilot"]]; +_officerLoadoutData set ["vests", ["V_LIB_US_Vest_Carbine_nco"]]; +_officerLoadoutData set ["helmets", ["H_LIB_US_Pilot_Cap"]]; +_officerLoadoutData set ["backpacks", []]; + +_officerLoadoutData set ["slWeapons", ["LIB_M3_GreaseGun", "LIB_M1_Carbine"]]; +_officerLoadoutData set ["slSidearms", ["LIB_Colt_M1911"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + [["slHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["slVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slWeapons", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["slSidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["medVests"] call _fnc_setVest; + [["medUniforms", "engUniforms"] call _fnc_fallback] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["grenadeLaunchers", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", selectRandom [3,4,5]] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + private _latgl = [selectRandom ["lightATLaunchers", "rifles"], "rifles"] call _fnc_fallback; + [_latgl] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 5] call _fnc_addAdditionalMuzzleMagazines; + + if(_latgl == "rifles") then + { + if(random 10 > 6) then + { + ["ATLaunchers"] call _fnc_setLauncher; + ["atBackpacks"] call _fnc_setBackpack; + ["launcher", 1] call _fnc_addMagazines; + ["antiInfantryGrenades", 1] call _fnc_addItem; + } else { + ["lightBackpacks"] call _fnc_setBackpack; + ["antiTankGrenades", 4] call _fnc_addItem; + }; + } else { + ["backpacks"] call _fnc_setBackpack; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["antiTankGrenades", 2] call _fnc_addItem; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["atBackpacks"] call _fnc_setBackpack; + + ["ATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + call (selectRandom [_latTemplate, _atTemplate]); +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["machineGuns", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["lightBackpacks"] call _fnc_setBackpack; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + call _marksmanTemplate; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["lightBackpacks"] call _fnc_setBackpack; + + if(random 10 > 5) then + { + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["backpacks"] call _fnc_setBackpack; + ["uniforms"] call _fnc_setUniform; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_AI_SOV.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_SOV.sqf new file mode 100644 index 0000000000..8ddfbfcd38 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_SOV.sqf @@ -0,0 +1,865 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "Soviet"] call _fnc_saveToTemplate; +["spawnMarkerName", "Soviet Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\x\A3A\addons\core\Pictures\Flags\ifa_sov.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_SOV"] call _fnc_saveToTemplate; + +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports +["attributeLowAir", true] call _fnc_saveToTemplate; +["placeIntel_itemLarge", ["Intel_File2_F",-155,false]] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "LIB_WeaponsBox_Big_SU"] call _fnc_saveToTemplate; +["surrenderCrate", "LIB_Lone_Big_Box"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "WW2_Cle_Container"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["LIB_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_Willys_MB", "LIB_Willys_MB"]] call _fnc_saveToTemplate; +private _vehiclesLightArmed = ["LIB_Scout_M3_FFV", "LIB_Scout_M3_FFV"]; +["vehiclesTrucks", ["LIB_US6_Open","LIB_US6_Tent_Cargo"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["LIB_US6_Open_Cargo","LIB_Zis5v"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["LIB_US6_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["LIB_Zis6_Parm"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["LIB_Zis5v_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_Zis5v_Med"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["LIB_SOV_M3_Halftrack", "LIB_SOV_M3_Halftrack", "LIB_SdKfz251_captured_FFV"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["LIB_T34_76", "LIB_SU85"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers +private _vehiclesLightTanks = ["LIB_T34_76"]; +["vehiclesTanks", ["LIB_T34_76", "LIB_T34_76", "LIB_T34_85", "LIB_SU85"]] call _fnc_saveToTemplate; +private _vehiclesHeavyTanks = ["LIB_JS2_43"]; + +["vehiclesAA", ["LIB_Zis5v_61K"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["LIB_LCA"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["LIB_LCI"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["LIB_Pe2","LIB_P39"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["LIB_P39","LIB_RA_P39_2","LIB_RA_P39_3"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["LIB_Li2"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", []] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +["vehiclesHelisTransport", []] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["LIB_leFH18"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["LIB_leFH18", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["a3a_LIB_Willys_MB_M1919", "a3a_LIB_Willys_MB_M1919"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["LIB_Zis5v"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["LIB_Willys_MB_Hood","LIB_Willys_MB_Hood"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["LIB_GazM1_SOV"]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Armored_Cars")) then { + _vehiclesLightArmed append ["FA_BA10M", "FA_BA64"]; +}; +if (isClass (configFile >> "CfgPatches" >> "BT_BT7_M1937_c")) then { + _vehiclesLightTanks append ["SOV_BT_BT7_M1937", "SOV_BT_BT7A", "SOV_BT_BT7TU_M1937"]; +}; +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + _vehiclesLightTanks append ["FA_T26", "FA_T26"]; + _vehiclesHeavyTanks append ["FA_KV1","FA_KV1"]; +}; + +["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; +["vehiclesLightTanks", _vehiclesLightTanks] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", _vehiclesHeavyTanks] call _fnc_saveToTemplate; + +//["staticMGs", ["LIB_Maxim_M30_base"]] call _fnc_saveToTemplate; +["staticMGs", ["a3a_hmg_02_high"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Zis3"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_61k"]] call _fnc_saveToTemplate; +["staticMortars", ["LIB_BM37"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "LIB_8Rnd_82mmHE_BM37"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", ""] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["LIB_TM44_MINE"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["LIB_pomzec_MINE","LIB_PMD6_MINE"]] call _fnc_saveToTemplate; + +#include "IFA_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["voices", ["Male01RUS","Male02RUS","Male03RUS"]] call _fnc_saveToTemplate; +["faces", ["AsianHead_A3_02","AsianHead_A3_04","AsianHead_A3_07","LivonianHead_1","LivonianHead_10", +"LivonianHead_2","LivonianHead_3","LivonianHead_4","LivonianHead_5","LivonianHead_8","LivonianHead_9", +"RussianHead_3","RussianHead_4","RussianHead_5","WhiteHead_01","WhiteHead_02", +"WhiteHead_04","WhiteHead_08","WhiteHead_09","WhiteHead_10","WhiteHead_13", +"WhiteHead_14","WhiteHead_15","WhiteHead_18","WhiteHead_21","WhiteHead_30"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +["milVoices", ["Male01pol","Male02pol","Male03pol"]] call _fnc_saveToTemplate; +"RussianMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", [ +["LIB_M9130PU", "", "", "", ["LIB_5Rnd_762x54","LIB_5Rnd_762x54","LIB_5Rnd_762x54_t46"],[], ""], +["LIB_M9130PU", "", "", "", ["LIB_5Rnd_762x54","LIB_5Rnd_762x54","LIB_5Rnd_762x54_t30"],[], ""], +["LIB_M9130PU", "", "", "", ["LIB_5Rnd_762x54","LIB_5Rnd_762x54","LIB_5Rnd_762x54_D"], [], ""], +["LIB_M9130PU", "", "", "", ["LIB_5Rnd_762x54","LIB_5Rnd_762x54","LIB_5Rnd_762x54_b30"],[], ""] +]]; + +_loadoutData set ["ATRifle", ["LIB_PTRD"]]; +_loadoutData set ["lightATLaunchers", ["LIB_Faustpatrone","LIB_PzFaust_30m", "LIB_PzFaust_30m", "LIB_PzFaust_60m"]]; +_loadoutData set ["ATLaunchers", ["LIB_M1A1_Bazooka", "LIB_M1A1_Bazooka", "LIB_RPzB"]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", []]; +_loadoutData set ["sidearms", []]; +_loadoutData set ["slSidearms", []]; + +_loadoutData set ["ATMines", ["LIB_TM44_MINE_mag"]]; +_loadoutData set ["APMines", ["LIB_PMD6_MINE_mag","LIB_pomzec_MINE_mag"]]; +_loadoutData set ["lightExplosives", ["LIB_Ladung_Small_MINE_mag"]]; +_loadoutData set ["heavyExplosives", ["LIB_Ladung_Big_MINE_mag", "LIB_US_TNT_4pound_mag"]]; + +_loadoutData set ["antiTankGrenades", ["LIB_Rpg6"]]; +_loadoutData set ["antiInfantryGrenades", ["LIB_F1", "LIB_Rg42"]]; +_loadoutData set ["smokeGrenades", ["LIB_RDG"]]; +_loadoutData set ["signalsmokeGrenades", ["LIB_RDG"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["LIB_Binocular_SU"]]; +_loadoutData set ["rangefinders", ["LIB_Binocular_SU"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["slUniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["mgVests", []]; +_loadoutData set ["slVests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["engBackpacks", ["B_LIB_SOV_RA_Rucksack2_Gas_Kit_Shinel"]]; +_loadoutData set ["medBackpacks", ["B_LIB_SOV_RA_MedicalBag_Empty"]]; +_loadoutData set ["lightBackpacks", ["B_LIB_SOV_RA_GasBag"]]; +_loadoutData set ["atBackpacks", ["B_LIB_US_RocketBag_Empty"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHelmets", []]; + +_loadoutData set ["facewear", []]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_LIB_SOV_Razvedchik_lis"]]; +_sfLoadoutData set ["vests", ["V_LIB_SOV_IShBrVestPPShDisc", "V_LIB_SOV_RA_SVTBelt"]]; +_sfLoadoutData set ["mgVests", ["V_LIB_SOV_IShBrVestMG"]]; +_sfLoadoutData set ["slVests", ["V_LIB_SOV_IShBrVestPPShDisc", "V_LIB_SOV_IShBrVestPPShMag", "V_LIB_SOV_RA_SVTBelt"]]; +_sfLoadoutData set ["backpacks", ["B_LIB_SOV_RA_Rucksack2_Gas_Kit_Shinel"]]; +_sfLoadoutData set ["atBackpacks", ["B_LIB_US_Backpack_RocketBag_Empty"]]; +_sfLoadoutData set ["helmets", ["H_LIB_SOV_RA_Helmet"]]; +_sfLoadoutData set ["slHelmets", ["H_LIB_SOV_RA_Helmet"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["slWeapons", [ +"LIB_SVT_40", +"a3a_lib_AVT_40", +["LIB_PPSh41_d", "", "", "", ["LIB_71Rnd_762x25"], [], ""] +]]; +_sfLoadoutData set ["rifles", ["LIB_SVT_40"]]; +_sfLoadoutData set ["carbines", [ +"a3a_lib_AVT_40", +["LIB_PPSh41_d", "", "", "", ["LIB_71Rnd_762x25"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["LIB_M9130_DYAKONOV", "LIB_ACC_GL_DYAKONOV_Empty", "", "", [], ["LIB_1Rnd_G_DYAKONOV"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["LIB_PPSh41_d", "", "", "", ["LIB_71Rnd_762x25"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +"LIB_DT", "LIB_DT_OPTIC", +["LIB_PPSh41_d", "", "", "", ["LIB_71Rnd_762x25"], [], ""]]]; +_sfLoadoutData set ["sidearms", ["LIB_TT33"]]; +_sfLoadoutData set ["slSidearms", ["LIB_TT33", "LIB_TT33", "LIB_FLARE_PISTOL"]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["U_LIB_SOV_Strelok_summer"]]; +_militaryLoadoutData set ["vests", ["V_LIB_SOV_RA_SVTBelt", "V_LIB_SOV_RA_PPShBelt_Mag"]]; +_militaryLoadoutData set ["mgVests", ["V_LIB_SOV_RA_MGBelt_Kit"]]; +_militaryLoadoutData set ["slVests", ["V_LIB_SOV_RA_OfficerVest"]]; +_militaryLoadoutData set ["backpacks", ["B_LIB_SOV_RA_Shinel", "B_LIB_SOV_RA_Rucksack", "B_LIB_SOV_RA_Rucksack2_Gas_Kit_Shinel"]]; +_militaryLoadoutData set ["helmets", ["H_LIB_SOV_RA_PrivateCap", "H_LIB_SOV_RA_PrivateCap", "H_LIB_SOV_RA_Helmet"]]; +_militaryLoadoutData set ["slHelmets", ["H_LIB_SOV_RA_OfficerCap", "H_LIB_SOV_RA_Helmet"]]; +_militaryLoadoutData set ["radios", ["ItemRadio"]]; + +_militaryLoadoutData set ["slWeapons", [ +["LIB_PPSh41_m", "", "", "", ["LIB_71Rnd_762x25", "LIB_35Rnd_762x25", "LIB_35Rnd_762x25", "LIB_35Rnd_762x25", "LIB_35Rnd_762x25"], [], ""], +"LIB_PPSh41_m", "LIB_M9130", "LIB_SVT_40"]]; +_militaryLoadoutData set ["rifles", [ +["LIB_M9130", "LIB_ACC_M1891_Bayo", "", "", [], [], ""] +]]; +_militaryLoadoutData set ["carbines", ["LIB_M9130", "LIB_M44"]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["LIB_M9130_DYAKONOV", "LIB_ACC_GL_DYAKONOV_Empty", "", "", [], ["LIB_1Rnd_G_DYAKONOV"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["LIB_PPSh41_m"]]; +_militaryLoadoutData set ["machineGuns", ["LIB_DP28"]]; +_militaryLoadoutData set ["sidearms", ["LIB_M1895", "LIB_TT33"]]; +_militaryLoadoutData set ["slSidearms", ["LIB_M1895", "LIB_TT33", "LIB_FLARE_PISTOL"]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_LIB_NKVD_Strelok", "U_LIB_NKVD_Efreitor"]]; +_policeLoadoutData set ["slUniforms", ["U_LIB_NKVD_Leutenant"]]; +_policeLoadoutData set ["vests", ["V_LIB_SOV_RA_MosinBelt"]]; +_policeLoadoutData set ["helmets", ["H_LIB_NKVD_PrivateCap", "H_LIB_NKVD_OfficerCap"]]; +_policeLoadoutData set ["slHelmets", ["H_LIB_NKVD_OfficerCap"]]; +_policeLoadoutData set ["sidearms", ["LIB_M1895"]]; + +_policeLoadoutData set ["rifles", [ +["LIB_M9130", "LIB_ACC_M1891_Bayo", "", "", [], [], ""], "LIB_M44" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["U_LIB_SOV_Strelok"]]; +_militiaLoadoutData set ["vests", ["V_LIB_SOV_RA_MosinBelt"]]; +_militiaLoadoutData set ["mgVests", ["V_LIB_SOV_RA_MGBelt"]]; +_militiaLoadoutData set ["slVests", ["V_LIB_SOV_RA_TankOfficerSet"]]; +_militiaLoadoutData set ["backpacks", ["B_LIB_SOV_RA_MGAmmoBag_Empty", "B_LIB_SOV_RA_GasBag"]]; +_militiaLoadoutData set ["helmets", ["H_LIB_SOV_RA_PrivateCap"]]; +_militiaLoadoutData set ["slHelmets", ["H_LIB_SOV_RA_OfficerCap"]]; + +_militiaLoadoutData set ["ATLaunchers", []]; +_militiaLoadoutData set ["lightATLaunchers", ["LIB_Faustpatrone"]]; + +_militiaLoadoutData set ["rifles", [ +["LIB_M9130", "LIB_ACC_M1891_Bayo", "", "", [], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["LIB_M38"]]; +_militiaLoadoutData set ["SMGs", ["LIB_M38"]]; + +_militiaLoadoutData set ["sidearms", ["LIB_M1895"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_LIB_SOV_Tank_ryadovoi"]]; +_crewLoadoutData set ["vests", ["V_LIB_SOV_RA_Belt"]]; +_crewLoadoutData set ["helmets", ["H_LIB_SOV_TankHelmet"]]; + +_crewLoadoutData set ["machineGuns", [ +"LIB_DT", "LIB_DT_OPTIC", +["LIB_PPSh41_d", "", "", "", ["LIB_71Rnd_762x25"], [], ""] +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_LIB_SOV_Pilot"]]; +_pilotLoadoutData set ["vests", ["V_LIB_SOV_RA_Belt"]]; +_pilotLoadoutData set ["backpacks", ["B_LIB_SOV_RA_Paradrop"]]; +_pilotLoadoutData set ["helmets", ["H_LIB_SOV_PilotHelmet"]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", ["U_LIB_SOV_Kapitan_summer"]]; +_officerLoadoutData set ["vests", ["V_LIB_SOV_RA_OfficerVest"]]; +_officerLoadoutData set ["slHelmets", ["H_LIB_SOV_RA_OfficerCap"]]; + +_officerLoadoutData set ["slWeapons", ["LIB_PPSh41_m"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHelmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["slVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slWeapons", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["slSidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + + [["SMGs", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["grenadeLaunchers", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", selectRandom [3,4,5,6]] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["engBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["engBackpacks"] call _fnc_setBackpack; + + [selectRandom["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + private _type = selectRandomWeighted ["light", 3,"rifle", 2,"grenade", 1]; + + switch(_type) do { + case "light": + { + ["rifles"] call _fnc_setPrimary; + ["lightBackpacks"] call _fnc_setBackpack; + + ["primary", 5] call _fnc_addMagazines; + ["lightATLaunchers"] call _fnc_setLauncher; + + ["launcher", 1] call _fnc_addMagazines; + ["antiTankGrenades", 2] call _fnc_addItem; + }; + case "rifle": + { + ["lightBackpacks"] call _fnc_setBackpack; + + ["ATRifle"] call _fnc_setPrimary; + ["primary", round (random [5, 7, 10])] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 5] call _fnc_addMagazines; + }; + case "grenade": + { + ["lightBackpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["antiTankGrenades", 4] call _fnc_addItem; + }; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + private _launch = ["ATLaunchers", "lightATLaunchers"] call _fnc_fallback; + + if (_launch == "ATLaunchers") then { + ["atBackpacks"] call _fnc_setBackpack; + }; + + [_launch] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + call (selectRandom [_latTemplate, _atTemplate]); +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["mgVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["machineGuns", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + call _marksmanTemplate; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["uniforms"] call _fnc_setUniform; + + ["vests"] call _fnc_setVest; + + ["rifles"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; +private _policeSLTemplate = { + call _policeTemplate; + if(random 10 > 6) then + { + ["slHelmets"] call _fnc_setHelmet; + ["slUniforms"] call _fnc_setUniform; + }; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + if(random 10 > 5) then + { + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + if(random 10 > 8) then + { + ["machineGuns"] call _fnc_setPrimary; + }; + ["primary", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["backpacks"] call _fnc_setBackpack; + ["uniforms"] call _fnc_setUniform; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeSLTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_AI_UK.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_UK.sqf new file mode 100644 index 0000000000..0f0de7e72f --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_UK.sqf @@ -0,0 +1,801 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "UK"] call _fnc_saveToTemplate; +["spawnMarkerName", "UK Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\A3\Data_F\Flags\flag_uk_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "flag_UK"] call _fnc_saveToTemplate; + +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports +["attributeLowAir", true] call _fnc_saveToTemplate; +["placeIntel_itemLarge", ["Intel_File2_F",-155,false]] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "LIB_WeaponsBox_Big_SU"] call _fnc_saveToTemplate; +["surrenderCrate", "LIB_BasicAmmunitionBox_US"] call _fnc_saveToTemplate; +["equipmentBox", "WW2_Cle_Container"] call _fnc_saveToTemplate; + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["LIB_US_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_US_Willys_MB", "LIB_US_Willys_MB_Hood"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["LIB_US_Willys_MB_M1919", "LIB_US_Willys_MB_M1919", "LIB_US_Scout_M3_FFV"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["LIB_US_GMC_Tent","LIB_US_GMC_Open","LIB_UniversalCarrier"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["LIB_US_GMC_Tent","LIB_US_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["LIB_US_GMC_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["LIB_US_GMC_Parm"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["LIB_US_GMC_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_US_GMC_Ambulance"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["LIB_US_M3_Halftrack", "LIB_US_M3_Halftrack"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["LIB_Cromwell_Mk4"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers + +private _vehiclesLightTanks = ["LIB_M8_Greyhound", "LIB_M3A3_Stuart","LIB_M5A1_Stuart"]; //There's an argument to be made to put the Greyhound in lightArmed too, leaving it here for the moment though +private _vehiclesTanks = ["LIB_M4A4_FIREFLY","LIB_Cromwell_Mk4","LIB_Cromwell_Mk4","LIB_Cromwell_Mk4"]; +private _vehiclesHeavyTanks = ["LIB_Churchill_Mk7","LIB_Churchill_Mk7_Crocodile","LIB_Churchill_Mk7_Howitzer"]; + +["vehiclesAA", ["LIB_Zis5v_61K"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["LIB_LCA"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["LIB_UK_LCI"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["LIB_RAF_P39"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["LIB_RAF_P39"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["LIB_C47_RAF"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", []] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +["vehiclesHelisTransport", []] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["LIB_leFH18"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["LIB_leFH18", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +//These intentionally appear again above among the regular 'military' vehile, to inject some british (militia) troops into the mix +["vehiclesMilitiaLightArmed", ["LIB_UK_Willys_MB_M1919", "LIB_UK_Willys_MB_M1919"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["LIB_US_NAC_GMC_Tent", "LIB_US_NAC_GMC_Tent","LIB_US_NAC_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["LIB_UK_Willys_MB","LIB_UK_Willys_MB"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["LIB_UK_Willys_MB_Hood"]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Armored_Cars")) then { + _vehiclesLightTanks append ["FA_T17E1", "FA_DaimlerMk2", "FA_DaimlerMk2"]; //There's an argument to be made to put these in lightArmed too, leaving them here for the moment though +}; +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + _vehiclesTanks append ["FA_ValentineMk3","FA_ValentineMk3"]; +}; +["vehiclesLightTanks", _vehiclesLightTanks] call _fnc_saveToTemplate; +["vehiclesTanks", _vehiclesTanks] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", _vehiclesHeavyTanks] call _fnc_saveToTemplate; + +//["staticMGs", ["LIB_M1919_M2"]] call _fnc_saveToTemplate; +["staticMGs", ["a3a_hmg_02_high"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Pak40_g"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_61k"]] call _fnc_saveToTemplate; +["staticMortars", ["LIB_GrWr34_g"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "LIB_8Rnd_81mmHE_GRWR34"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "LIB_81mm_GRWR34_SmokeShell"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["LIB_US_M1A1_ATMINE"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["LIB_US_M3_MINE"]] call _fnc_saveToTemplate; + +#include "IFA_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +["faces", [ +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +"EnglishMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", [ +["LIB_LeeEnfield_No4_CUP", "LIB_ACC_GL_Enfield_CUP_Empty", "", "", [], ["LIB_1Rnd_G_MillsBomb"], ""] +]]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", ["LIB_Bren_Mk2"]]; +_loadoutData set ["marksmanRifles", [ +["LIB_LeeEnfield_No4_Scoped", "", "", "", [], [], ""], +["LIB_LeeEnfield_No4_Scoped", "", "", "", [], [], ""], +["LIB_LeeEnfield_No4_Scoped", "", "", "", ["LIB_10Rnd_770x56_MkVIII"], [], ""] +]]; + +_loadoutData set ["lightATLaunchers", []]; +_loadoutData set ["ATLaunchers", ["LIB_PIAT"]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", []]; +_loadoutData set ["sidearms", ["LIB_Colt_M1911", "LIB_Webley_mk6", "LIB_Webley_mk6"]]; +_loadoutData set ["slSidearms", ["LIB_Colt_M1911", "LIB_Webley_mk6", "LIB_Webley_Flare"]]; + +_loadoutData set ["ATMines", ["LIB_US_M1A1_ATMINE_mag"]]; +_loadoutData set ["APMines", ["LIB_M3_MINE_mag","LIB_US_M3_MINE_mag"]]; +_loadoutData set ["lightExplosives", ["LIB_Ladung_Small_MINE_mag"]]; +_loadoutData set ["heavyExplosives", ["LIB_Ladung_Big_MINE_mag", "LIB_US_TNT_4pound_mag"]]; + +_loadoutData set ["antiTankGrenades", ["LIB_No82"]]; +_loadoutData set ["antiInfantryGrenades", ["LIB_MillsBomb"]]; +_loadoutData set ["smokeGrenades", ["LIB_No77", "LIB_No77", "LIB_US_M18"]]; +_loadoutData set ["signalsmokeGrenades", ["LIB_US_M18_Green","LIB_US_M18_Red","LIB_US_M18_Yellow"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["LIB_Binocular_UK"]]; +_loadoutData set ["rangefinders", ["LIB_Binocular_UK"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["engUniforms", []]; +_loadoutData set ["medUniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["slVests", ["V_LIB_UK_P37_Holster"]]; + +_loadoutData set ["backpacks", ["B_LIB_UK_HSack_Blanco", "B_LIB_UK_HSack_Blanco_Tea", "B_LIB_UK_HSack_Blanco_Cape"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHelmets", ["H_LIB_UK_Beret"]]; + +_loadoutData set ["facewear", []]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_LIB_UK_DenisonSmock"]]; +_sfLoadoutData set ["engUniforms", ["U_LIB_UK_DenisonSmock"]]; +_sfLoadoutData set ["vests", ["V_LIB_UK_P37_Heavy_Blanco","V_LIB_UK_P37_Sten_Blanco"]]; +_sfLoadoutData set ["slVests", ["V_LIB_UK_P37_Heavy_Blanco","V_LIB_UK_P37_Sten_Blanco"]]; +_sfLoadoutData set ["helmets", ["H_LIB_UK_Para_Helmet_Mk2","H_LIB_UK_Para_Helmet_Mk2_Camo","H_LIB_UK_Para_Helmet_Mk2_Net"]]; +_sfLoadoutData set ["slHelmets", ["H_LIB_UK_Balmoral", "H_LIB_UK_Para_Beret"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["slWeapons", [ +"LIB_M1A1_Carbine", +"a3a_lib_M2_Carbine", +"LIB_M1928_Thompson", +"LIB_M1928_Thompson", +["LIB_M1928_Thompson", "", "", "", ["LIB_50Rnd_45ACP", "LIB_30Rnd_45ACP"], [], ""] +]]; +_sfLoadoutData set ["rifles", [ +"LIB_M1A1_Carbine" +]]; +_sfLoadoutData set ["carbines", [ +"LIB_M1A1_Carbine", +"LIB_M1A1_Carbine", +"a3a_lib_M2_Carbine" +]]; +_sfLoadoutData set ["SMGs", [ +"LIB_M1928_Thompson", +"LIB_M1928_Thompson", +["LIB_M1928_Thompson", "", "", "", ["LIB_50Rnd_45ACP", "LIB_30Rnd_45ACP"], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["U_LIB_UK_P37", "U_LIB_UK_P37Jerkins"]]; +_militaryLoadoutData set ["engUniforms", ["U_LIB_UK_P37_Corporal", "U_LIB_UK_P37Jerkins_Corporal"]]; +_militaryLoadoutData set ["vests", ["V_LIB_UK_P37_Rifleman_Blanco","V_LIB_UK_P37_Gasmask_Blanco"]]; +_militaryLoadoutData set ["medVests", ["V_LIB_UK_P37_Gasmask", "V_LIB_UK_P37_Heavy"]]; +_militaryLoadoutData set ["slVests", ["V_LIB_UK_P37_Holster_Blanco", "V_LIB_UK_P37_Officer_Blanco", "V_LIB_UK_P37_Sten_Blanco"]]; + +_militaryLoadoutData set ["helmets", ["H_LIB_UK_Helmet_Mk3","H_LIB_UK_Helmet_Mk3_Camo","H_LIB_UK_Helmet_Mk3_Net"]]; + +_militaryLoadoutData set ["slWeapons", [ +"LIB_M1_Carbine", "LIB_M1928A1_Thompson", +"LIB_Sten_Mk5", +["LIB_Sten_Mk5", "LIB_ACC_No4_Mk2_Bayo", "", "", [], [], ""] +]]; +_militaryLoadoutData set ["rifles", [ +"LIB_LeeEnfield_No4", +["LIB_LeeEnfield_No4", "LIB_ACC_No4_Mk2_Bayo", "", "", [], [], ""] +]]; +_militaryLoadoutData set ["carbines", ["LIB_M1_Carbine","LIB_Sten_Mk2"]]; +_militaryLoadoutData set ["SMGs", ["LIB_M1928A1_Thompson","LIB_Sten_Mk2","LIB_Sten_Mk2"]]; + +_militaryLoadoutData set ["sidearms", ["LIB_Webley_mk6"]]; +_militaryLoadoutData set ["slSidearms", ["LIB_Colt_M1911", "LIB_Webley_mk6", "LIB_Webley_Flare"]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["U_LIB_UK_P37", "U_LIB_UK_P37Jerkins"]]; +_militiaLoadoutData set ["engUniforms", ["U_LIB_UK_P37_Corporal", "U_LIB_UK_P37Jerkins_Corporal"]]; +_militiaLoadoutData set ["vests", ["V_LIB_UK_P37_Rifleman_Blanco"]]; +_militiaLoadoutData set ["helmets", ["H_LIB_UK_Helmet_Mk2"]]; +_militiaLoadoutData set ["slHelmets", ["H_LIB_UK_Helmet_Mk2_Beachgroup"]]; + +_militiaLoadoutData set ["slWeapons", ["LIB_Sten_Mk2"]]; +_militiaLoadoutData set ["rifles", [ +"LIB_LeeEnfield_No1", +["LIB_LeeEnfield_No1", "LIB_ACC_P1903_Bayo", "", "", [], [], ""] +//["LIB_LeeEnfield_No1", "LIB_ACC_P1903_Bayo", "", "", [], [], ""] //Moving to desert templates +]]; +_militiaLoadoutData set ["carbines", ["LIB_LeeEnfield_No1","LIB_LeeEnfield_No1"]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +"LIB_LeeEnfield_No1", +["LIB_LeeEnfield_No1_CUP", "LIB_ACC_GL_Enfield_CUP_Empty", "", "", [], ["LIB_1Rnd_G_MillsBomb"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["LIB_LeeEnfield_No1","LIB_Sten_Mk2"]]; +_militiaLoadoutData set ["machineGuns", ["LIB_Sten_Mk2","LIB_M1918A2_BAR"]]; +_militiaLoadoutData set ["marksmanRifles", ["LIB_LeeEnfield_No4","LIB_LeeEnfield_No4_Scoped"]]; + +_militiaLoadoutData set ["sidearms", ["LIB_Webley_mk6"]]; +_militiaLoadoutData set ["slSidearms", ["LIB_Webley_mk6", "LIB_Webley_mk6", "LIB_Webley_Flare"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_LIB_UK_P37_Sergeant", "U_LIB_UK_P37"]]; +_crewLoadoutData set ["vests", ["V_LIB_UK_P37_Crew"]]; +_crewLoadoutData set ["helmets", ["H_LIB_UK_Beret_Tankist", "H_LIB_UK_Beret_Headset"]]; + +_crewLoadoutData set ["SMGs", ["LIB_Sten_Mk2"]]; +_crewLoadoutData set ["sidearms", ["LIB_Colt_M1911", "LIB_Webley_mk6"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_LIB_US_Pilot", "U_LIB_US_Pilot_2"]]; +_pilotLoadoutData set ["vests", ["V_LIB_US_LifeVest"]]; +_pilotLoadoutData set ["backpacks", ["B_LIB_US_TypeA3"]]; +_pilotLoadoutData set ["helmets", ["H_LIB_US_Helmet_Pilot"]]; + +_pilotLoadoutData set ["sidearms", ["LIB_Colt_M1911"]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", ["U_LIB_US_Pilot"]]; +_officerLoadoutData set ["vests", ["V_LIB_UK_P37_Officer_Blanco"]]; +_officerLoadoutData set ["slHelmets", ["H_LIB_UK_Pilot_Cap"]]; +_officerLoadoutData set ["backpacks", []]; + +_officerLoadoutData set ["slWeapons", ["LIB_Sten_Mk2", "LIB_Sten_Mk5"]]; +_officerLoadoutData set ["slSidearms", ["LIB_Colt_M1911", "LIB_Webley_mk6"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + [["slHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["slVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slWeapons", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["slSidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + [["medUniforms", "engUniforms"] call _fnc_fallback] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["grenadeLaunchers", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", selectRandom [3,4,5]] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + if(random 10 > 5) then + { + ["ATLaunchers"] call _fnc_setLauncher; + ["backpacks"] call _fnc_setBackpack; + ["launcher", 1] call _fnc_addMagazines; + ["antiInfantryGrenades", 1] call _fnc_addItem; + } else { + ["antiTankGrenades", 4] call _fnc_addItem; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["backpacks"] call _fnc_setBackpack; + + ["ATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + call (selectRandom [_latTemplate, _atTemplate]); +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["machineGuns", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + call _marksmanTemplate; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + if(random 10 > 5) then + { + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["backpacks"] call _fnc_setBackpack; + ["uniforms"] call _fnc_setUniform; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_AI_US.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_US.sqf new file mode 100644 index 0000000000..82acc83cea --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_US.sqf @@ -0,0 +1,825 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "US"] call _fnc_saveToTemplate; +["spawnMarkerName", "US Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "a3\data_f\flags\flag_us_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "flag_USA"] call _fnc_saveToTemplate; + +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports +["attributeLowAir", true] call _fnc_saveToTemplate; +["placeIntel_itemLarge", ["Intel_File2_F",-155,false]] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "LIB_WeaponsBox_Big_SU"] call _fnc_saveToTemplate; +["surrenderCrate", "LIB_BasicAmmunitionBox_US"] call _fnc_saveToTemplate; +["equipmentBox", "WW2_Cle_Container"] call _fnc_saveToTemplate; + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["LIB_US_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_US_Willys_MB", "LIB_US_Willys_MB_Hood"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["LIB_US_Willys_MB_M1919", "LIB_US_Scout_M3_FFV"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["LIB_US_GMC_Tent","LIB_US_GMC_Tent"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["LIB_US_GMC_Tent","LIB_US_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["LIB_US_GMC_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["LIB_US_GMC_Parm"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["LIB_US_GMC_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_US_GMC_Ambulance"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["LIB_US_M3_Halftrack", "LIB_US_M3_Halftrack"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["LIB_M4A3_75"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers + +private _vehiclesLightTanks = ["LIB_M8_Greyhound", "LIB_M3A3_Stuart","LIB_M5A1_Stuart"]; //There's an argument to be made to put the Greyhound in lightArmed too, leaving it here for the moment though +private _vehiclesTanks = ["LIB_M4A3_76","LIB_M4A3_76_HVSS","LIB_M4A3_75","LIB_M4A3_75"]; +private _vehiclesHeavyTanks = []; + + +["vehiclesAA", ["LIB_Zis5v_61K"]] call _fnc_saveToTemplate; //Fake "truck with bofors" + + +["vehiclesTransportBoats", ["LIB_LCA", "LIB_LCVP"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["LIB_LCI"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["LIB_P47","LIB_US_P39"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["LIB_P47","LIB_US_P39","LIB_US_P39_2"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["LIB_C47_Skytrain"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", []] call _fnc_saveToTemplate; +["vehiclesHelisTransport", []] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["LIB_leFH18"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["LIB_leFH18", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +//These intentionally appear again above among the regular 'military' vehile, to inject some british (militia) troops into the mix +["vehiclesMilitiaLightArmed", ["LIB_UK_Willys_MB_M1919", "LIB_UK_Willys_MB_M1919"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["LIB_US_NAC_GMC_Tent","LIB_US_NAC_GMC_Open"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["LIB_UK_Willys_MB","LIB_UK_Willys_MB"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["LIB_UK_Willys_MB_Hood"]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + _vehiclesHeavyTanks append ["FA_M26"]; +}; +["vehiclesLightTanks", _vehiclesLightTanks] call _fnc_saveToTemplate; +["vehiclesTanks", _vehiclesTanks] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", _vehiclesHeavyTanks] call _fnc_saveToTemplate; + +//["staticMGs", ["LIB_M1919_M2"]] call _fnc_saveToTemplate; +["staticMGs", ["a3a_hmg_02_high"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Pak40_g"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_61k"]] call _fnc_saveToTemplate; //Fake Bofors +["staticMortars", ["LIB_GrWr34_g"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "LIB_8Rnd_81mmHE_GRWR34"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "LIB_81mm_GRWR34_SmokeShell"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["LIB_US_M1A1_ATMINE"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["LIB_US_M3_MINE"]] call _fnc_saveToTemplate; + +#include "IFA_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", [ +["LIB_M1903A4_Springfield", "", "", "", [], [], ""], +["LIB_M1903A4_Springfield", "", "", "", ["LIB_5Rnd_762x63","LIB_5Rnd_762x63","LIB_5Rnd_762x63_t"], [], ""], +["LIB_M1903A4_Springfield", "", "", "", ["LIB_5Rnd_762x63","LIB_5Rnd_762x63","LIB_5Rnd_762x63_M1"], [], ""] +]]; + +_loadoutData set ["lightATLaunchers", []]; +_loadoutData set ["ATLaunchers", ["LIB_M1A1_Bazooka"]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", []]; +_loadoutData set ["sidearms", ["LIB_Colt_M1911"]]; +_loadoutData set ["slSidearms", ["LIB_Colt_M1911", "LIB_Colt_M1911", "LIB_FLARE_PISTOL"]]; + +_loadoutData set ["ATMines", ["LIB_US_M1A1_ATMINE_mag"]]; +_loadoutData set ["APMines", ["LIB_US_M3_MINE_mag"]]; +_loadoutData set ["lightExplosives", ["LIB_Ladung_Small_MINE_mag"]]; +_loadoutData set ["heavyExplosives", ["LIB_Ladung_Big_MINE_mag", "LIB_US_TNT_4pound_mag"]]; + +_loadoutData set ["antiTankGrenades", ["LIB_No82"]]; +_loadoutData set ["antiInfantryGrenades", ["LIB_US_Mk_2"]]; +_loadoutData set ["smokeGrenades", ["LIB_US_M18"]]; +_loadoutData set ["signalsmokeGrenades", ["LIB_US_M18_Green","LIB_US_M18_Red","LIB_US_M18_Yellow"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["LIB_Binocular_US"]]; +_loadoutData set ["rangefinders", ["LIB_Binocular_US"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["lightBackpacks", ["B_LIB_US_Bandoleer"]]; +_loadoutData set ["atBackpacks", ["B_LIB_US_RocketBag_Empty"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; + +_loadoutData set ["facewear", []]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_LIB_US_Rangers_Uniform", "U_LIB_US_Rangers_Private_1st", "U_LIB_US_Rangers_Corp"]]; +_sfLoadoutData set ["slUniforms", ["U_LIB_US_Rangers_Sergeant"]]; +_sfLoadoutData set ["engUniforms", ["U_LIB_US_Rangers_Eng"]]; +_sfLoadoutData set ["medUniforms", ["U_LIB_US_Rangers_Med"]]; + +_sfLoadoutData set ["vests", ["V_LIB_US_Assault_Vest", "V_LIB_US_Assault_Vest_dday"]]; +_sfLoadoutData set ["medVests", ["V_LIB_US_Assault_Vest_Light"]]; +_sfLoadoutData set ["slVests", ["V_LIB_US_Assault_Vest_Thompson"]]; + +_sfLoadoutData set ["backpacks", ["B_LIB_US_M36_Bandoleer"]]; +_sfLoadoutData set ["helmets", ["H_LIB_US_Rangers_Helmet_ns", "H_LIB_US_Rangers_Helmet", "H_LIB_US_Rangers_Helmet_os"]]; +_sfLoadoutData set ["slHelmets", ["H_LIB_US_Rangers_Helmet_NCO", "H_LIB_US_Rangers_Helmet_First_lieutenant","H_LIB_US_Rangers_Helmet_Second_lieutenant", "H_LIB_US_Rangers_Helmet_Cap"]]; +_sfLoadoutData set ["atBackpacks", ["B_LIB_US_Backpack_RocketBag_Empty"]]; + +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["lightATLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_M9A1"], ""] +]]; +_sfLoadoutData set ["slWeapons", ["LIB_M1928_Thompson", "LIB_M1928A1_Thompson", "LIB_M1_Garand", "LIB_M1A1_Carbine", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["rifles", ["LIB_M1_Garand", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["carbines", ["LIB_M1A1_Carbine","a3a_lib_M2_Carbine"]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2"], ""], +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2", "LIB_1Rnd_G_M9A1"], ""] +]]; +_sfLoadoutData set ["SMGs", ["LIB_M1928_Thompson", "LIB_M1A1_Thompson", "LIB_M1A1_Carbine"]]; +_sfLoadoutData set ["machineGuns", ["LIB_M1918A2_BAR", "LIB_M1919A6"]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["U_LIB_US_AB_Uniform_M43", "U_LIB_US_AB_Uniform_M43_FC","U_LIB_US_AB_Uniform_M43_Flag","U_LIB_US_AB_Uniform_M43_corporal"]]; +_militaryLoadoutData set ["slUniforms", ["U_LIB_US_AB_Uniform_M43_NCO"]]; +_militaryLoadoutData set ["engUniforms", ["U_LIB_US_AB_Uniform_M43_corporal"]]; +_militaryLoadoutData set ["medUniforms", ["U_LIB_US_AB_Uniform_M43_Medic"]]; + +_militaryLoadoutData set ["vests", ["V_LIB_US_AB_Vest_Garand", "V_LIB_US_AB_Vest_Bar","V_LIB_US_AB_Vest_Thompson"]]; +_militaryLoadoutData set ["medVests", ["V_LIB_US_Vest_Medic", "V_LIB_US_Vest_Medic2"]]; +_militaryLoadoutData set ["slVests", ["V_LIB_US_AB_Vest_Padded_Thompson_nco_Radio", "V_LIB_US_AB_Vest_Padded_Carbine_nco_Radio"]]; + +_militaryLoadoutData set ["backpacks", ["B_LIB_US_Backpack"]]; +_militaryLoadoutData set ["helmets", [ +"H_LIB_US_AB_Helmet_Clear_1","H_LIB_US_AB_Helmet_Clear_2","H_LIB_US_AB_Helmet_Clear_3", +"H_LIB_US_AB_Helmet_Plain_1","H_LIB_US_AB_Helmet_Plain_2","H_LIB_US_AB_Helmet_Plain_3", +"H_LIB_US_AB_Helmet","H_LIB_US_AB_Helmet_2","H_LIB_US_AB_Helmet_3","H_LIB_US_AB_Helmet_4","H_LIB_US_AB_Helmet_5" +]]; +_militaryLoadoutData set ["slHelmets", ["H_LIB_US_AB_Helmet_CO_1","H_LIB_US_AB_Helmet_CO_2","H_LIB_US_AB_Helmet_NCO_1","H_LIB_US_AB_Helmet_NCO_2"]]; +_militaryLoadoutData set ["medHelmets", ["H_LIB_US_AB_Helmet_Medic_1"]]; +_militaryLoadoutData set ["radios", ["ItemRadio"]]; + +_militaryLoadoutData set ["lightATLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_M9A1"], ""] +]]; +_militaryLoadoutData set ["slWeapons", ["LIB_M3_GreaseGun", "LIB_M1A1_Thompson", "LIB_M1_Garand", "LIB_M1_Carbine", "LIB_M1_Carbine"]]; +_militaryLoadoutData set ["rifles", [["LIB_M1_Garand", "LIB_ACC_M1_Bayo", "", "", [], [], ""],"LIB_M1_Garand" ]]; +_militaryLoadoutData set ["carbines", ["LIB_M1_Carbine"]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2"], ""], +["LIB_M1_Garand_M7", "LIB_ACC_GL_M7", "", "", [], ["LIB_1Rnd_G_Mk2", "LIB_1Rnd_G_M9A1"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["LIB_M3_GreaseGun", "LIB_M3_GreaseGun", "LIB_M1A1_Thompson"]]; +_militaryLoadoutData set ["machineGuns", [ +["LIB_M1918A2_BAR", "", "LIB_M1918A2_BAR_Handle", "", [], [], "LIB_M1918A2_BAR_Bipod"], +["LIB_M1918A2_BAR", "", "LIB_M1918A2_BAR_Handle", "", [], [], "LIB_M1918A2_BAR_Bipod"], +"LIB_M1919A4", "LIB_M1919A4"]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_LIB_US_Private"]]; +_policeLoadoutData set ["vests", ["V_LIB_SOV_RA_Belt"]]; +_policeLoadoutData set ["helmets", ["H_LIB_US_Helmet"]]; //I did want a US Garrison/Side cap + +_policeLoadoutData set ["rifles", [ +["LIB_M1903A3_Springfield", "LIB_ACC_M1_Bayo", "", "", [], [], ""],"LIB_M1903A3_Springfield" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["U_LIB_US_Private"]]; +_militiaLoadoutData set ["engUniforms", ["U_LIB_US_Eng"]]; +_militiaLoadoutData set ["slUniforms", ["U_LIB_US_Sergeant"]]; +_militiaLoadoutData set ["vests", ["V_LIB_US_Vest_Garand"]]; +_militiaLoadoutData set ["backpacks", ["B_LIB_US_M36"]]; +_militiaLoadoutData set ["atBackpacks", ["B_LIB_US_M36_Rocketbag_Empty"]]; +_militiaLoadoutData set ["helmets", ["H_LIB_US_Helmet_Net"]]; +_militiaLoadoutData set ["slHelmets", ["H_LIB_US_Helmet_Net"]]; + +_militiaLoadoutData set ["slWeapons", ["LIB_M3_GreaseGun", "LIB_M1903A3_Springfield"]]; +_militiaLoadoutData set ["rifles", [ +["LIB_M1903A3_Springfield", "LIB_ACC_M1_Bayo", "", "", [], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["LIB_M1903A3_Springfield"]]; +_militiaLoadoutData set ["SMGs", ["LIB_M3_GreaseGun"]]; +_militiaLoadoutData set ["machineGuns", [ +"LIB_M3_GreaseGun", +["LIB_M1918A2_BAR", "", "LIB_M1918A2_BAR_Handle", "", [], [], ""] +]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_LIB_US_Tank_Crew", "U_LIB_US_Tank_Crew2"]]; +_crewLoadoutData set ["vests", ["V_LIB_US_Vest_Carbine"]]; +_crewLoadoutData set ["helmets", ["H_LIB_US_Helmet_Tank"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_LIB_US_Pilot", "U_LIB_US_Pilot_2"]]; +_pilotLoadoutData set ["vests", ["V_LIB_US_LifeVest"]]; +_pilotLoadoutData set ["backpacks", ["B_LIB_US_TypeA3"]]; +_pilotLoadoutData set ["helmets", ["H_LIB_US_Helmet_Pilot"]]; + +_pilotLoadoutData set ["sidearms", ["LIB_Colt_M1911"]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["slUniforms", ["U_LIB_US_Pilot"]]; +_officerLoadoutData set ["vests", ["V_LIB_US_Vest_Carbine_nco"]]; +_officerLoadoutData set ["slHelmets", ["H_LIB_US_Pilot_Cap"]]; +_officerLoadoutData set ["backpacks", []]; + +_officerLoadoutData set ["slWeapons", ["LIB_M3_GreaseGun", "LIB_M1_Carbine"]]; +_officerLoadoutData set ["slSidearms", ["LIB_Colt_M1911"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + [["slHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["slVests"] call _fnc_setVest; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slWeapons", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["slSidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + [["medHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["medVests"] call _fnc_setVest; + [["medUniforms", "engUniforms"] call _fnc_fallback] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["grenadeLaunchers", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", selectRandom [3,4,5]] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["engUniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + private _latgl = [selectRandom ["lightATLaunchers", "rifles"], "rifles"] call _fnc_fallback; + [_latgl] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 5] call _fnc_addAdditionalMuzzleMagazines; + + if(_latgl == "rifles") then + { + if(random 10 > 6) then + { + ["ATLaunchers"] call _fnc_setLauncher; + ["atBackpacks"] call _fnc_setBackpack; + ["launcher", 1] call _fnc_addMagazines; + ["antiInfantryGrenades", 1] call _fnc_addItem; + } else { + ["lightBackpacks"] call _fnc_setBackpack; + ["antiTankGrenades", 4] call _fnc_addItem; + }; + } else { + ["backpacks"] call _fnc_setBackpack; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["antiTankGrenades", 2] call _fnc_addItem; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["atBackpacks"] call _fnc_setBackpack; + + ["ATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + call (selectRandom [_latTemplate, _atTemplate]); +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["machineGuns", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["lightBackpacks"] call _fnc_setBackpack; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + call _marksmanTemplate; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["lightBackpacks"] call _fnc_setBackpack; + + if(random 10 > 5) then + { + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["backpacks"] call _fnc_setBackpack; + ["uniforms"] call _fnc_setUniform; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_AI_WEH.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_WEH.sqf new file mode 100644 index 0000000000..4247274368 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_AI_WEH.sqf @@ -0,0 +1,820 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "Wehrmacht"] call _fnc_saveToTemplate; +["spawnMarkerName", "Wehrmacht Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\x\A3A\addons\core\Pictures\Flags\ifa_weh.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_WEH"] call _fnc_saveToTemplate; + +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports +["attributeLowAir", true] call _fnc_saveToTemplate; +["placeIntel_itemLarge", ["Intel_File2_F",-155,false]] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "LIB_WeaponsBox_Big_SU"] call _fnc_saveToTemplate; +["surrenderCrate", "LIB_BasicWeaponsBox_GER"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "WW2_Cle_Container"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["LIB_Kfz1_Hood"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_Kfz1", "LIB_Kfz1_Hood"]] call _fnc_saveToTemplate; +private _vehiclesLightArmed = ["LIB_Kfz1_MG42", "LIB_Kfz1_MG42"]; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["LIB_OpelBlitz_Open_Y_Camo","LIB_OpelBlitz_Tent_Y_Camo","LIB_SdKfz_7"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["LIB_OpelBlitz_Open_Y_Camo","LIB_SdKfz_7"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["LIB_SdKfz_7_Ammo","LIB_OpelBlitz_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["LIB_OpelBlitz_Parm"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["LIB_OpelBlitz_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_OpelBlitz_Ambulance"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["LIB_SdKfz251","LIB_SdKfz251_FFV"]] call _fnc_saveToTemplate; +_vehiclesIFVs = ["LIB_StuG_III_G_WS","a3a_lib_PzKpfwIV_noShield"]; + +private _vehiclesLightTanks = ["a3a_lib_PzKpfwIV_noShield"]; +["vehiclesTanks", ["LIB_StuG_III_G_WS","LIB_StuG_III_G","LIB_PzKpfwIV_H","LIB_PzKpfwIV_H","LIB_PzKpfwV","a3a_lib_PzKpfwIV_noShield"]] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", ["LIB_PzKpfwVI_E","LIB_PzKpfwVI_E_1","LIB_PzKpfwVI_B"]] call _fnc_saveToTemplate; + +["vehiclesAA", ["LIB_FlakPanzerIV_Wirbelwind", "LIB_FlakPanzerIV_Wirbelwind", "LIB_SdKfz_7_AA"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["LIB_LCA"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["LIB_LCI"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["LIB_Ju87","LIB_FW190F8_2"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["LIB_FW190F8","LIB_FW190F8_2"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["LIB_C47_RAF"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", []] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +["vehiclesHelisTransport", []] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["LIB_FlaK_36_ARTY","LIB_leFH18","LIB_SdKfz124"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["LIB_FlaK_36_ARTY", ["LIB_45x_SprGr_KwK36_HE"]], +["LIB_leFH18", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]], +["LIB_SdKfz124", ["LIB_20x_Shell_105L28_Gr39HlC_HE"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["LIB_Kfz1_MG42_camo", "LIB_Kfz1_MG42_camo"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["LIB_OpelBlitz_Open_G_Camo"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["LIB_Kfz1_camo","LIB_Kfz1_Hood_camo"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["LIB_Kfz1_Hood_sernyt","LIB_Kfz1_sernyt"]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Armored_Cars")) then { + _vehiclesLightArmed append ["FA_BA64_Captured"]; + _vehiclesIFVs append ["FA_Sdkfz231", "FA_Sdkfz234", "FA_Sdkfz234_4", "FA_Sdkfz231"]; +}; +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + _vehiclesLightTanks = ["FA_Panzer2", "FA_Panzer2", "FA_Pz38t", "FA_Pz38t", "FA_Pz38t"]; +}; +["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; +["vehiclesIFVs", _vehiclesIFVs] call _fnc_saveToTemplate; +["vehiclesLightTanks", _vehiclesLightTanks] call _fnc_saveToTemplate; + +//["staticMGs", ["LIB_MG42_Lafette_Deployed","LIB_MG34_Lafette_Deployed","LIB_MG42_Lafette_low_Deployed","LIB_MG34_Lafette_low_Deployed"]] call _fnc_saveToTemplate; +["staticMGs", ["a3a_hmg_02_high"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Pak40"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_FlaK_36_AA","LIB_FlaK_38","LIB_FlaK_38","LIB_FlaK_38","LIB_FlaK_38","LIB_Flakvierling_38","LIB_Flakvierling_38"]] call _fnc_saveToTemplate; +["staticMortars", ["LIB_GrWr34","LIB_GrWr34_g"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "LIB_8Rnd_81mmHE_GRWR34"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "LIB_81mm_GRWR34_SmokeShell"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["LIB_TMI_42_MINE"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["LIB_SMI_35_1_MINE","LIB_SMI_35_MINE", "LIB_shumine_42_MINE"]] call _fnc_saveToTemplate; + +#include "IFA_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["faces", ["WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +["voices", ["male01ger", "male02ger", "male03ger", "male04ger", "male05ger", "male06ger"]] call _fnc_saveToTemplate; +"LIB_GermanMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", [ +["LIB_K98ZF39", "", "", "", ["LIB_5Rnd_792x57","LIB_5Rnd_792x57","LIB_5Rnd_792x57_SMK"], [], ""], +["LIB_K98ZF39", "", "", "", ["LIB_5Rnd_792x57","LIB_5Rnd_792x57","LIB_5Rnd_792x57_sS"], [], ""], +["LIB_K98ZF39", "", "", "", ["LIB_5Rnd_792x57","LIB_5Rnd_792x57","LIB_5Rnd_792x57_t"], [], ""] +]]; + +_loadoutData set ["lightATLaunchers", ["LIB_PzFaust_30m", "LIB_PzFaust_60m"]]; +_loadoutData set ["ATLaunchers", ["LIB_RPzB"]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", []]; +_loadoutData set ["sidearms", ["LIB_P38"]]; +_loadoutData set ["slSidearms", ["LIB_P08", "LIB_M1896", "LIB_FLARE_PISTOL"]]; + +_loadoutData set ["ATMines", ["LIB_TMI_42_MINE_mag"]]; +_loadoutData set ["APMines", ["LIB_shumine_42_MINE_mag","LIB_SMI_35_MINE_mag","LIB_SMI_35_1_MINE_mag"]]; +_loadoutData set ["lightExplosives", ["LIB_Ladung_Small_MINE_mag"]]; +_loadoutData set ["heavyExplosives", ["LIB_Ladung_Big_MINE_mag", "LIB_US_TNT_4pound_mag"]]; + +_loadoutData set ["antiTankGrenades", ["LIB_Shg24x7", "LIB_Pwm"]]; +_loadoutData set ["antiInfantryGrenades", ["LIB_Shg24", "LIB_Shg24", "LIB_M39"]]; +_loadoutData set ["smokeGrenades", ["LIB_NB39"]]; +_loadoutData set ["signalsmokeGrenades", ["LIB_NB39"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["LIB_GER_ItemWatch"]]; +_loadoutData set ["compasses", ["LIB_GER_ItemCompass_deg"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["LIB_Binocular_GER"]]; +_loadoutData set ["rangefinders", ["LIB_Binocular_GER"]]; + +_loadoutData set ["uniforms", ["U_LIB_GER_Schutze", "U_LIB_GER_MG_schutze"]]; +_loadoutData set ["medUniforms", ["U_LIB_GER_Medic"]]; +_loadoutData set ["vests", []]; +_loadoutData set ["mgVests", ["V_LIB_GER_VestMG"]]; +_loadoutData set ["engVests", ["V_LIB_GER_PioneerVest"]]; +_loadoutData set ["slVests", ["V_LIB_GER_VestUnterofficer", "V_LIB_GER_FieldOfficer"]]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["engBackpacks", ["B_LIB_GER_SapperBackpack_empty"]]; +_loadoutData set ["medBackpacks", ["B_LIB_GER_MedicBackpack_Empty", "B_LIB_GER_Tonister34_cowhide"]]; +_loadoutData set ["lightBackpacks", ["B_LIB_GER_A_frame"]]; +_loadoutData set ["atBackpacks", ["B_LIB_GER_Panzer_Empty"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; + +_loadoutData set ["facewear", []]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_LIB_ST_Soldier_E44", "U_LIB_ST_MGunner_E44"]]; +_sfLoadoutData set ["medUniforms", ["U_LIB_ST_Medic_E44"]]; +_sfLoadoutData set ["vests", ["V_LIB_GER_VestG43", "V_LIB_GER_VestSTG"]]; +_sfLoadoutData set ["slVests", ["V_LIB_GER_VestUnterofficer"]]; +_sfLoadoutData set ["backpacks", ["B_LIB_GER_SapperBackpack_empty","B_LIB_GER_Tonister34_cowhide"]]; +_sfLoadoutData set ["helmets", ["H_LIB_ST_Helmet2"]]; + +_sfLoadoutData set ["antiInfantryGrenades", ["LIB_M39"]]; + +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["lightATLaunchers", []]; +_sfLoadoutData set ["slWeapons", [["LIB_MP44", "", "", "", ["LIB_30Rnd_792x33"], [], ""]]]; +_sfLoadoutData set ["rifles", ["LIB_G43"]]; +_sfLoadoutData set ["carbines", ["LIB_G43"]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["LIB_MP44_GW", "LIB_ACC_GW_SB_Empty", "", "", ["LIB_30Rnd_792x33"], ["LIB_1Rnd_G_SPRGR_30"], ""], +["LIB_MP44_GW", "LIB_ACC_GW_SB_Empty", "", "", ["LIB_30Rnd_792x33"], ["LIB_1Rnd_G_SPRGR_30", "LIB_1Rnd_G_PZGR_40"], ""], +["LIB_MP44_GW", "LIB_ACC_GW_SB_Empty", "", "", ["LIB_30Rnd_792x33"], ["LIB_1Rnd_G_PZGR_40"], ""], +["LIB_MP44_GW", "LIB_ACC_GW_SB_Empty", "", "", ["LIB_30Rnd_792x33"], ["LIB_1Rnd_G_PZGR_40", "LIB_1Rnd_G_SPRGR_30"], ""] +]]; +_sfLoadoutData set ["SMGs", [["LIB_MP44", "", "", "", ["LIB_30Rnd_792x33"], [], ""]]]; +_sfLoadoutData set ["machineGuns", ["LIB_FG42G"]]; +_sfLoadoutData set ["marksmanRifles", [["LIB_FG42G", "", "", "LIB_Optic_Zf4", [], [], ""]]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["vests", ["V_LIB_GER_VestKar98"]]; +_militaryLoadoutData set ["backpacks", ["B_LIB_GER_SapperBackpack_empty","B_LIB_GER_Tonister34_cowhide"]]; +_militaryLoadoutData set ["helmets", ["H_LIB_GER_Helmet"]]; +_militaryLoadoutData set ["radios", ["ItemRadio"]]; + +_militaryLoadoutData set ["slWeapons", [["LIB_MP40", "", "", "", ["LIB_32Rnd_9x19"], [], ""]]]; +_militaryLoadoutData set ["rifles", [["LIB_K98_Late", "LIB_ACC_K98_Bayo", "", "", [], ["LIB_5Rnd_792x57"], ""]]]; +_militaryLoadoutData set ["carbines", ["LIB_G41"]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["LIB_K98_Late_GW", "LIB_ACC_GW_SB_Empty", "", "", [], ["LIB_1Rnd_G_SPRGR_30"], ""], +["LIB_K98_Late_GW", "LIB_ACC_GW_SB_Empty", "", "", [], ["LIB_1Rnd_G_SPRGR_30", "LIB_1Rnd_G_PZGR_30"], ""], +["LIB_K98_Late_GW", "LIB_ACC_GW_SB_Empty", "", "", [], ["LIB_1Rnd_G_PZGR_30", "LIB_1Rnd_G_SPRGR_30"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["LIB_MP40", "", "", "", ["LIB_32Rnd_9x19"], [], ""], +["LIB_MP38", "", "", "", ["LIB_32Rnd_9x19"], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", ["LIB_MG34", "LIB_MG42"]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["vests", ["V_LIB_GER_PrivateBelt"]]; +_militiaLoadoutData set ["engVests", ["V_LIB_GER_VestMP40"]]; +_militiaLoadoutData set ["slVests", ["V_LIB_GER_FieldOfficer"]]; +_militiaLoadoutData set ["backpacks", ["B_LIB_GER_A_frame"]]; +_militiaLoadoutData set ["helmets", ["H_LIB_GER_Cap"]]; + +_militiaLoadoutData set ["antiInfantryGrenades", ["LIB_Shg24"]]; +_militiaLoadoutData set ["ATLaunchers", []]; +_militiaLoadoutData set ["slWeapons", [ +["LIB_MP38", "", "", "", ["LIB_32Rnd_9x19"], [], ""], +"LIB_K98_Late" +]]; +_militiaLoadoutData set ["lightATLaunchers", ["LIB_Faustpatrone"]]; +_militiaLoadoutData set ["rifles", [["LIB_K98_Late", "LIB_ACC_K98_Bayo", "", "", [], ["LIB_5Rnd_792x57"], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["LIB_G3340", "", "", "", [], ["LIB_5Rnd_792x57"], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", []]; +_militiaLoadoutData set ["SMGs", [ +["LIB_MP38", "", "", "", ["LIB_32Rnd_9x19"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["LIB_MP38", "", "", "", ["LIB_32Rnd_9x19"], [], ""], +"LIB_K98_Late" +]]; +_militiaLoadoutData set ["sidearms", ["LIB_WaltherPPK", "LIB_P38"]]; +_militiaLoadoutData set ["slSidearms", ["LIB_WaltherPPK", "LIB_P38", "LIB_FLARE_PISTOL"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_LIB_GER_Tank_crew_private", "U_LIB_GER_Tank_crew_unterofficer"]]; +_crewLoadoutData set ["vests", ["V_LIB_GER_TankPrivateBelt"]]; +_crewLoadoutData set ["helmets", ["H_LIB_GER_TankPrivateCap", "H_LIB_GER_TankPrivateCap2"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_LIB_GER_LW_pilot"]]; +_pilotLoadoutData set ["vests", ["V_LIB_GER_OfficerBelt"]]; +_pilotLoadoutData set ["helmets", ["H_LIB_GER_LW_PilotHelmet"]]; +_pilotLoadoutData set ["backpacks", ["B_LIB_GER_LW_Paradrop"]]; +_pilotLoadoutData set ["sidearms", ["LIB_WaltherPPK", "LIB_P08", "LIB_M1896", "a3a_lib_M712"]]; + +private _officerLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", ["U_LIB_GER_Oberst"]]; +_officerLoadoutData set ["slVests", ["V_LIB_GER_OfficerVest"]]; +_officerLoadoutData set ["helmets", ["H_LIB_GER_OfficerCap"]]; + +_officerLoadoutData set ["slWeapons", [ +["LIB_MP40", "", "", "", ["LIB_32Rnd_9x19"], [], ""] +]]; +_officerLoadoutData set ["slSidearms", ["LIB_P08", "LIB_M1896"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["slVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slWeapons", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["slSidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["medUniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + + [["SMGs", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["grenadeLaunchers", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", selectRandom [3,4,5]] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["engVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["engBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["engVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["engBackpacks"] call _fnc_setBackpack; + + [["SMGs", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 1] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [[selectRandom ["SMGs", "carbines"], "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + private _launch = ["ATLaunchers", "lightATLaunchers"] call _fnc_fallback; + + [_launch] call _fnc_setLauncher; + if (_launch == "ATLaunchers") then { + ["atBackpacks"] call _fnc_setBackpack; + ["launcher", 2] call _fnc_addMagazines; + } else { + ["lightBackpacks"] call _fnc_setBackpack; + }; + + //TODO - Add a check if it's disposable. + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiTankGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + call (selectRandom [_latTemplate, _atTemplate]); +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["mgVests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["machineGuns", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 3] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + call _marksmanTemplate; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["lightBackpacks"] call _fnc_setBackpack; + + if(random 10 > 5) then + { + ["SMGs"] call _fnc_setPrimary; + ["primary", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 4] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["backpacks"] call _fnc_setBackpack; + ["uniforms"] call _fnc_setUniform; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_Common.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_Common.sqf new file mode 100644 index 0000000000..3d0afb2cac --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_Common.sqf @@ -0,0 +1,67 @@ +////////////////////////// +// Vehicles // +////////////////////////// +["vehiclesCivCar", [ + "LIB_GazM1", 1.5, + "LIB_GazM1_dirty", 2.5, + "LIB_CIV_FFI_CitC4", 0.125, + "LIB_CIV_FFI_CitC4_2", 0.125, + "LIB_CIV_FFI_CitC4_3", 0.125 + ]] call _fnc_saveToTemplate; //this line determines civilian cars -- Example: ["vehiclesCivCar", ["C_Offroad_01_F"]] -- Array, can contain multiple assets + +["vehiclesCivIndustrial", [ + "LIB_CIV_FFI_CitC4", 0.25, + "LIB_CIV_FFI_CitC4_2", 0.25, + "LIB_CIV_FFI_CitC4_3", 0.25 +]] call _fnc_saveToTemplate; //this line determines civilian trucks -- Example: ["vehiclesCivIndustrial", ["C_Truck_02_transport_F"]] -- Array, can contain multiple assets + +["vehiclesCivHeli", []] call _fnc_saveToTemplate; //this line determines civilian helis -- Example: ["vehiclesCivHeli", ["C_Heli_Light_01_civil_F"]] -- Array, can contain multiple assets + +["vehiclesCivBoat", ["B_Boat_Transport_01_F", 0.2]] call _fnc_saveToTemplate; //this line determines civilian boats -- Example: ["vehiclesCivBoat", ["C_Boat_Civil_01_F"]] -- Array, can contain multiple assets + +//Do we want vehicles of these kinds in this modset? +["vehiclesCivRepair", []] call _fnc_saveToTemplate; //this line determines civilian repair vehicles + +["vehiclesCivMedical", []] call _fnc_saveToTemplate; //this line determines civilian medic vehicles + +["vehiclesCivFuel", []] call _fnc_saveToTemplate; //this line determines civilian fuel vehicles + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["LivonianHead_6","WhiteHead_02","WhiteHead_04","WhiteHead_05","WhiteHead_09","WhiteHead_11","WhiteHead_13","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _civUniforms = [ +"U_LIB_CIV_Citizen_1", +"U_LIB_CIV_Citizen_2", +"U_LIB_CIV_Citizen_3", +"U_LIB_CIV_Citizen_4", +"U_LIB_CIV_Citizen_5", +"U_LIB_CIV_Citizen_6", +"U_LIB_CIV_Citizen_7", +"U_LIB_CIV_Citizen_8", +"U_LIB_CIV_Villager_1", +"U_LIB_CIV_Villager_2", +"U_LIB_CIV_Villager_3", +"U_LIB_CIV_Villager_4", +"U_LIB_CIV_Woodlander_1", +"U_LIB_CIV_Woodlander_2", +"U_LIB_CIV_Woodlander_3", +"U_LIB_CIV_Woodlander_4", +"U_LIB_CIV_Worker_1", +"U_LIB_CIV_Worker_2", +"U_LIB_CIV_Worker_3", +"U_LIB_CIV_Worker_4" +]; //Uniforms given to Normal Civs + +private _workerUniforms = [ +"U_LIB_CIV_Worker_1", +"U_LIB_CIV_Worker_2", +"U_LIB_CIV_Worker_3", +"U_LIB_CIV_Worker_4" +]; //Uniforms given to Workers at Factories/Resources \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_FR.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_FR.sqf new file mode 100644 index 0000000000..18cd4e9e5b --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_FR.sqf @@ -0,0 +1,93 @@ + +#include "IFA_CIV_Common.sqf" + +"RussianMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + + +private _pressUniforms = [ +"U_LIB_CIV_Functionary_1", +"U_LIB_CIV_Assistant", +"U_LIB_CIV_Assistant_2", +"U_LIB_CIV_Doctor", +"U_LIB_CIV_Schoolteacher", +"U_LIB_CIV_Schoolteacher_2" +]; //Uniforms given to Press/Journalists + +["uniforms", _civUniforms + ["U_LIB_CIV_Functionary_1"] + _workerUniforms] call _fnc_saveToTemplate; //Uniforms given to the Arsenal, Allowed for Undercover and given to Rebel Ai that go Undercover + +_civhats = [ +"H_LIB_CIV_Villager_Cap_1", +"H_LIB_CIV_Villager_Cap_2", +"H_LIB_CIV_Villager_Cap_3", +"H_LIB_CIV_Villager_Cap_4" +]; + +if(A3A_climate == "arctic") then { + _civhats append [ + "H_LIB_CIV_Worker_Cap_1", + "H_LIB_CIV_Worker_Cap_2", + "H_LIB_CIV_Worker_Cap_3", + "H_LIB_CIV_Worker_Cap_4" + ]; +}; + +["headgear", _civHats] call _fnc_saveToTemplate; //Headgear given to Normal Civs, Workers, Undercover Rebels. + +_civhats append ["H_HeadBandage_clean_F", "H_HeadBandage_stained_F", "H_HeadBandage_bloody_F"]; + +private _loadoutData = call _fnc_createLoadoutData; + +_loadoutData set ["uniforms", _civUniforms]; +_loadoutData set ["pressUniforms", _pressUniforms]; +_loadoutData set ["workerUniforms", _workerUniforms]; +_loadoutData set ["pressVests", []]; +_loadoutData set ["helmets", _civHats]; +_loadoutData set ["pressHelmets", []]; + +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; + + +private _manTemplate = { + ["helmets"] call _fnc_setHelmet; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _workerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["workerUniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _pressTemplate = { + ["helmets"] call _fnc_setHelmet; + ["pressUniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _prefix = "militia"; +private _unitTypes = [ + ["Press", _pressTemplate], + ["Worker", _workerTemplate], + ["Man", _manTemplate] +]; + +[_prefix, _unitTypes, _loadoutData] call _fnc_generateAndSaveUnitsToTemplate; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_PL.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_PL.sqf new file mode 100644 index 0000000000..46e34be955 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_CIV_PL.sqf @@ -0,0 +1,81 @@ + +#include "IFA_CIV_Common.sqf" + +"EnochMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _pressUniforms = [ +"U_LIB_CIV_Priest" +]; //Uniforms given to Press/Journalists + +["uniforms", _civUniforms + ["U_LIB_CIV_Functionary_1"] + _workerUniforms] call _fnc_saveToTemplate; //Uniforms given to the Arsenal, Allowed for Undercover and given to Rebel Ai that go Undercover + +_civhats = [ +"H_LIB_CIV_Worker_Cap_1", +"H_LIB_CIV_Worker_Cap_2", +"H_LIB_CIV_Worker_Cap_3", +"H_LIB_CIV_Worker_Cap_4", +"H_LIB_CIV_Worker_Cap_1", +"H_LIB_CIV_Worker_Cap_2", +"H_LIB_CIV_Worker_Cap_3", +"H_LIB_CIV_Worker_Cap_4" +]; + +["headgear", _civHats + ["H_LIB_CIV_Villager_Cap_1","H_LIB_CIV_Villager_Cap_2","H_LIB_CIV_Villager_Cap_3","H_LIB_CIV_Villager_Cap_4"]] call _fnc_saveToTemplate; //Headgear given to Normal Civs, Workers, Undercover Rebels. + +_civhats append ["H_HeadBandage_clean_F", "H_HeadBandage_stained_F", "H_HeadBandage_bloody_F"]; + +private _loadoutData = call _fnc_createLoadoutData; + +_loadoutData set ["uniforms", _civUniforms]; +_loadoutData set ["pressUniforms", _pressUniforms]; +_loadoutData set ["workerUniforms", _workerUniforms]; +_loadoutData set ["pressVests", []]; +_loadoutData set ["helmets", _civHats]; +_loadoutData set ["pressHelmets", []]; + +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; + + +private _manTemplate = { + ["helmets"] call _fnc_setHelmet; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _workerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["workerUniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _pressTemplate = { + ["pressUniforms"] call _fnc_setUniform; + + ["items_medical_standard"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; +private _prefix = "militia"; +private _unitTypes = [ + ["Press", _pressTemplate], + ["Worker", _workerTemplate], + ["Man", _manTemplate] +]; + +[_prefix, _unitTypes, _loadoutData] call _fnc_generateAndSaveUnitsToTemplate; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_REB_AK.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_REB_AK.sqf new file mode 100644 index 0000000000..99995b95ea --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_REB_AK.sqf @@ -0,0 +1,214 @@ +/////////////////////////// +// Rebel Information // +/////////////////////////// + +["name", "AK"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\x\A3A\addons\core\Pictures\Flags\ifa_ak.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_AK"] call _fnc_saveToTemplate; + +////////////////////////// +// Mission/HQ Objects // +////////////////////////// + +// All of bellow are optional overrides. +["diveGear", [""]] call _fnc_saveToTemplate; +["flyGear", ["U_LIB_US_Bomber_Pilot","B_LIB_US_Type5"]] call _fnc_saveToTemplate; +["vehiclesCivSupply", ["a3a_lib_Zis6_BOX"]] call _fnc_saveToTemplate; //We should create a inert "box truck" version + +["surrenderCrate", "LIB_Lone_Big_Box"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["vehiclesBasic", ["LIB_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_GazM1_SOV"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["a3a_LIB_Willys_MB_M1919"]] call _fnc_saveToTemplate; //replace with a version in plain green +["vehiclesTruck", ["LIB_Zis5v"]] call _fnc_saveToTemplate; +["vehiclesAT", []] call _fnc_saveToTemplate; +["vehiclesAA", []] call _fnc_saveToTemplate; + +["vehiclesBoat", ["I_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; + +["vehiclesPlane", ["LIB_C47_RAF"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_Zis5v_Med"]] call _fnc_saveToTemplate; + +["vehiclesCivCar", ["LIB_GazM1_dirty", "LIB_GazM1"]] call _fnc_saveToTemplate; +["vehiclesCivTruck", ["LIB_CIV_FFI_CitC4", "LIB_CIV_FFI_CitC4_3"]] call _fnc_saveToTemplate; +["vehiclesCivHeli", []] call _fnc_saveToTemplate; +["vehiclesCivBoat", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesCivPlane", []] call _fnc_saveToTemplate; + +["staticMGs", ["LIB_Maxim_M30_base"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Zis3"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_FlaK_30"]] call _fnc_saveToTemplate; +["staticMortars", ["LIB_M2_60"]] call _fnc_saveToTemplate; +["staticMortarMagHE", "LIB_8Rnd_60mmHE_M2"] call _fnc_saveToTemplate; +["staticMortarMagSmoke", ""] call _fnc_saveToTemplate; + +["mineAT", ""] call _fnc_saveToTemplate; +["mineAPERS", ""] call _fnc_saveToTemplate; + +["breachingExplosivesAPC", [["LIB_Ladung_Big_MINE_mag", 1], ["LIB_Ladung_Small_MINE_mag", 1]]] call _fnc_saveToTemplate; +["breachingExplosivesTank", [["LIB_US_TNT_4pound_mag", 1], ["LIB_Ladung_Big_MINE_mag", 2]]] call _fnc_saveToTemplate; + +switch (A3A_climate) do +{ + case "arid": { + ["vehiclesBasic", ["LIB_US_NAC_Willys_MB"]] call _fnc_saveToTemplate; + ["vehiclesLightUnarmed", ["LIB_GazM1_SOV_camo_sand"]] call _fnc_saveToTemplate; + ["vehiclesLightArmed", ["LIB_US_NAC_Willys_MB_M1919"]] call _fnc_saveToTemplate; + }; + case "arctic": { + ["vehiclesBasic", ["LIB_Willys_MB_w"]] call _fnc_saveToTemplate; + ["vehiclesLightUnarmed", ["LIB_Willys_MB_Hood_w"]] call _fnc_saveToTemplate; + ["vehiclesLightArmed", ["LIB_US_Willys_MB_M1919_w"]] call _fnc_saveToTemplate; + ["vehiclesTruck", ["LIB_Zis5v_w"]] call _fnc_saveToTemplate; + ["vehiclesMedical", ["LIB_Zis5v_med_w"]] call _fnc_saveToTemplate; + + ["staticAT", ["LIB_Zis3_w"]] call _fnc_saveToTemplate; + }; +}; + +#include "IFA_Reb_Vehicle_Attributes.sqf" + +/////////////////////////// +// Rebel Starting Gear // +/////////////////////////// + +private _initialRebelEquipment = [ +"LIB_WaltherPPK", "LIB_7Rnd_765x17_PPK", +["LIB_M1895", 15], "LIB_7Rnd_762x38", +"LIB_FLARE_PISTOL", "LIB_1Rnd_flare_white", +"V_LIB_SOV_RA_Belt", +["LIB_Ladung_Small_MINE_mag", 10], +"B_LIB_DAK_A_frame", +"LIB_Binocular_GER", +["B_LIB_GER_Tonister34_cowhide", 3], +["B_LIB_GER_MedicBackpack_Empty", 3], +["H_LIB_WP_Helmet", 5], +["H_LIB_WP_Helmet_med", 5] +]; + +if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr","tf_anprc154"]}; +if (A3A_hasTFAR && startWithLongRangeRadio) then {_initialRebelEquipment append ["B_LIB_US_Radio"]}; +if (A3A_hasTFARBeta) then {_initialRebelEquipment append ["TFAR_microdagr","TFAR_anprc154"]}; +if (A3A_hasTFARBeta && startWithLongRangeRadio) then {_initialRebelEquipment append ["B_LIB_US_Radio"]}; +["initialRebelEquipment", _initialRebelEquipment] call _fnc_saveToTemplate; + + +private _rebUniforms = [ +"U_LIB_WP_Soldier_camo_1", +"U_LIB_WP_Soldier_camo_2", +"U_LIB_WP_Soldier_camo_3" +]; //Uniforms given to Normal Rebels + +private _civUniforms = [ +"U_LIB_CIV_Citizen_1", +"U_LIB_CIV_Citizen_2", +"U_LIB_CIV_Citizen_3", +"U_LIB_CIV_Citizen_4", +"U_LIB_CIV_Citizen_5", +"U_LIB_CIV_Citizen_6", +"U_LIB_CIV_Citizen_7", +"U_LIB_CIV_Citizen_8", +"U_LIB_CIV_Villager_1", +"U_LIB_CIV_Villager_2", +"U_LIB_CIV_Villager_3", +"U_LIB_CIV_Villager_4", +"U_LIB_CIV_Woodlander_1", +"U_LIB_CIV_Woodlander_2", +"U_LIB_CIV_Woodlander_3", +"U_LIB_CIV_Woodlander_4" +]; + +["uniforms", _rebUniforms + _civUniforms] call _fnc_saveToTemplate; //These Items get added to the Arsenal + +["headgear", ["H_LIB_WP_Helmet","H_LIB_WP_Cap","H_LIB_WP_Cap","H_LIB_WP_Cap","H_LIB_WP_Cap"]] call _fnc_saveToTemplate; //Headgear used by Rebell Ai until you have Armored Headgear. + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["LivonianHead_1","LivonianHead_10","LivonianHead_2","LivonianHead_3","LivonianHead_4","LivonianHead_6","LivonianHead_9","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_09","WhiteHead_10","WhiteHead_11","WhiteHead_13","WhiteHead_14","WhiteHead_15","WhiteHead_17","WhiteHead_18","WhiteHead_20","WhiteHead_21","WhiteHead_30"]] call _fnc_saveToTemplate; +["voices", ["Male01pol","Male02pol","Male03pol"]] call _fnc_saveToTemplate; +"EnochMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _winterGear = []; +if(A3A_climate == "arctic") then { + _winterGear = ["G_LIB_Scarf2_B", "G_LIB_Scarf2_G","G_LIB_Scarf_B", "G_LIB_Scarf_G", "G_LIB_Headwrap_gloves", "G_LIB_Headwrap","G_LIB_GER_Gloves1", "G_LIB_GER_Gloves2", "G_LIB_GER_Gloves3", "G_LIB_GER_Gloves4"]; + ["headgear", [ + "H_LIB_CIV_Worker_Cap_1", + "H_LIB_CIV_Worker_Cap_2", + "H_LIB_CIV_Worker_Cap_3", + "H_LIB_CIV_Worker_Cap_4", + "H_LIB_GER_Ushanka"]] call _fnc_saveToTemplate; +}; + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["binoculars", ["Binocular"]]; + +_loadoutData set ["uniforms", _rebUniforms]; + +_loadoutData set ["facewear", _winterGear + ["G_Bandanna_blk", "G_Bandanna_tan", "G_LIB_Dienst_Brille", "G_LIB_Dienst_Brille2","G_LIB_Scarf2_B", "G_LIB_Scarf2_G","G_LIB_Scarf_B", "G_LIB_Scarf_G"]]; + +if (isClass (configFile >> "CfgPatches" >> "IFA3_COMP_ACE_main")) then { + _initialRebelEquipment append ["ACE_LIB_LadungPM", "ACE_LIB_FireCord"]; +}; +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//////////////////////// +// Rebel Unit Types // +///////////////////////. + +private _squadLeaderTemplate = { + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["binoculars"] call _fnc_addBinoculars; +}; + +private _riflemanTemplate = { + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; + +private _prefix = "militia"; +private _unitTypes = [ + ["Petros", _squadLeaderTemplate], + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["staticCrew", _riflemanTemplate], + ["Medic", _riflemanTemplate, [["medic", true]]], + ["Engineer", _riflemanTemplate, [["engineer", true]]], + ["ExplosivesExpert", _riflemanTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _riflemanTemplate], + ["LAT", _riflemanTemplate], + ["AT", _riflemanTemplate], + ["AA", _riflemanTemplate], + ["MachineGunner", _riflemanTemplate], + ["Marksman", _riflemanTemplate], + ["Sniper", _riflemanTemplate], + ["Unarmed", _riflemanTemplate] +]; + +[_prefix, _unitTypes, _loadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_REB_FFI.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_REB_FFI.sqf new file mode 100644 index 0000000000..414f72498e --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_REB_FFI.sqf @@ -0,0 +1,209 @@ +/////////////////////////// +// Rebel Information // +/////////////////////////// + +["name", "FFI"] call _fnc_saveToTemplate; + +["flag", "Flag_FIA_F"] call _fnc_saveToTemplate; +["flagTexture", "\x\A3A\addons\core\Pictures\Flags\ifa_ffi.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_FFI"] call _fnc_saveToTemplate; + +////////////////////////// +// Mission/HQ Objects // +////////////////////////// + +// All of bellow are optional overrides. +["diveGear", [""]] call _fnc_saveToTemplate; +["flyGear", ["U_LIB_US_Bomber_Pilot","B_LIB_US_Type5"]] call _fnc_saveToTemplate; +["vehiclesCivSupply", ["a3a_lib_Zis6_BOX"]] call _fnc_saveToTemplate; //We should create a inert "box truck" version + +["surrenderCrate", "LIB_BasicWeaponsBox_GER"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["vehiclesBasic", ["LIB_Willys_MB"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["LIB_GazM1_FFI"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["a3a_LIB_Willys_MB_M1919"]] call _fnc_saveToTemplate; //replace with a version in plain green +["vehiclesTruck", ["LIB_CIV_FFI_CitC4_5"]] call _fnc_saveToTemplate; +["vehiclesAT", []] call _fnc_saveToTemplate; //Remove maybe +["vehiclesAA", []] call _fnc_saveToTemplate; + +["vehiclesBoat", ["I_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; + +["vehiclesPlane", ["LIB_C47_RAF"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["LIB_OpelBlitz_Ambulance_w"]] call _fnc_saveToTemplate; + +["vehiclesCivCar", ["LIB_GazM1_dirty", "LIB_GazM1"]] call _fnc_saveToTemplate; +["vehiclesCivTruck", ["LIB_CIV_FFI_CitC4", "LIB_CIV_FFI_CitC4_2", "LIB_CIV_FFI_CitC4_3"]] call _fnc_saveToTemplate; +["vehiclesCivHeli", []] call _fnc_saveToTemplate; +["vehiclesCivBoat", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesCivPlane", []] call _fnc_saveToTemplate; + +["staticMGs", ["LIB_M1919_M2"]] call _fnc_saveToTemplate; +["staticAT", ["LIB_Zis3"]] call _fnc_saveToTemplate; +["staticAA", ["LIB_FlaK_30"]] call _fnc_saveToTemplate; +["staticMortars", ["LIB_M2_60"]] call _fnc_saveToTemplate; +["staticMortarMagHE", "LIB_8Rnd_60mmHE_M2"] call _fnc_saveToTemplate; +["staticMortarMagSmoke", ""] call _fnc_saveToTemplate; + +["mineAT", ""] call _fnc_saveToTemplate; +["mineAPERS", ""] call _fnc_saveToTemplate; + +["breachingExplosivesAPC", [["LIB_Ladung_Big_MINE_mag", 1], ["LIB_Ladung_Small_MINE_mag", 1]]] call _fnc_saveToTemplate; +["breachingExplosivesTank", [["LIB_US_TNT_4pound_mag", 1], ["LIB_Ladung_Big_MINE_mag", 2]]] call _fnc_saveToTemplate; + +switch (A3A_climate) do +{ + case "arid": { + ["vehiclesBasic", ["LIB_US_NAC_Willys_MB"]] call _fnc_saveToTemplate; + ["vehiclesLightUnarmed", ["LIB_GazM1_FFI_sand"]] call _fnc_saveToTemplate; + ["vehiclesLightArmed", ["LIB_US_NAC_Willys_MB_M1919"]] call _fnc_saveToTemplate; + }; + case "arctic": { + ["vehiclesBasic", ["LIB_Willys_MB_w"]] call _fnc_saveToTemplate; + ["vehiclesLightUnarmed", ["LIB_Willys_MB_Hood_w"]] call _fnc_saveToTemplate; + ["vehiclesLightArmed", ["LIB_US_Willys_MB_M1919_w"]] call _fnc_saveToTemplate; + + ["staticAT", ["LIB_Zis3_w"]] call _fnc_saveToTemplate; + ["staticAA", ["LIB_FlaK_30_w"]] call _fnc_saveToTemplate; + }; + case "tropical": { + ["vehiclesLightUnarmed", ["LIB_GazM1_FFI_camo"]] call _fnc_saveToTemplate; + }; +}; + +#include "IFA_Reb_Vehicle_Attributes.sqf" + +/////////////////////////// +// Rebel Starting Gear // +/////////////////////////// + +private _initialRebelEquipment = [ +"LIB_WaltherPPK", "LIB_7Rnd_765x17_PPK", +["LIB_M1895", 15], "LIB_7Rnd_762x38", +"LIB_FLARE_PISTOL", "LIB_1Rnd_flare_white", +"V_LIB_SOV_RA_Belt", +["LIB_Ladung_Small_MINE_mag", 10], +["B_LIB_GER_Tonister34_cowhide", 3], +["B_LIB_GER_MedicBackpack_Empty", 3], +"B_LIB_US_Bandoleer", +"LIB_Binocular_GER" +]; + +if (isClass (configFile >> "CfgPatches" >> "IFA3_COMP_ACE_main")) then { + _initialRebelEquipment append ["ACE_LIB_LadungPM", "ACE_LIB_FireCord"]; +}; +if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr","tf_anprc154"]}; +if (A3A_hasTFAR && startWithLongRangeRadio) then {_initialRebelEquipment append ["B_LIB_US_Radio"]}; +if (A3A_hasTFARBeta) then {_initialRebelEquipment append ["TFAR_microdagr","TFAR_anprc154"]}; +if (A3A_hasTFARBeta && startWithLongRangeRadio) then {_initialRebelEquipment append ["B_LIB_US_Radio"]}; +["initialRebelEquipment", _initialRebelEquipment] call _fnc_saveToTemplate; + + +private _rebUniforms = [ +"U_LIB_CIV_Citizen_1", +"U_LIB_CIV_Citizen_2", +"U_LIB_CIV_Citizen_3", +"U_LIB_CIV_Citizen_4", +"U_LIB_CIV_Citizen_5", +"U_LIB_CIV_Citizen_6", +"U_LIB_CIV_Citizen_7", +"U_LIB_CIV_Citizen_8", +"U_LIB_CIV_Villager_1", +"U_LIB_CIV_Villager_2", +"U_LIB_CIV_Villager_3", +"U_LIB_CIV_Villager_4", +"U_LIB_CIV_Woodlander_1", +"U_LIB_CIV_Woodlander_2", +"U_LIB_CIV_Woodlander_3", +"U_LIB_CIV_Woodlander_4" +]; //Uniforms given to Normal Rebels + +["uniforms", _rebUniforms] call _fnc_saveToTemplate; //These Items get added to the Arsenal + +["headgear", ["H_LIB_CIV_Villager_Cap_1","H_LIB_CIV_Villager_Cap_2","H_LIB_CIV_Villager_Cap_3","H_LIB_CIV_Villager_Cap_4"]] call _fnc_saveToTemplate; //Headgear used by Rebell Ai until you have Armored Headgear. + +///////////////////// +/// Identities /// +///////////////////// + +//Faces and Voices given to Rebell AI +["faces", ["LivonianHead_6","WhiteHead_01","WhiteHead_02","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_12","WhiteHead_15","WhiteHead_18"]] call _fnc_saveToTemplate; +["voices", ["Male01FRE","Male02FRE","Male03FRE"]] call _fnc_saveToTemplate; +"RussianMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _winterGear = []; +if(A3A_climate == "arctic") then { + _winterGear = ["G_LIB_Scarf2_B", "G_LIB_Scarf2_G","G_LIB_Scarf_B", "G_LIB_Scarf_G", "G_LIB_Headwrap_gloves", "G_LIB_Headwrap","G_LIB_GER_Gloves1", "G_LIB_GER_Gloves2", "G_LIB_GER_Gloves3", "G_LIB_GER_Gloves4"]; + ["headgear", [ + "H_LIB_CIV_Worker_Cap_1", + "H_LIB_CIV_Worker_Cap_2", + "H_LIB_CIV_Worker_Cap_3", + "H_LIB_CIV_Worker_Cap_4", + "H_LIB_GER_Ushanka"]] call _fnc_saveToTemplate; +}; + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["binoculars", ["Binocular"]]; + +_loadoutData set ["uniforms", _rebUniforms]; + +_loadoutData set ["facewear", _winterGear + ["G_Bandanna_blk", "G_Bandanna_tan", "G_LIB_Dienst_Brille", "G_LIB_Dienst_Brille2","G_LIB_Scarf2_B", "G_LIB_Scarf2_G","G_LIB_Scarf_B", "G_LIB_Scarf_G"]]; + +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//////////////////////// +// Rebel Unit Types // +///////////////////////. + +private _squadLeaderTemplate = { + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["binoculars"] call _fnc_addBinoculars; +}; + +private _riflemanTemplate = { + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; +}; + +private _prefix = "militia"; +private _unitTypes = [ + ["Petros", _squadLeaderTemplate], + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["staticCrew", _riflemanTemplate], + ["Medic", _riflemanTemplate, [["medic", true]]], + ["Engineer", _riflemanTemplate, [["engineer", true]]], + ["ExplosivesExpert", _riflemanTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _riflemanTemplate], + ["LAT", _riflemanTemplate], + ["AT", _riflemanTemplate], + ["AA", _riflemanTemplate], + ["MachineGunner", _riflemanTemplate], + ["Marksman", _riflemanTemplate], + ["Sniper", _riflemanTemplate], + ["Unarmed", _riflemanTemplate] +]; + +[_prefix, _unitTypes, _loadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_Reb_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_Reb_Vehicle_Attributes.sqf new file mode 100644 index 0000000000..f888288d8c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_Reb_Vehicle_Attributes.sqf @@ -0,0 +1,23 @@ +["attributesVehicles", [ + //Everything is a touch more expensive to encourage theft. + //Cars + ["LIB_Willys_MB", ["rebCost", 100]], + ["LIB_Willys_MB_w", ["rebCost", 100]], + ["LIB_US_NAC_Willys_MB", ["rebCost", 100]], + ["LIB_UK_Willys_MB_M1919", ["rebCost", 1000]], + ["LIB_US_Willys_MB_M1919_w", ["rebCost", 1000]], + ["LIB_US_NAC_Willys_MB_M1919", ["rebCost", 1000]], + ["LIB_GazM1", ["rebCost", 400]], + ["LIB_GazM1_dirty", ["rebCost", 400]], + ["LIB_Zis5v_61K", ["rebCost", 2000]], + + //Statics + ["LIB_M1919_M2", ["rebCost", 800]], + ["LIB_Maxim_M30_base", ["rebCost", 800]], + ["LIB_Zis3", ["rebCost", 2000]], + ["LIB_Zis3_w", ["rebCost", 2000]], + ["LIB_M2_60", ["rebCost", 1000]], + ["LIB_FlaK_30", ["rebCost", 1200]], + ["LIB_FlaK_30_w", ["rebCost", 1200]], + ["LIB_61k", ["rebCost", 2500]] +]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/IFA/IFA_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/IFA/IFA_Vehicle_Attributes.sqf new file mode 100644 index 0000000000..a26de9328b --- /dev/null +++ b/A3A/addons/core/Templates/Templates/IFA/IFA_Vehicle_Attributes.sqf @@ -0,0 +1,48 @@ + + + +//Most vehicles below are inserted into categories that which normally has higher requirements in regular antistasi +//Due to this being WW2 and the cost being much more reasonable to modify than the weights. +//For example the SdKfz251 and the M3 Halftrack are used in the APC category despite only being suitable as lightAPCs, +//putting them there though skews the weighting too much in their favour. +["attributesVehicles", [ + ["LIB_SdKfz_7_AA", ["cost", 80]], + ["LIB_Zis5v_61K", ["cost", 60]], //There's a lack of AA vehicles in IFA for not-germany, fortunately AA vehicles aren't that important with IFA + ["LIB_SdKfz251_captured_FFV", ["cost", 60]], + ["LIB_SdKfz251", ["cost", 60]], + ["LIB_SdKfz251_FFV", ["cost", 60]], + ["LIB_US_M3_Halftrack", ["cost", 60]], + ["LIB_SOV_M3_Halftrack", ["cost", 60]], + ["LIB_UK_M3_Halftrack", ["cost", 60]], + ["LIB_M8_Greyhound", ["cost", 80]], + ["LIB_Ju87", ["cost", 75]], + ["LIB_Pe2", ["cost", 75]], + ["LIB_FW190F8", ["cost", 75]], + ["LIB_FW190F8_2", ["cost", 75]], + ["LIB_P47", ["cost", 75]], + ["LIB_P39", ["cost", 75]], + ["LIB_RA_P39_2", ["cost", 75]], + ["LIB_RA_P39_3", ["cost", 75]], + ["LIB_RAF_P39", ["cost", 75]], + ["LIB_US_P39", ["cost", 75]], + ["LIB_US_P39_2", ["cost", 75]] +]] call _fnc_saveToTemplate; + +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Armored_Cars")) then { + (["attributesVehicles"] call _fnc_getFromTemplate) append + [ + ["FA_Sdkfz231", ["cost", 100]], + ["FA_Sdkfz234", ["cost", 100]], + ["FA_Sdkfz234_4", ["cost", 100]], + ["FA_T17E1", ["cost", 80]], + ["FA_DaimlerMk2", ["cost", 60]] + ]; +}; +if (isClass (configFile >> "CfgPatches" >> "FA_WW2_Tanks")) then { + (["attributesVehicles"] call _fnc_getFromTemplate) append + [ + ["FA_Panzer2", ["cost", 100]], + ["FA_Pz38t", ["cost", 80]], + ["FA_T26", ["cost", 60]] + ]; +}; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_ChDKZ.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_ChDKZ.sqf index d487b388ad..b6f7658e3d 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_ChDKZ.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_ChDKZ.sqf @@ -57,6 +57,7 @@ ["vehiclesPlanesCAS", ["RHS_Su25SM_vvsc"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhs_mig29s_vvs","rhs_mig29sm_vvs"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", []] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["a3a_rhs_Mi8mt_chdkz"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["a3a_rhs_Mi8T_chdkz"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["a3a_rhs_Mi8mt_chdkz","a3a_rhs_Mi8mt_chdkz", "RHS_Mi24Vt_vvsc"]] call _fnc_saveToTemplate; //Mi8mt has pk's, Mi24Vt has 12.7 turret only diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_HIDF.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_HIDF.sqf new file mode 100644 index 0000000000..94f428b16f --- /dev/null +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_HIDF.sqf @@ -0,0 +1,857 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "HIDF"] call _fnc_saveToTemplate; +["spawnMarkerName", "HIDF support corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_Blue_F"] call _fnc_saveToTemplate; +["flagTexture", "\A3\Data_F_Exp\Flags\flag_GEN_CO.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "flag_TanoaGendarmerie"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_T_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["rhsgref_hidf_M998_2dr_halftop","rhsgref_hidf_M998_4dr_halftop", "rhsgref_hidf_m1025"]] call _fnc_saveToTemplate; +["vehiclesLightArmed",["rhsgref_hidf_m1025_m2","rhsgref_hidf_m1025_m2","rhsgref_hidf_m1025_m2","rhsgref_hidf_m1025_mk19","a3a_rhs_m966_olive"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["rhsgref_hidf_M998_2dr_fulltop","rhsgref_hidf_M998_2dr_fulltop", "rhsgref_hidf_m113a3_unarmed"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["RHS_Ural_VMF_01","RHS_Ural_Open_VMF_01"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["RHS_Ural_Ammo_VMF_01"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["RHS_Ural_Repair_VMF_01"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["RHS_Ural_Fuel_VMF_01"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["a3a_rhs_m113_olive_medical"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["a3a_rhs_m113_hidf_M240","a3a_rhs_m113_hidf_M240","rhsgref_hidf_m113a3_m2","rhsgref_hidf_m113a3_m2"]] call _fnc_saveToTemplate; //this line determines light APCs +["vehiclesAPCs", ["rhsgref_hidf_m113a3_m2","rhsgref_hidf_m113a3_m2","rhsgref_hidf_m113a3_mk19","rhsgref_hidf_m113a3_mk19"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["a3a_RHS_M2A2_olive"]] call _fnc_saveToTemplate; //this line determines IFVs +["vehiclesTanks", ["rhsusf_m1a1hc_wd"]] call _fnc_saveToTemplate; +["vehiclesAA", ["RHS_M6_wd"]] call _fnc_saveToTemplate; + + +["vehiclesTransportBoats", ["rhsgref_hidf_rhib","B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["rhsusf_mkvsoc"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", []] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["RHSGREF_A29B_HIDF"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["rhs_l159_cdf_b_CDF_CAP"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", []] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["rhs_uh1h_hidf", "rhsgred_hidf_cessna_o3a"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["rhs_uh1h_hidf_unarmed"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["rhs_uh1h_hidf"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["rhs_uh1h_hidf_gunship"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["RHS_M119_WD"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["RHS_M119_WD", ["RHS_mag_m1_he_12"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["rhsgref_hidf_m1025_m2"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["rhsgref_hidf_M998_2dr"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["rhsgref_hidf_m998_4dr"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["rhsgref_hidf_M998_4dr_fulltop"]] call _fnc_saveToTemplate; + +["staticMGs", ["RHS_M2StaticMG_WD"]] call _fnc_saveToTemplate; +["staticAT", ["RHS_TOW_TriPod_WD"]] call _fnc_saveToTemplate; +["staticAA", ["RHS_Stinger_AA_pod_D"]] call _fnc_saveToTemplate; +["staticMortars", ["RHS_M252_WD"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_12Rnd_m821_HE"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["rhsusf_mine_M19"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_Mk2_tripwire", "rhsusf_mine_m49a1_6m"]] call _fnc_saveToTemplate; + +#include "RHS_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["TanoanHead_A3_01","TanoanHead_A3_02","TanoanHead_A3_03","TanoanHead_A3_04", +"TanoanHead_A3_05","TanoanHead_A3_06","TanoanHead_A3_07","TanoanHead_A3_08"]] call _fnc_saveToTemplate; +["voices", ["Male01ENGFRE","Male02ENGFRE"]] call _fnc_saveToTemplate; +["sfFaces", ["AfricanHead_01", "AfricanHead_02", "AfricanHead_03", "Barklem", "GreekHead_A3_05", "GreekHead_A3_06", "GreekHead_A3_07", "GreekHead_A3_08", "GreekHead_A3_09", "Sturrock", "WhiteHead_01", "WhiteHead_02", "WhiteHead_03", "WhiteHead_04", "WhiteHead_05", "WhiteHead_06", "WhiteHead_08", "WhiteHead_09", "WhiteHead_10", "WhiteHead_11", "WhiteHead_12", "WhiteHead_13", "WhiteHead_14", "WhiteHead_15", "WhiteHead_16", "WhiteHead_17", "WhiteHead_18", "WhiteHead_19", "WhiteHead_20", "WhiteHead_21"]] call _fnc_saveToTemplate; +["sfVoices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG"]] call _fnc_saveToTemplate; +"TanoanMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["gltube", [["rhs_weap_m79", "", "", "",["rhs_mag_M441_HE","rhs_mag_m714_White","rhs_mag_m662_red"], [], ""]]]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["rhs_weap_m72a7"]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HEDP", "rhs_mag_maaws_HEAT"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HEDP", "rhs_mag_maaws_HE"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HEAT", "rhs_mag_maaws_HEDP"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HEAT", "rhs_mag_maaws_HE"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HE","rhs_mag_maaws_HEDP"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HE","rhs_mag_maaws_HEAT"], [], ""] +]]; +_loadoutData set ["heavyATLaunchers", [ +["rhs_weap_maaws", "", "", "rhs_optic_maaws", ["rhs_mag_maaws_HEAT", "rhs_mag_maaws_HEDP"], [], ""], +["rhs_weap_maaws", "", "", "rhs_optic_maaws", ["rhs_mag_maaws_HEAT"], [], ""] +]]; +_loadoutData set ["AALaunchers", ["rhs_weap_fim92"]]; +_loadoutData set ["sidearms", ["rhsusf_weap_m1911a1"]]; + +_loadoutData set ["ATMines", ["rhs_mine_M19_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_Mk2_tripwire_mag","rhs_mine_Mk2_tripwire_mag", "rhsusf_mine_m49a1_6m_mag"]]; +_loadoutData set ["lightExplosives", ["rhsusf_m112_mag", "rhs_ec200_mag"]]; +_loadoutData set ["heavyExplosives", ["rhsusf_m112x4_mag", "rhs_ec400_mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", ["rhs_grenade_mkii_mag"]]; +_loadoutData set ["smokeGrenades", ["rhs_grenade_m15_mag"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_m18_green", "rhs_mag_m18_purple", "rhs_mag_m18_red", "rhs_mag_m18_yellow","rhs_mag_nspn_red"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhsusf_ANPVS_14", ""]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHat", ["H_Booniehat_tna_F"]]; +_loadoutData set ["sniHats", ["H_Booniehat_tna_F"]]; + + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadleader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["rhs_uniform_g3_m81","rhs_uniform_g3_rgr"]]; +_sfLoadoutData set ["vests", ["rhsgref_TacVest_ERDL","rhsgref_otv_khaki"]]; +_sfLoadoutData set ["backpacks", ["rhsgref_hidf_alicepack"]]; +_sfLoadoutData set ["helmets", ["H_Bandanna_khk_hs", "H_Cap_oli_hs", "rhsusf_ach_helmet_M81", "rhsusf_ach_bare_headset_ess", "rhsusf_ach_bare_headset", "rhsusf_ach_bare_ess", "rhsusf_ach_bare"]]; +_sfLoadoutData set ["binoculars", ["Rangefinder"]]; +_sfLoadoutData set ["slHat", ["H_MilCap_tna_F"]]; +_sfLoadoutData set ["NVGs", ["rhsusf_ANPVS_15", "rhsusf_ANPVS_14"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["rifles", [ +["rhs_weap_m14_rail_fiberglass", "rhsusf_acc_aac_m14dcqd_silencer", "", "rhsusf_acc_T1_low", ["rhsusf_20Rnd_762x51_m80_Mag"], [], ""], +["rhs_weap_m16a4", "rhsusf_acc_rotex5_grey", "acc_flashlight", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["rhs_weap_m16a4_carryhandle", "rhsusf_acc_rotex5_grey", "acc_flashlight", "", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_m4a1", "rhsusf_acc_rotex5_grey", "acc_flashlight", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""], +["rhs_weap_m4a1_carryhandle", "rhsusf_acc_rotex5_grey", "acc_flashlight", "", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_m4a1_carryhandle_m203", "rhsusf_acc_rotex5_grey", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M433_HEDP","rhs_mag_m714_White","rhs_mag_m662_red"], ""], +["rhs_weap_m4a1_carryhandle_m203", "rhsusf_acc_rotex5_grey", "", "rhsusf_acc_compm4", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], ["rhs_mag_M397_HET","rhs_mag_m714_White","rhs_mag_m662_red"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["rhs_weap_m3a1_specops", "", "", "rhsusf_acc_compm4", ["rhsgref_30rnd_1143x23_M1911B_SMG"], [], ""], +["rhs_weap_m4a1_carryhandle", "rhsusf_acc_rotex5_grey", "acc_flashlight", "", ["rhs_mag_30Rnd_556x45_M855A1_Stanag"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["rhs_weap_m249_pip", "rhsusf_acc_rotex5_grey", "", "rhsusf_acc_ELCAN", ["rhsusf_200rnd_556x45_M855_mixed_box","rhsusf_200rnd_556x45_M855_mixed_box","rhsusf_200rnd_556x45_M855_mixed_box","rhs_mag_30Rnd_556x45_M196_Stanag_Tracer_Red"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["rhs_weap_m14_rail_fiberglass", "rhsusf_acc_aac_m14dcqd_silencer", "", "rhsusf_acc_M8541_low", ["rhsusf_20Rnd_762x51_m80_Mag"], [], "rhsusf_acc_m14_bipod"] +]]; +_sfLoadoutData set ["sniperRifles", [ +["rhs_weap_m24sws", "rhsusf_acc_m24_silencer_black", "", "rhsusf_acc_LEUPOLDMK4", ["rhsusf_5Rnd_762x51_m118_special_Mag", "rhsusf_5Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_swivel"], +["rhs_weap_m14_rail_fiberglass", "rhsusf_acc_aac_m14dcqd_silencer", "", "rhsusf_acc_M8541_low", ["rhsusf_20Rnd_762x51_m118_special_Mag"], [], "rhsusf_acc_m14_bipod"] +]]; +//_sfLoadoutData set ["sidearms", []]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["rhs_uniform_bdu_erdl","rhsgref_uniform_ERDL"]]; +_militaryLoadoutData set ["vests", ["rhsgref_alice_webbing","rhsgref_TacVest_ERDL","rhsgref_otv_khaki"]]; +_militaryLoadoutData set ["backpacks", ["rhsusf_falconii", "rhsusf_falconii", "rhsgref_hidf_alicepack"]]; +_militaryLoadoutData set ["helmets", ["rhsgref_helmet_pasgt_erdl"]]; + +_militaryLoadoutData set ["rifles", [ +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_m4_carryhandle", "rhsusf_acc_SF3P556", "", "", ["rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M196_Stanag_Tracer_Red"], [], ""], +["rhs_weap_m16a4_carryhandle", "rhsusf_acc_SF3P556", "", "", ["rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M196_2MAG_Stanag_Tracer_Red"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_m4_carryhandle_m203", "rhsusf_acc_SF3P556", "", "",["rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M196_Stanag_Tracer_Red"], ["rhs_mag_M441_HE","rhs_mag_m714_White","rhs_mag_m662_red"], ""], +["rhs_weap_m16a4_carryhandle_M203", "rhsusf_acc_SF3P556", "", "",["rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M196_2MAG_Stanag_Tracer_Red"], ["rhs_mag_M433_HEDP","rhs_mag_m714_White","rhs_mag_m662_red"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_m249", "", "", "",["rhsusf_200rnd_556x45_M855_mixed_box", "rhsusf_100Rnd_556x45_M855_mixed_soft_pouch", "rhsusf_100Rnd_556x45_M855_soft_pouch"], [], "rhsusf_acc_saw_bipod"], +["rhs_weap_fnmag", "", "", "",["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_fnmag", "", "", "",["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_fnmag", "", "", "",["rhsusf_100Rnd_762x51", "rhsusf_100Rnd_762x51", "rhsusf_100Rnd_762x51_m62_tracer"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "rhsgref_acc_l1a1_l2a2",["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1", "rhsgref_acc_falMuzzle_l1a1", "", "rhsgref_acc_l1a1_l2a2",["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_m14_rail", "", "", "rhsusf_acc_M8541_low",["rhsusf_20Rnd_762x51_m80_Mag"], [], "rhsusf_acc_m14_bipod"] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_m14_rail", "", "", "rhsusf_acc_M8541_low",["rhsusf_20Rnd_762x51_m80_Mag"], [], "rhsusf_acc_m14_bipod"], +["rhs_weap_m24sws", "", "", "rhsusf_acc_LEUPOLDMK4",["rhsusf_5Rnd_762x51_m62_Mag"], [], "rhsusf_acc_harris_swivel"] +]]; +_militaryLoadoutData set ["sidearms", ["rhsusf_weap_m1911a1"]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["rhsgref_uniform_olive"]]; +_policeLoadoutData set ["vests", ["rhsgref_chestrig"]]; +_policeLoadoutData set ["helmets", ["H_Beret_gen_F"]]; +_policeLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_policeLoadoutData set ["carbines", [ +"rhs_weap_m1garand_sa43" +]]; +_policeLoadoutData set ["shotguns", [ +"rhs_weap_M590_5RD" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["rhsgref_uniform_og107", "rhsgref_uniform_og107_erdl"]]; +_militiaLoadoutData set ["vests", ["rhsgref_chestrig","rhsgref_chicom","rhsgref_alice_webbing"]]; +_militiaLoadoutData set ["backpacks", ["rhsusf_falconii"]]; +_militiaLoadoutData set ["helmets", ["rhsgref_hat_m1941cap","rhsgref_hat_M1951","rhsgref_helmet_M1_bare","rhsgref_helmet_M1_erdl"]]; +_militiaLoadoutData set ["NVGs", []]; + +_militiaLoadoutData set ["antiInfantryGrenades", ["rhs_mag_f1"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HEDP", "rhs_mag_maaws_HE"], [], ""], +["rhs_weap_maaws", "", "", "", ["rhs_mag_maaws_HE","rhs_mag_maaws_HEDP"], [], ""] +]]; +_militiaLoadoutData set ["rifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["rhs_weap_m1garand_sa43"]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_m16a4_carryhandle_M203", "rhsusf_acc_SF3P556", "", "", ["rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M193_Stanag","rhs_mag_20Rnd_556x45_M196_Stanag_Tracer_Red"], ["rhs_mag_M441_HE","rhs_mag_m714_White","rhs_mag_m662_red"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_militiaLoadoutData set ["machineGuns", [ +["rhs_weap_fnmag", "", "", "",["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +"rhs_weap_m1garand_sa43" +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "rhsgref_acc_l1a1_l2a2", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +"rhs_weap_m1garand_sa43" +]]; +_militiaLoadoutData set ["sidearms", ["rhsusf_weap_m1911a1"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["vests", ["rhsgref_TacVest_ERDL"]]; +_crewLoadoutData set ["carbines", ["rhs_weap_m1garand_sa43"]]; +_crewLoadoutData set ["helmets", ["rhsusf_cvc_green_helmet","rhsusf_cvc_green_ess"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["vests", ["rhsgref_TacVest_ERDL"]]; +_pilotLoadoutData set ["SMGs", ["rhs_weap_m3a1"]]; +_pilotLoadoutData set ["helmets", ["rhsusf_hgu56p_green", "rhsusf_hgu56p_visor_green", "rhsusf_hgu56p_visor_mask_green"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandomWeighted ["grenadeLaunchers", 1, "rifles",2]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["rifles", 3, "carbines", 1]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + ["SMGs"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + ["antiInfantryGrenades", 2] call _fnc_addItem; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["lightATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 1] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + [selectRandom["ATLaunchers", "heavyATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["carbines", 1, "SMGs",2, "shotguns", 1]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["carbines", 1, "SMGs",2]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_TLA.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_TLA.sqf new file mode 100644 index 0000000000..f1bfe3dab5 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_TLA.sqf @@ -0,0 +1,867 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "TLA"] call _fnc_saveToTemplate; +["spawnMarkerName", "TLA support corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_Blue_F"] call _fnc_saveToTemplate; +["flagTexture", "\rhsafrf\addons\rhs_main\data\Flag_trn_CO.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "rhs_flag_trn"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["attributeLowAir", true] call _fnc_saveToTemplate; // Use fewer air units in general + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_T_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["rhsgref_BRDM2UM_msv"]] call _fnc_saveToTemplate; +["vehiclesLightArmed",["rhsgref_BRDM2_msv"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["rhs_gaz66_msv","rhs_gaz66_msv","rhsgref_BRDM2_HQ_msv","rhsgref_BRDM2UM_msv"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["rhs_gaz66_flat_msv"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["rhs_gaz66_ammo_msv"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["RHS_Ural_Repair_MSV_01"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["RHS_Ural_Fuel_MSV_01"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["rhs_gaz66_ap2_msv"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; //this line determines light APCs +["vehiclesAPCs", ["rhsgref_tla_btr60"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["rhs_bmp1_msv", "rhs_bmp1k_msv", "rhs_bmp1p_msv", "rhs_bmp1d_msv"]] call _fnc_saveToTemplate; //this line determines IFVs +["vehiclesTanks", ["rhs_t72ba_tv"]] call _fnc_saveToTemplate; +["vehiclesAA", ["rhs_zsu234_aa"]] call _fnc_saveToTemplate; + + +["vehiclesTransportBoats", ["rhsgref_hidf_rhib","B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["rhsusf_mkvsoc"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["rhsgref_tla_btr60","rhs_bmp1_msv", "rhs_bmp1k_msv", "rhs_bmp1p_msv","rhsgref_BRDM2_HQ_msv","rhsgref_BRDM2UM_msv","rhsgref_BRDM2_msv"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["RHSGREF_A29B_HIDF", "RHS_Su25SM_vvsc"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["rhs_l159_cdf_b_CDF_CAP"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", []] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["RHS_Mi8t_vv"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["RHS_Mi8mt_vv"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["a3a_rhs_Mi8AMTSh_tla", "a3a_rhs_Mi8MTV3_heavy_tla", "a3a_rhs_Mi8MTV3_tla"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["RHS_Mi24V_vvsc"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["rhsgref_ins_d30", "RHS_BM21_VV_01"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["rhs_2s1_tv", ["rhs_mag_3of56_35"]], +["rhsgref_ins_d30",["rhs_mag_3of56_10"]], +["RHS_BM21_VV_01", ["rhs_mag_m21of_1"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["rhsgref_cdf_b_reg_uaz_dshkm"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["rhs_zil131_msv"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["rhs_uaz_open_MSV_01", "RHS_UAZ_MSV_01"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["rhsgref_cdf_b_reg_uaz_open", "rhsgref_cdf_b_reg_uaz"]] call _fnc_saveToTemplate; + +["staticMGs", ["RHS_M2StaticMG_WD", "rhsgref_ins_DSHKM"]] call _fnc_saveToTemplate; +["staticAT", ["rhsgref_tla_SPG9"]] call _fnc_saveToTemplate; +["staticAA", ["RHS_ZU23_MSV"]] call _fnc_saveToTemplate; +["staticMortars", ["rhs_2b14_82mm_msv"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_mag_3vo18_10"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "rhs_mag_d832du_10"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "rhs_mag_3vs25m_10"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +#include "RHS_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["TanoanHead_A3_01","TanoanHead_A3_02","TanoanHead_A3_03","TanoanHead_A3_04", +"TanoanHead_A3_05","TanoanHead_A3_06","TanoanHead_A3_07","TanoanHead_A3_08"]] call _fnc_saveToTemplate; +["voices", ["Male01FRE","Male02FRE","Male03FRE"]] call _fnc_saveToTemplate; +["sfFaces", ["AsianHead_A3_01","AsianHead_A3_02","AsianHead_A3_03","AsianHead_A3_04","AsianHead_A3_05","AsianHead_A3_06","AsianHead_A3_07"]] call _fnc_saveToTemplate; +["sfVoices", ["Male01CHI","Male02CHI","Male03CHI"]] call _fnc_saveToTemplate; +"TanoanMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["gltube", [["rhs_weap_m79", "", "", "",["rhs_mag_M441_HE","rhs_mag_m714_White","rhs_mag_m662_red"], [], ""]]]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["rhs_weap_rpg18", "rhs_weap_rpg26", "rhs_weap_rshg2"]]; +_loadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "",["rhs_rpg7_PG7V_mag", "rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "",["rhs_rpg7_PG7VM_mag", "rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "",["rhs_rpg7_type69_airburst_mag", "rhs_rpg7_PG7VL_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; +_loadoutData set ["heavyATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VM_mag", "rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VR_mag","rhs_rpg7_PG7VM_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VS_mag","rhs_rpg7_PG7VM_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_TBG7V_mag","rhs_rpg7_PG7VM_mag"], [], ""] +]]; +_loadoutData set ["AALaunchers", ["rhs_weap_igla"]]; +_loadoutData set ["sidearms", ["rhsusf_weap_m1911a1", "rhs_weap_makarov_pm", "rhs_weap_makarov_pm"]]; + +_loadoutData set ["ATMines", ["rhs_mag_mine_ptm1", "rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_ozm72_a_mag", "rhs_mine_ozm72_b_mag", "rhs_mine_ozm72_c_mag", "rhs_mag_mine_pfm1", "rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhs_ec200_mag"]]; +_loadoutData set ["heavyExplosives", ["rhs_ec400_mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_f1", "rhs_grenade_sthgr24_mag"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_rdg2_white", "rhs_grenade_nbhgr39_mag"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_nspd"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhs_1PN138"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHat", ["H_Hat_Safari_olive_F"]]; +_loadoutData set ["sniHats", ["H_Hat_Safari_olive_F"]]; + + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadleader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["rhs_uniform_mflora_patchless"]]; +_sfLoadoutData set ["vests", ["rhs_6b23_ML_6sh92", "rhs_6b23_ML_vydra_3m"]]; +_sfLoadoutData set ["backpacks", ["rhs_rd54_vest","rhs_tortila_khaki"]]; +_sfLoadoutData set ["helmets", ["rhs_6b27m_ml","rhs_6b27m_ml_ess"]]; +_sfLoadoutData set ["binoculars", ["Rangefinder"]]; +_sfLoadoutData set ["slHat", ["rhs_fieldcap_helm_ml", "rhs_fieldcap_ml"]]; +_sfLoadoutData set ["NVGs", ["rhs_1PN138"]]; + +_sfLoadoutData set ["antiInfantryGrenades", ["rhs_mag_rgn", "rhs_mag_rgo"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["lightATLaunchers", ["rhs_weap_m72a7", "rhs_weap_rshg2"]]; +_sfLoadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7V_mag", "rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VM_mag", "rhs_rpg7_PG7VL_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_type69_airburst_mag", "rhs_rpg7_PG7VL_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; + +_sfLoadoutData set ["rifles", [ +["rhs_weap_ak74n", "rhs_acc_dtk4short", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_AK_green"], [], ""], +["rhs_weap_akmn", "rhs_acc_pbs1", "", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_U"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_aks74n", "rhs_acc_dtk4short", "", "rhs_acc_okp7_dovetail", ["rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_AK_green"], [], ""], +["rhs_weap_aks74un", "rhs_acc_pbs4", "", "rhs_acc_okp7_dovetail", ["rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_7U1_AK", "rhs_30Rnd_545x39_AK_green"], [], ""], +["rhs_weap_m92", "rhs_acc_pbs1", "", "", ["rhs_30Rnd_762x39mm_U"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_aks74n_gp25", "rhs_acc_dtk4short", "", "rhs_acc_ekp8_02", ["rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25", "rhs_VOG25", "rhs_GRD40_White", "rhs_VG40OP_red"], ""], +["rhs_weap_ak74n_gp25", "rhs_acc_dtk4short", "", "rhs_acc_ekp8_02", ["rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_7N6_AK", "rhs_30Rnd_545x39_AK_green"], ["rhs_VOG25P", "rhs_VOG25P", "rhs_GRD40_White", "rhs_VG40OP_red"], ""], +["rhs_weap_akmn_gp25", "rhs_acc_pbs1", "", "rhs_acc_ekp8_02", ["rhs_30Rnd_762x39mm_U"], ["rhs_VG40TB", "rhs_VG40TB", "rhs_GRD40_White", "rhs_VG40OP_red"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["rhs_weap_m3a1_specops", "", "", "rhs_acc_okp7_picatinny", ["rhsgref_30rnd_1143x23_M1911B_SMG"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["rhs_weap_rpk74m", "rhs_acc_dtk4short", "", "rhs_acc_1p29", ["rhs_45Rnd_545X39_7U1_AK", "rhs_45Rnd_545X39_7N6_AK", "rhs_45Rnd_545X39_7N6_AK", "rhs_45Rnd_545X39_AK_Green"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp", "rhs_acc_tgpv", "", "rhs_acc_pso1m21", ["rhs_10Rnd_762x54mmR_7N1", "rhs_10Rnd_762x54mmR_7N1", "rhs_10Rnd_762x54mmR_7N14"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["rhs_weap_m24sws", "rhsusf_acc_m24_silencer_black", "", "rhsusf_acc_LEUPOLDMK4", ["rhsusf_5Rnd_762x51_m118_special_Mag", "rhsusf_5Rnd_762x51_m993_Mag"], [], "rhsusf_acc_harris_swivel"] +]]; +//_sfLoadoutData set ["sidearms", []]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["rhsgref_uniform_TLA_1"]]; +_militaryLoadoutData set ["vests", ["rhs_lifchik","rhs_lifchik_light","rhs_6b2_lifchik","rhs_6b2_lifchik"]]; +_militaryLoadoutData set ["backpacks", ["rhs_sidor", "rhs_sidor", "rhs_rd54_flora2"]]; +_militaryLoadoutData set ["helmets", ["rhsgref_helmet_pasgt_olive","rhsgref_M56","rhs_headband"]]; +_militaryLoadoutData set ["NVGs", ["rhs_1PN138"]]; + +_militaryLoadoutData set ["rifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_akmn", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_m92", "", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_akms", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_akmn_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_GRD40_White", "rhs_VG40OP_red"], ""], +["rhs_weap_akmn_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_GRD40_White", "rhs_VG40OP_red"], ""], +["rhs_weap_m16a4_carryhandle_M203", "rhsusf_acc_SF3P556", "", "",["rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M193_2MAG_Stanag","rhs_mag_20Rnd_556x45_M196_2MAG_Stanag_Tracer_Red"], ["rhs_mag_M433_HEDP","rhs_mag_m714_White","rhs_mag_m662_red"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_pkm", "", "", "",["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_fnmag", "", "", "",["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +["rhs_weap_mg42", "", "", "",["rhsgref_50Rnd_792x57_SmE_drum", "rhsgref_50Rnd_792x57_SmE_drum", "rhsgref_50Rnd_792x57_SmE_notracers_drum"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "rhsgref_acc_l1a1_l2a2", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_m76", "", "", "rhs_acc_pso1m2",[], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_m38_rail", "", "", "rhsusf_acc_LEUPOLDMK4",[], [], ""] +]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["rhsgref_uniform_TLA_2"]]; +_policeLoadoutData set ["vests", ["rhsgref_chestrig"]]; +_policeLoadoutData set ["helmets", ["H_Hat_Safari_olive_F"]]; +_policeLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_policeLoadoutData set ["carbines", [ +"rhs_weap_m1garand_sa43" +]]; +_policeLoadoutData set ["shotguns", [ +"rhs_weap_M590_5RD" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["rhsgref_uniform_TLA_2"]]; +_militiaLoadoutData set ["vests", ["rhs_lifchik","rhs_lifchik_light"]]; +_militiaLoadoutData set ["backpacks", ["rhs_sidor"]]; +_militiaLoadoutData set ["helmets", ["rhs_headband","rhsgref_M56","rhsgref_helmet_M1_painted_alt01"]]; +_militiaLoadoutData set ["NVGs", []]; + +_militiaLoadoutData set ["lightATLaunchers", ["rhs_weap_rpg18"]]; +_militiaLoadoutData set ["ATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7V_mag", "rhs_rpg7_PG7V_mag", "rhs_rpg7_OG7V_mag"], [], ""], +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_OG7V_mag", "rhs_rpg7_PG7V_mag", "rhs_rpg7_PG7V_mag"], [], ""] +]]; +_militiaLoadoutData set ["heavyATLaunchers", [ +["rhs_weap_rpg7", "", "", "", ["rhs_rpg7_PG7VM_mag"], [], ""] +]]; + +_militiaLoadoutData set ["rifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_pm63", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_akm", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_m92", "", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_akms", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_akm_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_GRD40_White", "rhs_VG40OP_red"], ""], +["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_GRD40_White", "rhs_VG40OP_red"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +"rhs_weap_m3a1" +]]; +_militiaLoadoutData set ["machineGuns", [ +["rhs_weap_fnmag", "", "", "",["rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51", "rhsusf_50Rnd_762x51_m62_tracer"], [], ""], +"rhs_weap_m1garand_sa43" +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_l1a1_wood", "rhsgref_acc_falMuzzle_l1a1", "", "", ["rhs_mag_20Rnd_762x51_m80_fnfal"], [], ""], +["rhs_weap_akmn", "rhs_acc_dtkakm", "", "rhs_acc_pso1m2", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +"rhs_weap_m1garand_sa43" +]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["vests", ["rhsgref_TacVest_ERDL"]]; +_crewLoadoutData set ["carbines", ["rhs_weap_m1garand_sa43"]]; +_crewLoadoutData set ["helmets", ["rhs_tsh4","rhs_tsh4_ess"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["vests", ["rhsgref_TacVest_ERDL"]]; +_pilotLoadoutData set ["SMGs", ["rhs_weap_m3a1"]]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandomWeighted ["grenadeLaunchers", 1, "rifles",2]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["rifles", 3, "carbines", 1]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + ["SMGs"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + ["antiInfantryGrenades", 2] call _fnc_addItem; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["lightATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 1] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + [selectRandom["ATLaunchers", "heavyATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["carbines", 1, "SMGs",2, "shotguns", 1]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandomWeighted ["carbines", 1, "SMGs",2]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arctic.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arctic.sqf index fc07e878c2..081264ac76 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arctic.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arctic.sqf @@ -39,6 +39,7 @@ ["vehiclesPlanesCAS", ["RHS_A10"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhsusf_f22"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["RHS_MELB_H6M"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["RHS_MELB_MH6M"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["RHS_UH60M", "RHS_UH60M", "RHS_UH60M", "RHS_UH60M", "RHS_UH60M_ESSS2", "RHS_UH60M2", "RHS_CH_47F", "RHS_CH_47F", "RHS_CH_47F", "RHS_CH_47F"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arid.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arid.sqf index b6757c9bde..6cc40d8d52 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Arid.sqf @@ -39,6 +39,7 @@ ["vehiclesPlanesCAS", ["RHS_A10"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhsusf_f22"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["RHS_MELB_H6M"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["RHS_MELB_MH6M"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["RHS_UH60M_d", "RHS_UH60M_d", "RHS_UH60M_d", "RHS_UH60M_d", "RHS_UH60M_d", "RHS_UH60M_d", "RHS_UH60M_ESSS2_d", "RHS_UH60M2_d", "RHS_CH_47F_light", "RHS_CH_47F_light", "RHS_CH_47F_light", "RHS_CH_47F_light"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Temperate.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Temperate.sqf index ce8631d015..257e8e6518 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Army_Temperate.sqf @@ -39,6 +39,7 @@ ["vehiclesPlanesCAS", ["RHS_A10"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhsusf_f22"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["RHS_MELB_H6M"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["RHS_MELB_MH6M"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["RHS_UH60M", "RHS_UH60M", "RHS_UH60M", "RHS_UH60M", "RHS_UH60M_ESSS2", "RHS_UH60M2", "RHS_CH_47F", "RHS_CH_47F", "RHS_CH_47F", "RHS_CH_47F"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Arid.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Arid.sqf index 52d9cda644..156a7188c1 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Arid.sqf @@ -39,6 +39,7 @@ ["vehiclesPlanesCAS", ["RHS_A10"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhsusf_f22"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["RHS_MELB_H6M"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["RHS_UH1Y_UNARMED_d"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["RHS_CH_47F_light", "rhsusf_CH53E_USMC_GAU21_D", "rhsusf_CH53E_USMC_D"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Temperate.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Temperate.sqf index 018cf8037a..726efacba7 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_USAF_Marines_Temperate.sqf @@ -39,6 +39,7 @@ ["vehiclesPlanesCAS", ["RHS_A10"]] call _fnc_saveToTemplate; ["vehiclesPlanesAA", ["rhsusf_f22"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["RHS_C130J"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["RHS_MELB_H6M"]] call _fnc_saveToTemplate; ["vehiclesHelisLight", ["RHS_UH1Y_UNARMED"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["RHS_UH1Y_UNARMED", "RHS_CH_47F", "rhsusf_CH53E_USMC_GAU21", "rhsusf_CH53E_USMC"]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Arid.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Arid.sqf new file mode 100644 index 0000000000..ba7a60b01d --- /dev/null +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Arid.sqf @@ -0,0 +1,898 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "VDV"] call _fnc_saveToTemplate; +["spawnMarkerName", "VDV Support Corridor"] call _fnc_saveToTemplate; + +["flag", "rhs_Flag_Russia_F"] call _fnc_saveToTemplate; +["flagTexture", "rhsafrf\addons\rhs_main\data\Flag_vdv_CO.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "rhs_flag_vdv"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; //Don't touch or you die a sad and lonely death! +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["rhs_tigr_3camo_vdv"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["rhs_tigr_sts_3camo_vdv"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["rhs_kamaz5350_open_vdv", "rhs_kamaz5350_flatbed_cover_vdv"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["rhs_kamaz5350_flatbed_cover_vdv", "rhs_kamaz5350_flatbed_vdv"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["RHS_Ural_Ammo_VDV_01"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["rhs_gaz66_repair_vdv"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["RHS_Ural_Fuel_VDV_01"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["rhs_gaz66_ap2_vdv"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["rhsgref_BRDM2_vdv", "rhs_btr80_vdv"]] call _fnc_saveToTemplate; +["vehiclesAPCs", ["rhs_bmd1p", "rhs_bmd1k", "rhs_bmd1r", "rhs_btr80a_vdv", "rhs_bmd2k", "rhs_bmd2k", "rhs_bmd2k", "rhs_bmd2m"]] call _fnc_saveToTemplate; +["vehiclesIFVs", []] call _fnc_saveToTemplate; +["vehiclesLightTanks", ["rhs_sprut_vdv", "rhs_sprut_vdv", "rhs_bmd4_vdv", "rhs_bmd4ma_vdv"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["rhs_t72be_tv", "rhs_t72bd_tv", "rhs_t90sab_tv", "rhs_t90a_tv", "rhs_t90sm_tv"]] call _fnc_saveToTemplate; +["vehiclesAA", ["rhs_zsu234_aa"]] call _fnc_saveToTemplate; + +["vehiclesTransportBoats", ["O_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["rhsusf_mkvsoc"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["rhs_btr80_vdv", "rhs_btr80a_vdv"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["RHS_Su25SM_vvs"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["RHS_T50_vvs_blueonblue", "RHS_T50_vvs_054", "RHS_T50_vvs_generic_ext"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["RHS_Mi8AMT_vdv"]] call _fnc_saveToTemplate; // Mi-8 as paratrooper plane + +["vehiclesHelisLight", ["rhs_ka60_grey"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["RHS_Mi8mt_vvs", "RHS_Mi8mt_vvs", "RHS_Mi8mt_Cargo_vvs", "RHS_Mi24Vt_vvs"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["RHS_Mi8MTV3_heavy_vvs", "RHS_Mi24P_CAS_vvs", "RHS_Mi8MTV3_heavy_vvs"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["rhs_mi28n_vvs", "RHS_Ka52_vvs", "rhs_mi28n_vvs", "RHS_Ka52_vvs"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["rhs_2s1_tv", "rhs_2s1_tv", "rhs_2s3_tv", "RHS_BM21_VV_01"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["rhs_2s1_tv", ["rhs_mag_3of56_35"]], +["rhs_2s3_tv",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["RHS_BM21_VV_01", ["rhs_mag_m21of_1"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["B_UAV_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["uavsPortable", ["rhs_pchela1t_vvsc"]] call _fnc_saveToTemplate; + +//Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: +["vehiclesMilitiaLightArmed", ["rhsgref_nat_uaz_dshkm", "rhsgref_nat_uaz_dshkm", "rhsgref_nat_uaz_spg9", "rhsgref_nat_uaz_ags"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["rhs_zil131_vdv", "rhs_zil131_open_vdv"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["rhs_uaz_open_vdv", "rhs_uaz_vdv"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["rhs_uaz_open_vv"]] call _fnc_saveToTemplate; + +["staticMGs", ["rhs_KORD_high_VDV"]] call _fnc_saveToTemplate; +["staticAT", ["rhs_Kornet_9M133_2_vdv"]] call _fnc_saveToTemplate; +["staticAA", ["rhs_Igla_AA_pod_vdv", "RHS_ZU23_VDV"]] call _fnc_saveToTemplate; +["staticMortars", ["rhs_2b14_82mm_vdv"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_mag_3vo18_10"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "rhs_mag_d832du_10"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "rhs_mag_3vs25m_10"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +#include "RHS_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["AsianHead_A3_01", "AsianHead_A3_02", "AsianHead_A3_03", "AsianHead_A3_04", "AsianHead_A3_05", "AsianHead_A3_06", "AsianHead_A3_07", "Mason_v2", "Oakes_v2", "RHS_GreekHead_A3_08", "RHS_GreekHead_A3_09", "RHS_LivonianHead_1", "RHS_LivonianHead_10", "RHS_LivonianHead_2", "RHS_LivonianHead_3", "RHS_LivonianHead_4", "RHS_LivonianHead_5", "RHS_LivonianHead_6", "RHS_LivonianHead_7", "RHS_RussianHead_1", "RHS_WhiteHead_01", "RHS_WhiteHead_04", "RHS_WhiteHead_05", "RHS_WhiteHead_06", "RHS_WhiteHead_07", "RHS_WhiteHead_08", "RHS_WhiteHead_09", "RHS_WhiteHead_10", "RHS_WhiteHead_11", "RHS_WhiteHead_14", "RHS_WhiteHead_15", "RHS_WhiteHead_16", "RHS_WhiteHead_25", "RHS_WhiteHead_27", "RHS_WhiteHead_28", "RHS_WhiteHead_32", "RussianHead_1", "RussianHead_2", "RussianHead_3", "RussianHead_4", "RussianHead_5", "Smith_v2"]] call _fnc_saveToTemplate; +["voices", ["RHS_Male01RUS", "RHS_Male02RUS", "RHS_Male03RUS", "RHS_Male04RUS", "RHS_Male05RUS"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["shotGuns", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg26", "", "", "",[""], [], ""], +["rhs_weap_rshg2", "", "", "",[""], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VM_mag", "rhs_rpg7_type69_airburst_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; +_loadoutData set ["ATLaunchers", ["rhs_weap_rpg26", "rhs_weap_rshg2"]]; +_loadoutData set ["heavyATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; +_loadoutData set ["AALaunchers", ["rhs_weap_igla"]]; +_loadoutData set ["sidearms", [ +"rhs_weap_makarov_pm", "rhs_weap_pya", "rhs_weap_6p53"]]; + +_loadoutData set ["ATMines", ["rhs_mag_mine_ptm1", "rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_ozm72_a_mag", "rhs_mine_ozm72_b_mag", "rhs_mine_ozm72_c_mag", "rhs_mag_mine_pfm1", "rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhs_ec200_mag"]]; +_loadoutData set ["heavyExplosives", ["rhs_ec400_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgn", "rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_rdg2_white"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_nspd"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhs_1PN138"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhs_pdu4"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["slVests", []]; +_loadoutData set ["medVests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["medBackpacks", ["rhs_medic_bag"]]; +_loadoutData set ["atBackpacks", ["rhs_rpg_empty"]]; +_loadoutData set ["aaBackpacks", ["B_Carryall_oli"]]; +_loadoutData set ["engBackpacks", ["rhs_assault_umbts_engineer_empty"]]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHat", ["rhs_beret_vdv1", "rhs_beret_vdv2", "rhs_beret_vdv3"]]; +_loadoutData set ["sniHats", ["rhs_6m2_1"]]; + + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", ["rhs_uniform_gorka_1_b"]]; +_sfLoadoutData set ["vests", ["rhs_6b45_desert", "rhs_6sh92_vsr_vog_headset"]]; +_sfLoadoutData set ["slVests", ["rhs_6b23_ML_vydra_3m"]]; +_sfLoadoutData set ["glVests", ["rhs_6b23_ML_6sh92_vog_headset"]]; +_sfLoadoutData set ["backpacks", ["rhsgref_tortila_specter", "rhs_tortila_khaki"]]; +_sfLoadoutData set ["helmets", ["rhs_altyn_visordown", "rhs_fieldcap_helm_ml"]]; +_sfLoadoutData set ["slHat", ["rhs_beret_vdv_early"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator"]]; + +_sfLoadoutData set ["slRifles", [ +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_gp25", "rhs_acc_dtk4screws", "", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_dtk4short", "", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01_b33", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25", "rhs_acc_dtk4screws", "", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk4screws", "", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_dtk4short", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25_npz", "rhs_acc_dtk4short", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_dtk4short", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_dtk4short", "rhs_acc_perst1ik_ris", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["rhs_weap_pp2000", "", "", "rhs_acc_1p87", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_rakursPM", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_ekp8_18", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "", ["rhs_mag_9x19mm_7n31_44"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_aks74un", "rhs_acc_dtk4short", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_aks74un", "rhs_acc_dtk4short", "", "", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_vss_grip", "", "rhs_acc_perst1ik_ris", "rhs_acc_pkas", ["rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_vss_grip", "", "rhs_acc_perst1ik_ris", "rhs_acc_pso1m21", ["rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_ffg2"] +]]; +_sfLoadoutData set ["machineGuns", [ +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p78", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p78", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_pkp", "", "", "rhs_acc_1p29", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p78", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_pkas", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp_wd", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp_wd_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svds", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["rhs_weap_pb_6p9", "rhs_acc_6p9_suppressor", "", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["uniforms", ["rhs_uniform_vdv_mflora"]]; +_militaryLoadoutData set ["vests", ["rhs_6b23_ML_rifleman", "rhs_6b23_ML_6sh92"]]; +_militaryLoadoutData set ["slVests", ["rhs_6b45_desert"]]; +_militaryLoadoutData set ["glVests", ["rhs_6b23_ML_6sh92_vog"]]; +_militaryLoadoutData set ["backpacks", ["rhsgref_tortila_specter", "rhs_tortila_khaki", "B_AssaultPack_cbr"]]; +_militaryLoadoutData set ["helmets", ["rhs_6b27m_ml_bala", "rhs_6b27m_ML_ess_bala", "rhs_fieldcap_helm_ml", "rhs_fieldcap_ml"]]; +_militaryLoadoutData set ["binoculars", ["rhsusf_bino_m24_ARD", "rhsusf_bino_m24_ARD", "Laserdesignator"]]; + +_militaryLoadoutData set ["slRifles", [ +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhs_acc_1p63", ["rhs_30Rnd_762x39mm_polymer_89", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak104", "rhs_acc_dtk3", "rhs_acc_perst1ik", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak104", "rhs_acc_dtk3", "rhs_acc_perst1ik", "rhs_acc_1p78", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "rhs_acc_perst1ik", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], [], ""], +["rhs_weap_ak74m_zenitco01_b33", "rhs_acc_dtk", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7U1_AK"], [], ""], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N22_AK", "rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak103_gp25", "rhs_acc_dtk", "", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25", "rhs_acc_dtk", "", "rhs_acc_1p78", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_uuk", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_uuk", "", "rhs_acc_1p78", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_top", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_top", "rhs_acc_ekp8_18", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74m_camo_npz", "rhs_acc_dtk3", "rhs_acc_2dpZenit", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhsusf_acc_RM05_fwd", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_asval", "", "", "rhs_acc_pso1m21", ["rhs_20rnd_9x39mm_SP6"], [], ""], +"rhs_weap_pp2000" +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk1", "", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25", "rhs_acc_dtk1", "", "rhs_acc_1p63", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_fullplum_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_rpk74m_npz", "rhs_acc_dtkrpk", "rhs_acc_perst1ik", "rhs_acc_ekp8_18",["rhs_60Rnd_545X39_AK_Green", "rhs_60Rnd_545X39_7U1_AK"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p29",["rhs_100Rnd_762x54mmR_7N13", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p78",["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp_wd", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_asval_grip", "", "", "rhs_acc_pso1m2", ["rhs_20rnd_9x39mm_SP6"], [], ""], +["rhs_weap_svds", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["rhs_uniform_afghanka_moldovan_ttsko_blue"]]; +_policeLoadoutData set ["vests", ["rhs_belt_AK_back", "rhs_belt_svd"]]; +_policeLoadoutData set ["helmets", ["rhs_fieldcap_m88_moldovan_ttsko_blue", "rhs_fieldcap_m88_moldovan_ttsko_blue_back"]]; +_policeLoadoutData set ["rifles", [ +["rhs_weap_aks74u", "", "", "", ["rhs_30Rnd_545x39_7U1_AK"], [], ""] +]]; +_policeLoadoutData set ["shotGuns", [ +["rhs_weap_Izh18", "", "", "", ["rhsgref_1Rnd_00Buck", "rhsgref_1Rnd_Slug"], [], ""] +]]; +_policeLoadoutData set ["SMGs", [ +["rhs_weap_savz61", "", "", "", ["rhsgref_20rnd_765x17_vz61"], [], ""], +"rhs_weap_pp2000" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["rhs_uniform_afghanka_winter_moldovan_ttsko"]]; +_militiaLoadoutData set ["vests", ["rhs_belt_AK_back"]]; +_militiaLoadoutData set ["slVests", ["rhs_suspender_SKS"]]; +_militiaLoadoutData set ["glVests", ["rhs_6sh92_vsr_vog"]]; +_militiaLoadoutData set ["backpacks", ["rhs_rd54_vest"]]; +_militiaLoadoutData set ["helmets", ["rhs_fieldcap_m88", "rhs_fieldcap_m88_back", "rhs_ssh68_2"]]; +_militiaLoadoutData set ["sniHats", ["H_Booniehat_oli"]]; + +_militiaLoadoutData set ["rifles", [ +["rhs_weap_ak74m_camo", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_camo_AK"], [], ""], +["rhs_weap_ak74_3", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N6_green_AK", "rhs_30Rnd_545x39_7N6M_green_AK"], [], ""], +["rhs_weap_akms", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_aks74un", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_pp2000", "", "", "", ["rhs_mag_9x19mm_7n31_44"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_aks74_gp25", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_aks74_gp25", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_m38_rail", "", "", "rhsusf_acc_LEUPOLDMK4", ["rhsgref_5Rnd_762x54_m38"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", ["rhs_weap_m38"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", ["rhs_uniform_vkpo"]]; +_crewLoadoutData set ["vests", ["rhs_6b45_light"]]; +_crewLoadoutData set ["helmets", ["rhs_6b48"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["rhs_uniform_df15"]]; +_pilotLoadoutData set ["vests", ["rhs_vest_commander"]]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_alt", "rhs_zsh7a_mike", "rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["slVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["medBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["atBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "lightATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["atBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["lightATLaunchers", "heavyATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["aaBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["SMGs", "rifles", "shotGuns"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Temperate.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Temperate.sqf new file mode 100644 index 0000000000..67be5e2fff --- /dev/null +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_AI_VDV_Temperate.sqf @@ -0,0 +1,898 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "VDV"] call _fnc_saveToTemplate; +["spawnMarkerName", "VDV Support Corridor"] call _fnc_saveToTemplate; + +["flag", "rhs_Flag_Russia_F"] call _fnc_saveToTemplate; +["flagTexture", "rhsafrf\addons\rhs_main\data\Flag_vdv_CO.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "rhs_flag_vdv"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; //Don't touch or you die a sad and lonely death! +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["rhs_tigr_3camo_vdv"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["rhs_tigr_sts_3camo_vdv"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["rhs_kamaz5350_open_vdv", "rhs_kamaz5350_flatbed_cover_vdv"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["rhs_kamaz5350_flatbed_cover_vdv", "rhs_kamaz5350_flatbed_vdv"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["RHS_Ural_Ammo_VDV_01"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["rhs_gaz66_repair_vdv"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["RHS_Ural_Fuel_VDV_01"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["rhs_gaz66_ap2_vdv"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["rhsgref_BRDM2_vdv", "rhs_btr80_vdv"]] call _fnc_saveToTemplate; +["vehiclesAPCs", ["rhs_bmd1p", "rhs_bmd1k", "rhs_bmd1r", "rhs_btr80a_vdv", "rhs_bmd2k", "rhs_bmd2k", "rhs_bmd2k", "rhs_bmd2m"]] call _fnc_saveToTemplate; +["vehiclesIFVs", []] call _fnc_saveToTemplate; +["vehiclesLightTanks", ["rhs_sprut_vdv", "rhs_sprut_vdv", "rhs_bmd4_vdv", "rhs_bmd4ma_vdv"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["rhs_t72be_tv", "rhs_t72bd_tv", "rhs_t90sab_tv", "rhs_t90a_tv", "rhs_t90sm_tv"]] call _fnc_saveToTemplate; +["vehiclesAA", ["rhs_zsu234_aa"]] call _fnc_saveToTemplate; + +["vehiclesTransportBoats", ["O_G_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["rhsusf_mkvsoc"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["rhs_btr80_vdv", "rhs_btr80a_vdv"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["RHS_Su25SM_vvs"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["RHS_T50_vvs_blueonblue", "RHS_T50_vvs_054", "RHS_T50_vvs_generic_ext"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["RHS_Mi8AMT_vdv"]] call _fnc_saveToTemplate; // Mi-8 as paratrooper plane + +["vehiclesHelisLight", ["rhs_ka60_grey"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["RHS_Mi8mt_vvs", "RHS_Mi8mt_vvs", "RHS_Mi8mt_Cargo_vvs", "RHS_Mi24Vt_vvs"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["RHS_Mi8MTV3_heavy_vvs", "RHS_Mi24P_CAS_vvs", "RHS_Mi8MTV3_heavy_vvs"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["rhs_mi28n_vvs", "RHS_Ka52_vvs", "rhs_mi28n_vvs", "RHS_Ka52_vvs"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["rhs_2s1_tv", "rhs_2s1_tv", "rhs_2s3_tv", "RHS_BM21_VV_01"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["rhs_2s1_tv", ["rhs_mag_3of56_35"]], +["rhs_2s3_tv",["rhs_mag_HE_2a33", "rhs_mag_WP_2a33"]], +["RHS_BM21_VV_01", ["rhs_mag_m21of_1"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["B_UAV_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["uavsPortable", ["rhs_pchela1t_vvsc"]] call _fnc_saveToTemplate; + +//Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: +["vehiclesMilitiaLightArmed", ["rhsgref_nat_uaz_dshkm", "rhsgref_nat_uaz_dshkm", "rhsgref_nat_uaz_spg9", "rhsgref_nat_uaz_ags"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["rhs_zil131_vdv", "rhs_zil131_open_vdv"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["rhs_uaz_open_vdv", "rhs_uaz_vdv"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["rhs_uaz_open_vv"]] call _fnc_saveToTemplate; + +["staticMGs", ["rhs_KORD_high_VDV"]] call _fnc_saveToTemplate; +["staticAT", ["rhs_Kornet_9M133_2_vdv"]] call _fnc_saveToTemplate; +["staticAA", ["rhs_Igla_AA_pod_vdv", "RHS_ZU23_VDV"]] call _fnc_saveToTemplate; +["staticMortars", ["rhs_2b14_82mm_vdv"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "rhs_mag_3vo18_10"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "rhs_mag_d832du_10"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "rhs_mag_3vs25m_10"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["rhs_mine_tm62m"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["rhs_mine_pmn2"]] call _fnc_saveToTemplate; + +#include "RHS_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["faces", ["AsianHead_A3_01", "AsianHead_A3_02", "AsianHead_A3_03", "AsianHead_A3_04", "AsianHead_A3_05", "AsianHead_A3_06", "AsianHead_A3_07", "Mason_v2", "Oakes_v2", "RHS_GreekHead_A3_08", "RHS_GreekHead_A3_09", "RHS_LivonianHead_1", "RHS_LivonianHead_10", "RHS_LivonianHead_2", "RHS_LivonianHead_3", "RHS_LivonianHead_4", "RHS_LivonianHead_5", "RHS_LivonianHead_6", "RHS_LivonianHead_7", "RHS_RussianHead_1", "RHS_WhiteHead_01", "RHS_WhiteHead_04", "RHS_WhiteHead_05", "RHS_WhiteHead_06", "RHS_WhiteHead_07", "RHS_WhiteHead_08", "RHS_WhiteHead_09", "RHS_WhiteHead_10", "RHS_WhiteHead_11", "RHS_WhiteHead_14", "RHS_WhiteHead_15", "RHS_WhiteHead_16", "RHS_WhiteHead_25", "RHS_WhiteHead_27", "RHS_WhiteHead_28", "RHS_WhiteHead_32", "RussianHead_1", "RussianHead_2", "RussianHead_3", "RussianHead_4", "RussianHead_5", "Smith_v2"]] call _fnc_saveToTemplate; +["voices", ["RHS_Male01RUS", "RHS_Male02RUS", "RHS_Male03RUS", "RHS_Male04RUS", "RHS_Male05RUS"]] call _fnc_saveToTemplate; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["shotGuns", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +["rhs_weap_rpg26", "", "", "",[""], [], ""], +["rhs_weap_rshg2", "", "", "",[""], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v",["rhs_rpg7_PG7VM_mag", "rhs_rpg7_type69_airburst_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; +_loadoutData set ["ATLaunchers", ["rhs_weap_rpg26", "rhs_weap_rshg2"]]; +_loadoutData set ["heavyATLaunchers", [ +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""], +["rhs_weap_rpg7", "", "", "rhs_acc_pgo7v3",["rhs_rpg7_PG7VL_mag", "rhs_rpg7_PG7VR_mag", "rhs_rpg7_OG7V_mag"], [], ""] +]]; +_loadoutData set ["AALaunchers", ["rhs_weap_igla"]]; +_loadoutData set ["sidearms", [ +"rhs_weap_makarov_pm", "rhs_weap_pya", "rhs_weap_6p53"]]; + +_loadoutData set ["ATMines", ["rhs_mag_mine_ptm1", "rhs_mine_tm62m_mag"]]; +_loadoutData set ["APMines", ["rhs_mine_ozm72_a_mag", "rhs_mine_ozm72_b_mag", "rhs_mine_ozm72_c_mag", "rhs_mag_mine_pfm1", "rhs_mine_pmn2_mag"]]; +_loadoutData set ["lightExplosives", ["rhs_ec200_mag"]]; +_loadoutData set ["heavyExplosives", ["rhs_ec400_mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["rhs_mag_rgn", "rhs_mag_rgo"]]; +_loadoutData set ["smokeGrenades", ["rhs_mag_rdg2_white"]]; +_loadoutData set ["signalsmokeGrenades", ["rhs_mag_nspd"]]; + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["rhs_1PN138"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["rhs_pdu4"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["slVests", []]; +_loadoutData set ["medVests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["medBackpacks", ["rhs_medic_bag"]]; +_loadoutData set ["atBackpacks", ["rhs_rpg_empty"]]; +_loadoutData set ["aaBackpacks", ["B_Carryall_oli"]]; +_loadoutData set ["engBackpacks", ["rhs_assault_umbts_engineer_empty"]]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHat", ["rhs_beret_vdv1", "rhs_beret_vdv2", "rhs_beret_vdv3"]]; +_loadoutData set ["sniHats", ["rhs_Booniehat_digi"]]; + + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", ["rhs_uniform_6sh122_gloves_v1"]]; +_sfLoadoutData set ["vests", ["rhs_6b23_digi_6sh92_Spetsnaz", "rhs_6b23_digi_6sh92_spetsnaz2"]]; +_sfLoadoutData set ["slVests", ["rhs_6b23_digi_6sh92_headset_spetsnaz", "rhs_6b23_digi_6sh92_Vog_Radio_Spetsnaz"]]; +_sfLoadoutData set ["glVests", ["rhs_6b23_digi_6sh92_Vog_Spetsnaz", "rhs_6b23_digi_6sh92_Vog_Radio_Spetsnaz"]]; +_sfLoadoutData set ["backpacks", ["rhs_assault_umbts", "B_Kitbag_sgg", "rhs_sidor"]]; +_sfLoadoutData set ["helmets", ["rhs_Booniehat_digi", "rhs_altyn", "rhs_altyn_novisor", "rhs_altyn_novisor_ess", "rhs_gssh18"]]; +_sfLoadoutData set ["slHat", ["rhs_beret_mvd"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_03"]]; + +_sfLoadoutData set ["slRifles", [ +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_gp25", "rhs_acc_dtk4screws", "", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_dtk4short", "", "rhs_acc_1p29", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk4screws", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01_b33", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk4short", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25", "rhs_acc_dtk4screws", "", "rhs_acc_pkas", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk4screws", "", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm_89"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_dtk4short", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25_npz", "rhs_acc_dtk4short", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_dtk4short", "rhs_acc_perst1ik_ris", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_dtk4short", "rhs_acc_perst1ik_ris", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N22_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VG40TB", "rhs_VG40OP_white"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["rhs_weap_pp2000", "", "", "rhs_acc_1p87", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_rakursPM", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_ekp8_18", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "rhs_acc_okp7_picatinny", ["rhs_mag_9x19mm_7n31_44"], [], ""], +["rhs_weap_pp2000", "", "", "", ["rhs_mag_9x19mm_7n31_44"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["rhs_weap_aks74un", "rhs_acc_dtk4short", "", "rhs_acc_pkas", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_aks74un", "rhs_acc_dtk4short", "", "", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_vss_grip", "", "rhs_acc_perst1ik_ris", "rhs_acc_pkas", ["rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_vss_grip", "", "rhs_acc_perst1ik_ris", "rhs_acc_pso1m21", ["rhs_20rnd_9x39mm_SP5"], [], "rhs_acc_grip_ffg2"] +]]; +_sfLoadoutData set ["machineGuns", [ +["rhs_weap_ak105_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p78", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak105_zenitco01", "rhs_acc_dtk3", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_60Rnd_545X39_7N22_AK", "rhs_60Rnd_545X39_AK_Green"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p87", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_pkas", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p78", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak104_zenitco01", "rhs_acc_dtk1", "rhs_acc_perst3_2dp_h", "rhs_acc_1p29", ["rhs_75Rnd_762x39mm_89", "rhs_75Rnd_762x39mm_tracer"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_pkp", "", "", "rhs_acc_1p29", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p78", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_pkas", ["rhs_100Rnd_762x54mmR_7N26", "rhs_100Rnd_762x54mmR_green"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp_wd", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp_wd_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svdp_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svds", "rhs_acc_tgpv2", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_svds_npz", "rhs_acc_tgpv2", "", "rhs_acc_dh520x56", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; +_sfLoadoutData set ["sidearms", [ +["rhs_weap_pb_6p9", "rhs_acc_6p9_suppressor", "", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["uniforms", ["rhs_uniform_vdv_emr", "rhs_uniform_vkpo_gloves"]]; +_militaryLoadoutData set ["vests", ["rhs_6b45_rifleman", "rhs_6b45_rifleman_2"]]; +_militaryLoadoutData set ["slVests", ["rhs_6b45_off"]]; +_militaryLoadoutData set ["glVests", ["rhs_6b45_grn"]]; +_militaryLoadoutData set ["backpacks", ["rhs_rk_sht_30_emr", "rhs_tortila_emr", "rhs_rk_sht_30_emr_engineer_empty"]]; +_militaryLoadoutData set ["helmets", ["rhs_6b47_ess_bala", "rhs_6b7_1m_bala2_emr", "rhs_6b7_1m_emr_ess", "rhs_6b28_ess", "rhs_6b7_1m_olive", "rhs_6b7_1m_bala2_olive"]]; +_militaryLoadoutData set ["binoculars", ["rhsusf_bino_m24_ARD", "rhsusf_bino_m24_ARD", "Laserdesignator_03"]]; + +_militaryLoadoutData set ["slRifles", [ +["rhs_weap_ak103_zenitco01_b33", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhs_acc_okp7_picatinny", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak103_zenitco01", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhs_acc_1p63", ["rhs_30Rnd_762x39mm_polymer_89", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak104", "rhs_acc_dtk3", "rhs_acc_perst1ik", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak104", "rhs_acc_dtk3", "rhs_acc_perst1ik", "rhs_acc_1p78", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "rhs_acc_perst1ik", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], [], ""], +["rhs_weap_ak74m_zenitco01_b33", "rhs_acc_dtk", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7U1_AK"], [], ""], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N22_AK", "rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74mr", "rhs_acc_dtk1", "", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N10_AK", "rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak103_gp25", "rhs_acc_dtk", "", "rhs_acc_1p29", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25", "rhs_acc_dtk", "", "rhs_acc_1p78", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74mr_gp25", "rhs_acc_uuk", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_gp25", "rhs_acc_uuk", "", "rhs_acc_1p78", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_top", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak104_zenitco01_b33", "rhs_acc_dtk3", "rhs_acc_perst3_top", "rhs_acc_ekp8_18", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], "rhs_acc_grip_rk6"], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_ffg2"], +["rhs_weap_ak74mr", "rhs_acc_uuk", "rhs_acc_perst1ik", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], [], "rhs_acc_grip_rk2"], +["rhs_weap_ak74m_camo_npz", "rhs_acc_dtk3", "rhs_acc_2dpZenit", "rhs_acc_ekp8_18", ["rhs_30Rnd_545x39_7N22_AK"], [], ""], +["rhs_weap_ak74m_zenitco01", "rhs_acc_dtk", "rhs_acc_perst1ik", "rhsusf_acc_RM05_fwd", ["rhs_30Rnd_545x39_7N22_AK"], [], "rhs_acc_grip_ffg2"] +]]; +_militaryLoadoutData set ["carbines", [ +["rhs_weap_asval", "", "", "rhs_acc_pso1m21", ["rhs_20rnd_9x39mm_SP6"], [], ""], +"rhs_weap_pp2000" +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_ak103_gp25_npz", "rhs_acc_dtk1", "", "rhs_acc_1p87", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak103_gp25", "rhs_acc_dtk1", "", "rhs_acc_1p63", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74n_2_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_1p87", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_ak74m_fullplum_gp25_npz", "rhs_acc_dtk3", "", "rhs_acc_rakursPM", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_militaryLoadoutData set ["machineGuns", [ +["rhs_weap_rpk74m_npz", "rhs_acc_dtkrpk", "rhs_acc_perst1ik", "rhs_acc_ekp8_18",["rhs_60Rnd_545X39_AK_Green", "rhs_60Rnd_545X39_7U1_AK"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p29",["rhs_100Rnd_762x54mmR_7N13", "rhs_100Rnd_762x54mmR_green"], [], ""], +["rhs_weap_pkp", "", "", "rhs_acc_1p78",["rhs_100Rnd_762x54mmR", "rhs_100Rnd_762x54mmR_green"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["rhs_weap_svdp_wd", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""], +["rhs_weap_asval_grip", "", "", "rhs_acc_pso1m2", ["rhs_20rnd_9x39mm_SP6"], [], ""], +["rhs_weap_svds", "", "", "rhs_acc_pso1m2", ["rhs_10Rnd_762x54mmR_7N14"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["rhs_weap_t5000", "", "", "rhs_acc_dh520x56", [], [], "rhs_acc_harris_swivel"] +]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["rhs_uniform_afghanka_moldovan_ttsko_blue"]]; +_policeLoadoutData set ["vests", ["rhs_belt_AK_back", "rhs_belt_svd"]]; +_policeLoadoutData set ["helmets", ["rhs_fieldcap_m88_moldovan_ttsko_blue", "rhs_fieldcap_m88_moldovan_ttsko_blue_back"]]; +_policeLoadoutData set ["rifles", [ +["rhs_weap_aks74u", "", "", "", ["rhs_30Rnd_545x39_7U1_AK"], [], ""] +]]; +_policeLoadoutData set ["shotGuns", [ +["rhs_weap_Izh18", "", "", "", ["rhsgref_1Rnd_00Buck", "rhsgref_1Rnd_Slug"], [], ""] +]]; +_policeLoadoutData set ["SMGs", [ +["rhs_weap_savz61", "", "", "", ["rhsgref_20rnd_765x17_vz61"], [], ""], +"rhs_weap_pp2000" +]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["rhs_uniform_afghanka_winter_moldovan_ttsko"]]; +_militiaLoadoutData set ["vests", ["rhs_belt_AK_back"]]; +_militiaLoadoutData set ["slVests", ["rhs_suspender_SKS"]]; +_militiaLoadoutData set ["glVests", ["rhs_6sh92_vsr_vog"]]; +_militiaLoadoutData set ["backpacks", ["rhs_rd54_vest"]]; +_militiaLoadoutData set ["helmets", ["rhs_fieldcap_m88", "rhs_fieldcap_m88_back", "rhs_ssh68_2"]]; +_militiaLoadoutData set ["sniHats", ["H_Booniehat_oli"]]; + +_militiaLoadoutData set ["rifles", [ +["rhs_weap_ak74m_camo", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_camo_AK"], [], ""], +["rhs_weap_ak74_3", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N6_green_AK", "rhs_30Rnd_545x39_7N6M_green_AK"], [], ""], +["rhs_weap_akms", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], [], ""], +["rhs_weap_aks74un", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["rhs_weap_pp2000", "", "", "", ["rhs_mag_9x19mm_7n31_44"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["rhs_weap_aks74_gp25", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_akms_gp25", "rhs_acc_dtkakm", "", "", ["rhs_30Rnd_762x39mm", "rhs_30Rnd_762x39mm_tracer"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""], +["rhs_weap_aks74_gp25", "rhs_acc_dtk", "", "", ["rhs_30Rnd_545x39_7N10_AK"], ["rhs_VOG25", "rhs_VOG25", "rhs_VOG25P", "rhs_VG40OP_white"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["rhs_weap_pp2000"]]; +_militiaLoadoutData set ["machineGuns", ["rhs_weap_pkm"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["rhs_weap_m38_rail", "", "", "rhsusf_acc_LEUPOLDMK4", ["rhsgref_5Rnd_762x54_m38"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", ["rhs_weap_m38"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["uniforms", ["rhs_uniform_vkpo"]]; +_crewLoadoutData set ["vests", ["rhs_6b45_light"]]; +_crewLoadoutData set ["helmets", ["rhs_6b48"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["rhs_uniform_df15"]]; +_pilotLoadoutData set ["vests", ["rhs_vest_commander"]]; +_pilotLoadoutData set ["helmets", ["rhs_zsh7a_mike_alt", "rhs_zsh7a_mike", "rhs_zsh7a_mike_green", "rhs_zsh7a_mike_green_alt"]]; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["slVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["medBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["atBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "lightATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["atBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["lightATLaunchers", "heavyATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["aaBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["rifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + + [selectRandom ["SMGs", "rifles", "shotGuns"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_NAPA.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_NAPA.sqf index e102a9b4c1..7fb0a36c75 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_NAPA.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_NAPA.sqf @@ -23,7 +23,7 @@ ["vehiclesCivCar", ["C_Offroad_01_F", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_SUV_01_F"]] call _fnc_saveToTemplate; ["vehiclesCivTruck", ["RHS_Ural_Open_Civ_01", "C_Van_01_transport_F", "C_Van_02_transport_F", "C_Van_02_vehicle_F"]] call _fnc_saveToTemplate; ["vehiclesCivHeli", ["RHS_Mi8t_civilian"]] call _fnc_saveToTemplate; -["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat"]] call _fnc_saveToTemplate; +["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat", "rhsgref_civ_canoe"]] call _fnc_saveToTemplate; ["staticMGs", ["rhsgref_nat_DSHKM", "rhsgref_nat_DSHKM_Mini_TriPod", "rhsgref_nat_NSV_TriPod", "rhs_KORD_high_VMF"]] call _fnc_saveToTemplate; ["staticAT", ["rhsgref_nat_SPG9"]] call _fnc_saveToTemplate; @@ -75,8 +75,6 @@ private _rebUniforms = [ "rhsgref_uniform_dpm_olive", "rhsgref_uniform_3color_desert", "rhsgref_uniform_gorka_1_f", - "rhsgref_uniform_TLA_1", - "rhsgref_uniform_TLA_2", "rhs_insurgent_uniform_1", "rhs_insurgent_uniform_2", "rhs_insurgent_uniform_3", diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_Vehicle_Attributes.sqf index 04cd52f81b..892d977cea 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_Reb_Vehicle_Attributes.sqf @@ -1,2 +1,3 @@ ["attributesVehicles", [ + ["rhsgref_civ_canoe", ["rebCost", 20]] ]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/RHS/RHS_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/RHS/RHS_Vehicle_Attributes.sqf index 5d03d655c4..dc7acdbf4a 100644 --- a/A3A/addons/core/Templates/Templates/RHS/RHS_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/RHS/RHS_Vehicle_Attributes.sqf @@ -19,6 +19,7 @@ // CDF trash planes ["rhs_l159_cdf_b_CDF", ["cost", 150]], ["rhs_l159_cdf_b_CDF_CAP", ["cost", 150]], + ["RHSGREF_A29B_HIDF", ["cost", 120]], // Apaches // ["RHS_AH64D_GS", ["cost", 300]], // no hellfires diff --git a/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE.sqf b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE.sqf new file mode 100644 index 0000000000..00af13df47 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE.sqf @@ -0,0 +1,897 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "SDF"] call _fnc_saveToTemplate; +["spawnMarkerName", "SDF Support Corridor"] call _fnc_saveToTemplate; + +["flag", "sfp_flagcarrier_sweden"] call _fnc_saveToTemplate; +["flagTexture", "\sfp_config\data\flag_sweden_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "sfp_marker_sweden"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["B_T_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["sfp_tgb16"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["sfp_tgb16_ksp58","sfp_tgb16_rws"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["sfp_bv206", "sfp_tgb1317", "sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["I_E_Truck_02_Ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["I_E_Truck_02_Box_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["I_E_Truck_02_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["sfp_tgb1314","I_E_Truck_02_Medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["sfp_pbv302_mounted", "sfp_pbv302","CUP_B_LAV25_HQ_green","CUP_B_LAV25_HQ_green"]] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["sfp_patgb360","CUP_B_LAV25M240_green"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["sfp_strf90c"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers +["vehiclesLightTanks", ["sfp_ikv91"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["sfp_strv122","sfp_strv122b"]] call _fnc_saveToTemplate; +["vehiclesAA", ["sfp_lvkv90c"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["sfp_gruppbat"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["sfp_strb90","sfp_strb90_rws"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["sfp_pbv302_mounted", "sfp_pbv302","CUP_B_LAV25_HQ_green","CUP_B_LAV25M240_green"]] call _fnc_saveToTemplate; + +private _vehiclesPlanesCAS = ["sfp_jas39", "sfp_jas39_rb15"]; + +if (allowUnfairSupports && (_side == EAST)) then { + _vehiclesPlanesCAS append ["sfp_jas39", "sfp_jas39_rb15", "sfp_jas39_bk90"]; +}; + +["vehiclesPlanesCAS", _vehiclesPlanesCAS] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["sfp_jas39_cap"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["sfp_tp84_2015"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["sfp_hkp6","sfp_hkp9"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["sfp_hkp9", "sfp_hkp9_sog", "sfp_hkp9_sog"]] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +["vehiclesHelisTransport", ["a3a_SFP_MH60S_Unarmed_FFV_USN","a3a_SFP_MH60S_Unarmed_USN","a3a_SFP_B_UH60S_USN"]] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", ["sfp_hkp9_rb55","CUP_B_AW159_GB"]] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["sfp_fh77","sfp_grkpbv90120"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [["sfp_fh77",["32Rnd_155mm_Mo_shells"]],["sfp_grkpbv90120",["sfp_2Rnd_120mm_Mo_shells"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["sfp_tgb16_ksp58_mp"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["sfp_tgb20"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["sfp_tgb16"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["sfp_police_offroad"]] call _fnc_saveToTemplate; + +["staticMGs", ["CUP_B_M2StaticMG_US"]] call _fnc_saveToTemplate; +["staticAT", ["CUP_B_TOW_TriPod_US"]] call _fnc_saveToTemplate; +["staticAA", ["CUP_B_RBS70_ACR"]] call _fnc_saveToTemplate; +["staticMortars", ["CUP_B_M252_US"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + +#include "SFP_Vehicle_Attributes.sqf" +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_06","GreekHead_A3_07","GreekHead_A3_08", +"GreekHead_A3_09","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03", +"WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08", +"WhiteHead_09","WhiteHead_10","WhiteHead_11","WhiteHead_12","WhiteHead_13", +"WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", +"WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +["sfFaces", ["sfp_face01_camo","sfp_face02_camo"]] call _fnc_saveToTemplate; +"sfp_swedish_names" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["CUP_launch_M136_Loaded"]]; +_loadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag"], ""] +]]; +_loadoutData set ["missileATLaunchers", ["sfp_rb57"]]; +_loadoutData set ["AALaunchers", ["CUP_launch_FIM92Stinger"]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr2000"]]; +_loadoutData set ["smokeGrenades", ["SmokeShell"]]; +_loadoutData set ["signalsmokeGrenades", ["SmokeShellBlue","SmokeShellGreen","SmokeShellOrange","SmokeShellPurple","SmokeShellRed","SmokeShellYellow"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["NVGoggles_INDEP"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", ["sfp_backpack_stridssack08"]]; +_loadoutData set ["latBackpacks", ["sfp_stridssele_backpack_grg"]]; +_loadoutData set ["atBackpacks", ["sfp_backpack_grg_loader"]]; +_loadoutData set ["hvBackpacks", ["sfp_backpack_stridssack2000"]]; +_loadoutData set ["slBackpacks", ["sfp_stridssack2000_ra_ksk12"]]; +_loadoutData set ["medBackpacks", ["sfp_backpack_sjvv9"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHats", ["sfp_army_beret"]]; +_loadoutData set ["sniHats", ["sfp_m90w_booniehat"]]; + +_loadoutData set ["facewear", ["G_Bandanna_oli","G_Shades_Black", "", ""]]; +_loadoutData set ["medicFacewear", ["sfp_armband_medic","sfp_armband_medic_white"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["sfp_m90w_uniform_dirty","sfp_m90w_uniform_boots_m08"]]; +_sfLoadoutData set ["vests", ["sfp_stridsvast2000_gl","sfp_kroppsskydd12"]]; +_sfLoadoutData set ["helmets", ["sfp_m90w_booniehat","sfp_m90green_helmet_clean_peltor_nvg_velcro","sfp_wool_beanie_green"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator"]]; +_sfLoadoutData set ["slHats", ["sfp_sf_beret"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr07"]]; + +_sfLoadoutData set ["rifles", [ +["sfp_ak5c_blk", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c_blk", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["sfp_ak5dmk2", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5dmk2", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_g36c", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_g36", "sfp_30Rnd_556x45_Stanag_g36","sfp_30Rnd_556x45_Stanag_g36" ], [], ""], +["sfp_g36c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_g36", "sfp_30Rnd_556x45_Stanag_g36","sfp_30Rnd_556x45_Stanag_g36" ], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5c_m203_blk", "muzzle_snds_M", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5c_m203", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["sfp_mp5_rail", "muzzle_snds_L", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""], +["sfp_cbj_ms", "sfp_muzzle_snds_cbj", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_650x25mag_subsonic", "sfp_30Rnd_650x25mag"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "muzzle_snds_H_MG_blk_F", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["sfp_ak4d", "muzzle_snds_B", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4_irtracer"], [], "bipod_01_F_blk"], +["sfp_ak5c_blk", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_3x_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_psg90_camo", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""] +]]; +_sfLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "muzzle_snds_L", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["sfp_m90w_uniform_modern"]]; +_militaryLoadoutData set ["vests", ["sfp_kroppsskydd12","sfp_kroppsskydd12_holster"]]; +_militaryLoadoutData set ["glVests", ["sfp_kroppsskydd12_gl","sfp_kroppsskydd12_tl"]]; +_militaryLoadoutData set ["mgVests", ["sfp_kroppsskydd12_mg"]]; +_militaryLoadoutData set ["medVests", ["sfp_kroppsskydd12_medic"]]; +_militaryLoadoutData set ["helmets", ["sfp_m90w_helmet_peltor","sfp_m90w_helmet_peltor_nvg","sfp_m90w_helmet_peltor_nomic"]]; + +_militaryLoadoutData set ["rifles", [ +["sfp_ak5c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c_alt", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["sfp_ak5dmk2", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5c_m203", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["sfp_kpistm45b", +["sfp_mp5_rail", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""]]]; +_militaryLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["sfp_ak4d", "", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], "bipod_01_F_blk"], +["sfp_ak5c_alt", "", "acc_pointer_IR", "sfp_optic_3x_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""] +]]; +_militaryLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["sfp_m90w_uniform_long_m08"]]; +_policeLoadoutData set ["vests", ["sfp_police_belt","sfp_police_tacVest"]]; +_policeLoadoutData set ["helmets", ["sfp_lgmp_beret"]]; +_policeLoadoutData set ["facewear", ["sfp_armband_mp"]]; + +_policeLoadoutData set ["antiInfantryGrenades", ["sfp_FlashBang"]]; +_policeLoadoutData set ["carbines", [["sfp_cga5p", "", "", "", ["CUP_20Rnd_556x45_Stanag", "CUP_20Rnd_556x45_Stanag_Tracer_Red"], [], ""]]]; +_policeLoadoutData set ["SMGs", [["sfp_mp5", "", "", "", ["sfp_30Rnd_9mm_mp5_JHP"], [], ""]]]; +_policeLoadoutData set ["shotguns", [ +["sfp_remington870", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""], +["sfp_remington870_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""] +]]; +_policeLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["sfp_m90w_uniform"]]; +_militiaLoadoutData set ["vests", ["sfp_stridsvast2000","sfp_stridsvast2000_light","sfp_stridsbalte_304k","sfp_stridsbalte_304k_extrabag","sfp_kroppsskydd94","sfp_kroppskydd94_rifle1"]]; +_militiaLoadoutData set ["glVests", ["sfp_stridsbalte_304k_gl","sfp_stridsvast2000_gl"]]; +_militiaLoadoutData set ["mgVests", ["sfp_stridsbalte_304k_ar","sfp_stridsvast2000_mg"]]; +_militiaLoadoutData set ["backpacks", ["sfp_stridssele_backpack"]]; +_militiaLoadoutData set ["hvBackpacks", ["sfp_backpack_lk35"]]; +_militiaLoadoutData set ["slBackpacks", ["sfp_ra180"]]; +_militiaLoadoutData set ["helmets", ["sfp_m90w_cap", "sfp_m90w_cap_alt"]]; +_militiaLoadoutData set ["slHats", ["sfp_homeguard_beret"]]; + +_militiaLoadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr56"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "", ["CUP_MAAWS_HEDP_M","CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; + +_militiaLoadoutData set ["rifles", [ +["sfp_ak4b", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4b", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4c", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["sfp_ak5d"]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4b_m203", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak4b_m203", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["sfp_kpistm45", "sfp_kpistm45b"]]; +_militiaLoadoutData set ["machineGuns", ["sfp_ksp58"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["sfp_ak4b", "", "", "sfp_optic_3x_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4c", "", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["sfp_ak4d", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sidearms", []]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["sfp_m90p_uniform"]]; +_crewLoadoutData set ["vests", ["sfp_kroppsskydd12_crew"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_I"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["sfp_m87_flying_suit"]]; +_pilotLoadoutData set ["vests", ["sfp_kroppsskydd12_crew"]]; +_pilotLoadoutData set ["helmets", ["H_PilotHelmetHeli_B"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + [["slHats", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["slBackpacks"] call _fnc_setBackpack; + + [selectRandom ["grenadeLaunchers", "rifles"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["medicFacewear"] call _fnc_setFacewear; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + [[selectRandom ["rifles", "SMGs","shotguns", "carbines"], selectRandom ["rifles", "SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + [[selectRandom ["rifles", "SMGs","shotguns", "carbines"], selectRandom ["rifles", "SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + private _at = selectRandom ["lightATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["latBackpacks"] call _fnc_setBackpack; //use the light grg pack if grg gunner + ["launcher", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + private _at = selectRandom ["missileATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["atBackpacks"] call _fnc_setBackpack; //use the grg pack if grg gunner + ["launcher", 2 + round(random 2)] call _fnc_addMagazines; + ["launcher", round(random 1)] call _fnc_addAdditionalMuzzleMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["mgVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"]call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"]call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [["sniperRifles", "marksmanRifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["shotguns", "SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["carbines"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early.sqf b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early.sqf new file mode 100644 index 0000000000..824b0986ba --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early.sqf @@ -0,0 +1,861 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "SDF"] call _fnc_saveToTemplate; +["spawnMarkerName", "SDF Support Corridor"] call _fnc_saveToTemplate; + +["flag", "sfp_flagcarrier_sweden"] call _fnc_saveToTemplate; +["flagTexture", "\sfp_config\data\flag_sweden_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "sfp_marker_sweden"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; + + +["vehiclesBasic", ["CUP_B_M1030_USA"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["sfp_tgb11","sfp_tgb1112"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["sfp_tgb1111_sog_ksp58"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["sfp_bv206", "sfp_tgb1317", "sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["I_E_Truck_02_Ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["I_E_Truck_02_Box_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["I_E_Truck_02_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["sfp_tgb1314","I_E_Truck_02_Medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["sfp_pbv302_mounted", "sfp_pbv302", "sfp_pbv302"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["sfp_strf90c"]] call _fnc_saveToTemplate; +["vehiclesLightTanks", ["sfp_ikv91"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["sfp_strv103c","sfp_strv102","sfp_strv121"]] call _fnc_saveToTemplate; +["vehiclesAA", ["sfp_lvkv90c"]] call _fnc_saveToTemplate; + + +["vehiclesTransportBoats", ["sfp_gruppbat"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["sfp_strb90"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["sfp_pbv302_mounted", "sfp_pbv302", "sfp_pbv302"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["sfp_jas39", "sfp_jas39_rb15"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["sfp_jas39_cap"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["sfp_tp84_2015"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["sfp_hkp6","sfp_hkp9"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["sfp_hkp9", "sfp_hkp9_sog", "sfp_hkp9_sog"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["CUP_B_CH47F_GB"]] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", ["sfp_hkp9_rb55","CUP_B_UH1D_armed_GER_KSK_Des"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["sfp_fh77"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [["sfp_fh77",["32Rnd_155mm_Mo_shells"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["sfp_tgb16_ksp58_mp"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["sfp_tgb20"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["sfp_tgb11"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["sfp_police_offroad"]] call _fnc_saveToTemplate; + +["staticMGs", ["CUP_B_M2StaticMG_US"]] call _fnc_saveToTemplate; +["staticAT", ["CUP_B_TOW_TriPod_US"]] call _fnc_saveToTemplate; +["staticAA", ["CUP_B_RBS70_ACR"]] call _fnc_saveToTemplate; +["staticMortars", ["CUP_B_M252_US"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + +#include "SFP_Vehicle_Attributes.sqf" +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_06","GreekHead_A3_07","GreekHead_A3_08", +"GreekHead_A3_09","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03", +"WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08", +"WhiteHead_09","WhiteHead_10","WhiteHead_11","WhiteHead_12","WhiteHead_13", +"WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", +"WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +["sfFaces", ["sfp_face01_camo","sfp_face02_camo"]] call _fnc_saveToTemplate; +"sfp_swedish_names" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["shotguns", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["CUP_launch_M136_Loaded"]]; +_loadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_mag", "sfp_grg_heat_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_66_mag", "sfp_grg_heat_66_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_62_mag","sfp_grg_heat_62_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", ["CUP_launch_FIM92Stinger"]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", []]; +_loadoutData set ["smokeGrenades", []]; +_loadoutData set ["signalsmokeGrenades", []]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", ["sfp_stridssele_backpack"]]; +_loadoutData set ["hvBackpacks", ["sfp_backpack_lk35"]]; +_loadoutData set ["latBackpacks", ["sfp_stridssele_backpack_grg"]]; +_loadoutData set ["atBackpacks", ["sfp_backpack_grg_loader"]]; +_loadoutData set ["slBackpacks", ["sfp_ra180"]]; +_loadoutData set ["medBackpacks", ["sfp_backpack_sjvv9"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHats", ["sfp_army_beret"]]; +_loadoutData set ["sniHats", ["sfp_m90w_booniehat"]]; + +_loadoutData set ["facewear", ["G_Bandanna_oli","G_Shades_Black", "", ""]]; +_loadoutData set ["medicFacewear", ["sfp_armband_medic","sfp_armband_medic_white"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["sfp_m90w_uniform"]]; +_sfLoadoutData set ["vests", ["sfp_stridsvast2000_light","sfp_stridsvast2000","sfp_kroppskydd94_sv2k_rifle1"]]; +_sfLoadoutData set ["helmets", ["sfp_m90w_booniehat","sfp_m90green_helmet_clean_peltor_nvg_velcro"]]; +_sfLoadoutData set ["slHats", ["sfp_kj_beret"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["rifles", [ +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5", "muzzle_snds_M", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5d", "", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5_m203", "muzzle_snds_M", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["sfp_mp5_rail", "muzzle_snds_L", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""], +["sfp_kpistm45", "", "", "", ["sfp_71Rnd_9mm_kpistm45"], [], ""]]]; +_sfLoadoutData set ["shotguns", []]; +_sfLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "muzzle_snds_H_MG_blk_F", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""]]]; +_sfLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "muzzle_snds_B", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4_irtracer"], [], ""], +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_susat_4x", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""]]]; +_sfLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_psg90_camo", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""]]]; +_sfLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "muzzle_snds_L", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["sfp_m90w_uniform"]]; +_militaryLoadoutData set ["vests", ["sfp_stridsbalte_304k","sfp_stridsbalte_304k_extrabag","sfp_stridsbalte_304k_ar","sfp_stridsbalte_304k_gl","sfp_kroppsskydd94","sfp_kroppskydd94_rifle1"]]; +_militaryLoadoutData set ["medVests", ["sfp_stridsbalte_304k_medic"]]; +_militaryLoadoutData set ["helmets", ["sfp_m90w_helmet_peltor","sfp_m90w_helmet_peltor_nvg","sfp_m90w_helmet_peltor_nomic"]]; + +_militaryLoadoutData set ["slRifles", [ +["sfp_ak5b", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["sfp_ak5b", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""], +["sfp_ak5d", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +"sfp_kpistm45", "sfp_kpistm45", "sfp_kpistm45", +["sfp_kpistm45", "", "", "", ["sfp_71Rnd_9mm_kpistm45"], [], ""] +]]; +_militaryLoadoutData set ["shotguns", [ +["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""], +["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", ["sfp_ksp58"]]; +_militaryLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak5b", "", "", "sfp_optic_susat_4x", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""]]]; +_militaryLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + + +_policeLoadoutData set ["uniforms", ["sfp_m59w_uniform"]]; +_policeLoadoutData set ["vests", ["sfp_police_belt"]]; +_policeLoadoutData set ["helmets", ["sfp_m37w_helmet_mp_green"]]; +_policeLoadoutData set ["facewear", ["sfp_armband_mp"]]; + +_policeLoadoutData set ["SMGs", ["sfp_kpistm45b"]]; +_policeLoadoutData set ["shotguns", [["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""],["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""]]]; +_policeLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""], +["CUP_hgun_TaurusTracker455", "", "", "", ["CUP_6Rnd_45ACP_M"], [], ""]]]; + + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["sfp_m90w_uniform"]]; +_militiaLoadoutData set ["vests", ["sfp_stridssele","sfp_stridssele_extrabag"]]; +_militiaLoadoutData set ["medVests", ["sfp_stridssele_medic"]]; +_militiaLoadoutData set ["helmets", ["sfp_m90w_cap", "sfp_m90w_cap_alt"]]; +_militiaLoadoutData set ["slHats", ["sfp_homeguard_beret"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "", ["sfp_grg_heat_66_mag", "sfp_grg_heat_66_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "", ["sfp_grg_heat_62_mag","sfp_grg_heat_62_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; + +_militiaLoadoutData set ["rifles", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""]]]; +_militiaLoadoutData set ["carbines", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""]]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["sfp_kpistm45b"]]; +_militiaLoadoutData set ["shotguns", [ +["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""], +["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", ["sfp_ksp58a"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["sidearms", [ +["CUP_hgun_FlareGun", "", "", "", ["CUP_FlareWhite_265_M","CUP_FlareRed_265_M","CUP_FlareGreen_265_M","CUP_FlareYellow_265_M","CUP_IllumFlareWhite_265_M","CUP_IllumFlareRed_265_M","CUP_IllumFlareGreen_265_M","CUP_IllumFlareYellow_265_M","CUP_StarClusterWhite_265_M","CUP_StarClusterRed_265_M","CUP_StarClusterGreen_265_M","CUP_StarClusterYellow_265_M"], [], ""], ""] +]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["sfp_m90p_uniform"]]; +_crewLoadoutData set ["vests", ["sfp_kroppskydd94_crew"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_I"]]; +_crewLoadoutData set ["facewear", ["G_Balaclava_blk", "G_Balaclava_combat", "G_Balaclava_lowprofile"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["sfp_m87_flying_suit"]]; +_pilotLoadoutData set ["vests", ["sfp_kroppsskydd94"]]; +_pilotLoadoutData set ["helmets", ["H_PilotHelmetHeli_B"]]; +_pilotLoadoutData set ["facewear", ["G_Bandanna_oli", "G_Aviator", "G_Squares_Tinted","G_Bandanna_aviator"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["slBackpacks"] call _fnc_setBackpack; + + [["slRifles", selectRandom ["grenadeLaunchers", "rifles"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 2] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["medicFacewear"] call _fnc_setFacewear; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["hvBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs","shotguns", "carbines"], selectRandom ["SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["hvBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs","shotguns", "carbines"], selectRandom ["SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + private _at = selectRandom ["lightATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["latBackpacks"] call _fnc_setBackpack; //use the light grg pack if grg gunner + ["launcher", 2] call _fnc_addMagazines; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["atBackpacks"] call _fnc_setBackpack; + + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["ATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2 + round(random 2)] call _fnc_addMagazines; + ["launcher", round(random 1)] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["shotguns", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["carbines"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early_snow.sqf b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early_snow.sqf new file mode 100644 index 0000000000..b99e3fa74c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_early_snow.sqf @@ -0,0 +1,854 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "SDF"] call _fnc_saveToTemplate; +["spawnMarkerName", "SDF Support Corridor"] call _fnc_saveToTemplate; + +["flag", "sfp_flagcarrier_sweden"] call _fnc_saveToTemplate; +["flagTexture", "\sfp_config\data\flag_sweden_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "sfp_marker_sweden"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["CUP_B_M1030_USA"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["sfp_tgb11","sfp_tgb1112"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["sfp_tgb1111_sog_ksp58"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["sfp_bv206_winter"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["I_E_Truck_02_Ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["I_E_Truck_02_Box_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["I_E_Truck_02_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["sfp_tgb1314","I_E_Truck_02_Medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["sfp_pbv302_mounted_snow", "sfp_pbv302_snow", "sfp_pbv302_snow"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["sfp_strf90c_snow"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers +["vehiclesLightTanks", ["sfp_ikv91_snow"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["sfp_strv103c","sfp_strv102","sfp_strv121_snow"]] call _fnc_saveToTemplate; +["vehiclesAA", ["sfp_lvkv90c_snow"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["sfp_gruppbat"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["sfp_strb90"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["sfp_pbv302_snow","sfp_pbv302_mounted_snow","sfp_pbv302_snow"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["sfp_jas39", "sfp_jas39_rb15"]] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["sfp_jas39_cap"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["sfp_tp84_2015"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["sfp_hkp6","sfp_hkp9"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["sfp_hkp9", "sfp_hkp9_sog", "sfp_hkp9_sog"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["CUP_B_CH47F_GB"]] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", ["sfp_hkp9_rb55","CUP_B_UH1D_armed_GER_KSK_Des"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["sfp_fh77"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [["sfp_fh77",["32Rnd_155mm_Mo_shells"]]]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["sfp_tgb16_ksp58_mp"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["sfp_tgb20"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["sfp_tgb11"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["sfp_police_offroad"]] call _fnc_saveToTemplate; + +["staticMGs", ["CUP_B_M2StaticMG_US"]] call _fnc_saveToTemplate; +["staticAT", ["CUP_B_TOW_TriPod_US"]] call _fnc_saveToTemplate; +["staticAA", ["CUP_B_RBS70_ACR"]] call _fnc_saveToTemplate; +["staticMortars", ["CUP_B_M252_US"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + +#include "SFP_Vehicle_Attributes.sqf" +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_06","GreekHead_A3_07","GreekHead_A3_08", +"GreekHead_A3_09","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03", +"WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08", +"WhiteHead_09","WhiteHead_10","WhiteHead_11","WhiteHead_12","WhiteHead_13", +"WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", +"WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +["sfFaces", ["sfp_face01_camo","sfp_face02_camo"]] call _fnc_saveToTemplate; +"sfp_swedish_names" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["CUP_launch_M136_Loaded"]]; +_loadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_mag", "sfp_grg_heat_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_66_mag", "sfp_grg_heat_66_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["sfp_grg_heat_62_mag","sfp_grg_heat_62_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; +_loadoutData set ["missileATLaunchers", []]; +_loadoutData set ["AALaunchers", ["CUP_launch_FIM92Stinger"]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", []]; +_loadoutData set ["smokeGrenades", []]; +_loadoutData set ["signalsmokeGrenades", []]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", []]; +_loadoutData set ["NVGs", []]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", ["sfp_stridssele_backpack"]]; +_loadoutData set ["hvBackpacks", ["sfp_backpack_lk35"]]; +_loadoutData set ["latBackpacks", ["sfp_stridssele_backpack_grg"]]; +_loadoutData set ["atBackpacks", ["sfp_backpack_grg_loader"]]; +_loadoutData set ["slBackpacks", ["sfp_ra180"]]; +_loadoutData set ["medBackpacks", ["sfp_backpack_sjvv9"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHats", ["sfp_army_beret"]]; +_loadoutData set ["sniHats", ["CUP_H_US_patrol_cap_winter"]]; + +_loadoutData set ["facewear", ["G_Bandanna_oli", "CUP_G_ESS_KHK_Facewrap_White", "CUP_G_PMC_Facewrap_Winter_Glasses_Ember","G_Shades_Black"]]; +_loadoutData set ["medicFacewear", ["sfp_armband_medic","sfp_armband_medic_white"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["sfp_m90s_uniform"]]; +_sfLoadoutData set ["vests", ["sfp_stridsvast2000_light","sfp_stridsvast2000","sfp_kroppskydd94_sv2k_rifle1"]]; +_sfLoadoutData set ["helmets", ["sfp_m90s_helmet"]]; +_sfLoadoutData set ["slHats", ["sfp_kj_beret"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["rifles", [ +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5_snow", "muzzle_snds_M", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5d", "muzzle_snds_M", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5d", "", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5_m203", "muzzle_snds_M", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["sfp_mp5_rail", "muzzle_snds_L", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""], +["sfp_kpistm45", "", "", "", ["sfp_71Rnd_9mm_kpistm45"], [], ""]]]; +_sfLoadoutData set ["shotguns", []]; +_sfLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "muzzle_snds_H_MG_blk_F", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""]]]; +_sfLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "muzzle_snds_B", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4_irtracer"], [], ""], +["sfp_ak5b", "muzzle_snds_M", "", "sfp_optic_susat_4x", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""]]]; +_sfLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_psg90_camo", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""]]]; +_sfLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "muzzle_snds_L", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["sfp_m90s_uniform"]]; +_militaryLoadoutData set ["vests", ["sfp_stridsbalte_304k","sfp_stridsbalte_304k_extrabag","sfp_stridsbalte_304k_ar","sfp_stridsbalte_304k_gl","sfp_kroppsskydd94","sfp_kroppskydd94_rifle1"]]; +_militaryLoadoutData set ["medVests", ["sfp_stridsbalte_304k_medic"]]; +_militaryLoadoutData set ["helmets", ["sfp_m90s_helmet_headset"]]; + +_militaryLoadoutData set ["slRifles", [ +["sfp_ak5b", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["sfp_ak5b", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5_snow", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""], +["sfp_ak5d", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +"sfp_kpistm45", "sfp_kpistm45", "sfp_kpistm45", +["sfp_kpistm45", "", "", "", ["sfp_71Rnd_9mm_kpistm45"], [], ""] +]]; +_militaryLoadoutData set ["shotguns", [["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""],["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""]]]; +_militaryLoadoutData set ["machineGuns", ["sfp_ksp58"]]; +_militaryLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak5b", "", "", "sfp_optic_susat_4x", ["sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag", "sfp_30Rnd_556x45_Stanag_tracer"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""]]]; +_militaryLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["sfp_m58w_uniform"]]; +_policeLoadoutData set ["vests", ["sfp_police_belt"]]; +_policeLoadoutData set ["helmets", ["sfp_m37w_helmet_mp"]]; +_policeLoadoutData set ["facewear", ["sfp_armband_mp"]]; + +_policeLoadoutData set ["SMGs", ["sfp_kpistm45b"]]; +_policeLoadoutData set ["shotguns", [["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""],["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""]]]; +_policeLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""], +["CUP_hgun_TaurusTracker455", "", "", "", ["CUP_6Rnd_45ACP_M"], [], ""]]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["sfp_m90s_uniform_ws","sfp_m90s_uniform_sw"]]; +_militiaLoadoutData set ["vests", ["sfp_stridssele","sfp_stridssele_extrabag"]]; +_militiaLoadoutData set ["medVests", ["sfp_stridssele_medic"]]; +_militiaLoadoutData set ["helmets", ["sfp_ollesbrorsa_gray", "sfp_ollesbrorsa_gray_alt", "sfp_ollesbrorsa_green", "sfp_ollesbrorsa_green_alt"]]; +_militiaLoadoutData set ["slHats", ["sfp_homeguard_beret"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "", ["sfp_grg_heat_66_mag", "sfp_grg_heat_66_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "", ["sfp_grg_heat_62_mag","sfp_grg_heat_62_mag", "sfp_grg_he_mag"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; + +_militiaLoadoutData set ["rifles", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""]]]; +_militiaLoadoutData set ["carbines", [ +["sfp_ak4", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["sfp_riflegrenade_smoke_ak4"], ""]]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4_m203", "", "", "", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["sfp_kpistm45b"]]; +_militiaLoadoutData set ["shotguns", [["sfp_remington870_wood_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""],["sfp_remington870_wood_blue", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""]]]; +_militiaLoadoutData set ["machineGuns", ["sfp_ksp58a"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["sidearms", [ +["CUP_hgun_FlareGun", "", "", "", ["CUP_FlareWhite_265_M","CUP_FlareRed_265_M","CUP_FlareGreen_265_M","CUP_FlareYellow_265_M","CUP_IllumFlareWhite_265_M","CUP_IllumFlareRed_265_M","CUP_IllumFlareGreen_265_M","CUP_IllumFlareYellow_265_M","CUP_StarClusterWhite_265_M","CUP_StarClusterRed_265_M","CUP_StarClusterGreen_265_M","CUP_StarClusterYellow_265_M"], [], ""], ""] +]; +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["sfp_m90p_uniform"]]; +_crewLoadoutData set ["vests", ["sfp_kroppskydd94_crew"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_I"]]; +_crewLoadoutData set ["facewear", ["G_Balaclava_blk", "G_Balaclava_combat", "G_Balaclava_lowprofile"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["sfp_m87_flying_suit"]]; +_pilotLoadoutData set ["vests", ["sfp_kroppsskydd94"]]; +_pilotLoadoutData set ["helmets", ["H_PilotHelmetHeli_B"]]; +_pilotLoadoutData set ["facewear", ["G_Bandanna_oli", "G_Aviator", "G_Squares_Tinted","G_Bandanna_aviator"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["slBackpacks"] call _fnc_setBackpack; + + [["slRifles", selectRandom ["grenadeLaunchers", "rifles"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 2] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["medicFacewear"] call _fnc_setFacewear; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["hvBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs","shotguns", "carbines"], selectRandom ["SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["hvBackpacks"] call _fnc_setBackpack; + + [[selectRandom ["SMGs","shotguns", "carbines"], selectRandom ["SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + private _at = selectRandom ["lightATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["latBackpacks"] call _fnc_setBackpack; //use the light grg pack if grg gunner + ["launcher", 1] call _fnc_addMagazines; + }; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["atBackpacks"] call _fnc_setBackpack; + + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["ATLaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2 + round(random 2)] call _fnc_addMagazines; + ["launcher", round(random 1)] call _fnc_addAdditionalMuzzleMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["shotguns", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["carbines"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_snow.sqf b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_snow.sqf new file mode 100644 index 0000000000..0adc0a0daa --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SFP/SFP_AI_SWE_snow.sqf @@ -0,0 +1,899 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "SDF"] call _fnc_saveToTemplate; +["spawnMarkerName", "SDF Support Corridor"] call _fnc_saveToTemplate; + +["flag", "sfp_flagcarrier_sweden"] call _fnc_saveToTemplate; +["flagTexture", "\sfp_config\data\flag_sweden_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "sfp_marker_sweden"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["B_T_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["sfp_tgb16"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["sfp_tgb16_ksp58","sfp_tgb16_rws"]] call _fnc_saveToTemplate; // Should be armed, unarmoured to lightly armoured, with 0-4 passengers +["vehiclesTrucks", ["sfp_bv206_winter"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["sfp_tgb20", "sfp_tgb13_ksp58","I_E_Truck_02_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["I_E_Truck_02_Ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["I_E_Truck_02_Box_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["I_E_Truck_02_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["sfp_tgb1314","I_E_Truck_02_Medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["sfp_pbv302_snow","sfp_pbv302_mounted_snow","CUP_B_LAV25_HQ_green","CUP_B_LAV25_HQ_green"]] call _fnc_saveToTemplate; // armed, lightly armoured, with 6-8 passengers +["vehiclesAPCs", ["sfp_patgb360","CUP_B_LAV25M240_green"]] call _fnc_saveToTemplate; // armed with enclosed turret, armoured, with 6-8 passengers +["vehiclesIFVs", ["sfp_strf90c_snow"]] call _fnc_saveToTemplate; // capable of surviving multiple rockets, cannon armed, with 6-8 passengers +["vehiclesLightTanks", ["sfp_ikv91_snow"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["sfp_strv122_snow","sfp_strv121_snow"]] call _fnc_saveToTemplate; +["vehiclesAA", ["sfp_lvkv90c_snow"]] call _fnc_saveToTemplate; // ideally heavily armed with anti-ground capability and enclosed turret. Passengers will be ignored + + +["vehiclesTransportBoats", ["sfp_gruppbat"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["sfp_strb90","sfp_strb90_rws"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["sfp_pbv302_mounted", "sfp_pbv302","CUP_B_LAV25_HQ_green","CUP_B_LAV25M240_green"]] call _fnc_saveToTemplate; + +private _vehiclesPlanesCAS = ["sfp_jas39", "sfp_jas39_rb15"]; + +if (allowUnfairSupports && (_side == EAST)) then { + _vehiclesPlanesCAS append ["sfp_jas39", "sfp_jas39_rb15", "sfp_jas39_bk90"]; +}; + +["vehiclesPlanesCAS", _vehiclesPlanesCAS] call _fnc_saveToTemplate; // Will be used with CAS script, must be defined in setPlaneLoadout. Needs fixed gun and either rockets or missiles +["vehiclesPlanesAA", ["sfp_jas39_cap"]] call _fnc_saveToTemplate; // +["vehiclesPlanesTransport", ["sfp_tp84_2015"]] call _fnc_saveToTemplate; +["vehiclesAirPatrol", ["sfp_hkp6","sfp_hkp9"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["sfp_hkp9", "sfp_hkp9_sog", "sfp_hkp9_sog"]] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +["vehiclesHelisTransport", ["a3a_SFP_MH60S_Unarmed_FFV_USN","a3a_SFP_MH60S_Unarmed_USN","a3a_SFP_B_UH60S_USN"]] call _fnc_saveToTemplate; +// Should be capable of dealing damage to ground targets without additional scripting +["vehiclesHelisLightAttack", ["sfp_hkp9_rb55","CUP_B_AW159_GB"]] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods +["vehiclesHelisAttack", []] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc + +["vehiclesArtillery", ["sfp_fh77","sfp_grkpbv90120"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["sfp_fh77",["32Rnd_155mm_Mo_shells"]], +["sfp_grkpbv90120",["sfp_2Rnd_120mm_Mo_shells"]] +]] call _fnc_saveToTemplate; //element format: [Vehicle class, [Magazines]] + +["uavsAttack", []] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["sfp_tgb16_ksp58_mp"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["sfp_tgb20"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["sfp_tgb16"]] call _fnc_saveToTemplate; + +["vehiclesPolice", ["sfp_police_offroad"]] call _fnc_saveToTemplate; + +["staticMGs", ["CUP_B_M2StaticMG_US"]] call _fnc_saveToTemplate; +["staticAT", ["CUP_B_TOW_TriPod_US"]] call _fnc_saveToTemplate; +["staticAA", ["CUP_B_RBS70_ACR"]] call _fnc_saveToTemplate; +["staticMortars", ["CUP_B_M252_US"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + +#include "SFP_Vehicle_Attributes.sqf" +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_06","GreekHead_A3_07","GreekHead_A3_08", +"GreekHead_A3_09","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03", +"WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08", +"WhiteHead_09","WhiteHead_10","WhiteHead_11","WhiteHead_12","WhiteHead_13", +"WhiteHead_14","WhiteHead_15","WhiteHead_16","WhiteHead_17","WhiteHead_18", +"WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +//SpecialForces, Militia, Police Faces and Voices, these are Optional if there is no reason to Include them, leave them out. +["sfFaces", ["sfp_face01_camo","sfp_face02_camo"]] call _fnc_saveToTemplate; +"sfp_swedish_names" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", ["CUP_launch_M136_Loaded"]]; +_loadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "CUP_optic_MAAWS_Scope", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag"], ""] +]]; +_loadoutData set ["missileATLaunchers", ["sfp_rb57"]]; +_loadoutData set ["AALaunchers", ["CUP_launch_FIM92Stinger"]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr2000"]]; +_loadoutData set ["smokeGrenades", ["SmokeShell"]]; +_loadoutData set ["signalsmokeGrenades", ["SmokeShellBlue","SmokeShellGreen","SmokeShellOrange","SmokeShellPurple","SmokeShellRed","SmokeShellYellow"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["NVGoggles_INDEP"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", ["sfp_backpack_stridssack08"]]; +_loadoutData set ["latBackpacks", ["sfp_stridssele_backpack_grg"]]; +_loadoutData set ["atBackpacks", ["sfp_backpack_grg_loader"]]; +_loadoutData set ["hvBackpacks", ["sfp_backpack_stridssack2000"]]; +_loadoutData set ["slBackpacks", ["sfp_stridssack2000_ra_ksk12"]]; +_loadoutData set ["medBackpacks", ["sfp_backpack_sjvv9"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["slHats", ["sfp_army_beret"]]; +_loadoutData set ["sniHats", ["CUP_H_PMC_Beanie_Headphones_Winter"]]; + +_loadoutData set ["facewear", ["G_Bandanna_oli", "CUP_G_ESS_KHK_Facewrap_White", "CUP_G_PMC_Facewrap_Winter_Glasses_Ember","G_Shades_Black"]]; +_loadoutData set ["medicFacewear", ["sfp_armband_medic","sfp_armband_medic_white"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["sfp_m90s_uniform"]]; +_sfLoadoutData set ["vests", ["sfp_stridsvast2000_gl","sfp_kroppsskydd12"]]; +_sfLoadoutData set ["helmets", ["sfp_m90s_helmet_headset"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator"]]; +_sfLoadoutData set ["slHats", ["sfp_sf_beret"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr07"]]; + +_sfLoadoutData set ["rifles", [ +["sfp_ak5c_blk", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c_blk", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["sfp_ak5dmk2", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5dmk2", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_g36c", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_g36", "sfp_30Rnd_556x45_Stanag_g36","sfp_30Rnd_556x45_Stanag_g36" ], [], ""], +["sfp_g36c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_g36", "sfp_30Rnd_556x45_Stanag_g36","sfp_30Rnd_556x45_Stanag_g36" ], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5c_m203_blk", "muzzle_snds_M", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5c_m203", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["sfp_mp5_rail", "muzzle_snds_L", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""], +["sfp_cbj_ms", "sfp_muzzle_snds_cbj", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_650x25mag", "sfp_30Rnd_650x25mag_subsonic"], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "muzzle_snds_H_MG_blk_F", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["sfp_ak4d", "muzzle_snds_B", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4_irtracer"], [], "bipod_01_F_blk"], +["sfp_ak5c_blk", "muzzle_snds_M", "acc_pointer_IR", "sfp_optic_3x_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "muzzle_snds_B", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""] +]]; +_sfLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "muzzle_snds_L", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["sfp_m90s_uniform"]]; +_militaryLoadoutData set ["vests", ["sfp_kroppsskydd12","sfp_kroppsskydd12_holster"]]; +_militaryLoadoutData set ["glVests", ["sfp_kroppsskydd12_gl","sfp_kroppsskydd12_tl"]]; +_militaryLoadoutData set ["mgVests", ["sfp_kroppsskydd12_mg"]]; +_militaryLoadoutData set ["medVests", ["sfp_kroppsskydd12_medic"]]; +_militaryLoadoutData set ["helmets", ["sfp_m90s_helmet_peltor","sfp_m90s_helmet_peltor_nomic"]]; + +_militaryLoadoutData set ["rifles", [ +["sfp_ak5c", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""], +["sfp_ak5c_alt", "", "acc_pointer_IR", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["sfp_ak5dmk2", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["sfp_ak5c_m203", "", "", "sfp_optic_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", ["sfp_kpistm45b", +["sfp_mp5_rail", "", "", "sfp_optic_aimpoint_t1", ["sfp_30Rnd_9mm_mp5"], [], ""]]]; +_militaryLoadoutData set ["machineGuns", [ +["sfp_ksp90b", "", "", "sfp_optic_aimpoint", ["sfp_200Rnd_556x45_ksp90"], [], ""], +["sfp_ksp58B2", "", "", "sfp_optic_3x_aimpoint", ["sfp_50Rnd_762x51_ksp58"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["sfp_ak4d", "", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4_ap", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], "bipod_01_F_blk"], +["sfp_ak5c_alt", "", "acc_pointer_IR", "sfp_optic_3x_aimpoint", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], [], ""] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["sfp_psg90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_psg90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_9Rnd_762x51_psg90"], [], ""], +["sfp_ag90_base", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_10Rnd_127x99_ag90"], [], ""] +]]; +_militaryLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["sfp_m90s_uniform_ws", "sfp_m90s_uniform_sw"]]; +_policeLoadoutData set ["vests", ["sfp_police_belt","sfp_police_tacVest"]]; +_policeLoadoutData set ["helmets", ["sfp_lgmp_beret"]]; +_policeLoadoutData set ["facewear", ["sfp_armband_mp"]]; + +_policeLoadoutData set ["antiInfantryGrenades", ["sfp_FlashBang"]]; +_policeLoadoutData set ["carbines", [["sfp_cga5p", "", "", "", ["CUP_20Rnd_556x45_Stanag", "CUP_20Rnd_556x45_Stanag_Tracer_Red"], [], ""]]]; +_policeLoadoutData set ["SMGs", [["sfp_mp5", "", "", "", ["sfp_30Rnd_9mm_mp5_JHP"], [], ""]]]; +_policeLoadoutData set ["shotguns", [ +["sfp_remington870", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""], +["sfp_remington870_chrome", "", "acc_flashlight", "", ["sfp_12Gauge_8rd_Slug","sfp_12Gauge_8rd_Pellets"], [], ""] +]]; +_policeLoadoutData set ["sidearms", [["CUP_hgun_Glock17_blk", "", "sfp_tlr2", "", ["CUP_17Rnd_9x19_glock17"], [], ""]]]; + + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["sfp_m90s_uniform_ws", "sfp_m90s_uniform_sw"]]; +_militiaLoadoutData set ["vests", ["sfp_stridsvast2000","sfp_stridsvast2000_light","sfp_stridsbalte_304k","sfp_stridsbalte_304k_extrabag","sfp_kroppsskydd94","sfp_kroppskydd94_rifle1"]]; +_militiaLoadoutData set ["glVests", ["sfp_stridsbalte_304k_gl","sfp_stridsvast2000_gl"]]; +_militiaLoadoutData set ["mgVests", ["sfp_stridsbalte_304k_ar","sfp_stridsvast2000_mg"]]; +_militiaLoadoutData set ["backpacks", ["sfp_stridssele_backpack"]]; +_militiaLoadoutData set ["hvBackpacks", ["sfp_backpack_lk35"]]; +_militiaLoadoutData set ["slBackpacks", ["sfp_ra180"]]; +_militiaLoadoutData set ["helmets", ["sfp_wool_beanie_green"]]; +_militiaLoadoutData set ["slHats", ["sfp_homeguard_beret"]]; + +_militiaLoadoutData set ["antiInfantryGrenades", ["sfp_handgrenade_shgr56"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +["CUP_launch_MAAWS", "", "", "", ["CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""], +["CUP_launch_MAAWS", "", "", "", ["CUP_MAAWS_HEDP_M","CUP_MAAWS_HEAT_M", "CUP_MAAWS_HEDP_M"], ["sfp_grg_smoke_mag", "sfp_grg_illum_mag"], ""] +]]; + +_militiaLoadoutData set ["rifles", [ +["sfp_ak4b", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4c", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["carbines", ["sfp_ak5d","sfp_ak5_snow"]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["sfp_ak4b_m203", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak4b_m203", "", "", "sfp_optic_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""], +["sfp_ak5_m203", "", "", "", ["sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic", "sfp_30Rnd_556x45_Stanag_plastic"], ["1Rnd_HE_Grenade_shell","1Rnd_HE_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", ["sfp_kpistm45", "sfp_kpistm45b"]]; +_militiaLoadoutData set ["machineGuns", ["sfp_ksp58"]]; +_militiaLoadoutData set ["marksmanRifles", [ +["sfp_ak4b", "", "", "sfp_optic_3x_aimpoint", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4c", "", "", "sfp_optic_kikarsikte09_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""], +["sfp_ak4", "", "", "sfp_optic_hensoldt_4x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["sfp_ak4d", "", "", "sfp_optic_kikarsikte90b_10x", ["sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4", "sfp_20Rnd_762x51_ak4_tracer"], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sidearms", []]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["sfp_m90p_uniform"]]; +_crewLoadoutData set ["vests", ["sfp_kroppsskydd12_crew"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_I"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["sfp_m87_flying_suit"]]; +_pilotLoadoutData set ["vests", ["sfp_kroppsskydd12_crew"]]; +_pilotLoadoutData set ["helmets", ["H_PilotHelmetHeli_B"]]; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + [["slHats", "helmets"] call _fnc_fallback] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["slBackpacks"] call _fnc_setBackpack; + + [selectRandom ["grenadeLaunchers", "rifles"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["medicFacewear"] call _fnc_setFacewear; + [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["medBackpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + [[selectRandom ["rifles", "SMGs","shotguns", "carbines"], selectRandom ["rifles", "SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + [[selectRandom ["rifles", "SMGs","shotguns", "carbines"], selectRandom ["rifles", "SMGs","carbines"]] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + private _at = selectRandom ["lightATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["latBackpacks"] call _fnc_setBackpack; //use the light grg pack if grg gunner + ["launcher", 2] call _fnc_addMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["carbines"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + private _at = selectRandom ["missileATLaunchers", "ATLaunchers"]; + [_at] call _fnc_setLauncher; + if (_at == "ATLaunchers") then { + ["atBackpacks"] call _fnc_setBackpack; //use the grg pack if grg gunner + ["launcher", 2 + round(random 2)] call _fnc_addMagazines; + ["launcher", round(random 1)] call _fnc_addAdditionalMuzzleMagazines; + }; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["rifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["mgVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + [["hvBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"]call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [["sniperRifles", "marksmanRifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + [selectRandom ["shotguns", "SMGs", "carbines"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["carbines"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; +private _pilotTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _pilotTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SFP/SFP_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/SFP/SFP_Vehicle_Attributes.sqf new file mode 100644 index 0000000000..c1bc016781 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SFP/SFP_Vehicle_Attributes.sqf @@ -0,0 +1,12 @@ +["attributesVehicles", [ + //Trash light armed + ["sfp_tgb1111_sog_ksp58", ["cost", 20]], //7.62 MG with limited arc + ["sfp_tgb16_ksp58", ["cost", 40]], //7.62 MG with exposed gunner + + //Light attack helis + ["sfp_hkp9_rb55", ["cost", 90]], //Carries only TOW missiles, no anti-inf/soft target + + //Light attack helis used in lieu of regular attack helis + ["CUP_B_UH1D_gunship_GER_KSK_Des", ["cost", 150]], + ["CUP_B_AW159_GB", ["cost", 150]] +]] call _fnc_saveToTemplate; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_US.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_US.sqf index a0c2e8d429..0e5f7031a8 100644 --- a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_US.sqf +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_US.sqf @@ -14,24 +14,28 @@ ////////////////////////// ["attributeLowAir", true] call _fnc_saveToTemplate; // Use fewer air units in general +["attributeMoreTrucks", true] call _fnc_saveToTemplate; // Use more truck for transports +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports ["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; ["surrenderCrate", "SPE_Mine_AmmoBox_US"] call _fnc_saveToTemplate; ["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; -["vehiclesBasic", []] call _fnc_saveToTemplate; -["vehiclesLightUnarmed", ["SPE_US_M3_Halftrack_Unarmed"]] call _fnc_saveToTemplate; -["vehiclesLightArmed", ["SPE_US_M16_Halftrack", "SPE_US_M3_Halftrack"]] call _fnc_saveToTemplate; -["vehiclesTrucks", ["SPE_US_M3_Halftrack_Unarmed", "SPE_US_M3_Halftrack"]] call _fnc_saveToTemplate; -["vehiclesCargoTrucks", ["SPE_US_M3_Halftrack_Unarmed"]] call _fnc_saveToTemplate; -["vehiclesAmmoTrucks", ["SPE_US_M3_Halftrack_Ammo"]] call _fnc_saveToTemplate; -["vehiclesRepairTrucks", ["SPE_US_M3_Halftrack_Repair"]] call _fnc_saveToTemplate; -["vehiclesFuelTrucks", ["SPE_US_M3_Halftrack_Fuel"]] call _fnc_saveToTemplate; -["vehiclesMedical", ["SPE_US_M3_Halftrack_Ambulance"]] call _fnc_saveToTemplate; -["vehiclesLightAPCs", ["SPE_US_M3_Halftrack"]] call _fnc_saveToTemplate; -["vehiclesAPCs", ["SPE_M4A0_75_Early", "SPE_M4A0_75"]] call _fnc_saveToTemplate; -["vehiclesIFVs", ["SPE_M10", "SPE_M18_Hellcat"]] call _fnc_saveToTemplate; -["vehiclesTanks", ["SPE_M4A1_76", "SPE_M4A1_75"]] call _fnc_saveToTemplate; +["vehiclesBasic", ["SPE_US_G503_MB_Armoured"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["SPE_US_G503_MB_Armoured"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["SPE_US_M16_Halftrack", "SPE_M20_AUC","SPE_M20_AUC","SPE_FR_M20_AUC","SPE_M8_LAC","SPE_M8_LAC_ringMount","SPE_US_G503_MB_M1919_Armoured","SPE_US_G503_MB_M2_Armoured","SPE_US_G503_MB_M2","SPE_US_G503_MB_M2_PATROL","SPE_US_G503_MB_M1919_PATROL"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["SPE_CCKW_353","SPE_CCKW_353_Open","SPE_CCKW_353_M2","SPE_US_M3_Halftrack_Unarmed", "SPE_US_M3_Halftrack_Unarmed_Open"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["SPE_CCKW_353_Open"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["SPE_US_M3_Halftrack_Ammo","SPE_CCKW_353_Ammo","SPE_CCKW_353_Ammo"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["SPE_US_M3_Halftrack_Repair","SPE_CCKW_353_Repair","SPE_CCKW_353_Repair"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["SPE_US_M3_Halftrack_Fuel","SPE_CCKW_353_Fuel","SPE_CCKW_353_Fuel"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["SPE_US_M3_Halftrack_Ambulance","SPE_CCKW_353_Ambulance","SPE_US_G503_MB_Ambulance"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +["vehiclesAPCs", ["SPE_US_M3_Halftrack","SPE_M20_AUC"]] call _fnc_saveToTemplate; //These got no protected turret, sufficent troop capacity, cost reduced +["vehiclesIFVs", ["SPE_M4A0_75_Early", "SPE_M4A0_75","SPE_M4A0_composite","SPE_M4A0_105","SPE_M4A3_105","SPE_M10"]] call _fnc_saveToTemplate; +["vehiclesLightTanks",["SPE_M18_Hellcat","SPE_M18_Hellcat","SPE_M10"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["SPE_M4A1_75_erla","SPE_M4A1_76", "SPE_M4A1_75","SPE_M4A3_75","SPE_M4A3_76"]] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", ["SPE_M4A1_T34_Calliope_Direct","SPE_M4A3_T34_Calliope_Direct"]] call _fnc_saveToTemplate; ["vehiclesAA", ["SPE_US_M16_Halftrack"]] call _fnc_saveToTemplate; ["vehiclesTransportBoats", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; @@ -47,20 +51,22 @@ ["vehiclesHelisLightAttack", []] call _fnc_saveToTemplate; ["vehiclesHelisAttack", []] call _fnc_saveToTemplate; -["vehiclesArtillery", ["SPE_M4A1_T34_Calliope"]] call _fnc_saveToTemplate; +["vehiclesArtillery", ["SPE_M4A1_T34_Calliope","SPE_M4A3_T34_Calliope","SPE_105mm_M3","SPE_105mm_M3","SPE_105mm_M3"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ -["SPE_M4A1_T34_Calliope", ["SPE_60Rnd_M8"]] +["SPE_M4A1_T34_Calliope", ["SPE_60Rnd_M8"]], +["SPE_M4A3_T34_Calliope", ["SPE_60Rnd_M8"]], +["SPE_105mm_M3", ["SPE_20x_Shell_M3_M1_HE_Artillery","SPE_8x_Shell_M3_M67_HEAT_Artillery"]] ]] call _fnc_saveToTemplate; ["uavsAttack", []] call _fnc_saveToTemplate; ["uavsPortable", []] call _fnc_saveToTemplate; //Config special vehicles -["vehiclesMilitiaLightArmed", ["SPE_US_M3_Halftrack"]] call _fnc_saveToTemplate; -["vehiclesMilitiaTrucks", ["SPE_US_M3_Halftrack_Unarmed"]] call _fnc_saveToTemplate; -["vehiclesMilitiaCars", ["SPE_US_M3_Halftrack"]] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", ["SPE_FR_M20_AUC","SPE_US_G503_MB_M1919"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["SPE_CCKW_353_Open"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["SPE_US_G503_MB_Open"]] call _fnc_saveToTemplate; -["vehiclesPolice", ["SPE_FR_M3_Halftrack_Unarmed"]] call _fnc_saveToTemplate; +["vehiclesPolice", ["SPE_US_G503_MB"]] call _fnc_saveToTemplate; ["staticMGs", ["SPE_M1919A6_Bipod"]] call _fnc_saveToTemplate; ["staticAT", ["SPE_57mm_M1"]] call _fnc_saveToTemplate; @@ -74,7 +80,7 @@ ["minefieldAT", ["SPE_US_M1A1_ATMINE"]] call _fnc_saveToTemplate; ["minefieldAPERS", ["SPE_US_M3_Pressure_MINE", "SPE_US_M3_MINE"]] call _fnc_saveToTemplate; -//#include "3CBFactions_Vehicle_Attributes.sqf" +#include "SPE_Vehicle_Attributes.sqf" ///////////////////// /// Identities /// @@ -86,6 +92,10 @@ "TanoanHead_A3_03", "TanoanHead_A3_04", "TanoanHead_A3_05", "TanoanHead_A3_06", "TanoanHead_A3_07", "TanoanHead_A3_08", "TanoanHead_A3_09", "WhiteHead_02"]] call _fnc_saveToTemplate; //12 to 1 so Mostly Colored Faces. ["milVoices", ["Male01FRE", "Male02FRE", "Male03FRE"]] call _fnc_saveToTemplate; +["polFaces", ["LivonianHead_6","SPE_Arnold","SPE_Connors","SPE_Davidson","SPE_Elliot","SPE_Oberst","SPE_Seppmeyer","SPE_Walter","WhiteHead_01","WhiteHead_02","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_12","WhiteHead_15","WhiteHead_18"]] call _fnc_saveToTemplate; +["polVoices", ["spe_male01fre", "spe_male02fre"]] call _fnc_saveToTemplate; +"SPE_EnglishMen" call _fnc_saveNames; + ////////////////////////// // Loadouts // @@ -94,42 +104,51 @@ private _loadoutData = call _fnc_createLoadoutData; _loadoutData set ["rifles", [ ["SPE_M1_Garand", "SPE_ACC_M1_Bayo", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], [], ""], -["SPE_M1_Garand", "SPE_ACC_M1905_Bayo", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], [], ""], -["SPE_M1903A3_Springfield", "SPE_ACC_M1_Bayo", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], [], ""], +["SPE_M1_Garand", "SPE_ACC_M1_Bayo", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], [], ""], +["SPE_M1903A3_Springfield", "SPE_ACC_M1905_Bayo", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], [], ""], ["SPE_M1903A3_Springfield", "SPE_ACC_M1905_Bayo", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], [], ""] ]]; _loadoutData set ["slRifles", [ +["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""], ["SPE_M1A1_Thompson", "", "", "", ["SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP_t"], [], ""], ["SPE_M3_GreaseGun", "", "", "", ["SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP_t"], [], ""], -["SPE_M1918A2_BAR", "", "SPE_M1918A2_BAR_Handle", "", ["SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63_M2_AP"], [], ""] +["SPE_M1_Garand", "", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], [], ""] +]]; +_loadoutData set ["shotGuns", [ +["SPE_Model_37_Trenchgun", "SPE_ACC_M1917_Bayo", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Slug"], [], ""], +["SPE_Model_37_Trenchgun", "SPE_ACC_M1917_Bayo", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Slug"], [], ""], +["SPE_Model_37_Riotgun", "", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Slug"], [], ""] ]]; _loadoutData set ["carbines", [ -["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""] +["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""], +["SPE_M1A1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""] ]]; _loadoutData set ["grenadeLaunchers", [ ["SPE_M1_Garand_M7", "SPE_ACC_GL_M7", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], ["SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], -["SPE_M1903A3_Springfield_M1_GL", "SPE_ACC_GL_M1", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], ["SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], +["SPE_M1_Garand_M7", "SPE_ACC_GL_M7", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], ["SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], +["SPE_M1903A3_Springfield_M1_GL", "SPE_ACC_GL_M1", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], ["SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], ["SPE_M1_Carbine_M8", "SPE_ACC_GL_M8", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], ["SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""] ]]; _loadoutData set ["SMGs", [ ["SPE_M1A1_Thompson", "", "", "", ["SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP_t"], [], ""], +["SPE_M3_GreaseGun", "", "", "", ["SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP_t"], [], ""], ["SPE_M3_GreaseGun", "", "", "", ["SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP_t"], [], ""] ]]; _loadoutData set ["machineGuns", [ ["SPE_M1919A4", "", "", "", ["SPE_50Rnd_762x63", "SPE_50Rnd_762x63_M1", "SPE_50Rnd_762x63_M2_AP"], [], ""], ["SPE_M1919A6", "", "", "", ["SPE_50Rnd_762x63", "SPE_50Rnd_762x63_M1", "SPE_50Rnd_762x63_M2_AP"], [], ""], +["SPE_M1918A2_BAR", "", "SPE_M1918A2_BAR_Handle", "", ["SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63"], [], ""], ["SPE_M1918A2_BAR", "", "SPE_M1918A2_BAR_Handle", "", ["SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63_M1", "SPE_20Rnd_762x63"], [], ""] ]]; _loadoutData set ["marksmanRifles", [ -["SPE_M1903A4_Springfield", "", "", "", ["SPE_5Rnd_762x63", "SPE_5Rnd_762x63", "SPE_5Rnd_762x63_t"], [], ""], ["SPE_M1903A4_Springfield", "", "", "", ["SPE_5Rnd_762x63", "SPE_5Rnd_762x63", "SPE_5Rnd_762x63_t"], [], ""] ]]; _loadoutData set ["sniperRifles", [ -["SPE_M1903A4_Springfield", "", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M2_AP"], [], ""], ["SPE_M1903A4_Springfield", "", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M2_AP"], [], ""] ]]; _loadoutData set ["lightATLaunchers", ["SPE_M1A1_Bazooka"]]; +_loadoutData set ["ATLaunchers", ["SPE_M9_Bazooka","SPE_M9A1_Bazooka"]]; _loadoutData set ["sidearms", ["SPE_M1911"]]; _loadoutData set ["ATMines", ["SPE_US_M1A1_ATMINE_mag"]]; @@ -150,11 +169,12 @@ _loadoutData set ["watches", ["SPE_US_ItemWatch"]]; _loadoutData set ["compasses", ["SPE_US_ItemCompass"]]; _loadoutData set ["radios", ["ItemRadio"]]; _loadoutData set ["binoculars", ["SPE_Binocular_US"]]; +_loadoutData set ["Flashlight", ["SPE_US_FL_TL122"]]; _loadoutData set ["uniforms", ["U_SPE_US_Private", "U_SPE_US_Private_1st", "U_SPE_US_Private_late"]]; _loadoutData set ["medUniforms", ["U_SPE_US_Med"]]; _loadoutData set ["engUniforms", ["U_SPE_US_Technician"]]; -_loadoutData set ["slUniorms", ["U_SPE_US_CC_1LT", "U_SPE_US_Sergeant"]]; +_loadoutData set ["slUniforms", ["U_SPE_US_CC_1LT", "U_SPE_US_Sergeant"]]; _loadoutData set ["vests", ["V_SPE_US_Vest_Carbine", "V_SPE_US_Vest_Garand", "V_SPE_US_Vest_Garand_M43"]]; _loadoutData set ["glVests", ["V_SPE_US_Vest_Grenadier"]]; @@ -171,8 +191,9 @@ _loadoutData set ["glBackpacks", ["B_SPE_US_Backpack_Bandoleer_Grenadier_1903"]] _loadoutData set ["engBackpacks", ["B_SPE_US_Backpack_eng"]]; _loadoutData set ["helmets", ["H_SPE_US_Helmet", "H_SPE_US_Helmet_Net", "H_SPE_US_Helmet_Net_ns", "H_SPE_US_Helmet_Net_os", "H_SPE_US_Helmet_ns", "H_SPE_US_Helmet_os"]]; -_loadoutData set ["medHelmets", ["H_SPE_US_Helmet_Med"]]; +_loadoutData set ["medHelmets", ["H_SPE_US_Helmet_Med","H_SPE_US_Helmet_Med_ns","H_SPE_US_Helmet_Med_os"]]; _loadoutData set ["slHelmets", ["H_SPE_US_Helmet_Cap", "H_SPE_US_Helmet_First_lieutenant", "H_SPE_US_Helmet_Net_os"]]; +_loadoutData set ["sniHelmets", ["H_SPE_US_Helmet_Scrim_ns"]]; //Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. _loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; @@ -216,7 +237,15 @@ private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; _sfLoadoutData set ["uniforms", ["U_SPE_US_Rangers_Uniform", "U_SPE_US_Rangers_Private_1st"]]; _sfLoadoutData set ["medUniforms", ["U_SPE_US_Rangers_Med"]]; _sfLoadoutData set ["engUniforms", ["U_SPE_US_Rangers_Technician"]]; -_sfLoadoutData set ["slUniorms", ["U_SPE_US_Rangers_Sergeant", "U_SPE_US_Rangers_Corp"]]; +_sfLoadoutData set ["slUniforms", ["U_SPE_US_Rangers_Sergeant", "U_SPE_US_Rangers_Corp"]]; + +_sfLoadoutData set ["vests", ["V_SPE_US_Assault_Vest", "V_SPE_US_Assault_Vest_Light", "V_SPE_US_Assault_Vest_rifle"]]; +_sfLoadoutData set ["glVests", ["V_SPE_US_Assault_Vest_Bag"]]; +_sfLoadoutData set ["sniVests", ["V_SPE_US_Assault_Vest_Light"]]; +_sfLoadoutData set ["medVests", ["V_SPE_US_Assault_Vest_alt"]]; +_sfLoadoutData set ["engVests", ["V_SPE_US_Assault_Vest_eng"]]; +_sfLoadoutData set ["mgVests", ["V_SPE_US_Assault_Vest_Bag"]]; +_sfLoadoutData set ["slVests", ["V_SPE_US_Assault_Vest_alt", "V_SPE_US_Assault_Vest_rifle_M43"]]; _sfLoadoutData set ["helmets", ["H_SPE_US_Rangers_Helmet", "H_SPE_US_Rangers_Helmet_ns", "H_SPE_US_Rangers_Helmet_os", "H_SPE_US_Helmet_Net_os", "H_SPE_US_Helmet_ns", "H_SPE_US_Helmet_os"]]; _sfLoadoutData set ["medHelmets", ["H_SPE_US_Helmet_Med"]]; @@ -233,6 +262,10 @@ _sfLoadoutData set ["rifles", [ ["SPE_M1A1_Thompson", "", "", "", ["SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP_t"], [], ""], ["SPE_M1918A2_BAR", "", "SPE_M1918A2_BAR_Handle", "", ["SPE_20Rnd_762x63_M2_AP"], [], ""] ]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["SPE_M1_Garand_M7", "SPE_ACC_GL_M7", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], ["SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], +["SPE_M1_Garand_M7", "SPE_ACC_GL_M7", "", "", ["SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_M1", "SPE_8Rnd_762x63_t"], ["SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""] +]]; _sfLoadoutData set ["SMGs", [ ["SPE_M1A1_Thompson", "", "", "", ["SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP_t"], [], ""], ["SPE_M3_GreaseGun", "SPE_ACC_M3_Suppressor_45acp", "", "", ["SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP_t"], [], ""] @@ -250,16 +283,20 @@ private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; -_policeLoadoutData set ["uniforms", ["U_SPE_US_Private"]]; -_policeLoadoutData set ["vests", ["V_SPE_US_Vest_Garand_M43"]]; -_policeLoadoutData set ["helmets", ["H_SPE_US_Helmet_29ID"]]; +_policeLoadoutData set ["uniforms", ["U_SPE_milice_3"]]; +_policeLoadoutData set ["vests", ["V_SPE_milice_Vest_zwart_rifle", "V_SPE_milice_Vest_zwart_rifle_sidearm","V_SPE_milice_Vest_zwart_sidearm"]]; +_policeLoadoutData set ["helmets", ["H_SPE_Milice_Adrian", "H_SPE_Milice_Adrian_ns"]]; +_policeLoadoutData set ["slHelmets", ["H_SPE_Milice_beret_1", "H_SPE_Milice_beret_2"]]; +_policeLoadoutData set ["SMGs", [ +["SPE_Sten_Mk2", "", "", "", ["SPE_32Rnd_9x19_Sten"], [], ""] +]]; _policeLoadoutData set ["rifles", [ -["SPE_M1903A3_Springfield", "SPE_ACC_M1_Bayo", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], [], ""], -["SPE_M1903A3_Springfield", "SPE_ACC_M1905_Bayo", "", "", ["SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_M1", "SPE_5Rnd_762x63_t"], [], ""] +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] ]]; _policeLoadoutData set ["shotGuns", [ -["SPE_Fusil_Mle_208_12", "", "", "", ["SPE_2Rnd_12x65_No4_Buck", "SPE_2Rnd_12x65_Slug"], [], ""] +["SPE_Model_37_Riotgun", "", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Slug"], [], ""], +["SPE_Model_37_Riotgun", "", "", "", ["SPE_5Rnd_12x70_Pellets"], [], ""] ]]; //////////////////////////////// @@ -269,13 +306,56 @@ _policeLoadoutData set ["shotGuns", [ private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; _militiaLoadoutData set ["uniforms", ["U_SPE_FR_HBT_Uniform", "U_SPE_FR_HBT_Uniform_Trop"]]; -_militiaLoadoutData set ["medUniforms", ["U_SPE_US_Med"]]; +_militiaLoadoutData set ["medUniforms", []]; _militiaLoadoutData set ["engUniforms", []]; -_militiaLoadoutData set ["slUniorms", []]; +_militiaLoadoutData set ["slUniforms", []]; -_militiaLoadoutData set ["helmets", ["H_SPE_FR_Adrian", "H_SPE_FR_Adrian_ns", "H_SPE_FR_US_Helmet_ns"]]; -_militiaLoadoutData set ["medHelmets", ["H_SPE_FR_Adrian_Medic", "H_SPE_FR_Adrian_Medic_ns"]]; -_militiaLoadoutData set ["slHelmets", ["H_SPE_FR_US_Helmet_ns"]]; +_militiaLoadoutData set ["helmets", ["H_SPE_FR_Adrian", "H_SPE_FR_Adrian_ns"]]; +_militiaLoadoutData set ["medHelmets", ["H_SPE_FR_Adrian_Medic_ns"]]; +_militiaLoadoutData set ["slHelmets", ["H_SPE_FR_Adrian_net","H_SPE_FR_Adrian_net_ns"]]; +_militiaLoadoutData set ["sniHelmets", ["H_SPE_FR_Adrian_cover_ns"]]; + +_militiaLoadoutData set ["ATLaunchers", []]; +_militiaLoadoutData set ["sidearms", []]; + +_militiaLoadoutData set ["rifles", [ +["SPE_No3_Mk1_Enfield", "SPE_ACC_M1917_Bayo", "", "", ["SPE_5Rnd_770x56"], [], ""], +["SPE_No3_Mk1_Enfield", "SPE_ACC_M1917_Bayo", "", "", ["SPE_5Rnd_770x56"], [], ""], +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56", "SPE_5Rnd_770x56", "SPE_5Rnd_770x56_AP_MKI"], [], ""] +]]; +_militiaLoadoutData set ["slRifles", [ +["SPE_Sten_Mk2", "", "", "", ["SPE_32Rnd_9x19_Sten"], [], ""], +["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""], +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56", "SPE_5Rnd_770x56", "SPE_5Rnd_770x56_AP_MKI"], [], ""] +]]; +_militiaLoadoutData set ["shotGuns", [ +["SPE_Model_37_Riotgun", "", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Slug"], [], ""], +["SPE_Model_37_Riotgun", "", "", "", ["SPE_5Rnd_12x70_Pellets", "SPE_5Rnd_12x70_Pellets"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""], +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["SPE_M1_Carbine_M8", "SPE_ACC_GL_M8", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], ["SPE_1Rnd_G_Mk2", "SPE_1Rnd_G_M9A1", "SPE_1Rnd_G_M17A1", "SPE_1Rnd_G_M2_ANM8"], ""], +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56"], [], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["SPE_Sten_Mk2", "", "", "", ["SPE_32Rnd_9x19_Sten"], [], ""], +["SPE_No3_Mk1_Enfield", "", "", "", ["SPE_5Rnd_770x56"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["SPE_LMG_303_Mk2", "", "", "", ["SPE_30Rnd_770x56"], [], ""], +["SPE_LMG_303_Mk2", "", "", "", ["SPE_30Rnd_770x56"], [], ""], +["SPE_M1918A2_erla_BAR", "", "SPE_M1918A2_BAR_Handle", "", ["SPE_20Rnd_762x63_M1"], [], ""], +["SPE_M1918A0_BAR", "", "", "", ["SPE_20Rnd_762x63_M1"], [], ""] +]]; ////////////////////////// // Misc Loadouts // @@ -292,6 +372,19 @@ _pilotLoadoutData set ["vests", ["V_SPE_US_LifeVest"]]; _pilotLoadoutData set ["helmets", ["H_SPE_US_Helmet_Pilot"]]; _pilotLoadoutData set ["backpacks", ["B_SPE_US_TypeA3"]]; +private _officerLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["slUniforms", ["U_SPE_US_Pilot_lthr", "U_SPE_US_Pilot"]]; +_officerLoadoutData set ["slVests", ["V_SPE_US_Vest_45_off", "V_SPE_US_Vest_45_high_off"]]; +_officerLoadoutData set ["slHelmets", ["H_SPE_US_Pilot_Cap", "H_SPE_US_Pilot_Cap_Khaki"]]; +_officerLoadoutData set ["backpacks", []]; +_officerLoadoutData set ["slBackpacks", []]; + +_officerLoadoutData set ["slRifles", [ +["SPE_M1_Carbine", "", "", "", ["SPE_15Rnd_762x33", "SPE_15Rnd_762x33", "SPE_15Rnd_762x33_t"], [], ""], +["SPE_M1A1_Thompson", "", "", "", ["SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP", "SPE_30Rnd_Thompson_45ACP_t"], [], ""], +["SPE_M3_GreaseGun", "", "", "", ["SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP", "SPE_30Rnd_M3_GreaseGun_45ACP_t"], [], ""] +]]; + ///////////////////////////////// // Unit Type Definitions // ///////////////////////////////// @@ -304,11 +397,11 @@ _pilotLoadoutData set ["backpacks", ["B_SPE_US_TypeA3"]]; private _squadLeaderTemplate = { ["slHelmets"] call _fnc_setHelmet; [["slVests", "vests"] call _fnc_fallback] call _fnc_setVest; - [["slUniorms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; [["slBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; - [selectRandom ["grenadeLaunchers", "slRifles"]] call _fnc_setPrimary; + [selectRandom ["shotGuns", "slRifles", "slRifles"]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; @@ -326,6 +419,7 @@ private _squadLeaderTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; ["binoculars"] call _fnc_addBinoculars; }; @@ -335,12 +429,9 @@ private _riflemanTemplate = { ["vests"] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; - [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; - ["sidearms"] call _fnc_setHandgun; - ["handgun", 2] call _fnc_addMagazines; - ["items_medical_standard"] call _fnc_addItemSet; ["items_rifleman_extras"] call _fnc_addItemSet; ["items_miscEssentials"] call _fnc_addItemSet; @@ -351,6 +442,7 @@ private _riflemanTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _medicTemplate = { @@ -358,7 +450,7 @@ private _medicTemplate = { [["medVests", "vests"] call _fnc_fallback] call _fnc_setVest; [["medUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; [["medBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; - ["carbines"] call _fnc_setPrimary; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; @@ -374,6 +466,7 @@ private _medicTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _grenadierTemplate = { @@ -386,10 +479,6 @@ private _grenadierTemplate = { ["primary", 8] call _fnc_addMagazines; ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; - ["sidearms"] call _fnc_setHandgun; - ["handgun", 4] call _fnc_addMagazines; - ["handgun", 2] call _fnc_addAdditionalMuzzleMagazines; - ["items_medical_standard"] call _fnc_addItemSet; ["items_grenadier_extras"] call _fnc_addItemSet; ["items_miscEssentials"] call _fnc_addItemSet; @@ -400,6 +489,7 @@ private _grenadierTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _explosivesExpertTemplate = { @@ -408,7 +498,7 @@ private _explosivesExpertTemplate = { [["engUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; - [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + [selectRandom ["shotGuns", "rifles", "carbines", "SMGs"]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; @@ -431,6 +521,7 @@ private _explosivesExpertTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _engineerTemplate = { @@ -439,7 +530,7 @@ private _engineerTemplate = { [["engUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; [["engBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; - ["carbines"] call _fnc_setPrimary; + [selectRandom ["shotGuns", "shotGuns", "carbines", "SMGs"]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; @@ -458,6 +549,7 @@ private _engineerTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _latTemplate = { @@ -466,13 +558,11 @@ private _latTemplate = { ["uniforms"] call _fnc_setUniform; ["atBackpacks"] call _fnc_setBackpack; - [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["lightATLaunchers"] call _fnc_setLauncher; - - ["sidearms"] call _fnc_setHandgun; - ["handgun", 2] call _fnc_addMagazines; + ["launcher", 1] call _fnc_addMagazines; ["items_medical_standard"] call _fnc_addItemSet; ["items_lat_extras"] call _fnc_addItemSet; @@ -484,6 +574,7 @@ private _latTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _atTemplate = { @@ -495,10 +586,8 @@ private _atTemplate = { [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; - ["lightATLaunchers"] call _fnc_setLauncher; - - ["sidearms"] call _fnc_setHandgun; - ["handgun", 2] call _fnc_addMagazines; + [["ATLaunchers", "lightATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + ["launcher", 2] call _fnc_addMagazines; ["items_medical_standard"] call _fnc_addItemSet; ["items_at_extras"] call _fnc_addItemSet; @@ -510,6 +599,7 @@ private _atTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _aaTemplate = { @@ -518,13 +608,11 @@ private _aaTemplate = { ["uniforms"] call _fnc_setUniform; ["atBackpacks"] call _fnc_setBackpack; - [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["lightATLaunchers"] call _fnc_setLauncher; - - ["sidearms"] call _fnc_setHandgun; - ["handgun", 2] call _fnc_addMagazines; + ["launcher", 1] call _fnc_addMagazines; ["items_medical_standard"] call _fnc_addItemSet; ["items_aa_extras"] call _fnc_addItemSet; @@ -536,6 +624,7 @@ private _aaTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _machineGunnerTemplate = { @@ -560,10 +649,11 @@ private _machineGunnerTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _marksmanTemplate = { - ["helmets"] call _fnc_setHelmet; + ["sniHelmets"] call _fnc_setHelmet; [["sniVests", "vests"] call _fnc_fallback] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; @@ -583,11 +673,12 @@ private _marksmanTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; ["binoculars"] call _fnc_addBinoculars; }; private _sniperTemplate = { - ["helmets"] call _fnc_setHelmet; + ["sniHelmets"] call _fnc_setHelmet; [["sniVests", "vests"] call _fnc_fallback] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; @@ -630,6 +721,12 @@ private _policeTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; +}; +private _policeSLTemplate = { + call _policeTemplate; + ["slHelmets"] call _fnc_setHelmet; + [selectRandom ["rifles", "SMGs"]] call _fnc_setPrimary; }; private _crewTemplate = { @@ -666,10 +763,14 @@ private _unarmedTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _traitorTemplate = { call _unarmedTemplate; + + ["shotGuns"] call _fnc_setPrimary; + ["primary", 2] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; ["handgun", 2] call _fnc_addMagazines; }; @@ -734,7 +835,7 @@ private _unitTypes = [ //////////////////////// private _prefix = "police"; private _unitTypes = [ - ["SquadLeader", _policeTemplate], + ["SquadLeader", _policeSLTemplate], ["Standard", _policeTemplate] ]; @@ -770,8 +871,8 @@ private _unitTypes = [ //The following lines are determining the loadout of the pilots ["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the unit used in the "kill the official" mission -["other", [["Official", _SquadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Official", _SquadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the AI used in the "kill the traitor" mission -["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the AI used in the "Invader Punishment" mission ["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_WEH.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_WEH.sqf index b3b591b498..33c30c2406 100644 --- a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_WEH.sqf +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_AI_WEH.sqf @@ -14,24 +14,28 @@ ////////////////////////// ["attributeLowAir", true] call _fnc_saveToTemplate; // Use fewer air units in general +["attributeMoreTrucks", true] call _fnc_saveToTemplate; // Use more truck for transports +["attributeNoSAM", true] call _fnc_saveToTemplate; // Don't use SAM supports ["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; ["surrenderCrate", "SPE_Weaponcrate_MP40_GER"] call _fnc_saveToTemplate; ["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; -["vehiclesBasic", []] call _fnc_saveToTemplate; -["vehiclesLightUnarmed", ["SPE_ST_OpelBlitz_Open", "SPE_ST_OpelBlitz"]] call _fnc_saveToTemplate; -["vehiclesLightArmed", ["SPE_SdKfz250_1", "SPE_SdKfz250_1", "SPE_ST_OpelBlitz_Flak38"]] call _fnc_saveToTemplate; -["vehiclesTrucks", ["SPE_ST_OpelBlitz_Open", "SPE_ST_OpelBlitz"]] call _fnc_saveToTemplate; +["vehiclesBasic", ["SPE_ST_R200_Unarmed"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["SPE_ST_R200_Unarmed","SPE_ST_R200_Hood"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["SPE_SdKfz250_1", "SPE_SdKfz250_1", "SPE_ST_R200_MG34", "SPE_ST_OpelBlitz_Flak38"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["SPE_ST_OpelBlitz_Open", "SPE_ST_OpelBlitz", "SPE_ST_OpelBlitz", "SPE_OpelBlitz_Open"]] call _fnc_saveToTemplate; ["vehiclesCargoTrucks", ["SPE_ST_OpelBlitz_Open"]] call _fnc_saveToTemplate; ["vehiclesAmmoTrucks", ["SPE_ST_OpelBlitz_Ammo"]] call _fnc_saveToTemplate; ["vehiclesRepairTrucks", ["SPE_ST_OpelBlitz_Repair"]] call _fnc_saveToTemplate; ["vehiclesFuelTrucks", ["SPE_ST_OpelBlitz_Fuel"]] call _fnc_saveToTemplate; ["vehiclesMedical", ["SPE_ST_OpelBlitz_Ambulance"]] call _fnc_saveToTemplate; ["vehiclesLightAPCs", []] call _fnc_saveToTemplate; -["vehiclesAPCs", ["SPE_PzKpfwIII_N", "SPE_PzKpfwIII_M", "SPE_PzKpfwIII_L"]] call _fnc_saveToTemplate; -["vehiclesIFVs", ["SPE_PzKpfwIII_N", "SPE_PzKpfwIII_M", "SPE_PzKpfwIII_L"]] call _fnc_saveToTemplate; -["vehiclesTanks", ["SPE_PzKpfwVI_H1", "SPE_ST_PzKpfwIII_J", "SPE_PzKpfwIV_G"]] call _fnc_saveToTemplate; +["vehiclesAPCs", []] call _fnc_saveToTemplate; +["vehiclesIFVs", ["SPE_StuG_III_G_SKB","SPE_StuG_III_G_Late"]] call _fnc_saveToTemplate; +["vehiclesLightTanks",["SPE_PzKpfwIII_N", "SPE_PzKpfwIII_L", "SPE_PzKpfwIII_M", "SPE_PzKpfwIII_J", "SPE_StuG_III_G_Late", "SPE_Nashorn"]] call _fnc_saveToTemplate; +["vehiclesTanks", ["SPE_PzKpfwIII_M", "SPE_PzKpfwIV_G", "SPE_PzKpfwIV_G", "SPE_PzKpfwV_G"]] call _fnc_saveToTemplate; +["vehiclesHeavyTanks", ["SPE_Jagdpanther_G1","SPE_PzKpfwVI_H1", "SPE_PzKpfwVI_H1", "SPE_PzKpfwV_G", "SPE_PzKpfwV_G", "SPE_PzKpfwV_G"]] call _fnc_saveToTemplate; ["vehiclesAA", ["SPE_ST_OpelBlitz_Flak38"]] call _fnc_saveToTemplate; ["vehiclesTransportBoats", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; @@ -56,11 +60,11 @@ ["uavsPortable", []] call _fnc_saveToTemplate; //Config special vehicles -["vehiclesMilitiaLightArmed", ["LIB_Kfz1_MG42_sernyt"]] call _fnc_saveToTemplate; -["vehiclesMilitiaTrucks", ["SPE_ST_OpelBlitz_Open"]] call _fnc_saveToTemplate; -["vehiclesMilitiaCars", ["LIB_Kfz1_sernyt"]] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", ["SPE_GER_R200_MG34"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["SPE_OpelBlitz_Open"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["SPE_GER_R200_Unarmed", "SPE_GER_R200_Hood"]] call _fnc_saveToTemplate; -["vehiclesPolice", ["LIB_Kfz1_sernyt"]] call _fnc_saveToTemplate; +["vehiclesPolice", ["SPE_Milice_R200_Unarmed", "SPE_Milice_R200_Hood"]] call _fnc_saveToTemplate; ["staticMGs", ["SPE_MG42_Lafette_Deployed", "SPE_MG34_Lafette_Deployed"]] call _fnc_saveToTemplate; ["staticAT", ["SPE_leFH18_AT", "SPE_Pak40"]] call _fnc_saveToTemplate; @@ -74,14 +78,19 @@ ["minefieldAT", ["SPE_US_M1A1_ATMINE"]] call _fnc_saveToTemplate; ["minefieldAPERS", ["SPE_US_M3_Pressure_MINE", "SPE_US_M3_MINE"]] call _fnc_saveToTemplate; -//#include "3CBFactions_Vehicle_Attributes.sqf" +#include "SPE_Vehicle_Attributes.sqf" ///////////////////// /// Identities /// ///////////////////// ["faces", ["LivonianHead_6","SPE_boyartsev","SPE_bykov","SPE_Connors","SPE_DAgostino","SPE_Davidson","SPE_Elliot","SPE_Grishka","SPE_Hauptmann","SPE_Klimakov","SPE_Krueger","SPE_Kuzmin","SPE_Neumann","SPE_Oberst","SPE_OBrien","SPE_Vasiliev","SPE_Walter","SPE_Wolf","Sturrock","WhiteHead_01","WhiteHead_02","WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_13","WhiteHead_14","WhiteHead_15","WhiteHead_18","WhiteHead_19","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; -["voices", ["Male01ENG", "Male02ENG", "Male03ENG", "Male04ENG", "Male05ENG", "Male06ENG", "Male07ENG", "Male08ENG", "Male09ENG", "Male10ENG", "Male11ENG", "Male12ENG"]] call _fnc_saveToTemplate; +["voices", ["spe_male01ger", "spe_male02ger"]] call _fnc_saveToTemplate; +["milFaces", ["LivonianHead_6","SPE_Arnold","SPE_Connors","SPE_Davidson","SPE_Elliot","SPE_Oberst","SPE_Seppmeyer","SPE_Walter","WhiteHead_01","WhiteHead_02","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_12","WhiteHead_15","WhiteHead_18"]] call _fnc_saveToTemplate; +["milVoices", ["spe_male01fre", "spe_male02fre"]] call _fnc_saveToTemplate; +["polFaces", ["LivonianHead_6","SPE_Arnold","SPE_Connors","SPE_Davidson","SPE_Elliot","SPE_Oberst","SPE_Seppmeyer","SPE_Walter","WhiteHead_01","WhiteHead_02","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_12","WhiteHead_15","WhiteHead_18"]] call _fnc_saveToTemplate; +["polVoices", ["spe_male01fre", "spe_male02fre"]] call _fnc_saveToTemplate; +"SPE_GermanMen" call _fnc_saveNames; ////////////////////////// // Loadouts // @@ -97,10 +106,10 @@ _loadoutData set ["slRifles", [ ["SPE_MP40", "", "", "", ["SPE_32Rnd_9x19", "SPE_32Rnd_9x19", "SPE_32rnd_9x19_t"], [], ""], ["SPE_G43", "", "", "", ["SPE_10Rnd_792x57", "SPE_10Rnd_792x57", "SPE_10Rnd_792x57_T"], [], ""], ["SPE_K98_Late", "SPE_ACC_K98_Bayo", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], [], ""], -["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""], -["SPE_STG44", "", "", "", ["SPE_30Rnd_792x33", "SPE_30Rnd_792x33", "SPE_30rnd_792x33_t"], [], ""] +["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] ]]; _loadoutData set ["grenadeLaunchers", [ +["SPE_K98_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""], ["SPE_K98_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_30", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""], ["SPE_K98_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] ]]; @@ -112,15 +121,16 @@ _loadoutData set ["machineGuns", [ ["SPE_MG34", "", "", "", ["SPE_50Rnd_792x57", "SPE_50Rnd_792x57", "SPE_50Rnd_792x57_SMK"], [], ""] ]]; _loadoutData set ["marksmanRifles", [ -["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], [], ""], -["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], [], ""] +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], [], ""], +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], [], ""] ]]; _loadoutData set ["sniperRifles", [ -["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_762x63_M2_AP"], [], ""], -["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_762x63_M2_AP"], [], ""] +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_SMK"], [], ""], +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_SMK"], [], ""] ]]; _loadoutData set ["lightATLaunchers", ["SPE_PzFaust_60m", "SPE_PzFaust_30m", "SPE_Faustpatrone"]]; +_loadoutData set ["ATLaunchers", ["SPE_RPzB_43","SPE_RPzB_54"]]; _loadoutData set ["sidearms", ["SPE_P08"]]; _loadoutData set ["ATMines", ["SPE_TMI_42_MINE_mag"]]; @@ -129,8 +139,8 @@ _loadoutData set ["lightExplosives", ["SPE_Ladung_Small_MINE_mag"]]; _loadoutData set ["heavyExplosives", ["SPE_Ladung_Big_MINE_mag"]]; _loadoutData set ["antiTankGrenades", ["SPE_Shg24x7"]]; -_loadoutData set ["antiInfantryGrenades", ["SPE_Shg24_Frag"]]; -_loadoutData set ["smokeGrenades", ["SPE_NB39"]]; +_loadoutData set ["antiInfantryGrenades", ["SPE_Shg24","SPE_Shg24_Frag"]]; +_loadoutData set ["smokeGrenades", ["SPE_NB39", "SPE_NBK39b"]]; _loadoutData set ["signalsmokeGrenades", ["SPE_Handrauchzeichen_Yellow", "SPE_Handrauchzeichen_Red", "SPE_Handrauchzeichen_Violet"]]; @@ -141,10 +151,12 @@ _loadoutData set ["watches", ["SPE_GER_ItemWatch"]]; _loadoutData set ["compasses", ["SPE_GER_ItemCompass", "SPE_GER_ItemCompass_deg"]]; _loadoutData set ["radios", ["ItemRadio"]]; _loadoutData set ["binoculars", ["SPE_Binocular_GER"]]; +_loadoutData set ["Flashlight", ["SPE_GER_FL_Signal_Flashlight"]]; -_loadoutData set ["uniforms", ["U_SPE_ST_Soldier_E44_Camo", "U_SPE_ST_Soldier_Camo"]]; -_loadoutData set ["medUniforms", ["U_SPE_ST_Medic_E44"]]; -_loadoutData set ["slUniorms", ["U_SPE_ST_Unterofficier_E44"]]; +_loadoutData set ["uniforms", ["U_SPE_GER_Soldier_Boots", "U_SPE_GER_Soldier_Gaiters", "U_SPE_GER_MG_schutze", "U_SPE_GER_Gefreiter_Gaiters", "U_SPE_GER_Gefreiter", "U_SPE_GER_Oberschutze"]]; +_loadoutData set ["sniUniforms", []]; +_loadoutData set ["medUniforms", ["U_SPE_GER_Medic"]]; +_loadoutData set ["slUniforms", ["U_SPE_GER_Unterofficer"]]; _loadoutData set ["vests", ["V_SPE_GER_VestMP40", "V_SPE_GER_VestG43", "V_SPE_GER_VestKar98", "V_SPE_DAK_VestKar98"]]; _loadoutData set ["glVests", ["V_SPE_US_Vest_Grenadier"]]; @@ -158,9 +170,12 @@ _loadoutData set ["medBackpacks", ["B_SPE_GER_MedicBackpack_Empty"]]; _loadoutData set ["slBackpacks", ["B_SPE_GER_Radio"]]; _loadoutData set ["engBackpacks", ["B_SPE_GER_SapperBackpack_empty"]]; -_loadoutData set ["helmets", ["H_SPE_ST_Helmet", "H_SPE_ST_Helmet3"]]; +_loadoutData set ["helmets", ["H_SPE_GER_Helmet", "H_SPE_GER_Helmet_ns", "H_SPE_GER_HelmetUtility_Oak_OS"]]; +_loadoutData set ["sniHelmets", []]; _loadoutData set ["medHelmets", ["H_SPE_GER_Helmet_Medic"]]; -_loadoutData set ["slHelmets", ["H_SPE_GER_OfficerCap"]]; +_loadoutData set ["slHelmets", ["H_SPE_GER_Cap_Offz"]]; + +_loadoutData set ["facewear", ["G_SPE_GER_GM30","G_SPE_Dust_Goggles","G_SPE_Dust_Goggles_2"]]; //Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. _loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; @@ -203,23 +218,38 @@ _loadoutData set ["items_unarmed_extras", []]; private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; _sfLoadoutData set ["uniforms", ["U_SPE_ST_Soldier_E44_Camo", "U_SPE_ST_MGunner_E44", "U_SPE_ST_Soldier_E44_Camo2", "U_SPE_ST_Soldier_E44"]]; _sfLoadoutData set ["medUniforms", ["U_SPE_ST_Medic_E44"]]; -_sfLoadoutData set ["slUniorms", ["U_SPE_ST_Unterofficier_E44"]]; +_sfLoadoutData set ["slUniforms", ["U_SPE_ST_Unterofficier_E44"]]; _sfLoadoutData set ["helmets", ["H_SPE_ST_Helmet2", "H_SPE_ST_Helmet4"]]; +_sfLoadoutData set ["slHelmets", ["H_SPE_GER_Fieldcap2"]]; _sfLoadoutData set ["rifles", [ ["SPE_G43", "", "", "", ["SPE_10Rnd_792x57", "SPE_10Rnd_792x57", "SPE_10Rnd_792x57_T"], [], ""], ["SPE_STG44", "", "", "", ["SPE_30Rnd_792x33", "SPE_30Rnd_792x33", "SPE_30rnd_792x33_t"], [], ""], -["SPE_K98_Late", "SPE_ACC_K98_Bayo", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], [], ""], -["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] +["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] ]]; _sfLoadoutData set ["slRifles", [ ["SPE_G43", "", "", "", ["SPE_10Rnd_792x57", "SPE_10Rnd_792x57", "SPE_10Rnd_792x57_T"], [], ""], ["SPE_STG44", "", "", "", ["SPE_30Rnd_792x33", "SPE_30Rnd_792x33", "SPE_30rnd_792x33_t"], [], ""] ]]; _sfLoadoutData set ["grenadeLaunchers", [ -["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_30", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""], -["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] +["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_30", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""], +["SPE_K98_Late_GW", "SPE_ACC_GW_SB_Empty", "", "", ["SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_SMK", "SPE_5Rnd_792x57_t"], ["SPE_1Rnd_G_PZGR_40", "SPE_1Rnd_G_SPRGR_30", "SPE_1Rnd_G_FLGR", "SPE_1Rnd_G_NBGR_42"], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["SPE_MG42", "", "", "", ["SPE_50Rnd_792x57", "SPE_50Rnd_792x57", "SPE_50Rnd_792x57_SMK"], [], ""], +["SPE_MG34", "", "", "", ["SPE_50Rnd_792x57", "SPE_50Rnd_792x57", "SPE_50Rnd_792x57_SMK"], [], ""], +["SPE_FG42_E", "", "", "", ["SPE_20Rnd_792x57", "SPE_20Rnd_792x57", "SPE_20Rnd_792x57_t2"], [], ""] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK"], [], ""], +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK"], [], ""], +["SPE_FG42_E", "", "", "SPE_Optic_ZFG42", ["SPE_20Rnd_792x57", "SPE_20Rnd_792x57", "SPE_20Rnd_792x57_t2"], [], ""] +]]; +_sfLoadoutData set ["sniperRifles", [ +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK"], [], ""], +["SPE_K98ZF39", "", "", "", ["SPE_5Rnd_792x57_SMK"], [], ""], +["SPE_FG42_E", "", "", "SPE_Optic_ZFG42", ["SPE_20Rnd_792x57", "SPE_20Rnd_792x57", "SPE_20Rnd_792x57_t2"], [], ""] ]]; ///////////////////////////////// @@ -227,16 +257,31 @@ _sfLoadoutData set ["grenadeLaunchers", [ ///////////////////////////////// private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_militaryLoadoutData set ["sniUniforms", ["U_SPE_GER_Soldier_camo", "U_SPE_GER_Soldier_camo4"]]; +_militaryLoadoutData set ["sniHelmets", ["H_SPE_GER_HelmetUtility_Oak_OS", "H_SPE_GER_HelmetUtility_Grass_OS", "H_SPE_GER_M38_2", "H_SPE_GER_Cap"]]; //See LoadoutData /////////////////////////////// // Police Loadout Data // /////////////////////////////// private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; -_policeLoadoutData set ["uniforms", ["U_SPE_GER_Soldier_Boots"]]; +_policeLoadoutData set ["uniforms", ["U_SPE_milice_3"]]; +_policeLoadoutData set ["vests", ["V_SPE_milice_Vest_zwart_rifle", "V_SPE_milice_Vest_zwart_rifle_sidearm","V_SPE_milice_Vest_zwart_sidearm"]]; +_policeLoadoutData set ["helmets", ["H_SPE_Milice_Adrian", "H_SPE_Milice_Adrian_ns"]]; +_policeLoadoutData set ["slHelmets", ["H_SPE_Milice_beret_1"]]; + +_policeLoadoutData set ["SMGs", [ +["SPE_MP35", "", "", "", ["SPE_24Rnd_MP35_9x19", "SPE_24Rnd_MP35_9x19", "SPE_24rnd_MP35_9x19_t"], [], ""] +]]; _policeLoadoutData set ["rifles", [ -["SPE_K98", "SPE_ACC_K98_Bayo", "", "", ["SPE_5Rnd_792x57", "SPE_5Rnd_792x57", "SPE_5Rnd_792x57_t"], [], ""] +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] +]]; +_policeLoadoutData set ["shotGuns", [ +["SPE_Fusil_Mle_208_12", "", "", "", ["SPE_2Rnd_12x65_Slug", "SPE_2Rnd_12x65_No4_Buck", "SPE_2Rnd_12x65_Pellets"], [], ""], +["SPE_Fusil_Mle_208_12", "", "", "", ["SPE_2Rnd_12x65_No4_Buck", "SPE_2Rnd_12x65_Slug", "SPE_2Rnd_12x65_Pellets"], [], ""], +["SPE_Fusil_Mle_208_12", "", "", "", ["SPE_2Rnd_12x65_Pellets", "SPE_2Rnd_12x65_Slug", "SPE_2Rnd_12x65_No4_Buck"], [], ""] ]]; //////////////////////////////// @@ -245,18 +290,68 @@ _policeLoadoutData set ["rifles", [ private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; -_militiaLoadoutData set ["uniforms", ["U_SPE_GER_Soldier_Boots", "U_SPE_GER_Soldier_Gaiters", "U_SPE_GER_Schutze_HBT", "U_SPE_GER_MG_schutze_HBT"]]; -_militiaLoadoutData set ["medUniforms", ["U_SPE_GER_Medic"]]; -_militiaLoadoutData set ["slUniorms", ["U_SPE_GER_Leutnant", "U_SPE_GER_Oberleutnant", "U_SPE_GER_Hauptmann"]]; -_militiaLoadoutData set ["helmets", ["H_SPE_GER_Helmet", "H_SPE_GER_Cap"]]; +_militiaLoadoutData set ["uniforms", ["U_SPE_milice_2"]]; +_militiaLoadoutData set ["medUniforms", ["U_SPE_milice_2_CD"]]; +_militiaLoadoutData set ["slUniforms", ["U_SPE_milice_2_CT"]]; + +_militiaLoadoutData set ["vests", ["V_SPE_Milice_Vest_rifle", "V_SPE_milice_Vest_MG"]]; +_militiaLoadoutData set ["glVests", ["V_SPE_Milice_Vest_rifle"]]; +_militiaLoadoutData set ["sniVests", ["V_SPE_milice_Vest_rifle_sidearm"]]; +_militiaLoadoutData set ["engVests", ["V_SPE_milice_Vest_rifle_sidearm"]]; +_militiaLoadoutData set ["mgVests", ["V_SPE_milice_Vest_MG", "V_SPE_milice_Vest_MG_sidearm"]]; +_militiaLoadoutData set ["slVests", ["V_SPE_milice_Vest_smg", "V_SPE_milice_Vest_sidearm"]]; + +_militiaLoadoutData set ["backpacks", ["B_SPE_CIV_musette", "B_SPE_FFI_Gasbag"]]; +_militiaLoadoutData set ["medBackpacks", ["B_SPE_GER_MedicBackpack_Empty"]]; +_militiaLoadoutData set ["slBackpacks", ["B_SPE_Milice_Radio"]]; +_militiaLoadoutData set ["engBackpacks", ["B_SPE_CIV_musette"]]; + +_militiaLoadoutData set ["helmets", ["H_SPE_Milice_Adrian", "H_SPE_Milice_Adrian_ns"]]; +_militiaLoadoutData set ["medHelmets", ["H_SPE_FR_Adrian_Medic"]]; +_militiaLoadoutData set ["slHelmets", ["H_SPE_Milice_beret_2"]]; + +_militiaLoadoutData set ["ATLaunchers", []]; +_militiaLoadoutData set ["sidearms", []]; + +_militiaLoadoutData set ["rifles", [ +["SPE_No3_Mk1_Enfield", "SPE_ACC_M1917_Bayo", "", "", ["SPE_5Rnd_770x56", "SPE_5Rnd_770x56"], [], ""], +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""], +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] +]]; +_militiaLoadoutData set ["shotGuns", [ +["SPE_Fusil_Mle_208_12", "", "", "", ["SPE_2Rnd_12x65_Pellets"], [], ""], +["SPE_Fusil_Mle_208_12_Sawedoff", "", "", "", ["SPE_2Rnd_12x65_Pellets"], [], ""] +]]; +_militiaLoadoutData set ["slRifles", [ +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""], +["SPE_MP35", "", "", "", ["SPE_24Rnd_MP35_9x19", "SPE_24Rnd_MP35_9x19", "SPE_24rnd_MP35_9x19_t"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["SPE_MAS_36", "", "", "", ["SPE_5Rnd_75x54"], [], ""], +["SPE_MP35", "", "", "", ["SPE_24Rnd_MP35_9x19", "SPE_24Rnd_MP35_9x19", "SPE_24rnd_MP35_9x19_t"], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["SPE_LMG_303_Mk2", "", "", "", ["SPE_30Rnd_770x56"], [], ""], +["SPE_FM_24_M29", "", "", "", ["SPE_25Rnd_75x54"], [], ""], +["SPE_FM_24_M29", "", "", "", ["SPE_25Rnd_75x54"], [], ""] +]]; ////////////////////////// // Misc Loadouts // ////////////////////////// private _crewLoadoutData = _loadoutData call _fnc_copyLoadoutData; -_crewLoadoutData set ["uniforms", ["U_SPE_GER_Tank_crew_private"]]; +_crewLoadoutData set ["uniforms", ["U_SPE_GER_Tank_crew_private", "U_SPE_GER_lehr_gefreiter", "U_SPE_GER_lehr_unterofficer"]]; _crewLoadoutData set ["vests", ["V_SPE_GER_TankPrivateBelt"]]; _crewLoadoutData set ["helmets", ["H_SPE_GER_TankPrivateCap3", "H_SPE_GER_TankPrivateCap", "H_SPE_GER_TankPrivateCap2"]]; @@ -266,6 +361,17 @@ _pilotLoadoutData set ["vests", ["V_SPE_GER_PrivateBelt"]]; _pilotLoadoutData set ["helmets", ["H_SPE_GER_LW_PilotHelmet"]]; _pilotLoadoutData set ["backpacks", ["B_SPE_GER_LW_Paradrop"]]; +private _officerLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["slUniforms", ["U_SPE_GER_Hauptmann", "U_SPE_GER_Oberleutnant", "U_SPE_GER_Oberst"]]; +_officerLoadoutData set ["slVests", ["V_SPE_GER_PistolBelt"]]; +_officerLoadoutData set ["slHelmets", ["H_SPE_GER_OfficerCap"]]; +_officerLoadoutData set ["backpacks", []]; +_officerLoadoutData set ["slBackpacks", []]; + +_officerLoadoutData set ["slRifles", [ +["SPE_MP40", "", "", "", ["SPE_32Rnd_9x19"], [], ""] +]]; + ///////////////////////////////// // Unit Type Definitions // ///////////////////////////////// @@ -278,7 +384,7 @@ _pilotLoadoutData set ["backpacks", ["B_SPE_GER_LW_Paradrop"]]; private _squadLeaderTemplate = { ["slHelmets"] call _fnc_setHelmet; [["slVests", "vests"] call _fnc_fallback] call _fnc_setVest; - [["slUniorms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; + [["slUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; [["slBackpacks", "backpacks"] call _fnc_fallback] call _fnc_setBackpack; @@ -300,6 +406,7 @@ private _squadLeaderTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; ["binoculars"] call _fnc_addBinoculars; }; @@ -309,7 +416,7 @@ private _riflemanTemplate = { ["vests"] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; - [selectRandomWeighted ["rifles", 3, "SMGs", 1.5]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; @@ -325,6 +432,7 @@ private _riflemanTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _medicTemplate = { @@ -348,6 +456,7 @@ private _medicTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _grenadierTemplate = { @@ -374,6 +483,7 @@ private _grenadierTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _explosivesExpertTemplate = { @@ -405,6 +515,7 @@ private _explosivesExpertTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _engineerTemplate = { @@ -432,6 +543,7 @@ private _engineerTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _latTemplate = { @@ -440,7 +552,7 @@ private _latTemplate = { ["uniforms"] call _fnc_setUniform; ["backpacks"] call _fnc_setBackpack; - [selectRandomWeighted ["rifles", 3, "SMGs", 1.5]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["lightATLaunchers"] call _fnc_setLauncher; @@ -451,25 +563,28 @@ private _latTemplate = { ["items_medical_standard"] call _fnc_addItemSet; ["items_lat_extras"] call _fnc_addItemSet; ["items_miscEssentials"] call _fnc_addItemSet; - ["antiInfantryGrenades", 1] call _fnc_addItem; + ["antiTankGrenades", 1] call _fnc_addItem; ["smokeGrenades", 1] call _fnc_addItem; ["maps"] call _fnc_addMap; ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _atTemplate = { ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; ["vests"] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; ["backpacks"] call _fnc_setBackpack; - [selectRandomWeighted ["rifles", 3, "SMGs", 1.5]] call _fnc_setPrimary; + [selectRandomWeighted ["rifles", 4, "SMGs", 1]] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; - ["lightATLaunchers"] call _fnc_setLauncher; + [["ATLaunchers", "lightATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + ["launcher", 2] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; ["handgun", 2] call _fnc_addMagazines; @@ -477,13 +592,14 @@ private _atTemplate = { ["items_medical_standard"] call _fnc_addItemSet; ["items_at_extras"] call _fnc_addItemSet; ["items_miscEssentials"] call _fnc_addItemSet; - ["antiInfantryGrenades", 1] call _fnc_addItem; + ["antiTankGrenades", 1] call _fnc_addItem; ["smokeGrenades", 1] call _fnc_addItem; ["maps"] call _fnc_addMap; ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _aaTemplate = { @@ -492,7 +608,7 @@ private _aaTemplate = { ["uniforms"] call _fnc_setUniform; ["backpacks"] call _fnc_setBackpack; - [selectRandomWeighted ["rifles", 3, "SMGs", 1.5]] call _fnc_setPrimary; + ["rifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; ["lightATLaunchers"] call _fnc_setLauncher; @@ -503,13 +619,14 @@ private _aaTemplate = { ["items_medical_standard"] call _fnc_addItemSet; ["items_aa_extras"] call _fnc_addItemSet; ["items_miscEssentials"] call _fnc_addItemSet; - ["antiInfantryGrenades", 1] call _fnc_addItem; + ["antiTankGrenades", 1] call _fnc_addItem; ["smokeGrenades", 2] call _fnc_addItem; ["maps"] call _fnc_addMap; ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _machineGunnerTemplate = { @@ -534,12 +651,13 @@ private _machineGunnerTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _marksmanTemplate = { - ["helmets"] call _fnc_setHelmet; + [["sniHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; [["sniVests", "vests"] call _fnc_fallback] call _fnc_setVest; - ["uniforms"] call _fnc_setUniform; + [["sniUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; ["marksmanRifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; @@ -561,9 +679,9 @@ private _marksmanTemplate = { }; private _sniperTemplate = { - ["helmets"] call _fnc_setHelmet; + [["sniHelmets", "helmets"] call _fnc_fallback] call _fnc_setHelmet; [["sniVests", "vests"] call _fnc_fallback] call _fnc_setVest; - ["uniforms"] call _fnc_setUniform; + [["sniUniforms", "uniforms"] call _fnc_fallback] call _fnc_setUniform; ["sniperRifles"] call _fnc_setPrimary; ["primary", 8] call _fnc_addMagazines; @@ -589,7 +707,7 @@ private _policeTemplate = { ["vests"] call _fnc_setVest; ["uniforms"] call _fnc_setUniform; - [selectRandomWeighted ["rifles", 3, "SMGs", 1.5]] call _fnc_setPrimary; + [selectRandomWeighted ["rifles", 3, "shotGuns", 1]] call _fnc_setPrimary; ["primary", 3] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; @@ -604,6 +722,12 @@ private _policeTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; +}; +private _policeSLTemplate = { + call _policeTemplate; + ["slHelmets"] call _fnc_setHelmet; + [selectRandom ["rifles", "SMGs"]] call _fnc_setPrimary; }; private _crewTemplate = { @@ -640,10 +764,13 @@ private _unarmedTemplate = { ["watches"] call _fnc_addWatch; ["compasses"] call _fnc_addCompass; ["radios"] call _fnc_addRadio; + ["Flashlight"] call _fnc_addNVGs; }; private _traitorTemplate = { call _unarmedTemplate; + ["shotGuns"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; ["sidearms"] call _fnc_setHandgun; ["handgun", 2] call _fnc_addMagazines; }; @@ -708,7 +835,7 @@ private _unitTypes = [ //////////////////////// private _prefix = "police"; private _unitTypes = [ - ["SquadLeader", _policeTemplate], + ["SquadLeader", _policeSLTemplate], ["Standard", _policeTemplate] ]; @@ -744,8 +871,8 @@ private _unitTypes = [ //The following lines are determining the loadout of the pilots ["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the unit used in the "kill the official" mission -["other", [["Official", _SquadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Official", _SquadLeaderTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the AI used in the "kill the traitor" mission -["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +["other", [["Traitor", _traitorTemplate]], _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; //The following lines are determining the loadout for the AI used in the "Invader Punishment" mission ["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_CIV.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_CIV.sqf index 9fca0c590b..1db612c6c5 100644 --- a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_CIV.sqf +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_CIV.sqf @@ -3,17 +3,19 @@ ////////////////////////// ["vehiclesCivCar", [ - "SPE_OpelBlitz", 1 - , "SPE_OpelBlitz_Open", 1 - , "LIB_GazM1", 1 - , "LIB_GazM1_dirty", 1 - , "LIB_GazM1_SOV_camo_sand", 1 - , "LIB_GazM1_SOV", 1 + "LIB_GazM1", 1.5, + "LIB_GazM1_dirty", 2.5, + "LIB_CIV_FFI_CitC4", 0.125, + "LIB_CIV_FFI_CitC4_2", 0.125, + "LIB_CIV_FFI_CitC4_3", 0.125, + "LIB_GazM1_SOV_camo_sand", 1, + "LIB_GazM1_SOV", 1 ]] call _fnc_saveToTemplate; ["vehiclesCivIndustrial", [ - "SPE_OpelBlitz", 1 - , "SPE_OpelBlitz_Open", 1 + "LIB_CIV_FFI_CitC4", 0.25, + "LIB_CIV_FFI_CitC4_2", 0.25, + "LIB_CIV_FFI_CitC4_3", 0.25 ]] call _fnc_saveToTemplate; ["vehiclesCivBoat", [ @@ -21,22 +23,22 @@ ]] call _fnc_saveToTemplate; ["vehiclesCivRepair", [ - "SPE_OpelBlitz_Repair", 0.1 ]] call _fnc_saveToTemplate; ["vehiclesCivMedical", [ - "SPE_OpelBlitz_Ambulance", 0.1 ]] call _fnc_saveToTemplate; ["vehiclesCivFuel", [ - "SPE_OpelBlitz_Fuel", 0.1 ]] call _fnc_saveToTemplate; +#include "SPE_Vehicle_Attributes.sqf" + ///////////////////// /// Identities /// ///////////////////// ["faces", ["LivonianHead_6","SPE_Connors","SPE_Ivanych","SPE_OBrien","SPE_Vasiliev","WhiteHead_02","WhiteHead_04","WhiteHead_05","WhiteHead_09","WhiteHead_11","WhiteHead_13","WhiteHead_20","WhiteHead_21"]] call _fnc_saveToTemplate; +"SPE_FrenchMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_REB_FFF.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_REB_FFF.sqf index 70bee7dd78..e07e38a025 100644 --- a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_REB_FFF.sqf +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_IFA_REB_FFF.sqf @@ -17,8 +17,8 @@ ["mediKits", ["SPE_US_Medkit", "SPE_GER_Medkit"]] call _fnc_saveToTemplate; // Relies on autodetection. However, item is tested for for help and reviving. ["toolKits", ["SPE_ToolKit"]] call _fnc_saveToTemplate; // Relies on autodetection. -["diveGear", [""]] call _fnc_saveToTemplate; -["flyGear", [""]] call _fnc_saveToTemplate; +["diveGear", ["U_SPE_FR_Tank_Crew"]] call _fnc_saveToTemplate; +["flyGear", ["U_SPE_FR_Tank_Crew", "B_SPE_US_T5_erla"]] call _fnc_saveToTemplate; ["surrenderCrate", "SPE_Mine_AmmoBox_US"] call _fnc_saveToTemplate; @@ -26,10 +26,10 @@ // Vehicles // ////////////////////////// -["vehiclesBasic", ["SPE_FFI_OpelBlitz_Open"]] call _fnc_saveToTemplate; -["vehiclesLightUnarmed", ["LIB_Kfz1_sernyt","LIB_Kfz1_Hood_sernyt"]] call _fnc_saveToTemplate; -["vehiclesLightArmed", ["SPE_US_M3_Halftrack","LIB_Kfz1_MG42_sernyt"]] call _fnc_saveToTemplate; -["vehiclesTruck", ["SPE_US_M3_Halftrack_Unarmed"]] call _fnc_saveToTemplate; +["vehiclesBasic", ["SPE_FFI_R200_Unarmed"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["SPE_FFI_R200_Hood"]] call _fnc_saveToTemplate; +["vehiclesLightArmed", ["SPE_FFI_R200_MG34"]] call _fnc_saveToTemplate; +["vehiclesTruck", ["SPE_FFI_OpelBlitz_Open"]] call _fnc_saveToTemplate; ["vehiclesAT", []] call _fnc_saveToTemplate; ["vehiclesAA", ["SPE_OpelBlitz_Flak38"]] call _fnc_saveToTemplate; @@ -64,20 +64,23 @@ ["vehicleHealthStation", ["", 75]] call _fnc_saveToTemplate; ["vehicleRepairStation", ["", 5000]] call _fnc_saveToTemplate; +#include "SPE_Reb_Vehicle_Attributes.sqf" + /////////////////////////// // Rebel Starting Gear // /////////////////////////// private _initialRebelEquipment = [ - "SPE_Fusil_Mle_208_12", "SPE_Fusil_Mle_208_12_Sawedoff", "SPE_K98", - "SPE_2Rnd_12x65_Pellets", "SPE_2Rnd_12x65_Slug", "SPE_5Rnd_792x57", + "SPE_Fusil_Mle_208_12", "SPE_Fusil_Mle_208_12_Sawedoff", + "SPE_2Rnd_12x65_Pellets", "SPE_2Rnd_12x65_Slug","SPE_2Rnd_12x65_No4_Buck", "SPE_P08", "SPE_8Rnd_9x19_P08", - ["SPE_PzFaust_30m", 50], ["SPE_1Rnd_PzFaust_30m", 50], + ["SPE_Faustpatrone", 50], ["SPE_1Rnd_Faustpatrone", 50], ["SPE_Ladung_Small_MINE_mag", 10], ["SPE_US_TNT_half_pound_mag", 10], ["SPE_US_TNT_4pound_mag", 3], ["SPE_Ladung_Big_MINE_mag", 3], - "SPE_Shg24_Frag", "SPE_NB39", "SPE_US_Mk_1", - "V_SPE_US_Vest_M1919", "V_SPE_DAK_VestKar98", - "B_SPE_FFI_M36_Saboteur", "B_SPE_GER_MedicBackpack_Empty", - "SPE_Binocular_US" + "SPE_NB39", "SPE_Shg24", + "V_SPE_FFI_Vest_Pouch","V_SPE_FFI_Vest_Pouch_frag", "V_SPE_FFI_Vest_rifle","V_SPE_FFI_Vest_rifle_frag", + "V_SPE_FFI_Vest_rifle_pouch","V_SPE_FFI_Vest_SMG","V_SPE_FFI_Vest_SMG_frag","V_SPE_FFI_Vest_SMG_pouch", + "B_SPE_FFI_Gasbag", "B_SPE_CIV_musette", "B_SPE_CIV_satchel", + "SPE_Binocular_GER" ]; if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr", "tf_anprc154"]}; @@ -122,6 +125,9 @@ private _rebUniforms = [ "H_SPE_CIV_Fedora_Cap_6", "H_SPE_CIV_Worker_Cap_1", "H_SPE_CIV_Worker_Cap_2", + "H_SPE_CIV_Worker_Cap_3", + "H_SPE_CIV_Worker_Cap_1", + "H_SPE_CIV_Worker_Cap_2", "H_SPE_CIV_Worker_Cap_3" ]] call _fnc_saveToTemplate; //Headgear used by Rebell Ai until you have Armored Headgear. @@ -130,7 +136,8 @@ private _rebUniforms = [ ///////////////////// ["faces", ["LivonianHead_6","SPE_Arnold","SPE_Connors","SPE_Davidson","SPE_Elliot","SPE_Oberst","SPE_Seppmeyer","SPE_Walter","WhiteHead_01","WhiteHead_02","WhiteHead_05","WhiteHead_06","WhiteHead_07","WhiteHead_08","WhiteHead_12","WhiteHead_15","WhiteHead_18"]] call _fnc_saveToTemplate; -["voices", ["Male01FRE","Male02FRE","Male03FRE"]] call _fnc_saveToTemplate; +["voices", ["spe_male01fre", "spe_male02fre"]] call _fnc_saveToTemplate; +"SPE_FrenchMen" call _fnc_saveNames; ////////////////////////// // Loadouts // diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Reb_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Reb_Vehicle_Attributes.sqf new file mode 100644 index 0000000000..35f28d4ed4 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Reb_Vehicle_Attributes.sqf @@ -0,0 +1,4 @@ +["attributesVehicles", [ + ["SPE_FFI_R200_Unarmed", ["rebCost", 200]], + ["SPE_OpelBlitz_Flak38", ["rebCost", 2000]] +]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Vehicle_Attributes.sqf new file mode 100644 index 0000000000..9defba3e7c --- /dev/null +++ b/A3A/addons/core/Templates/Templates/SPE_IFA/SPE_Vehicle_Attributes.sqf @@ -0,0 +1,12 @@ +["attributesVehicles", [ + // WW2 planes are not super effective + ["SPE_P47", ["cost", 75]], + ["SPE_FW190F8", ["cost", 75]], + + ["SPE_US_M3_Halftrack", ["cost", 60]], + ["SPE_M20_AUC", ["cost", 60]], + // M8 is too powerful for a lightarmed and not powerful enough for lighttank + ["SPE_M8_LAC", ["cost", 80]], + ["SPE_M8_LAC_ringMount", ["cost", 80]] + +]] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/VN/VN_Reb_POF.sqf b/A3A/addons/core/Templates/Templates/VN/VN_Reb_POF.sqf index 966522d535..492ce12a9d 100644 --- a/A3A/addons/core/Templates/Templates/VN/VN_Reb_POF.sqf +++ b/A3A/addons/core/Templates/Templates/VN/VN_Reb_POF.sqf @@ -19,7 +19,7 @@ ["itemMaps", ["vn_b_item_map"]] call _fnc_saveToTemplate; // Relies on autodetection. ["diveGear", ["vn_b_uniform_seal_09_01", "vn_b_acc_seal_01", "vn_b_vest_seal_01"]] call _fnc_saveToTemplate; -["flyGear", ["vn_b_uniform_heli_01_01"]] call _fnc_saveToTemplate; +["flyGear", ["vn_b_uniform_heli_01_01","vn_i_pack_parachute_01"]] call _fnc_saveToTemplate; ["surrenderCrate", "vn_o_ammobox_04"] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_AAF.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_AAF.sqf index e22824e550..352a272606 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_AAF.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_AAF.sqf @@ -40,10 +40,10 @@ private _AA = ["I_LT_01_AA_F"]; ["vehiclesPlanesAA", ["I_Plane_Fighter_04_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", []] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["I_Heli_light_03_unarmed_F"]] call _fnc_saveToTemplate; -["vehiclesHelisTransport", ["I_Heli_Transport_02_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLightAttack", ["I_Heli_light_03_dynamicLoadout_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["B_Heli_Attack_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["I_Heli_light_03_unarmed_F"]; +private _vehiclesHelisTransport = ["I_Heli_Transport_02_F"]; +private _vehiclesHelisLightAttack = ["I_Heli_light_03_dynamicLoadout_F"]; +private _vehiclesHelisAttack = ["B_Heli_Attack_01_dynamicLoadout_F"]; ["vehiclesArtillery", ["I_Truck_02_MRL_F", "B_MBT_01_arty_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -94,7 +94,19 @@ if ("enoch" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; - +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesHelisTransport append ["I_Heli_EC_01A_military_RF"]; + _vehiclesHelisLight append ["a3a_green_Heli_light_03_unarmed_rf"]; + _vehiclesHelisLightAttack append ["a3a_AAF_Heli_light_03_dynamicLoadout_rf"]; + _vehiclesHelisAttack = ["a3a_AAF_Heli_EC_02_rf"]; + _vehiclesMilitiaCars append ["I_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["I_Pickup_mmg_rf","I_Pickup_hmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisTransport", _vehiclesHelisTransport] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; +["vehiclesHelisAttack", _vehiclesHelisAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesCargoTrucks", _cargoTrucks] call _fnc_saveToTemplate; @@ -416,6 +428,39 @@ if ("mark" in A3A_enabledDLC) then { //Overwrites the ABR/EBR - not fitting for the AAF militia, others will still use it }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetIA_sb_digital_RF", + "H_HelmetHeavy_Olive_RF", + "H_HelmetHeavy_Simple_Olive_RF", + "H_HelmetHeavy_VisorUp_Olive_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetIA_sb_digital_RF"]; + (_militiaLoadoutData get "helmets") append ["H_HelmetIA_sb_digital_RF"]; +}; + ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Apex.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Apex.sqf index d73832734c..12dd5c26d5 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Apex.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Apex.sqf @@ -42,8 +42,8 @@ private _Tanks = ["O_T_MBT_02_cannon_ghex_F"]; ["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["O_Heli_Transport_04_bench_black_F","O_Heli_Transport_04_covered_black_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F", "O_Heli_Light_02_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["O_Heli_Attack_02_black_F", "O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["O_T_MBT_02_arty_ghex_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -54,9 +54,9 @@ private _Tanks = ["O_T_MBT_02_cannon_ghex_F"]; ["uavsPortable", ["O_UAV_01_F"]] call _fnc_saveToTemplate; //Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: -["vehiclesMilitiaLightArmed", ["O_T_LSV_02_armed_F","O_T_LSV_02_AT_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaLightArmed = ["O_T_LSV_02_armed_F","O_T_LSV_02_AT_F"]; ["vehiclesMilitiaTrucks", ["O_T_Truck_02_F"]] call _fnc_saveToTemplate; -["vehiclesMilitiaCars", ["O_T_LSV_02_unarmed_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaCars = ["O_T_LSV_02_unarmed_F"]; private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; @@ -89,6 +89,13 @@ if ("tanks" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_T_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_ghex_Pickup_mmg_rf"]; +}; +["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesTanks", _Tanks] call _fnc_saveToTemplate; @@ -423,6 +430,40 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_05_blk_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_02_F_hex"] ]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""], + ["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Holosight_lush_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_wood_RF", "suppressor_127x55_small_wood_RF", "acc_pointer_IR", "optic_Holosight_lush_F", ["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_GHex_RF", + "H_HelmetHeavy_Simple_GHex_RF", + "H_HelmetHeavy_VisorUp_GHex_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Arid.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Arid.sqf index c5362ab1fd..3aaa419e9f 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Arid.sqf @@ -93,6 +93,11 @@ if ("expansion" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_hex_Pickup_mmg_rf"]; +}; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; @@ -419,7 +424,42 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_05_tan_f", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_02_F_hex"] ]; }; - +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""], + ["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Holosight_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_blk_RF", "suppressor_127x55_small_RF", "acc_pointer_IR", "optic_Holosight_blk_F", ["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_Arco_blk_F",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Hex_RF", + "H_HelmetHeavy_Simple_Hex_RF", + "H_HelmetHeavy_VisorUp_Hex_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "helmets") append ["H_HelmetO_ocano_sb_hex_RF"]; + (_militiaLoadoutData get "helmets") append ["H_HelmetO_ocamo_sb_hex_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Enoch.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Enoch.sqf index 27ec54506a..ce0f8c9f46 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Enoch.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Enoch.sqf @@ -42,8 +42,8 @@ private _Tanks = ["O_T_MBT_02_cannon_ghex_F"]; ["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["O_Heli_Transport_04_bench_black_F","O_Heli_Transport_04_covered_black_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F", "O_Heli_Light_02_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["O_Heli_Attack_02_black_F", "O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["O_T_MBT_02_arty_ghex_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -94,6 +94,11 @@ if ("expansion" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_T_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_ghex_Pickup_mmg_rf"]; +}; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; @@ -433,6 +438,42 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_05_blk_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_02_F_blk"] ]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""], + ["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_blk_RF","suppressor_127x55_small_RF","acc_pointer_IR","optic_Holosight_blk_F",["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_blk_RF", "suppressor_127x55_small_RF", "acc_pointer_IR", "optic_Holosight_blk_F", ["20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF","20Rnd_127x55_Mag_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_Arco_blk_F",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_blk_RF","suppressor_127x55_big_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF","10Rnd_127x55_Mag_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Hex_RF", + "H_HelmetHeavy_Simple_Hex_RF", + "H_HelmetHeavy_VisorUp_Hex_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "helmets") append ["H_HelmetO_ocano_sb_hex_RF"]; + (_militiaLoadoutData get "helmets") append ["H_HelmetO_ocamo_sb_hex_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Temperate.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Temperate.sqf index a58d7b00f7..3db0811b5d 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_CSAT_Temperate.sqf @@ -42,8 +42,8 @@ private _Tanks = ["O_T_MBT_02_cannon_ghex_F"]; ["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["O_Heli_Transport_04_bench_black_F","O_Heli_Transport_04_covered_black_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F", "O_Heli_Light_02_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["O_Heli_Attack_02_black_F", "O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["O_T_MBT_02_arty_ghex_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -95,6 +95,11 @@ if ("expansion" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_T_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_ghex_Pickup_mmg_rf"]; +}; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; @@ -429,7 +434,40 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_05_blk_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_02_F_blk"] ]; }; - +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""], + ["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_wood_RF","suppressor_127x55_small_wood_RF","acc_pointer_IR","optic_Holosight_lush_F",["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_wood_RF", "suppressor_127x55_small_wood_RF", "acc_pointer_IR", "optic_Holosight_lush_F", ["20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF","20Rnd_127x55_Mag_wood_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_Arco_ghex_F",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_wood_RF","suppressor_127x55_big_wood_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF","10Rnd_127x55_Mag_wood_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_GHex_RF", + "H_HelmetHeavy_Simple_GHex_RF", + "H_HelmetHeavy_VisorUp_GHex_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_LDF.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_LDF.sqf index 0b93976624..484d919663 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_LDF.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_LDF.sqf @@ -40,10 +40,10 @@ private _Tanks = ["B_T_MBT_01_TUSK_F", "B_T_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["I_E_Heli_light_03_unarmed_F", "B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["I_E_Heli_light_03_unarmed_F", "B_Heli_Light_01_F"]; private _HelisTransport = ["B_Heli_Transport_01_camo_F"]; -["vehiclesHelisLightAttack", ["I_E_Heli_light_03_dynamicLoadout_F", "B_Heli_Light_01_armed_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["B_Heli_Attack_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["I_E_Heli_light_03_dynamicLoadout_F", "B_Heli_Light_01_armed_F"]; +private _vehiclesHelisAttack = ["B_Heli_Attack_01_F"]; ["vehiclesArtillery", ["B_T_MBT_01_arty_F", "I_E_Truck_02_MRL_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -94,6 +94,18 @@ if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["I_E_Van_02_transport_MP_F"]; ["vehiclesMilitiaTrucks", ["I_E_Van_02_transport_F", "I_E_Van_02_vehicle_F"]] call _fnc_saveToTemplate; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["I_E_Heli_EC_01A_military_RF"]; + _vehiclesHelisLight append ["I_E_Heli_light_03_unarmed_RF"]; + _vehiclesHelisLightAttack append ["a3a_LDF_Heli_light_03_dynamicLoadout_rf"]; + _vehiclesHelisAttack append ["a3a_LDF_Heli_EC_02_rf"]; + _vehiclesMilitiaCars append ["I_E_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_LDF_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; +["vehiclesHelisAttack", _vehiclesHelisAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; @@ -454,6 +466,38 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_06_olive_F", "", "", "optic_KHS_blk", ["10Rnd_Mk14_762x51_Mag"], [], ""]]; }; +if ("rf" in A3A_enabledDLC) then { + _sfLoadoutData set ["sidearms",[ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_geo_RF", + "H_HelmetHeavy_Olive_RF", + "H_HelmetHeavy_Simple_Olive_RF", + "H_HelmetHeavy_VisorUp_Olive_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_geo_RF"]; +}; + ///////////////////////////////// // Unit Type Definitions // ///////////////////////////////// diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Apex.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Apex.sqf index bf9d101cf3..784bd37400 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Apex.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Apex.sqf @@ -40,9 +40,9 @@ private _Tanks = ["B_T_MBT_01_TUSK_F", "B_T_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["B_Heli_Light_01_F"]; private _HelisTransport = ["B_Heli_Transport_01_camo_F","B_CTRG_Heli_Transport_01_tropic_F"]; -["vehiclesHelisLightAttack", ["B_Heli_Light_01_armed_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["B_Heli_Light_01_armed_F"]; ["vehiclesHelisAttack", ["B_Heli_Attack_01_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["B_T_MBT_01_arty_F", "B_T_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; @@ -55,9 +55,10 @@ private _HelisTransport = ["B_Heli_Transport_01_camo_F","B_CTRG_Heli_Transport_0 ["uavsPortable", ["B_UAV_01_F"]] call _fnc_saveToTemplate; //Config special vehicles -["vehiclesMilitiaLightArmed", ["B_T_LSV_01_armed_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaLightArmed = ["B_T_LSV_01_armed_F"]; ["vehiclesMilitiaTrucks", ["B_T_Truck_01_transport_F"]] call _fnc_saveToTemplate; -["vehiclesMilitiaCars", ["B_T_LSV_01_unarmed_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaCars = ["B_T_LSV_01_unarmed_F"]; + private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; @@ -93,6 +94,18 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["B_Heli_EC_04_military_RF"]; + _vehiclesHelisLight append ["B_Heli_light_03_unarmed_RF"]; + _vehiclesHelisLightAttack append ["a3a_Heli_light_03_dynamicLoadout_rf","B_Heli_EC_03_RF"]; + _vehiclesMilitiaCars append ["B_T_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_T_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesAPCs", _APCs] call _fnc_saveToTemplate; @@ -450,6 +463,44 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"], ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"]]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_pilotLoadoutData get "uniforms") append ["U_B_HeliPilotCoveralls_MTP_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_tna_RF", + "H_HelmetHeavy_Olive_RF", + "H_HelmetHeavy_Simple_Olive_RF", + "H_HelmetHeavy_VisorUp_Olive_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_tna_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Arid.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Arid.sqf index 74ad5697aa..7e16e7b5c9 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Arid.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Arid.sqf @@ -40,9 +40,9 @@ private _Tanks = ["B_MBT_01_TUSK_F", "B_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F","B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["B_Heli_Light_01_F"]; private _HelisTransport = ["B_Heli_Transport_01_F"]; -["vehiclesHelisLightAttack", ["B_Heli_Light_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["B_Heli_Light_01_dynamicLoadout_F"]; ["vehiclesHelisAttack", ["B_Heli_Attack_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["B_MBT_01_arty_F","B_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; //this line determines artillery vehicles -- Example: ["vehiclesArtillery", ["B_MBT_01_arty_F"]] -- Array, can contain multiple assets @@ -99,6 +99,16 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["B_Heli_EC_04_military_RF"]; + _vehiclesHelisLight append ["B_Heli_light_03_unarmed_RF"]; + _vehiclesHelisLightAttack append ["a3a_Heli_light_03_dynamicLoadout_rf","B_Heli_EC_03_RF"]; + _vehiclesMilitiaCars append ["B_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; @@ -447,6 +457,44 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_02_sniper_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"]]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_pilotLoadoutData get "uniforms") append ["U_B_HeliPilotCoveralls_MTP_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_mtp_RF", + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_mtp_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Temperate.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Temperate.sqf index 39c1799c21..9ecc15c90d 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Temperate.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Temperate.sqf @@ -40,9 +40,9 @@ private _Tanks = ["B_T_MBT_01_TUSK_F", "B_T_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["B_Heli_Light_01_F"]; private _HelisTransport = ["B_Heli_Transport_01_camo_F"]; -["vehiclesHelisLightAttack", ["B_Heli_Light_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["B_Heli_Light_01_dynamicLoadout_F"]; ["vehiclesHelisAttack", ["B_Heli_Attack_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["B_T_MBT_01_mlrs_F","B_T_MBT_01_arty_F"]] call _fnc_saveToTemplate; @@ -98,6 +98,16 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["B_Heli_EC_04_military_RF"]; + _vehiclesHelisLight append ["B_Heli_light_03_unarmed_RF"]; + _vehiclesHelisLightAttack append ["a3a_Heli_light_03_dynamicLoadout_rf","B_Heli_EC_03_RF"]; + _vehiclesMilitiaCars append ["B_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; @@ -445,7 +455,44 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_02_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"], ["srifle_DMR_02_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"]]; }; - +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_auto_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_auto_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_auto_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_RF", "", "acc_flashlight_pistol", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_auto_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_pilotLoadoutData get "uniforms") append ["U_B_HeliPilotCoveralls_MTP_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_mtp_RF", + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_mtp_RF"]; +}; ///////////////////////////////// diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Tropical.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Tropical.sqf index 26fe2e2708..7370b96c4c 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Tropical.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_Tropical.sqf @@ -40,9 +40,9 @@ private _Tanks = ["B_T_MBT_01_TUSK_F", "B_T_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["B_Heli_Light_01_F"]; private _HelisTransport = ["B_Heli_Transport_01_camo_F"]; -["vehiclesHelisLightAttack", ["B_Heli_Light_01_armed_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["B_Heli_Light_01_dynamicLoadout_F"]; ["vehiclesHelisAttack", ["B_Heli_Attack_01_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["B_T_MBT_01_arty_F", "B_T_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; @@ -99,6 +99,16 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["B_Heli_EC_04_military_RF"]; + _vehiclesHelisLight append ["B_Heli_light_03_unarmed_RF"]; + _vehiclesHelisLightAttack append ["a3a_Heli_light_03_dynamicLoadout_rf","B_Heli_EC_03_RF"]; + _vehiclesMilitiaCars append ["B_T_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_T_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; @@ -445,7 +455,44 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"], ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"]]; }; - +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_auto_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_pilotLoadoutData get "uniforms") append ["U_B_HeliPilotCoveralls_MTP_RF"]; + (_sfLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "muzzle_snds_acp", "", "optic_Holosight", [], [], ""] + ]; + (_militaryLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "", "optic_Aco_smg", [], [], ""] + ]; + (_militiaLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "", [], [], ""] + ]; + (_policeLoadoutData get "SMGs") append [ + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Holosight", [], [], ""], + ["SMG_01_black_RF", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_tna_RF", + "H_HelmetHeavy_Olive_RF", + "H_HelmetHeavy_Simple_Olive_RF", + "H_HelmetHeavy_VisorUp_Olive_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_tna_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // ///////////////////////////////// diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Arid.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Arid.sqf new file mode 100644 index 0000000000..f63ad36221 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Arid.sqf @@ -0,0 +1,1002 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "NATO"] call _fnc_saveToTemplate; +["spawnMarkerName", "NATO support corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_UK_F"] call _fnc_saveToTemplate; +["flagTexture", "\A3\Data_F\Flags\flag_uk_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "flag_NATO"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; //Don't touch or you die a sad and lonely death! +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_Quadbike_01_F"]] call _fnc_saveToTemplate; +private _LightUnarmed = ["B_MRAP_01_F","B_MRAP_01_F","B_LSV_01_unarmed_F"]; +private _LightArmed = ["B_MRAP_01_hmg_F", "B_MRAP_01_hmg_F", "B_MRAP_01_gmg_F","B_LSV_01_AT_F","B_LSV_01_armed_F"]; +["vehiclesTrucks", ["B_Truck_01_covered_F", "B_Truck_01_transport_F"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["B_Truck_01_cargo_F", "B_Truck_01_flatbed_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["B_Truck_01_ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["B_Truck_01_Repair_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["B_Truck_01_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["B_Truck_01_medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +private _APCs = ["a3a_B_APC_Wheeled_01_cannon_F", "B_APC_Tracked_01_rcws_F"]; // CRV has no cargo: "B_APC_Tracked_01_CRV_F" +["vehiclesIFVs", []] call _fnc_saveToTemplate; +private _Tanks = ["B_MBT_01_TUSK_F", "B_MBT_01_cannon_F"]; +["vehiclesAA", ["B_APC_Tracked_01_AA_F"]] call _fnc_saveToTemplate; + +["vehiclesTransportBoats", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["B_Boat_Armed_01_minigun_F"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["a3a_B_APC_Wheeled_01_cannon_F"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["B_Plane_CAS_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F","B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _HelisTransport = ["B_Heli_Transport_01_F","B_CTRG_Heli_Transport_01_sand_F"]; +["vehiclesHelisLightAttack", ["B_Heli_Light_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["B_Heli_Attack_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["B_MBT_01_arty_F","B_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; //this line determines artillery vehicles -- Example: ["vehiclesArtillery", ["B_MBT_01_arty_F"]] -- Array, can contain multiple assets +//new magazines storing methode, all vehicle magazines should be defined here in format [Vehicle class, [magazines]], +["magazines", createHashMapFromArray [ + ["B_MBT_01_arty_F",["32Rnd_155mm_Mo_shells"]], + ["B_MBT_01_mlrs_F",["12Rnd_230mm_rockets"]] +]] call _fnc_saveToTemplate;//this line determines artillery magazines -- Example: ["magazines", createHashMapFromArray [["B_MBT_01_arty_F", ["32Rnd_155mm_Mo_shells"]]]] -- Array, can contain multiple assets + +["uavsAttack", ["B_UAV_02_dynamicLoadout_F", "B_UAV_05_F"]] call _fnc_saveToTemplate; +["uavsPortable", ["B_UAV_01_F"]] call _fnc_saveToTemplate; + +//Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: +private _vehiclesMilitiaLightArmed = ["a3a_Offroad_01_tan_armed_F", "a3a_Offroad_01_tan_AT_F"]; +["vehiclesMilitiaTrucks", ["I_C_Van_01_transport_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaCars = ["a3a_Offroad_01_tan_F","I_C_Offroad_02_unarmed_F"]; + +private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; + +["staticMGs", ["B_G_HMG_02_high_F"]] call _fnc_saveToTemplate; +["staticAT", ["B_static_AT_F"]] call _fnc_saveToTemplate; +["staticAA", ["B_static_AA_F"]] call _fnc_saveToTemplate; +["staticMortars", ["B_Mortar_01_F"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + + +//If Western Sahara DLC +if ("ws" in A3A_enabledDLC) then { + _APCs append ["APC_Wheeled_01_atgm_base_lxWS", "a3a_APC_Wheeled_01_command_lxWS"]; + ["uavsPortable", ["B_UAV_01_F", "B_UAV_02_lxWS"]] call _fnc_saveToTemplate; +}; +if ("enoch" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Offroad_01_comms_F","B_GEN_Offroad_01_covered_F"]; + _vehiclesMilitiaCars append ["a3a_Offroad_01_comms_tan_F", "a3a_Offroad_01_covered_tan_F"]; +}; +if ("tanks" in A3A_enabledDLC) then { + ["vehiclesLightTanks", ["B_AFV_Wheeled_01_cannon_F","B_AFV_Wheeled_01_up_cannon_F"]] call _fnc_saveToTemplate; +}; +if ("heli" in A3A_enabledDLC) then { + _HelisTransport append ["B_Heli_Transport_03_black_F", "B_Heli_Transport_03_unarmed_F"]; +}; +if ("orange" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; +}; +["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; + +["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; +["vehiclesLightArmed", _LightArmed] call _fnc_saveToTemplate; + +["vehiclesAPCs", _APCs] call _fnc_saveToTemplate; +["vehiclesTanks", _Tanks] call _fnc_saveToTemplate; + +["vehiclesHelisTransport", _HelisTransport] call _fnc_saveToTemplate; + +["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; + +#include "Vanilla_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; +_loadoutData set ["lightATLaunchers", [ +"launch_NLAW_F" +]]; +_loadoutData set ["ATLaunchers", [ +["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""], +["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +["launch_B_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT"], [], ""] +]]; +_loadoutData set ["AALaunchers", [ +["launch_B_Titan_F", "", "acc_pointer_IR", "", ["Titan_AA"], [], ""] +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["HandGrenade", "MiniGrenade"]]; +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["smokeGrenades", ["SmokeShell"]]; +_loadoutData set ["signalsmokeGrenades", ["SmokeShellYellow", "SmokeShellRed", "SmokeShellPurple", "SmokeShellOrange", "SmokeShellGreen", "SmokeShellBlue"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["NVGoggles"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", ["U_B_CTRG_1","U_B_CTRG_2","U_B_CTRG_3"]]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["slBackpacks", ["B_RadioBag_01_mtp_F"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["facewear", ["G_Bandanna_khk","G_Bandanna_tan","G_Combat","G_Lowprofile","G_Tactical_Black"]]; +_loadoutData set ["slHat", ["H_Beret_02"]]; +_loadoutData set ["sniHats", ["H_Booniehat_mcamo"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the basic medical loadout for vanilla +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the standard medical loadout for vanilla +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; //this line defines the medic medical loadout for vanilla +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_sfLoadoutData set ["uniforms", ["U_B_CTRG_Soldier_Arid_F", "U_B_CTRG_Soldier_2_Arid_F", "U_B_CTRG_Soldier_3_Arid_F"]];//this line determines uniforms for special forces -- Example: ["U_B_CombatUniform_mcam", "U_B_CombatUniform_mcam_tshirt"] -- Array, can contain multiple assets +_sfLoadoutData set ["vests", ["V_PlateCarrierL_CTRG"]]; +_sfLoadoutData set ["Hvests", ["V_PlateCarrierH_CTRG"]]; +_sfLoadoutData set ["backpacks", ["B_Kitbag_cbr", "B_Carryall_cbr", "B_AssaultPack_cbr"]]; +_sfLoadoutData set ["helmets", ["H_HelmetB_TI_arid_F","H_HelmetB_TI_arid_F","H_HelmetB_light_black", "H_HelmetSpecB_blk", "H_HelmetB_black", "H_HelmetB_camo","H_Watchcap_khk"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator"]]; +_sfLoadoutData set ["NVGs", ["NVGoggles"]]; +_sfLoadoutData set ["facewear", ["G_Balaclava_TI_blk_F","G_Balaclava_TI_G_blk_F"]]; + +_sfLoadoutData set ["slRifles", [ +["arifle_SPAR_01_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_ERCO_snd_F", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], [], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_ERCO_snd_F", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["arifle_SPAR_01_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["arifle_SPAR_01_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_ERCO_snd_F", ["30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_red", "30Rnd_556x45_Stanag_Sand_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["SMG_01_F", "muzzle_snds_acp", "", "optic_Holosight_smg", [], [], ""], +["SMG_01_F", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_02_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_02_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_03C_TR_khaki", "muzzle_snds_570", "acc_pointer_IR", "optic_Holosight_blk_F", [], [], ""], +["SMG_03C_TR_khaki", "muzzle_snds_570", "acc_pointer_IR", "optic_Aco_smg", [], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["arifle_SPAR_02_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Holosight", ["150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_Tracer_F"], [], "bipod_01_F_snd"], +["arifle_SPAR_02_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_Hamr", ["150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_Tracer_F"], [], "bipod_01_F_snd"], +["arifle_SPAR_02_snd_F", "muzzle_snds_m_snd_F", "acc_pointer_IR", "optic_MRCO", ["150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_F", "150Rnd_556x45_Drum_Sand_Mag_Tracer_F"], [], "bipod_01_F_snd"] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_03_snd_F", "muzzle_snds_B_snd_F", "acc_pointer_IR", "optic_SOS_khk_F", [], [], "bipod_01_F_snd"], +["arifle_SPAR_03_snd_F", "muzzle_snds_B_snd_F", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_snd"], +["arifle_SPAR_03_snd_F", "muzzle_snds_B_snd_F", "acc_pointer_IR", "optic_ERCO_snd_F", [], [], "bipod_01_F_snd"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_ERCO_snd_F", [], [], "bipod_01_F_blk"] +]]; +_sfLoadoutData set ["sniperRifles", [ +["srifle_GM6_F", "", "", "optic_SOS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_GM6_F", "", "", "optic_LRPS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_LRR_camo_F", "", "", "optic_SOS", [], [], ""], +["srifle_LRR_camo_F", "", "", "optic_LRPS", [], [], ""] +]]; +_sfLoadoutData set ["sidearms", [ +["hgun_Pistol_heavy_01_F", "muzzle_snds_acp", "acc_flashlight_pistol", "optic_MRD", [], [], ""], +["hgun_P07_khk_F", "muzzle_snds_L", "", "", [], [], ""], +["hgun_ACPC2_F", "muzzle_snds_acp", "acc_flashlight_pistol", "", [], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militaryLoadoutData set ["vests", ["V_PlateCarrier1_rgr_noflag_F"]]; +_militaryLoadoutData set ["Hvests", ["V_PlateCarrier2_rgr_noflag_F"]]; +_militaryLoadoutData set ["glVests", ["V_PlateCarrierIAGL_oli"]]; +_militaryLoadoutData set ["backpacks", ["B_Carryall_cbr", "B_Kitbag_rgr", "B_AssaultPack_rgr", "B_Kitbag_mcamo"]]; +_militaryLoadoutData set ["helmets", ["H_HelmetB_camo", "H_HelmetB", "H_HelmetSpecB", "H_HelmetB_light"]]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; + +_militaryLoadoutData set ["rifles", [ +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_Aco", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_snd_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_snd_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "", "acc_pointer_IR", "optic_Holosight", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_snd_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["SMG_03C_TR_khaki", "", "acc_pointer_IR", "optic_Holosight_blk_F", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["LMG_03_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_Hamr", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_MRCO", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_03_snd_F", "", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_snd"], +["arifle_SPAR_03_snd_F", "", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_snd"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_snd"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_snd"] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["srifle_LRR_F", "", "", "optic_SOS", [], [], ""], +["srifle_LRR_F", "", "", "optic_LRPS", [], [], ""] +]]; +_militaryLoadoutData set ["sidearms", [ +["hgun_P07_F", "", "", "", [], [], ""] +]]; +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["V_TacVest_blk_POLICE"]]; +_policeLoadoutData set ["helmets", ["H_Cap_police"]]; + +_policeLoadoutData set ["SMGs", [ +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_flashlight", "optic_Holosight_blk_F", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_flashlight", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Aco_smg", [], [], ""] +]]; +_policeLoadoutData set ["sidearms", ["hgun_P07_F"]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_militiaLoadoutData set ["vests", ["V_BandollierB_khk", "V_Chestrig_khk"]]; +_militiaLoadoutData set ["Hvests", ["V_TacVest_khk"]]; +_militiaLoadoutData set ["backpacks", ["B_AssaultPack_rgr"]]; +_militiaLoadoutData set ["helmets", ["H_HelmetB_light", "H_MilCap_mcamo", "H_Bandanna_mcamo"]]; + +_militiaLoadoutData set ["rifles", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["LMG_03_F", "", "acc_flashlight", "", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "optic_Hamr", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["srifle_DMR_06_hunter_F", "", "", "optic_KHS_blk", [], [], "bipod_01_F_blk"], +["srifle_DMR_06_hunter_F", "", "", "optic_MRCO", [], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["arifle_SPAR_03_blk_F", "", "", "optic_SOS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "", "", "optic_LRPS", [], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sidearms", ["hgun_P07_F"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; // touch and shit breaks +_crewLoadoutData set ["vests", ["V_TacVest_blk"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_B"]]; + + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_B_HeliPilotCoveralls"]]; +_pilotLoadoutData set ["vests", ["V_TacVest_blk"]]; +_pilotLoadoutData set ["helmets", ["H_CrewHelmetHeli_B", "H_PilotHelmetHeli_B"]]; + +if ("rf" in A3A_enabledDLC) then { + + + _sfLoadoutData set ["sidearms", [ + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_pointer_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""] + ]]; + + _militaryLoadoutData set ["sidearms", [ + ["hgun_Glock19_Tan_RF", "", "acc_pointer_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_pointer_IR_pistol_RF", "", [], [], ""] + ]]; + + _policeLoadoutData set ["sidearms", [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]]; + + _militiaLoadoutData set ["sidearms", [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]]; +}; +if ("mark" in A3A_enabledDLC) then { + (_sfLoadoutData get "machineGuns") append [ + ["MMG_02_camo_F", "muzzle_snds_338_sand", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_snd"], + ["MMG_02_camo_F", "muzzle_snds_338_sand", "acc_pointer_IR", "optic_Holosight", [], [], "bipod_01_F_snd"]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_tan_F", "muzzle_snds_B_snd_F", "acc_pointer_IR", "optic_AMS_snd", ["20Rnd_762x51_Mag"], [], "bipod_01_F_snd"], + ["srifle_DMR_03_tan_F", "muzzle_snds_B_arid_F", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_snd"]]; + + (_sfLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_sniper_F", "muzzle_snds_338_sand", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"], + ["srifle_DMR_02_sniper_F", "muzzle_snds_338_sand", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"]]; + + (_militaryLoadoutData get "machineGuns") append [ + ["MMG_02_sand_F", "", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_snd"], + ["MMG_02_sand_F", "", "acc_pointer_IR", "optic_Holosight", [], [], "bipod_01_F_snd"] + ]; + (_militaryLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_tan_F", "", "acc_pointer_IR", "optic_AMS_snd", ["20Rnd_762x51_Mag"], [], "bipod_01_F_snd"], + ["srifle_DMR_03_tan_F", "", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_snd"], + ["srifle_DMR_03_tan_F", "", "acc_pointer_IR", "optic_SOS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_snd"]]; + (_militaryLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_sniper_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"], + ["srifle_DMR_02_sniper_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"]]; +}; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate= { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Tropical.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Tropical.sqf new file mode 100644 index 0000000000..59cff55eb4 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_NATO_UK_Tropical.sqf @@ -0,0 +1,996 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "NATO"] call _fnc_saveToTemplate; +["spawnMarkerName", "NATO Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_UK_F"] call _fnc_saveToTemplate; +["flagTexture", "\A3\Data_F\Flags\flag_uk_co.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "flag_NATO"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; //Changeing this from default will require you to define logistics attachement offset for the box type + +["vehiclesBasic", ["B_T_Quadbike_01_F"]] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", ["B_T_MRAP_01_F","B_T_MRAP_01_F", "B_T_LSV_01_unarmed_F"]] call _fnc_saveToTemplate; +["vehiclesLightArmed",["B_T_MRAP_01_hmg_F","B_T_MRAP_01_hmg_F", "B_T_MRAP_01_gmg_F", "B_T_LSV_01_AT_F", "B_T_LSV_01_armed_F"]] call _fnc_saveToTemplate; +["vehiclesTrucks", ["B_T_Truck_01_transport_F", "B_T_Truck_01_covered_F"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["B_T_Truck_01_flatbed_F", "B_T_Truck_01_cargo_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["B_T_Truck_01_ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["B_T_Truck_01_Repair_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["B_T_Truck_01_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["B_T_Truck_01_medical_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", []] call _fnc_saveToTemplate; +private _APCs = ["a3a_B_T_APC_Wheeled_01_cannon_F", "B_T_APC_Tracked_01_rcws_F"]; // CRV has no cargo: "B_T_APC_Tracked_01_CRV_F" +["vehiclesIFVs", []] call _fnc_saveToTemplate; +private _Tanks = ["B_T_MBT_01_TUSK_F", "B_T_MBT_01_cannon_F"]; +["vehiclesAA", ["B_T_APC_Tracked_01_AA_F"]] call _fnc_saveToTemplate; + +["vehiclesTransportBoats", ["B_T_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["B_T_Boat_Armed_01_minigun_F"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["a3a_B_T_APC_Wheeled_01_cannon_F"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["B_Plane_CAS_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_F"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _HelisTransport = ["B_Heli_Transport_01_camo_F","B_CTRG_Heli_Transport_01_tropic_F"]; +["vehiclesHelisLightAttack", ["B_Heli_Light_01_armed_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["B_Heli_Attack_01_F"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["B_T_MBT_01_arty_F", "B_T_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["B_T_MBT_01_arty_F", ["32Rnd_155mm_Mo_shells"]], +["B_T_MBT_01_mlrs_F", ["12Rnd_230mm_rockets"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["B_UAV_02_F", "B_T_UAV_03_dynamicLoadout_F", "B_UAV_05_F"]] call _fnc_saveToTemplate; +["uavsPortable", ["B_UAV_01_F"]] call _fnc_saveToTemplate; + +//Config special vehicles +["vehiclesMilitiaLightArmed", ["a3a_Offroad_01_green_armed_F", "a3a_Offroad_01_green_AT_F"]] call _fnc_saveToTemplate; +["vehiclesMilitiaTrucks", ["I_C_Van_01_transport_F"]] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", ["a3a_Offroad_01_green_F","I_C_Offroad_02_unarmed_F"]] call _fnc_saveToTemplate; + +private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; + +["staticMGs", ["I_G_HMG_02_high_F"]] call _fnc_saveToTemplate; +["staticAT", ["B_T_Static_AT_F"]] call _fnc_saveToTemplate; +["staticAA", ["B_T_Static_AA_F"]] call _fnc_saveToTemplate; +["staticMortars", ["B_T_Mortar_01_F"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +//Minefield definition +//Not Magazine type would be: ["APERSBoundingMine", "APERSMine", "ATMine"], +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSMine"]] call _fnc_saveToTemplate; + +//If Western Sahara DLC +if ("ws" in A3A_enabledDLC) then { + _APCs append ["B_T_APC_Wheeled_01_atgm_lxWS", "a3a_T_APC_Wheeled_01_command_lxWS"]; + ["uavsPortable", ["B_UAV_01_F", "B_UAV_02_lxWS"]] call _fnc_saveToTemplate; +}; + +if ("enoch" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Offroad_01_comms_F","B_GEN_Offroad_01_covered_F"]; +}; +if ("tanks" in A3A_enabledDLC) then { + ["vehiclesLightTanks", ["B_T_AFV_Wheeled_01_cannon_F","B_T_AFV_Wheeled_01_up_cannon_F"]] call _fnc_saveToTemplate; +}; +if ("heli" in A3A_enabledDLC) then { + _HelisTransport append ["B_Heli_Transport_03_F", "B_Heli_Transport_03_unarmed_green_F"]; +}; +if ("orange" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; +}; +["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; + +["vehiclesAPCs", _APCs] call _fnc_saveToTemplate; +["vehiclesTanks", _Tanks] call _fnc_saveToTemplate; + +["vehiclesHelisTransport", _HelisTransport] call _fnc_saveToTemplate; + + +#include "Vanilla_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// + +["voices", ["Male01ENGB", "Male02ENGB", "Male03ENGB", "Male04ENGB", "Male05ENGB"]] call _fnc_saveToTemplate; +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["slRifles", []]; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", [ +"launch_NLAW_F" +]]; +_loadoutData set ["ATLaunchers", [ +["launch_MRAWS_olive_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_olive_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_olive_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""], +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +["launch_B_Titan_short_tna_F", "", "acc_pointer_IR", "", ["Titan_AT"], [], ""] +]]; +_loadoutData set ["AALaunchers", [ +["launch_B_Titan_tna_F", "", "acc_pointer_IR", "", ["Titan_AA"], [], ""] +]]; +_loadoutData set ["sidearms", []]; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["antiInfantryGrenades", ["HandGrenade", "MiniGrenade"]]; +_loadoutData set ["smokeGrenades", ["SmokeShell"]]; +_loadoutData set ["signalsmokeGrenades", ["SmokeShellYellow", "SmokeShellRed", "SmokeShellPurple", "SmokeShellOrange", "SmokeShellGreen", "SmokeShellBlue"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["NVGoggles_INDEP"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", ["U_B_CTRG_Soldier_urb_1_F","U_B_CTRG_Soldier_urb_2_F","U_B_CTRG_Soldier_urb_3_F"]]; +_loadoutData set ["vests", []]; +_loadoutData set ["Hvests", []]; +_loadoutData set ["glVests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["slBackpacks", ["B_RadioBag_01_wdl_F"]]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; +_loadoutData set ["facewear", ["G_Bandanna_oli","G_Shades_Black","G_Combat","G_Lowprofile","G_Tactical_Black"]]; +_loadoutData set ["slHat", ["H_Beret_02"]]; +_loadoutData set ["sniHats", ["H_Booniehat_wdl"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +private _slItems = ["Laserbatteries", "Laserbatteries", "Laserbatteries"]; +private _eeItems = ["ToolKit", "MineDetector"]; +private _mmItems = []; + +if (A3A_hasACE) then { + _slItems append ["ACE_microDAGR", "ACE_DAGR"]; + _eeItems append ["ACE_Clacker", "ACE_DefusalKit"]; + _mmItems append ["ACE_RangeCard", "ACE_ATragMX", "ACE_Kestrel4500"]; +}; + +_loadoutData set ["items_squadLeader_extras", _slItems]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", _eeItems]; +_loadoutData set ["items_engineer_extras", _eeItems]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", _mmItems]; +_loadoutData set ["items_sniper_extras", _mmItems]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_B_CTRG_Soldier_F", "U_B_CTRG_Soldier_2_F", "U_B_CTRG_Soldier_3_F"]]; +_sfLoadoutData set ["vests", ["V_PlateCarrier2_wdl", "V_PlateCarrier1_wdl", "V_TacVest_oli"]]; +_sfLoadoutData set ["backpacks", ["B_Kitbag_rgr", "B_AssaultPack_wdl_F", "B_Carryall_wdl_F", "B_Carryall_green_F"]]; +_sfLoadoutData set ["helmets", ["H_HelmetB_TI_tna_F","H_HelmetB_TI_tna_F","H_HelmetB_light_wdl", "H_HelmetSpecB_wdl", "H_HelmetB_plain_wdl"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator_03"]]; +_sfLoadoutData set ["NVGs", ["NVGoggles_INDEP"]]; +_sfLoadoutData set ["facewear", ["G_Balaclava_TI_tna_F","G_Balaclava_TI_G_tna_F"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["slRifles", [ +["arifle_SPAR_01_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], [], ""], +["arifle_SPAR_01_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], [], ""], +["arifle_SPAR_01_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_ERCO_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], [], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_ERCO_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["rifles", [ +["arifle_SPAR_01_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["arifle_SPAR_01_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_ERCO_khk_F", ["30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_green", "30Rnd_556x45_Stanag_Sand_Tracer_Green"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["SMG_01_F", "muzzle_snds_acp", "", "optic_Holosight_khk_F", [], [], ""], +["SMG_01_F", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_02_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_02_F", "muzzle_snds_L", "acc_pointer_IR", "optic_Aco_smg", [], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["arifle_SPAR_02_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Holosight_khk_F", ["150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_Tracer_F"], [], "bipod_01_F_khk"], +["arifle_SPAR_02_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_Hamr_khk_F", ["150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_Tracer_F"], [], "bipod_01_F_khk"], +["arifle_SPAR_02_khk_F", "muzzle_snds_m_khk_F", "acc_pointer_IR", "optic_MRCO", ["150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_F", "150Rnd_556x45_Drum_Green_Mag_Tracer_F"], [], "bipod_01_F_khk"] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_03_khk_F", "muzzle_snds_B_khk_F", "acc_pointer_IR", "optic_SOS_khk_F", [], [], "bipod_01_F_khk"], +["arifle_SPAR_03_khk_F", "muzzle_snds_B_khk_F", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_khk"], +["arifle_SPAR_03_khk_F", "muzzle_snds_B_khk_F", "acc_pointer_IR", "optic_ERCO_khk_F", [], [], "bipod_01_F_khk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_ERCO_khk_F", [], [], "bipod_01_F_blk"] +]]; +_sfLoadoutData set ["sniperRifles", [ +["srifle_GM6_F", "", "", "optic_SOS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_GM6_F", "", "", "optic_LRPS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_LRR_tna_F", "", "", "optic_SOS", [], [], ""], +["srifle_LRR_tna_F", "", "", "optic_LRPS_tna_F", [], [], ""] +]]; +_sfLoadoutData set ["sidearms", [ +["hgun_Pistol_heavy_01_green_F", "muzzle_snds_acp", "acc_flashlight_pistol", "optic_MRD_black", [], [], ""], +["hgun_P07_khk_F", "muzzle_snds_L", "", "", [], [], ""], +["hgun_ACPC2_F", "muzzle_snds_acp", "acc_flashlight_pistol", "", [], [], ""] +]]; + +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["vests", ["V_PlateCarrier1_rgr_noflag_F"]]; +_militaryLoadoutData set ["Hvests", ["V_PlateCarrier2_rgr_noflag_F"]]; +_militaryLoadoutData set ["glVests", ["V_PlateCarrierIAGL_oli"]]; +_militaryLoadoutData set ["backpacks", ["B_AssaultPack_wdl_F", "B_Kitbag_sgg", "B_Carryall_wdl_F"]]; +_militaryLoadoutData set ["helmets", ["H_HelmetB_plain_wdl", "H_HelmetSpecB_wdl", "H_HelmetB_light_wdl"]]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator_03"]]; + +_militaryLoadoutData set ["rifles", [ +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_Aco", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_khk_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_khk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_SPAR_01_GL_khk_F", "", "acc_pointer_IR", "optic_ACO_grn", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["SMG_03C_TR_khaki", "", "acc_pointer_IR", "optic_Holosight_blk_F", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_pointer_IR", "optic_Aco_smg", [], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["LMG_03_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_MRCO", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_03_khk_F", "", "acc_pointer_IR", "optic_SOS_khk_F", [], [], "bipod_01_F_khk"], +["arifle_SPAR_03_khk_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_khk"], +["arifle_SPAR_03_khk_F", "", "acc_pointer_IR", "optic_ERCO_khk_F", [], [], "bipod_01_F_khk"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_ERCO_khk_F", [], [], "bipod_01_F_blk"] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["srifle_LRR_tna_F", "", "", "optic_SOS", [], [], ""], +["srifle_LRR_tna_F", "", "", "optic_LRPS_tna_F", [], [], ""] +]]; +_militaryLoadoutData set ["sidearms", [ +["hgun_P07_khk_F", "", "", "", [], [], ""] +]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; + +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["V_TacVest_blk_POLICE"]]; +_policeLoadoutData set ["helmets", ["H_Cap_police"]]; + +_policeLoadoutData set ["SMGs", [ +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_flashlight", "optic_Holosight_blk_F", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_flashlight", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Holosight_smg_blk_F", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Aco_smg", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "optic_Aco_smg", [], [], ""] +]]; +_policeLoadoutData set ["sidearms", ["hgun_P07_khk_F"]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["vests", ["V_BandollierB_oli", "V_Chestrig_oli"]]; +_militiaLoadoutData set ["Hvests", ["V_TacVest_oli"]]; +_militiaLoadoutData set ["helmets", ["H_MilCap_grn","H_MilCap_grn","H_Bandanna_sgg","H_Bandanna_surfer_grn","H_Cap_khaki_specops_UK"]]; +_militiaLoadoutData set ["backpacks", ["B_AssaultPack_wdl_F"]]; + +_militiaLoadoutData set ["rifles", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militiaLoadoutData set ["carbines", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_blk_F", "", "acc_flashlight", "", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_03C_khaki", "", "", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["LMG_03_F", "", "acc_flashlight", "", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "optic_Hamr_khk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["arifle_SPAR_01_blk_F", "", "acc_flashlight", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["srifle_DMR_06_hunter_F", "", "", "optic_KHS_blk", [], [], "bipod_01_F_blk"], +["srifle_DMR_06_hunter_F", "", "", "optic_MRCO", [], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sniperRifles", [ +["arifle_SPAR_03_blk_F", "", "", "optic_SOS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "", "", "optic_LRPS", [], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sidearms", ["hgun_P07_khk_F"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["vests", ["V_BandollierB_rgr"]]; +_crewLoadoutData set ["helmets", ["H_HelmetCrew_B"]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_B_HeliPilotCoveralls"]]; +_pilotLoadoutData set ["vests", ["V_TacVest_blk"]]; +_pilotLoadoutData set ["helmets", ["H_CrewHelmetHeli_B", "H_PilotHelmetHeli_B"]]; + + +if ("rf" in A3A_enabledDLC) then { + + + _sfLoadoutData set ["sidearms", [ + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_pointer_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""] + ]]; + + _militaryLoadoutData set ["sidearms", [ + ["hgun_Glock19_khk_RF", "", "acc_pointer_IR_pistol_RF", "optic_MRD_khk_RF", [], [], ""], + ["hgun_Glock19_khk_RF", "", "acc_pointer_IR_pistol_RF", "", [], [], ""] + ]]; + + _policeLoadoutData set ["sidearms", [ + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]]; + + _militiaLoadoutData set ["sidearms", [ + ["hgun_Glock19_khk_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]]; +}; +if ("mark" in A3A_enabledDLC) then { + (_sfLoadoutData get "machineGuns") append [ + ["MMG_02_black_F", "muzzle_snds_338_green", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_khk"], + ["MMG_02_black_F", "muzzle_snds_338_green", "acc_pointer_IR", "optic_Holosight_khk_F", [], [], "bipod_01_F_khk"]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_khaki_F", "muzzle_snds_B_khk_F", "acc_pointer_IR", "optic_AMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_khk"], + ["srifle_DMR_03_khaki_F", "muzzle_snds_B_khk_F", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_khk"]]; + (_sfLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_camo_F", "muzzle_snds_338_green", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"], + ["srifle_DMR_02_camo_F", "muzzle_snds_338_green", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"]]; + + (_militaryLoadoutData get "machineGuns") append [ + ["MMG_02_black_F", "", "acc_pointer_IR", "optic_Hamr_khk_F", [], [], "bipod_01_F_khk"], + ["MMG_02_black_F", "", "acc_pointer_IR", "optic_Holosight_khk_F", [], [], "bipod_01_F_khk"] + ]; + (_militaryLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_khaki_F", "", "acc_pointer_IR", "optic_AMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_khk"], + ["srifle_DMR_03_khaki_F", "", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_khk"], + ["srifle_DMR_03_khaki_F", "", "acc_pointer_IR", "optic_SOS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_khk"]]; + (_militaryLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"], + ["srifle_DMR_02_camo_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_khk"]]; +}; + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// + + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["slBackpacks"] call _fnc_setBackpack; + + [["slRifles", "rifles"] call _fnc_fallback] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + [["Hvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + [["glVests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate= { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 6] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["sniHats"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["facewear"] call _fnc_setFacewear; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _squadLeaderTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_PMC.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_PMC.sqf new file mode 100644 index 0000000000..19eef16677 --- /dev/null +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_AI_PMC.sqf @@ -0,0 +1,1003 @@ +////////////////////////// +// Side Information // +////////////////////////// + +["name", "ION"] call _fnc_saveToTemplate; +["spawnMarkerName", "ION Support Corridor"] call _fnc_saveToTemplate; + +["flag", "Flag_NATO_F"] call _fnc_saveToTemplate; +["flagTexture", "\A3\Data_F\Flags\flag_ion_CO.paa"] call _fnc_saveToTemplate; +["flagMarkerType", "a3a_flag_ION"] call _fnc_saveToTemplate; + +////////////////////////// +// Vehicles // +////////////////////////// + +["ammobox", "B_supplyCrate_F"] call _fnc_saveToTemplate; +["surrenderCrate", "Box_IND_Wps_F"] call _fnc_saveToTemplate; +["equipmentBox", "Box_NATO_Equip_F"] call _fnc_saveToTemplate; + +// vehicles can be placed in more than one category if they fit between both. Cost will be derived by the higher category +["vehiclesBasic", ["B_Quadbike_01_F"]] call _fnc_saveToTemplate; +private _vehiclesLightUnarmed = ["B_LSV_01_unarmed_black_F","O_LSV_02_unarmed_black_F","a3a_Offroad_02_black_unarmed_F"]; +private _vehiclesLightArmed = ["a3a_LSV_02_AT_black_F","a3a_LSV_01_AT_black_F","O_LSV_02_armed_black_F","B_LSV_01_armed_black_F","O_LSV_02_armed_black_F","B_LSV_01_armed_black_F"]; +["vehiclesTrucks", ["a3a_Van_02_black_transport_F"]] call _fnc_saveToTemplate; +["vehiclesCargoTrucks", ["a3a_Van_02_black_vehicle_F"]] call _fnc_saveToTemplate; +["vehiclesAmmoTrucks", ["I_E_Truck_02_Ammo_F"]] call _fnc_saveToTemplate; +["vehiclesRepairTrucks", ["a3a_Van_02_black_service_F"]] call _fnc_saveToTemplate; +["vehiclesFuelTrucks", ["C_Truck_02_fuel_F"]] call _fnc_saveToTemplate; +["vehiclesMedical", ["a3a_Van_02_black_medevac_F"]] call _fnc_saveToTemplate; +["vehiclesLightAPCs", ["B_APC_Wheeled_01_cannon_F"]] call _fnc_saveToTemplate; +["vehiclesAPCs", ["a3a_APC_Wheeled_03_cannon_blufor_F","a3a_B_APC_Wheeled_01_cannon_F"]] call _fnc_saveToTemplate; +["vehiclesIFVs", ["a3a_APC_Wheeled_03_cannon_blufor_F"]] call _fnc_saveToTemplate; +private _Tanks = ["a3a_MBT_02_cannon_black_F"]; +["vehiclesAA", ["B_APC_Tracked_01_AA_F"]] call _fnc_saveToTemplate; + + +["vehiclesTransportBoats", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; +["vehiclesGunBoats", ["B_Boat_Armed_01_minigun_F", "a3a_Boat_Armed_01_hmg_blufor_F"]] call _fnc_saveToTemplate; +["vehiclesAmphibious", ["a3a_APC_Wheeled_03_cannon_blufor_F","a3a_B_APC_Wheeled_01_cannon_F","B_APC_Wheeled_01_cannon_F"]] call _fnc_saveToTemplate; + +["vehiclesPlanesCAS", ["a3a_Plane_Fighter_03_grey_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesAA", ["a3a_Plane_Fighter_04_grey_F"]] call _fnc_saveToTemplate; +["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; + +["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F", "a3a_Heli_Light_01_ION_F"]] call _fnc_saveToTemplate; +["vehiclesHelisTransport", ["a3a_ION_Heli_Transport_02_F"]] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", ["a3a_Heli_Light_01_dynamicLoadout_ION_F", "a3a_Heli_Light_02_black_F"]] call _fnc_saveToTemplate; +["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; + +["vehiclesArtillery", ["B_MBT_01_arty_F"]] call _fnc_saveToTemplate; +["magazines", createHashMapFromArray [ +["B_MBT_01_arty_F",["32Rnd_155mm_Mo_shells"]] +]] call _fnc_saveToTemplate; + +["uavsAttack", ["B_T_UAV_03_dynamicLoadout_F","B_UAV_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; +["uavsPortable", []] call _fnc_saveToTemplate; + +//Config special vehicles +private _vehiclesMilitiaLightArmed = ["a3a_Offroad_01_black_armed_F", "a3a_Offroad_01_black_armed_F","a3a_Offroad_02_LMG_black_F","a3a_Offroad_02_LMG_black_F"]; +["vehiclesMilitiaTrucks", ["a3a_Van_02_black_vehicle_F"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaCars = ["a3a_Offroad_01_black_F","a3a_Offroad_02_black_unarmed_F"]; + + +private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; + +["staticMGs", ["O_G_HMG_02_high_F"]] call _fnc_saveToTemplate; +["staticAT", ["O_static_AT_F"]] call _fnc_saveToTemplate; +["staticAA", ["B_static_AA_F"]] call _fnc_saveToTemplate; +["staticMortars", ["O_G_Mortar_01_F"]] call _fnc_saveToTemplate; + +["mortarMagazineHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; +["mortarMagazineSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; +["mortarMagazineFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; + +if ("tanks" in A3A_enabledDLC) then { + _Tanks append ["a3a_MBT_02_cannon_black_F","a3a_MBT_02_cannon_black_F"]; + _Tanks append ["a3a_MBT_04_cannon_black_F","a3a_MBT_04_command_black_F"]; +}; +if ("enoch" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Offroad_01_comms_F","B_GEN_Offroad_01_covered_F"]; + _vehiclesMilitiaCars append ["C_Offroad_01_comms_F", "C_Offroad_01_covered_F"]; +}; +if ("orange" in A3A_enabledDLC) then { + _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; +}; +["vehiclesTanks", _Tanks] call _fnc_saveToTemplate; +["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; +["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; +["vehiclesLightUnarmed", _vehiclesLightUnarmed] call _fnc_saveToTemplate; +["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; + +//Minefield definition +//CFGVehicles variant of Mines are needed "ATMine", "APERSTripMine", "APERSMine" +["minefieldAT", ["ATMine"]] call _fnc_saveToTemplate; +["minefieldAPERS", ["APERSBoundingMine", "APERSMine"]] call _fnc_saveToTemplate; + +#include "Vanilla_Vehicle_Attributes.sqf" + +///////////////////// +/// Identities /// +///////////////////// +//Faces and Voices given to AI Factions. +["voices", ["Male01ENG","Male02ENG","Male03ENG","Male04ENG","Male05ENG","Male06ENG","Male07ENG","Male08ENG","Male09ENG","Male10ENG","Male11ENG","Male12ENG"]] call _fnc_saveToTemplate; +["faces", ["AfricanHead_01","AfricanHead_02","AfricanHead_03","Barklem", +"GreekHead_A3_05","GreekHead_A3_07","Sturrock","WhiteHead_01","WhiteHead_02", +"WhiteHead_03","WhiteHead_04","WhiteHead_05","WhiteHead_06","WhiteHead_07", +"WhiteHead_08","WhiteHead_09","WhiteHead_11","WhiteHead_12","WhiteHead_14", +"WhiteHead_15","WhiteHead_16","WhiteHead_18","WhiteHead_19","WhiteHead_20", +"WhiteHead_21"]] call _fnc_saveToTemplate; +"NATOMen" call _fnc_saveNames; + +////////////////////////// +// Loadouts // +////////////////////////// + +private _loadoutData = call _fnc_createLoadoutData; +_loadoutData set ["rifles", []]; +_loadoutData set ["carbines", []]; +_loadoutData set ["grenadeLaunchers", []]; +_loadoutData set ["SMGs", []]; +_loadoutData set ["machineGuns", []]; +_loadoutData set ["marksmanRifles", []]; +_loadoutData set ["sniperRifles", []]; + +_loadoutData set ["lightATLaunchers", [ +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT55_F", "MRAWS_HE_F"], [], ""], +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F","MRAWS_HEAT55_F"], [], ""], +"launch_NLAW_F", +"launch_NLAW_F", +"launch_RPG7_F", +"launch_RPG7_F" +]]; +_loadoutData set ["ATLaunchers", [ +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], +["launch_MRAWS_olive_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""] +]]; +_loadoutData set ["missileATLaunchers", [ +["launch_I_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT", "Titan_AP"], [], ""], +["launch_O_Vorona_green_F", "", "", "", ["Vorona_HEAT", "Vorona_HE"], [], ""], +["launch_I_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT"], [], ""], +["launch_O_Vorona_green_F", "", "", "", ["Vorona_HEAT"], [], ""] +]]; +_loadoutData set ["AALaunchers", [ +["launch_B_Titan_olive_F", "", "acc_pointer_IR", "", ["Titan_AA"], [], ""] +]]; +_loadoutData set ["sidearms", []]; + +if ("expansion" in A3A_enabledDLC) then { + (_loadoutData get "lightATLaunchers") append []; +}; + +_loadoutData set ["ATMines", ["ATMine_Range_Mag"]]; +_loadoutData set ["APMines", ["APERSMine_Range_Mag"]]; +_loadoutData set ["lightExplosives", ["DemoCharge_Remote_Mag"]]; +_loadoutData set ["heavyExplosives", ["SatchelCharge_Remote_Mag"]]; + +_loadoutData set ["antiInfantryGrenades", ["HandGrenade", "MiniGrenade"]]; +_loadoutData set ["antiTankGrenades", []]; +_loadoutData set ["smokeGrenades", ["SmokeShell"]]; +_loadoutData set ["signalsmokeGrenades", ["SmokeShellYellow", "SmokeShellRed", "SmokeShellPurple", "SmokeShellOrange", "SmokeShellGreen", "SmokeShellBlue"]]; + + +//Basic equipment. Shouldn't need touching most of the time. +//Mods might override this, or certain mods might want items removed (No GPSs in WW2, for example) +_loadoutData set ["maps", ["ItemMap"]]; +_loadoutData set ["watches", ["ItemWatch"]]; +_loadoutData set ["compasses", ["ItemCompass"]]; +_loadoutData set ["radios", ["ItemRadio"]]; +_loadoutData set ["gpses", ["ItemGPS"]]; +_loadoutData set ["NVGs", ["NVGoggles"]]; +_loadoutData set ["binoculars", ["Binocular"]]; +_loadoutData set ["rangefinders", ["Rangefinder"]]; + +_loadoutData set ["uniforms", []]; +_loadoutData set ["vests", []]; +_loadoutData set ["backpacks", []]; +_loadoutData set ["longRangeRadios", []]; +_loadoutData set ["helmets", []]; + +_loadoutData set ["slHat", ["H_MilCap_gry"]]; +_loadoutData set ["sniHats", ["H_Booniehat_tan"]]; +_loadoutData set ["facewear", ["G_Aviator","G_Shades_Black","G_Shades_Blue","G_Shades_Green","G_Shades_Red","G_Lowprofile","G_Combat","G_Bandanna_aviator","G_Bandanna_sport","G_Bandanna_shades","G_Bandanna_beast"]]; +_loadoutData set ["slFacewear", ["G_Aviator","G_Squares_Tinted","G_Tactical_Black"]]; + +//Item *set* definitions. These are added in their entirety to unit loadouts. No randomisation is applied. +_loadoutData set ["items_medical_basic", ["BASIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_standard", ["STANDARD"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_medical_medic", ["MEDIC"] call A3A_fnc_itemset_medicalSupplies]; +_loadoutData set ["items_miscEssentials", [] call A3A_fnc_itemset_miscEssentials]; + +//Unit type specific item sets. Add or remove these, depending on the unit types in use. +_loadoutData set ["items_squadLeader_extras", []]; +_loadoutData set ["items_rifleman_extras", []]; +_loadoutData set ["items_medic_extras", []]; +_loadoutData set ["items_grenadier_extras", []]; +_loadoutData set ["items_explosivesExpert_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_engineer_extras", ["ToolKit", "MineDetector"]]; +_loadoutData set ["items_lat_extras", []]; +_loadoutData set ["items_at_extras", []]; +_loadoutData set ["items_aa_extras", []]; +_loadoutData set ["items_machineGunner_extras", []]; +_loadoutData set ["items_marksman_extras", []]; +_loadoutData set ["items_sniper_extras", []]; +_loadoutData set ["items_police_extras", []]; +_loadoutData set ["items_crew_extras", []]; +_loadoutData set ["items_unarmed_extras", []]; + +//TODO - ACE overrides for misc essentials, medical and engineer gear + +/////////////////////////////////////// +// Special Forces Loadout Data // +/////////////////////////////////////// + +private _sfLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_sfLoadoutData set ["uniforms", ["U_B_CTRG_2","U_I_G_Story_Protagonist_F","U_B_CombatUniform_mcam_tshirt"]]; +_sfLoadoutData set ["vests", ["V_PlateCarrier1_blk","V_PlateCarrier2_blk","V_PlateCarrierGL_blk", "V_PlateCarrierSpec_blk"]]; +_sfLoadoutData set ["Lvests", ["V_TacVestIR_blk"]]; +_sfLoadoutData set ["Hvests", ["V_PlateCarrierGL_blk", "V_PlateCarrierSpec_blk"]]; +_sfLoadoutData set ["backpacks", ["B_AssaultPack_blk", "B_Carryall_blk", "B_FieldPack_blk", "B_Kitbag_tan"]]; +_sfLoadoutData set ["helmets", ["H_HelmetB_sand", "H_HelmetB_black", "H_HelmetSpecB_blk", "H_HelmetSpecB_sand"]]; +_sfLoadoutData set ["binoculars", ["Laserdesignator"]]; +//["Weapon", "Muzzle", "Rail", "Sight", [], [], "Bipod"]; + +_sfLoadoutData set ["slRifles", [ +["arifle_SPAR_01_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_GL_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_MSBS65_GL_black_F", "muzzle_snds_65_TI_blk_F", "acc_pointer_IR", "optic_MRCO", ["30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag_Tracer"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_MSBS65_black_F", "muzzle_snds_65_TI_blk_F", "acc_pointer_IR", "optic_Hamr_khk_F", ["30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag_Tracer"], [], ""] +]]; +_sfLoadoutData set ["rifles", [ +["arifle_SPAR_01_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_MSBS65_Mark_black_F", "muzzle_snds_65_TI_blk_F", "acc_pointer_IR", "optic_Aco", ["30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag_Tracer"], [], ""] +]]; +_sfLoadoutData set ["carbines", [ +["arifle_SPAR_01_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_MSBS65_black_F", "muzzle_snds_65_TI_blk_F", "acc_pointer_IR", "optic_Aco", ["30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag_Tracer"], [], ""] +]]; +_sfLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_MSBS65_GL_black_F", "muzzle_snds_65_TI_blk_F", "acc_pointer_IR", "optic_Holosight_khk_F", ["30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag", "30Rnd_65x39_caseless_msbs_mag_Tracer"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_sfLoadoutData set ["SMGs", [ +["SMG_01_F", "muzzle_snds_acp", "", "optic_Holosight_blk_F", [], [], ""], +["SMG_01_F", "muzzle_snds_acp", "", "optic_Holosight_blk_F", [], [], ""], +["SMG_01_F", "muzzle_snds_acp", "", "optic_Aco_smg", [], [], ""], +["SMG_03C_TR_black", "muzzle_snds_570", "acc_pointer_IR", "optic_Yorris", [], [], ""], +["SMG_03C_TR_black", "muzzle_snds_570", "acc_pointer_IR", "optic_Aco_smg", [], [], ""] +]]; +_sfLoadoutData set ["machineGuns", [ +["arifle_SPAR_02_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Aco", ["150Rnd_556x45_Drum_Mag_F", "150Rnd_556x45_Drum_Mag_F", "150Rnd_556x45_Drum_Mag_Tracer_F","30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["arifle_SPAR_02_blk_F", "muzzle_snds_M", "acc_pointer_IR", "optic_Holosight_blk_F", ["150Rnd_556x45_Drum_Mag_F", "150Rnd_556x45_Drum_Mag_F", "150Rnd_556x45_Drum_Mag_Tracer_F","30Rnd_556x45_Stanag_Tracer_Red"], [], "bipod_01_F_blk"], +["LMG_Mk200_black_F", "muzzle_snds_H", "acc_pointer_IR", "optic_Aco", ["200Rnd_65x39_cased_Box_Red", "200Rnd_65x39_cased_Box_Red", "200Rnd_65x39_cased_Box_Tracer_Red"], [], "bipod_01_F_blk"], +["LMG_Mk200_black_F", "muzzle_snds_H", "acc_pointer_IR", "optic_Holosight_blk_F", ["200Rnd_65x39_cased_Box_Red", "200Rnd_65x39_cased_Box_Red", "200Rnd_65x39_cased_Box_Tracer_Red"], [], "bipod_01_F_blk"] +]]; +_sfLoadoutData set ["marksmanRifles", [ +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "muzzle_snds_B", "acc_pointer_IR", "optic_DMS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "muzzle_snds_B", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "muzzle_snds_B", "acc_pointer_IR", "optic_DMS", [], [], "bipod_01_F_blk"] +]]; +_sfLoadoutData set ["sniperRifles", [ +["srifle_GM6_F", "", "", "optic_SOS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_GM6_F", "", "", "optic_LRPS", ["5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""] +]]; +_sfLoadoutData set ["sidearms", [ +["hgun_Pistol_heavy_01_F", "muzzle_snds_acp", "acc_flashlight_pistol", "", [], [], ""] +]]; +///////////////////////////////// +// Military Loadout Data // +///////////////////////////////// + +private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militaryLoadoutData set ["uniforms", ["U_B_CTRG_2","U_I_G_Story_Protagonist_F","U_B_CombatUniform_mcam_tshirt"]]; +_militaryLoadoutData set ["vests", ["V_PlateCarrier1_blk","V_PlateCarrier2_blk", "V_TacVest_blk", "V_TacVestIR_blk"]]; +_militaryLoadoutData set ["Lvests", ["V_TacVest_blk", "V_TacVestIR_blk"]]; +_militaryLoadoutData set ["Hvests", ["V_PlateCarrierGL_blk", "V_PlateCarrierSpec_blk"]]; +_militaryLoadoutData set ["backpacks", ["B_AssaultPack_blk", "B_CivilianBackpack_01_Everyday_Black_F", "B_Kitbag_tan"]]; +_militaryLoadoutData set ["helmets", ["H_HelmetB_sand", "H_HelmetB_black", "H_HelmetB_light_black", "H_HelmetB_light_sand","H_PASGT_basic_black_F"]]; +_militaryLoadoutData set ["binoculars", ["Laserdesignator", "Binocular"]]; + +_militaryLoadoutData set ["slRifles", [ +["arifle_SPAR_01_blk_F", "", "acc_pointer_IR", "optic_Hamr", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_SPAR_01_GL_blk_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_AK12_F", "", "acc_pointer_IR", "optic_Arco_AK_blk_F", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["arifle_AK12_GL_F", "", "acc_pointer_IR", "optic_MRCO", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["rifles", [ +["arifle_SPAR_01_blk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_AK12_F", "", "acc_pointer_IR", "optic_Aco", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] +]]; +_militaryLoadoutData set ["carbines", [ +["arifle_SPAR_01_blk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], [], ""], +["arifle_AK12U_F", "", "acc_pointer_IR", "optic_Aco", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] +]]; +_militaryLoadoutData set ["grenadeLaunchers", [ +["arifle_SPAR_01_GL_blk_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""], +["arifle_AK12_GL_F", "", "acc_pointer_IR", "optic_Aco", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militaryLoadoutData set ["SMGs", [ +["SMG_01_F", "", "acc_flashlight_smg_01", "optic_Holosight_blk_F", [], [], ""], +["SMG_01_F", "", "acc_flashlight_smg_01", "optic_Holosight_blk_F", [], [], ""], +["SMG_01_F", "", "acc_flashlight_smg_01", "optic_Aco_smg", [], [], ""], +["SMG_03C_TR_black", "", "acc_flashlight", "optic_Aco_smg", [], [], ""], +["SMG_03C_TR_black", "", "acc_flashlight", "optic_Aco_smg", [], [], ""] +]]; +_militaryLoadoutData set ["machineGuns", [ +["arifle_RPK12_F", "", "acc_pointer_IR", "optic_Aco", ["75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["arifle_RPK12_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_Aco", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""], +["LMG_03_F", "", "acc_pointer_IR", "optic_Holosight_blk_F", ["200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Red_F", "200Rnd_556x45_Box_Tracer_Red_F"], [], ""] +]]; +_militaryLoadoutData set ["marksmanRifles", [ +["arifle_AK12_F", "", "acc_pointer_IR", "optic_Arco_AK_blk_F", [], [], "bipod_01_F_blk"], +["arifle_AK12_F", "", "acc_pointer_IR", "optic_DMS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_SOS", [], [], "bipod_01_F_blk"], +["srifle_EBR_F", "", "acc_pointer_IR", "optic_DMS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "", "", "optic_SOS", [], [], "bipod_01_F_blk"], +["arifle_SPAR_03_blk_F", "", "", "optic_DMS", [], [], "bipod_01_F_blk"] +]]; +_militaryLoadoutData set ["sniperRifles", [ +["srifle_GM6_F", "", "", "optic_SOS", ["5Rnd_127x108_Mag", "5Rnd_127x108_Mag", "5Rnd_127x108_APDS_Mag"], [], ""], +["srifle_GM6_F", "", "", "optic_LRPS", ["5Rnd_127x108_APDS_Mag", "5Rnd_127x108_Mag", "5Rnd_127x108_Mag"], [], ""] +]]; +_militaryLoadoutData set ["sidearms", ["hgun_Pistol_heavy_01_F","hgun_ACPC2_F","hgun_Rook40_F"]]; + +/////////////////////////////// +// Police Loadout Data // +/////////////////////////////// + + +private _policeLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_policeLoadoutData set ["uniforms", ["U_B_GEN_Soldier_F", "U_B_GEN_Commander_F"]]; +_policeLoadoutData set ["vests", ["V_TacVest_blk_POLICE"]]; +_policeLoadoutData set ["helmets", ["H_Cap_blk_ION"]]; +_policeLoadoutData set ["SMGs", [ +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +"arifle_AKS_F", +"arifle_AKM_FL_F", +["SMG_02_F", "", "acc_flashlight", "optic_Holosight_blk_F", [], [], ""], +["SMG_02_F", "", "acc_flashlight", "optic_Aco_smg", [], [], ""] +]]; +_policeLoadoutData set ["sidearms", ["hgun_Pistol_01_F"]]; + +//////////////////////////////// +// Militia Loadout Data // +//////////////////////////////// + +private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; +_militiaLoadoutData set ["uniforms", ["U_B_CTRG_2","U_I_G_Story_Protagonist_F","U_B_CombatUniform_mcam_tshirt"]]; +_militiaLoadoutData set ["vests", ["V_Chestrig_blk","V_BandollierB_blk"]]; +_militiaLoadoutData set ["Hvests", ["V_TacVest_blk", "V_TacVestIR_blk"]]; +_militiaLoadoutData set ["backpacks", ["B_AssaultPack_blk"]]; +_militiaLoadoutData set ["helmets", ["H_Cap_blk_ION", "H_Cap_usblack", "H_Cap_headphones", "H_HeadSet_black_F"]]; + +_militiaLoadoutData set ["ATLaunchers", [ +"launch_NLAW_F", +"launch_NLAW_F", +"launch_RPG7_F", +"launch_RPG7_F" +]]; +_militiaLoadoutData set ["lightATLaunchers", [ +"launch_NLAW_F", +"launch_NLAW_F" +]]; + +_militiaLoadoutData set ["rifles", [ +["arifle_AK12_F", "", "acc_flashlight", "", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["arifle_AK12_F", "", "acc_flashlight", "", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +"srifle_DMR_06_hunter_F" +]]; +_militiaLoadoutData set ["carbines", [ +["arifle_AK12U_F", "", "acc_flashlight", "", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] +]]; +_militiaLoadoutData set ["grenadeLaunchers", [ +["arifle_AK12_GL_F", "", "acc_flashlight", "", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] +]]; +_militiaLoadoutData set ["SMGs", [ +"hgun_PDW2000_F", +"hgun_PDW2000_F", +"SMG_03C_khaki", +"SMG_03C_black", +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""] +]]; +_militiaLoadoutData set ["machineGuns", [ +["arifle_RPK12_F", "", "acc_flashlight", "", ["75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["arifle_RPK12_F", "", "acc_flashlight", "", ["75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_Tracer_F"], [], ""], +["arifle_RPK12_F", "", "acc_flashlight", "", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] +]]; +_militiaLoadoutData set ["marksmanRifles", [ +["arifle_AK12_F", "", "acc_flashlight", "optic_Arco_AK_blk_F", [], [], "bipod_01_F_blk"], +["arifle_AK12_F", "", "acc_flashlight", "optic_DMS", [], [], "bipod_01_F_blk"], +["srifle_DMR_06_hunter_F", "", "", "optic_KHS_old", [], [], "bipod_01_F_blk"] +]]; +_militiaLoadoutData set ["sidearms", ["hgun_Rook40_F"]]; + +////////////////////////// +// Misc Loadouts // +////////////////////////// + +private _crewLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_crewLoadoutData set ["uniforms", ["U_O_R_Gorka_01_black_F"]]; +_crewLoadoutData set ["vests", ["V_TacVest_blk"]]; +_crewLoadoutData set ["helmets", ["H_Tank_black_F"]]; +_crewLoadoutData set ["facewear", ["G_Balaclava_combat","G_Balaclava_lowprofile"]]; +_crewLoadoutData set ["SMGs", [ +["SMG_03C_TR_black", "", "acc_flashlight", "optic_ACO_grn_smg", [], [], ""], +["SMG_03C_TR_khaki", "", "acc_flashlight", "optic_ACO_grn_smg", [], [], ""], +"SMG_03C_khaki", "SMG_03C_black" +]]; + +private _pilotLoadoutData = _militaryLoadoutData call _fnc_copyLoadoutData; +_pilotLoadoutData set ["uniforms", ["U_Competitor"]]; +_pilotLoadoutData set ["vests", ["V_TacVest_blk"]]; +_pilotLoadoutData set ["helmets", ["H_Cap_headphones", "H_Cap_headphones", "H_HeadSet_black_F"]]; +_pilotLoadoutData set ["facewear", ["G_Aviator","G_Aviator","G_Squares_Tinted","G_Tactical_Black"]]; +_pilotLoadoutData set ["SMGs", [ +["hgun_PDW2000_F", "", "", "", [], [], ""], +["hgun_PDW2000_F", "", "", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""], +["SMG_05_F", "", "acc_flashlight", "", [], [], ""] +]]; + +private _officerLoadoutData = _pilotLoadoutData call _fnc_copyLoadoutData; +_officerLoadoutData set ["uniforms", ["U_C_FormalSuit_01_tshirt_black_F", "U_Marshal"]]; +_officerLoadoutData set ["vests", ["V_TacVest_blk", "V_LegStrapBag_black_F"]]; +_officerLoadoutData set ["helmets", ["H_Cap_blk_ION", "H_Cap_blk_ION", "H_WirelessEarpiece_F"]]; +_officerLoadoutData set ["facewear", ["G_Aviator","G_Squares_Tinted","G_WirelessEarpiece_F"]]; + +if ("orange" in A3A_enabledDLC) then { + _militiaLoadoutData set ["backpacks", ["B_Messenger_Black_F", "B_LegStrapBag_black_F"]]; + (_militiaLoadoutData get "vests") append ["V_Pocketed_black_F","V_LegStrapBag_black_F"]; +}; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_DEagle_RF", "", "", "optic_VRCO_pistol_RF", [], [], ""], + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_pointer_IR_pistol_RF", "optic_MRD_black", [], [], ""], + ["hgun_Glock19_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_black", [], [], ""] + ]; + + (_militaryLoadoutData get "Hvests") append ["V_PlateCarrierLite_black_noFlag_RF"]; + (_militaryLoadoutData get "backpacks") append ["B_DuffleBag_Black_RF","B_DuffleBag_Black_NoLogo_RF"]; + (_militaryLoadoutData get "sidearms") append ["hgun_DEagle_RF","hgun_Glock19_Tan_RF","hgun_Glock19_RF"]; + + (_militiaLoadoutData get "Hvests") append ["V_TacVest_rig_blk_RF"]; + (_militiaLoadoutData get "marksmanRifles") append [ + ["srifle_h6_blk_rf", "", "acc_flashlight", "optic_DMS", ["10Rnd_556x45_AP_Stanag_RF"], [], "bipod_01_F_blk"] + ]; + + _officerLoadoutData set ["sidearms", ["hgun_DEagle_classic_RF"]]; +}; +if ("mark" in A3A_enabledDLC) then { + (_sfLoadoutData get "machineGuns") append [ + ["MMG_02_black_F", "muzzle_snds_338_black", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_blk"], + ["MMG_02_black_F", "muzzle_snds_338_black", "acc_pointer_IR", "optic_Holosight", [], [], "bipod_01_F_blk"]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_F", "muzzle_snds_B", "acc_pointer_IR", "optic_AMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_blk"], + ["srifle_DMR_03_F", "muzzle_snds_B", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_blk"]]; + (_sfLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_F", "muzzle_snds_338_black", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"], + ["srifle_DMR_02_F", "muzzle_snds_338_black", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"]]; + + (_militaryLoadoutData get "machineGuns") append [ + ["MMG_02_black_F", "", "acc_pointer_IR", "optic_Hamr", [], [], "bipod_01_F_blk"], + ["MMG_02_black_F", "", "acc_pointer_IR", "optic_Holosight", [], [], "bipod_01_F_blk"] + ]; + (_militaryLoadoutData get "marksmanRifles") append [ + ["srifle_DMR_03_F", "", "acc_pointer_IR", "optic_AMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_blk"], + ["srifle_DMR_03_F", "", "acc_pointer_IR", "optic_DMS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_blk"], + ["srifle_DMR_03_F", "", "acc_pointer_IR", "optic_SOS", ["20Rnd_762x51_Mag"], [], "bipod_01_F_blk"]]; + (_militaryLoadoutData get "sniperRifles") append [ + ["srifle_DMR_02_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"], + ["srifle_DMR_02_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_blk"]]; +}; + + +///////////////////////////////// +// Unit Type Definitions // +///////////////////////////////// +//These define the loadouts for different unit types. +//For example, rifleman, grenadier, squad leader, etc. +//In 95% of situations, you *should not need to edit these*. +//Almost all factions can be set up just by modifying the loadout data above. +//However, these exist in case you really do want to do a lot of custom alterations. + +private _squadLeaderTemplate = { + ["slHat"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["Hvests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["backpacks"] call _fnc_setBackpack; + + [ selectRandom [["slRifles", "rifles"] call _fnc_fallback,"grenadeLaunchers", "rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_squadLeader_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["signalsmokeGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["binoculars"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _riflemanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_rifleman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 2] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _medicTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [[selectRandom ["Lvests", "vests"], "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_medic"] call _fnc_addItemSet; + ["items_medic_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _grenadierTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["Hvests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["grenadeLaunchers"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 10] call _fnc_addAdditionalMuzzleMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_grenadier_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 4] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _explosivesExpertTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_explosivesExpert_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["lightExplosives", 2] call _fnc_addItem; + if (random 1 > 0.5) then {["heavyExplosives", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["atMines", 1] call _fnc_addItem;}; + if (random 1 > 0.5) then {["apMines", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _engineerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["carbines", "SMGs"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_engineer_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + if (random 1 > 0.5) then {["lightExplosives", 1] call _fnc_addItem;}; + + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _latTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + [["lightATLaunchers", "ATLaunchers"] call _fnc_fallback] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 1] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_lat_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _atTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + [selectRandom ["ATLaunchers", "missileATLaunchers"]] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_at_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _aaTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + [selectRandom ["rifles", "carbines"]] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + ["primary", 4] call _fnc_addAdditionalMuzzleMagazines; + + ["AALaunchers"] call _fnc_setLauncher; + //TODO - Add a check if it's disposable. + ["launcher", 2] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_aa_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _machineGunnerTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["machineGuns"] call _fnc_setPrimary; + ["primary", 4] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_machineGunner_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["NVGs"] call _fnc_addNVGs; +}; + +private _marksmanTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["Lvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["marksmanRifles"] call _fnc_setPrimary; + ["primary", 5] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_marksman_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _sniperTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + [["Lvests", "vests"] call _fnc_fallback] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + ["backpacks"] call _fnc_setBackpack; + + ["sniperRifles"] call _fnc_setPrimary; + ["primary", 7] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_sniper_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["antiInfantryGrenades", 1] call _fnc_addItem; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["rangefinders"] call _fnc_addBinoculars; + ["NVGs"] call _fnc_addNVGs; +}; + +private _policeTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_standard"] call _fnc_addItemSet; + ["items_police_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 1] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _crewTemplate = { + ["helmets"] call _fnc_setHelmet; + ["facewear"] call _fnc_setFacewear; + ["vests"] call _fnc_setVest; + ["uniforms"] call _fnc_setUniform; + + ["SMGs"] call _fnc_setPrimary; + ["primary", 3] call _fnc_addMagazines; + + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_crew_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + ["smokeGrenades", 2] call _fnc_addItem; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; + ["gpses"] call _fnc_addGPS; + ["NVGs"] call _fnc_addNVGs; +}; + +private _unarmedTemplate = { + ["vests"] call _fnc_setVest; + ["facewear"] call _fnc_setFacewear; + ["uniforms"] call _fnc_setUniform; + + ["items_medical_basic"] call _fnc_addItemSet; + ["items_unarmed_extras"] call _fnc_addItemSet; + ["items_miscEssentials"] call _fnc_addItemSet; + + ["maps"] call _fnc_addMap; + ["watches"] call _fnc_addWatch; + ["compasses"] call _fnc_addCompass; + ["radios"] call _fnc_addRadio; +}; + +private _traitorTemplate = { + call _unarmedTemplate; + ["sidearms"] call _fnc_setHandgun; + ["handgun", 2] call _fnc_addMagazines; +}; + +//////////////////////////////////////////////////////////////////////////////////////// +// You shouldn't touch below this line unless you really really know what you're doing. +// Things below here can and will break the gamemode if improperly changed. +//////////////////////////////////////////////////////////////////////////////////////// + +///////////////////////////// +// Special Forces Units // +///////////////////////////// +private _prefix = "SF"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _sfLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +/*{ + params ["_name", "_loadoutTemplate"]; + private _loadouts = [_sfLoadoutData, _loadoutTemplate] call _fnc_buildLoadouts; + private _finalName = _prefix + _name; + [_finalName, _loadouts] call _fnc_saveToTemplate; +} forEach _unitTypes; +*/ + +/////////////////////// +// Military Units // +/////////////////////// +private _prefix = "military"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Police Units // +//////////////////////// +private _prefix = "police"; +private _unitTypes = [ + ["SquadLeader", _policeTemplate], + ["Standard", _policeTemplate] +]; + +[_prefix, _unitTypes, _policeLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +//////////////////////// +// Militia Units // +//////////////////////// +private _prefix = "militia"; +private _unitTypes = [ + ["SquadLeader", _squadLeaderTemplate], + ["Rifleman", _riflemanTemplate], + ["Medic", _medicTemplate, [["medic", true]]], + ["Engineer", _engineerTemplate, [["engineer", true]]], + ["ExplosivesExpert", _explosivesExpertTemplate, [["explosiveSpecialist", true]]], + ["Grenadier", _grenadierTemplate], + ["LAT", _latTemplate], + ["AT", _atTemplate], + ["AA", _aaTemplate], + ["MachineGunner", _machineGunnerTemplate], + ["Marksman", _marksmanTemplate], + ["Sniper", _sniperTemplate] +]; + +[_prefix, _unitTypes, _militiaLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; + +////////////////////// +// Misc Units // +////////////////////// + +//The following lines are determining the loadout of vehicle crew +["other", [["Crew", _crewTemplate]], _crewLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout of the pilots +["other", [["Pilot", _crewTemplate]], _pilotLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the unit used in the "kill the official" mission +["other", [["Official", _policeTemplate]], _officerLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "kill the traitor" mission +["other", [["Traitor", _traitorTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; +//The following lines are determining the loadout for the AI used in the "Invader Punishment" mission +["other", [["Unarmed", _UnarmedTemplate]], _militaryLoadoutData] call _fnc_generateAndSaveUnitsToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Civ.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Civ.sqf index 5564353046..4e2cf7474b 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Civ.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Civ.sqf @@ -6,7 +6,9 @@ // Vehicles // ////////////////////////// -["vehiclesCivCar", [ +//TODO: Vehicles, and preferably their spawn chances, need to be added/removed/adjusted depending on the loaded factions. Stopgap fix for RF now. + +private _vehiclesCivCar = [ "C_Quadbike_01_F", 0.3 ,"C_Hatchback_01_F", 2.0 ,"C_Hatchback_01_sport_F", 0.3 @@ -16,33 +18,45 @@ ,"C_Van_02_transport_F", 0.2 // minibus ,"C_Offroad_02_unarmed_F", 0.5 // Apex 4WD ,"C_Offroad_01_comms_F", 0.1 // Contact - ,"C_Offroad_01_covered_F", 0.1]] call _fnc_saveToTemplate; - -["vehiclesCivIndustrial", [ + ,"C_Offroad_01_covered_F", 0.1]; +private _vehiclesCivIndustrial = [ "C_Van_01_transport_F", 1.0 ,"C_Van_01_box_F", 0.8 ,"C_Truck_02_transport_F", 0.5 ,"C_Truck_02_covered_F", 0.5 - ,"C_Tractor_01_F", 0.3 ]] call _fnc_saveToTemplate; + ,"C_Tractor_01_F", 0.3]; -["vehiclesCivBoat", [ +private _vehiclesCivBoat = [ "C_Boat_Civil_01_rescue_F", 0.1 // motorboats ,"C_Boat_Civil_01_police_F", 0.1 ,"C_Boat_Civil_01_F", 1.0 ,"C_Rubberboat", 1.0 // rescue boat ,"C_Boat_Transport_02_F", 1.0 // RHIB - ,"C_Scooter_Transport_01_F", 0.5]] call _fnc_saveToTemplate; + ,"C_Scooter_Transport_01_F", 0.5]; -["vehiclesCivRepair", [ +private _vehiclesCivRepair = [ "C_Offroad_01_repair_F", 0.3 ,"C_Van_02_service_F", 0.3 // orange - ,"C_Truck_02_box_F", 0.1]] call _fnc_saveToTemplate; + ,"C_Truck_02_box_F", 0.1]; -["vehiclesCivMedical", ["C_Van_02_medevac_F", 0.1]] call _fnc_saveToTemplate; +private _vehiclesCivMedical = ["C_Van_02_medevac_F", 0.1]; -["vehiclesCivFuel", [ +private _vehiclesCivFuel = [ "C_Van_01_fuel_F", 0.2 - ,"C_Truck_02_fuel_F", 0.1]] call _fnc_saveToTemplate; + ,"C_Truck_02_fuel_F", 0.1]; + +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf", 2.0, "C_Pickup_covered_rf", 0.1]; + _vehiclesCivRepair append ["C_Pickup_repair_rf", 0.3]; + _vehiclesCivFuel append ["a3a_civ_Pickup_fuel_rf", 0.1]; +}; + +["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; +["vehiclesCivIndustrial", _vehiclesCivIndustrial] call _fnc_saveToTemplate; +["vehiclesCivBoat", _vehiclesCivBoat] call _fnc_saveToTemplate; +["vehiclesCivRepair", _vehiclesCivRepair] call _fnc_saveToTemplate; +["vehiclesCivMedical", _vehiclesCivMedical] call _fnc_saveToTemplate; +["vehiclesCivFuel", _vehiclesCivFuel] call _fnc_saveToTemplate; ///////////////////// /// Identities /// @@ -143,6 +157,20 @@ if (allowDLCWS) then { ]; }; +if ("rf" in A3A_enabledDLC) then { + private _RFleatherJackets = [ + "U_C_PilotJacket_black_RF", + "U_C_PilotJacket_brown_RF", + "U_C_PilotJacket_lbrown_RF", + "U_C_PilotJacket_open_black_RF", + "U_C_PilotJacket_open_brown_RF", + "U_C_PilotJacket_open_lbrown_RF"]; + _dlcUniforms append _RFleatherJackets; + if (A3A_climate in ["temperate","arctic"]) then { + _civUniforms append _RFleatherJackets; + }; +}; + ["uniforms", _civUniforms + _pressUniforms + _workerUniforms + _dlcUniforms] call _fnc_saveToTemplate; private _civhats = [ diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_FIA.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_FIA.sqf index 3319bbbf3f..16d4b50e21 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_FIA.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_FIA.sqf @@ -21,13 +21,13 @@ private _vehicleAA = []; private _vehiclesCivCar = ["C_Offroad_01_F", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_SUV_01_F"]; ["vehiclesCivTruck", ["C_Van_01_transport_F", "C_Van_02_transport_F", "C_Van_02_vehicle_F"]] call _fnc_saveToTemplate; -["vehiclesCivHeli", ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]] call _fnc_saveToTemplate; +private _vehiclesCivHeli = ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]; ["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat"]] call _fnc_saveToTemplate; ["staticMGs", ["I_G_HMG_02_high_F", "I_G_HMG_02_F"]] call _fnc_saveToTemplate; ["staticAT", ["I_static_AT_F"]] call _fnc_saveToTemplate; private _staticAA = ["I_static_AA_F"]; -["staticMortars", ["I_G_Mortar_01_F"]] call _fnc_saveToTemplate; +private _staticMortars = ["I_G_Mortar_01_F"]; ["staticMortarMagHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; ["staticMortarMagSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; ["staticMortarMagFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; @@ -46,7 +46,14 @@ if ("expansion" in A3A_enabledDLC) then { _vehiclesLightArmed append ["I_C_Offroad_02_LMG_F"]; _vehiclesAT append ["I_C_Offroad_02_AT_F"]; }; -["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; + +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf","C_Pickup_covered_rf"]; + _vehiclesLightUnarmed append ["a3a_FIA_Pickup_rf", "a3a_FIA_Pickup_covered_rf"]; + _vehiclesLightArmed append ["a3a_FIA_Pickup_mmg_rf", "a3a_FIA_Pickup_hmg_rf"]; + _staticMortars append ["I_G_CommandoMortar_rf"]; + _vehiclesCivHeli append ["C_Heli_EC_01A_civ_RF","C_Heli_EC_04_rescue_RF"]; +}; if ("ws" in A3A_enabledDLC) then { _vehicleAA append ["I_Tura_Truck_02_aa_lxWS"]; @@ -56,6 +63,9 @@ if ("ws" in A3A_enabledDLC) then { _vehiclesAT insert [1, ["I_G_Offroad_01_armor_AT_lxWS"]]; }; +["vehiclesCivHeli", _vehiclesCivHeli] call _fnc_saveToTemplate; +["staticMortars", _staticMortars] call _fnc_saveToTemplate; +["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _vehiclesLightUnarmed] call _fnc_saveToTemplate; ["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; ["vehiclesAT", _vehiclesAT] call _fnc_saveToTemplate; @@ -85,10 +95,15 @@ if ("expansion" in A3A_enabledDLC) then { } else { _initialRebelEquipment append [["launch_RPG32_F", 15], ["RPG32_F", 30]]; }; +if ("rf" in A3A_enabledDLC) then { + _initialRebelEquipment append ["srifle_h6_tan_rf","10Rnd_556x45_AP_Stanag_red_Tan_RF","10Rnd_556x45_AP_Stanag_Tan_RF","10Rnd_556x45_AP_Stanag_green_Tan_RF"]; + _initialRebelEquipment = _initialRebelEquipment - ["SMG_05_F","SMG_01_F","hgun_PDW2000_F","SMG_02_F","30Rnd_45ACP_Mag_SMG_01","30Rnd_9x21_Mag_SMG_02"]; +}; if ("enoch" in A3A_enabledDLC) then { _initialRebelEquipment append ["sgun_HunterShotgun_01_F", "sgun_HunterShotgun_01_sawedoff_F", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Slug"]; }; + if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr","tf_anprc154"]}; if (A3A_hasTFAR && startWithLongRangeRadio) then {_initialRebelEquipment append ["tf_anprc155","tf_anprc155_coyote"]}; if (A3A_hasTFARBeta) then {_initialRebelEquipment append ["TFAR_microdagr","TFAR_anprc154"]}; @@ -110,34 +125,44 @@ private _rebUniforms = [ private _dlcUniforms = []; -if ("enoch" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_I_L_Uniform_01_camo_F" -]; +if ("enoch" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_I_L_Uniform_01_camo_F" + ]; }; -if ("expansion" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_I_C_Soldier_Bandit_4_F", - "U_I_C_Soldier_Bandit_1_F", - "U_I_C_Soldier_Bandit_2_F", - "U_I_C_Soldier_Bandit_5_F", - "U_I_C_Soldier_Bandit_3_F", - "U_I_C_Soldier_Para_2_F", - "U_I_C_Soldier_Para_3_F", - "U_I_C_Soldier_Para_5_F", - "U_I_C_Soldier_Para_4_F", - "U_I_C_Soldier_Para_1_F", - "U_I_C_Soldier_Camo_F" -]; +if ("expansion" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_2_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Bandit_3_F", + "U_I_C_Soldier_Para_2_F", + "U_I_C_Soldier_Para_3_F", + "U_I_C_Soldier_Para_5_F", + "U_I_C_Soldier_Para_4_F", + "U_I_C_Soldier_Para_1_F", + "U_I_C_Soldier_Camo_F" + ]; }; -if ("ws" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_lxWS_ION_Casual1", - "U_lxWS_ION_Casual2", - "U_lxWS_ION_Casual3", - "U_lxWS_ION_Casual4", - "U_lxWS_ION_Casual5", - "U_lxWS_SFIA_deserter" -]; +if ("ws" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_lxWS_ION_Casual1", + "U_lxWS_ION_Casual2", + "U_lxWS_ION_Casual3", + "U_lxWS_ION_Casual4", + "U_lxWS_ION_Casual5", + "U_lxWS_SFIA_deserter" + ]; +}; + +if ("rf" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_IG_Guerrilla_RF", + "U_IG_leader_RF" + ]; }; ["uniforms", _rebUniforms + _dlcUniforms] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_LFF.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_LFF.sqf index 136dc1c6f9..f1c092afb8 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_LFF.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_LFF.sqf @@ -21,13 +21,13 @@ private _vehicleAA = []; private _vehiclesCivCar = ["C_Offroad_01_comms_F", "C_Offroad_01_covered_F","C_Offroad_01_F", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_SUV_01_F"]; ["vehiclesCivTruck", ["C_Van_01_transport_F", "C_Van_02_transport_F", "C_Van_02_vehicle_F"]] call _fnc_saveToTemplate; -["vehiclesCivHeli", ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]] call _fnc_saveToTemplate; +private _vehiclesCivHeli = ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]; ["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat"]] call _fnc_saveToTemplate; ["staticMGs", ["I_G_HMG_02_high_F", "I_G_HMG_02_F"]] call _fnc_saveToTemplate; ["staticAT", ["I_static_AT_F"]] call _fnc_saveToTemplate; private _staticAA = ["I_static_AA_F"]; -["staticMortars", ["I_G_Mortar_01_F"]] call _fnc_saveToTemplate; +private _staticMortars = ["I_G_Mortar_01_F"]; ["staticMortarMagHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; ["staticMortarMagSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; ["staticMortarMagFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; @@ -46,6 +46,15 @@ if ("expansion" in A3A_enabledDLC) then { _vehiclesLightArmed append ["a3a_Offroad_02_LMG_black_F"]; _vehiclesAT append ["a3a_Offroad_02_black_AT_F"]; }; + +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf","C_Pickup_covered_rf"]; + _vehiclesLightUnarmed append ["a3a_black_Pickup_rf","a3a_black_Pickup_covered_rf"]; + _vehiclesLightArmed append ["a3a_black_Pickup_mmg_rf","a3a_black_Pickup_hmg_rf"]; + _staticMortars append ["I_G_CommandoMortar_rf"]; + _vehiclesCivHeli append ["C_Heli_EC_01A_civ_RF","C_Heli_EC_04_rescue_RF"]; +}; + ["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; if ("ws" in A3A_enabledDLC) then { @@ -56,6 +65,8 @@ if ("ws" in A3A_enabledDLC) then { _vehiclesAT insert [1, ["a3a_ION_Offroad_armor_at"]]; }; +["vehiclesCivHeli", _vehiclesCivHeli] call _fnc_saveToTemplate; +["staticMortars",_staticMortars] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _vehiclesLightUnarmed] call _fnc_saveToTemplate; ["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; ["vehiclesAT", _vehiclesAT] call _fnc_saveToTemplate; @@ -86,6 +97,10 @@ if ("expansion" in A3A_enabledDLC) then { _initialRebelEquipment append [["launch_RPG32_green_F", 15], ["RPG32_F", 30]]; }; +if ("rf" in A3A_enabledDLC) then { + _initialRebelEquipment append ["srifle_h6_blk_rf","10Rnd_556x45_AP_Stanag_red_RF","10Rnd_556x45_AP_Stanag_RF","10Rnd_556x45_AP_Stanag_green_RF"]; +}; + if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr","tf_anprc154"]}; if (A3A_hasTFAR && startWithLongRangeRadio) then {_initialRebelEquipment append ["tf_anprc155","tf_anprc155_coyote"]}; if (A3A_hasTFARBeta) then {_initialRebelEquipment append ["TFAR_microdagr","TFAR_anprc154"]}; @@ -117,27 +132,36 @@ private _dlcUniforms = [ ]; //They aren't DLC uniforms, but i think you get it -if ("expansion" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_I_C_Soldier_Bandit_4_F", - "U_I_C_Soldier_Bandit_1_F", - "U_I_C_Soldier_Bandit_5_F", - "U_I_C_Soldier_Para_2_F", - "U_I_C_Soldier_Para_3_F", - "U_I_C_Soldier_Para_5_F", - "U_I_C_Soldier_Para_4_F", - "U_I_C_Soldier_Para_1_F", - "U_I_C_Soldier_Camo_F" -]; +if ("expansion" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Para_2_F", + "U_I_C_Soldier_Para_3_F", + "U_I_C_Soldier_Para_5_F", + "U_I_C_Soldier_Para_4_F", + "U_I_C_Soldier_Para_1_F", + "U_I_C_Soldier_Camo_F" + ]; }; -if ("ws" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_lxWS_ION_Casual1", - "U_lxWS_ION_Casual2", - "U_lxWS_ION_Casual3", - "U_lxWS_ION_Casual4", - "U_lxWS_ION_Casual5", - "U_lxWS_SFIA_deserter" -]; +if ("ws" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_lxWS_ION_Casual1", + "U_lxWS_ION_Casual2", + "U_lxWS_ION_Casual3", + "U_lxWS_ION_Casual4", + "U_lxWS_ION_Casual5", + "U_lxWS_SFIA_deserter" + ]; +}; + +if ("rf" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_IG_Guerrilla_RF", + "U_IG_leader_RF" + ]; }; ["uniforms", _rebUniforms + _dlcUniforms] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_SDK.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_SDK.sqf index 4777774cf4..26d543a020 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_SDK.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_SDK.sqf @@ -19,15 +19,15 @@ private _vehicleAA = []; ["vehiclesPlane", ["I_C_Plane_Civil_01_F"]] call _fnc_saveToTemplate; -["vehiclesCivCar", ["C_Offroad_01_F", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_Offroad_02_unarmed_F", "C_SUV_01_F"]] call _fnc_saveToTemplate; +private _vehiclesCivCar = ["C_Offroad_01_F", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_Offroad_02_unarmed_F", "C_SUV_01_F"]; ["vehiclesCivTruck", ["C_Van_01_transport_F", "C_Van_02_transport_F", "C_Van_02_vehicle_F"]] call _fnc_saveToTemplate; -["vehiclesCivHeli", ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]] call _fnc_saveToTemplate; +private _vehiclesCivHeli = ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]; ["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat"]] call _fnc_saveToTemplate; ["staticMGs", ["I_G_HMG_02_high_F", "I_G_HMG_02_F"]] call _fnc_saveToTemplate; ["staticAT", ["I_static_AT_F"]] call _fnc_saveToTemplate; private _staticAA = ["I_static_AA_F"]; -["staticMortars", ["I_G_Mortar_01_F"]] call _fnc_saveToTemplate; +private _staticMortars = ["I_G_Mortar_01_F"]; ["staticMortarMagHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; ["staticMortarMagSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; ["staticMortarMagFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; @@ -47,6 +47,17 @@ if ("ws" in A3A_enabledDLC) then { _vehiclesAT insert [1, ["I_G_Offroad_01_armor_AT_lxWS"]]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf","C_Pickup_covered_rf"]; + _vehiclesLightUnarmed append ["a3a_FIA_Pickup_rf", "a3a_FIA_Pickup_covered_rf"]; + _vehiclesLightArmed append ["a3a_FIA_Pickup_mmg_rf", "a3a_FIA_Pickup_hmg_rf"]; + _staticMortars append ["I_G_CommandoMortar_rf"]; + _vehiclesCivHeli append ["C_Heli_EC_01A_civ_RF","C_Heli_EC_04_rescue_RF"]; +}; + +["vehiclesCivHeli", _vehiclesCivHeli] call _fnc_saveToTemplate; +["staticMortars", _staticMortars] call _fnc_saveToTemplate; +["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _vehiclesLightUnarmed] call _fnc_saveToTemplate; ["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; ["vehiclesAT", _vehiclesAT] call _fnc_saveToTemplate; @@ -76,6 +87,10 @@ _initialRebelEquipment append [["launch_RPG7_F", 15], ["RPG7_F", 45]]; if ("enoch" in A3A_enabledDLC) then { _initialRebelEquipment append ["sgun_HunterShotgun_01_F", "sgun_HunterShotgun_01_sawedoff_F", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Slug"]; }; +if ("rf" in A3A_enabledDLC) then { + _initialRebelEquipment append ["srifle_h6_oli_rf","10Rnd_556x45_AP_Stanag_red_khk_RF","10Rnd_556x45_AP_Stanag_khk_RF","10Rnd_556x45_AP_Stanag_green_khk_RF"]; + _initialRebelEquipment = _initialRebelEquipment - ["SMG_05_F","hgun_PDW2000_F","30Rnd_9x21_Mag_SMG_02"]; +}; if (A3A_hasTFAR) then {_initialRebelEquipment append ["tf_microdagr","tf_anprc154"]}; if (A3A_hasTFAR && startWithLongRangeRadio) then {_initialRebelEquipment append ["tf_anprc155","tf_anprc155_coyote"]}; @@ -109,19 +124,28 @@ private _rebUniforms = [ private _dlcUniforms = []; -if ("enoch" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_I_L_Uniform_01_camo_F" -]; +if ("enoch" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_I_L_Uniform_01_camo_F" + ]; }; -if ("ws" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_lxWS_ION_Casual1", - "U_lxWS_ION_Casual2", - "U_lxWS_ION_Casual3", - "U_lxWS_ION_Casual4", - "U_lxWS_ION_Casual5", - "U_lxWS_SFIA_deserter" -]; +if ("ws" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_lxWS_ION_Casual1", + "U_lxWS_ION_Casual2", + "U_lxWS_ION_Casual3", + "U_lxWS_ION_Casual4", + "U_lxWS_ION_Casual5", + "U_lxWS_SFIA_deserter" + ]; +}; + +if ("rf" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_IG_Guerrilla_RF", + "U_IG_leader_RF" + ]; }; ["uniforms", _rebUniforms + _dlcUniforms] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_Vehicle_Attributes.sqf index 8542273bce..816208ebc8 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Reb_Vehicle_Attributes.sqf @@ -2,7 +2,7 @@ ["I_C_Offroad_02_LMG_F", ["rebCost", 500]], ["I_C_Offroad_02_unarmed_F", ["rebCost", 150]], //Slow, 4 seats only - ["a3a_C_Heli_Transport_02_F", ["rebCost", 6500]] + ["a3a_C_Heli_Transport_02_F", ["rebCost", 8000]] ]] call _fnc_saveToTemplate; @@ -16,4 +16,15 @@ if (isClass (configFile >> "CfgPatches" >> "Vehicles_F_lxWS")) then { ["a3a_ION_Offroad_armor_armed", ["rebCost", 900], ["threat", 60]], ["a3a_ION_Offroad_armor_at", ["rebCost", 900], ["threat", 60]] ]; -}; \ No newline at end of file +}; + +//Reaction Forces Vehicles +if (isClass (configFile >> "CfgPatches" >> "RF_Vehicles")) then { + (["attributesVehicles"] call _fnc_getFromTemplate) append [ + ["C_Heli_EC_01A_civ_RF", ["rebCost", 8000]], + ["C_Heli_EC_04_rescue_RF", ["rebCost", 8000]], + ["C_Pickup_rf", ["rebCost", 250]], + ["C_Pickup_covered_rf", ["rebCost", 250]], + ["a3a_FIA_Pickup_hmg_rf", ["rebCost", 900]] + ]; +}; diff --git a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Vehicle_Attributes.sqf b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Vehicle_Attributes.sqf index 6e18656d96..f3c0650bea 100644 --- a/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Vehicle_Attributes.sqf +++ b/A3A/addons/core/Templates/Templates/Vanilla/Vanilla_Vehicle_Attributes.sqf @@ -32,4 +32,11 @@ if ("ws" in A3A_enabledDLC) then { ["I_A_Truck_02_aa_lxWS", ["cost", 60]], ["a3a_I_E_Truck_02_zu23_F", ["cost", 60]] ]; +}; + +//Reaction Forces Vehicles +if (isClass (configFile >> "CfgPatches" >> "RF_Vehicles")) then { + (["attributesVehicles"] call _fnc_getFromTemplate) append [ + ["B_ION_Pickup_aat_rf", ["cost", 40]] + ]; }; \ No newline at end of file diff --git a/A3A/addons/core/Templates/Templates/WS/WS_AI_ADF.sqf b/A3A/addons/core/Templates/Templates/WS/WS_AI_ADF.sqf index 96a102baaa..7a3938c329 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_AI_ADF.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_AI_ADF.sqf @@ -42,11 +42,11 @@ private _Tanks = ["B_MBT_01_TUSK_F", "B_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["a3a_Plane_Fighter_04_grey_F"]] call _fnc_saveToTemplate; // ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F", "a3a_Heli_Light_01_ION_F"]] call _fnc_saveToTemplate; // ideally fragile & unarmed helis seating 4+ +private _vehiclesHelisLight = ["O_Heli_Light_02_unarmed_F", "a3a_Heli_Light_01_ION_F"]; // ideally fragile & unarmed helis seating 4+ private _HelisTransport = ["B_D_Heli_Transport_01_lxWS", "B_Heli_Transport_01_F", "a3a_ION_Heli_Transport_02_F", "B_CTRG_Heli_Transport_01_sand_F"]; // Should be capable of dealing damage to ground targets without additional scripting -["vehiclesHelisLightAttack", ["B_D_Heli_Light_01_dynamicLoadout_lxWS", "a3a_Heli_Light_02_black_F", "a3a_Heli_Light_01_dynamicLoadout_ION_F"]] call _fnc_saveToTemplate; // Utility helis with fixed or door guns + rocket pods -["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F", "B_D_Heli_Attack_01_dynamicLoadout_lxWS"]] call _fnc_saveToTemplate; // Proper attack helis: Apache, Hind etc +private _vehiclesHelisLightAttack = ["B_D_Heli_Light_01_dynamicLoadout_lxWS", "a3a_Heli_Light_02_black_F", "a3a_Heli_Light_01_dynamicLoadout_ION_F"]; // Utility helis with fixed or door guns + rocket pods +private _vehiclesHelisAttack = ["B_D_Heli_Attack_01_dynamicLoadout_lxWS"]; ["vehiclesArtillery", ["B_MBT_01_arty_F","B_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; //this line determines artillery vehicles -- Example: ["vehiclesArtillery", ["B_MBT_01_arty_F"]] -- Array, can contain multiple assets //new magazines storing methode, all vehicle magazines should be defined here in format [Vehicle class, [magazines]], @@ -59,7 +59,7 @@ private _HelisTransport = ["B_D_Heli_Transport_01_lxWS", "B_Heli_Transport_01_F" ["uavsPortable", ["B_UAV_01_F", "B_UAV_02_lxWS"]] call _fnc_saveToTemplate; //Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: -["vehiclesMilitiaLightArmed", ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaLightArmed = ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]; ["vehiclesMilitiaTrucks", ["I_C_Van_02_transport_F", "I_C_Van_01_transport_brown_F"]] call _fnc_saveToTemplate; private _vehiclesMilitiaCars = ["a3a_tan_Offroad_armor","a3a_Offroad_01_tan_F"]; @@ -92,6 +92,19 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport = ["a3a_tan_Heli_EC_04_military_rf"]; + _vehiclesHelisLight = ["a3a_tan_Heli_light_03_unarmed_rf"]; + _vehiclesHelisLightAttack = ["a3a_tan_Heli_light_03_dynamicLoadout_rf","a3a_tan_Heli_EC_03_rf"]; + _vehiclesMilitiaCars append ["B_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_Pickup_mmg_rf","B_Pickup_mmg_rf"]; + _vehiclesHelisAttack = ["a3a_Heli_EC_02_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisAttack", _vehiclesHelisAttack] call _fnc_saveToTemplate; +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; @@ -156,6 +169,7 @@ _loadoutData set ["ATLaunchers", [ ["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], ["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], ["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""] +]]; _loadoutData set ["missileATLaunchers", [ ["launch_B_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT", "Titan_AP"], [], ""], ["launch_B_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT"], [], ""], @@ -500,6 +514,27 @@ if ("expansion" in A3A_enabledDLC) then { ["arifle_SPAR_03_snd_F", "suppressor_h_sand_lxWS", "acc_pointer_IR_sand_lxWS", "optic_ERCO_snd_F", [], [], "bipod_01_F_snd"] ]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/WS/WS_AI_CSAT_NAfrica.sqf b/A3A/addons/core/Templates/Templates/WS/WS_AI_CSAT_NAfrica.sqf index 0ece0fd7a4..d8b53ca135 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_AI_CSAT_NAfrica.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_AI_CSAT_NAfrica.sqf @@ -54,7 +54,7 @@ private _Tanks = ["O_MBT_02_cannon_F"]; ["uavsPortable", ["O_UAV_01_F", "O_UAV_02_lxWS"]] call _fnc_saveToTemplate; //Config special vehicles - militia vehicles are mostly used in the early game, police cars are being used by troops around cities -- Example: -["vehiclesMilitiaLightArmed", ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaLightArmed = ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]; ["vehiclesMilitiaTrucks", ["O_Truck_02_transport_F", "O_Truck_02_covered_F"]] call _fnc_saveToTemplate; private _vehiclesMilitiaCars = ["a3a_tan_Offroad_armor","a3a_Offroad_01_tan_F"]; private _vehiclesPolice = ["B_GEN_Offroad_01_gen_F"]; @@ -90,8 +90,13 @@ if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_hex_Pickup_mmg_rf","a3a_hex_Pickup_mmg_rf"]; +}; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; - +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; ["vehiclesLightArmed", _LightArmed] call _fnc_saveToTemplate; @@ -455,6 +460,27 @@ if ("mark" in A3A_enabledDLC) then { _militaryLoadoutData set ["sniperRifles", _mSniper]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""], + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Holosight_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_desert_RF", "suppressor_127x55_small_desert_RF", "acc_pointer_IR", "optic_Holosight_blk_F", ["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Hex_RF", + "H_HelmetHeavy_Simple_Hex_RF", + "H_HelmetHeavy_VisorUp_Hex_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetO_ocano_sb_hex_RF"]; + (_militiaLoadoutData get "helmets") append ["H_HelmetO_ocamo_sb_hex_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/WS/WS_AI_ION.sqf b/A3A/addons/core/Templates/Templates/WS/WS_AI_ION.sqf index 5d6ce62615..c503be2eb0 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_AI_ION.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_AI_ION.sqf @@ -29,10 +29,9 @@ private _vehiclesLightArmed = ["a3a_ION_Offroad_armor_armed","a3a_ION_Offroad_ar ["vehiclesMedical", ["a3a_Van_02_black_medevac_F"]] call _fnc_saveToTemplate; ["vehiclesLightAPCs", ["B_ION_APC_Wheeled_02_hmg_lxWS"]] call _fnc_saveToTemplate; ["vehiclesAPCs", ["a3a_ION_APC_Wheeled_01_command_lxWS","a3a_ION_APC_Wheeled_01_cannon_lxWS", "a3a_ION_APC_Wheeled_01_atgm"]] call _fnc_saveToTemplate; -["vehiclesIFVs", []] call _fnc_saveToTemplate; +["vehiclesIFVs", ["a3a_ION_APC_Tracked_02_30mm"]] call _fnc_saveToTemplate; private _Tanks = ["a3a_MBT_02_cannon_black_F"]; -["vehiclesAA", ["a3a_ION_Truck_02_zu23_F"]] call _fnc_saveToTemplate; - +private _vehiclesAA = ["a3a_ION_Truck_02_zu23_F"]; ["vehiclesTransportBoats", ["B_Boat_Transport_01_F"]] call _fnc_saveToTemplate; ["vehiclesGunBoats", ["B_Boat_Armed_01_minigun_F", "a3a_Boat_Armed_01_hmg_blufor_F"]] call _fnc_saveToTemplate; @@ -42,10 +41,10 @@ private _Tanks = ["a3a_MBT_02_cannon_black_F"]; ["vehiclesPlanesAA", ["a3a_Plane_Fighter_04_grey_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F", "B_ION_Heli_Light_02_unarmed_lxWS", "a3a_Heli_Light_01_ION_F"]] call _fnc_saveToTemplate; -["vehiclesHelisTransport", ["a3a_ION_Heli_Transport_02_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLightAttack", ["B_ION_Heli_Light_02_dynamicLoadout_lxWS", "a3a_Heli_Light_01_dynamicLoadout_ION_F", "a3a_Heli_Light_02_black_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["O_Heli_Attack_02_dynamicLoadout_black_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["O_Heli_Light_02_unarmed_F", "B_ION_Heli_Light_02_unarmed_lxWS", "a3a_Heli_Light_01_ION_F"]; +private _HelisTransport = ["a3a_ION_Heli_Transport_02_F"]; +private _vehiclesHelisLightAttack = ["B_ION_Heli_Light_02_dynamicLoadout_lxWS", "a3a_Heli_Light_01_dynamicLoadout_ION_F", "a3a_Heli_Light_02_black_F"]; +private _vehiclesHelisAttack = ["O_Heli_Attack_02_dynamicLoadout_black_F"]; ["vehiclesArtillery", ["a3a_ION_Truck_02_MRL_F", "B_MBT_01_arty_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -89,6 +88,21 @@ if ("enoch" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["a3a_ION_Heli_EC_04_military_rf"]; + _vehiclesHelisLight append ["a3a_black_Heli_light_03_unarmed_rf","a3a_black_Heli_light_03_unarmed_rf"]; + _vehiclesHelisLightAttack append ["a3a_black_Heli_light_03_dynamicLoadout_rf","a3a_ION_Heli_EC_03_rf"]; + _vehiclesAA append ["B_ION_Pickup_aat_rf"]; + _vehiclesLightUnarmed append ["a3a_ION_Pickup_rf","a3a_ION_Pickup_rf"]; + _vehiclesLightArmed append ["B_ION_Pickup_mmg_rf","B_ION_Pickup_mmg_rf","a3a_ION_Pickup_hmg_rf"]; + _vehiclesHelisAttack append ["a3a_ION_Heli_EC_02_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; +["vehiclesHelisAttack", _vehiclesHelisAttack] call _fnc_saveToTemplate; +["vehiclesAA", _vehiclesAA] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; +["vehiclesHelisTransport", _HelisTransport] call _fnc_saveToTemplate; ["vehiclesTanks", _Tanks] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; @@ -424,7 +438,7 @@ _pilotLoadoutData set ["uniforms", ["U_lxWS_ION_Casual3"]]; _pilotLoadoutData set ["vests", ["V_TacVest_blk"]]; _pilotLoadoutData set ["helmets", ["H_Cap_headphones", "H_HeadSet_black_F", "lxWS_H_Bandanna_blk_hs", "H_Cap_headphones_ion_lxws"]]; _pilotLoadoutData set ["facewear", ["G_Aviator","G_Squares_Tinted","G_Tactical_Black"]]; -_crewLoadoutData set ["SMGs", [ +_pilotLoadoutData set ["SMGs", [ ["hgun_PDW2000_F", "", "", "optic_r1_high_lxWS", [], [], ""], ["hgun_PDW2000_F", "", "", "optic_r1_low_lxWS", [], [], ""] ]]; @@ -483,6 +497,39 @@ if ("expansion" in A3A_enabledDLC) then { ["SMG_05_F", "", "acc_flashlight", "optic_r1_low_lxWS", [], [], ""] ]; }; +if ("rf" in A3A_enabledDLC) then { + // Mix of CSAT and NATO equipment; whatever they can get in bulk. The cogs of the market machine keep turning... + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""], + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Holosight_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_desert_RF", "suppressor_127x55_small_desert_RF", "acc_pointer_IR", "optic_Holosight_blk_F", ["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF"]; +}; ///////////////////////////////// diff --git a/A3A/addons/core/Templates/Templates/WS/WS_AI_NATO_Desert.sqf b/A3A/addons/core/Templates/Templates/WS/WS_AI_NATO_Desert.sqf index d12a0a3c10..3c58b65051 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_AI_NATO_Desert.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_AI_NATO_Desert.sqf @@ -39,9 +39,9 @@ private _Tanks = ["B_MBT_01_TUSK_F", "B_MBT_01_cannon_F"]; ["vehiclesPlanesAA", ["B_Plane_Fighter_01_F"]] call _fnc_saveToTemplate; ["vehiclesPlanesTransport", ["B_T_VTOL_01_infantry_blue_F"]] call _fnc_saveToTemplate; -["vehiclesHelisLight", ["B_D_Heli_Light_01_lxWS", "B_Heli_Light_01_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLight = ["B_D_Heli_Light_01_lxWS", "B_Heli_Light_01_F"]; private _HelisTransport = ["B_D_Heli_Transport_01_lxWS", "B_Heli_Transport_01_F", "B_CTRG_Heli_Transport_01_sand_F"]; -["vehiclesHelisLightAttack", ["B_D_Heli_Light_01_dynamicLoadout_lxWS", "B_Heli_Light_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; +private _vehiclesHelisLightAttack = ["B_D_Heli_Light_01_dynamicLoadout_lxWS", "B_Heli_Light_01_dynamicLoadout_F"]; ["vehiclesHelisAttack", ["B_D_Heli_Attack_01_dynamicLoadout_lxWS", "B_Heli_Attack_01_dynamicLoadout_F"]] call _fnc_saveToTemplate; ["vehiclesArtillery", ["B_MBT_01_arty_F","B_MBT_01_mlrs_F"]] call _fnc_saveToTemplate; //this line determines artillery vehicles -- Example: ["vehiclesArtillery", ["B_MBT_01_arty_F"]] -- Array, can contain multiple assets @@ -53,8 +53,7 @@ private _HelisTransport = ["B_D_Heli_Transport_01_lxWS", "B_Heli_Transport_01_F" ["uavsAttack", ["B_UAV_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; ["uavsPortable", ["B_UAV_01_F", "B_UAV_02_lxWS"]] call _fnc_saveToTemplate; - -["vehiclesMilitiaLightArmed", ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]] call _fnc_saveToTemplate; +private _vehiclesMilitiaLightArmed = ["a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_armed_F","a3a_tan_Offroad_armor_armed","a3a_Offroad_01_tan_AT_F","a3a_tan_Offroad_armor_at"]; ["vehiclesMilitiaTrucks", ["I_C_Van_02_transport_F", "I_C_Van_01_transport_brown_F"]] call _fnc_saveToTemplate; private _vehiclesMilitiaCars = ["a3a_tan_Offroad_armor","a3a_Offroad_01_tan_F"]; @@ -90,6 +89,18 @@ if ("heli" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _HelisTransport append ["a3a_tan_Heli_EC_04_military_rf"]; + _vehiclesHelisLight append ["a3a_tan_Heli_light_03_unarmed_rf"]; + _vehiclesHelisLightAttack append ["a3a_tan_Heli_light_03_dynamicLoadout_rf","a3a_tan_Heli_EC_03_rf"]; + _vehiclesMilitiaCars append ["B_Pickup_rf","B_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["B_Pickup_mmg_rf","B_Pickup_mmg_rf"]; +}; +["vehiclesHelisLight", _vehiclesHelisLight] call _fnc_saveToTemplate; + +["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; +["vehiclesHelisLightAttack", _vehiclesHelisLightAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _LightUnarmed] call _fnc_saveToTemplate; @@ -144,7 +155,8 @@ _loadoutData set ["ATLaunchers", [ ["launch_MRAWS_sand_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""], ["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HE_F", "MRAWS_HEAT55_F"], [], ""], ["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HEAT55_F"], [], ""], -["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""]]]; +["launch_MRAWS_sand_rail_F", "", "acc_pointer_IR", "", ["MRAWS_HEAT_F", "MRAWS_HE_F"], [], ""] +]]; _loadoutData set ["missileATLaunchers", [ ["launch_B_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT", "Titan_AP"], [], ""], ["launch_B_Titan_short_F", "", "acc_pointer_IR", "", ["Titan_AT"], [], ""], @@ -355,9 +367,9 @@ if (_sfSwitch < 0.5) then { private _militaryLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks _militaryLoadoutData set ["uniforms", ["U_lxWS_B_CombatUniform_desert", "U_lxWS_B_CombatUniform_desert_tshirt"]]; -_militaryLoadoutData set ["vests", ["V_lxWS_PlateCarrier1_desert", "V_lxWS_PlateCarrier2_desert"]]; -_militaryLoadoutData set ["Hvests", ["V_lxWS_PlateCarrierSpec_desert"]]; -_militaryLoadoutData set ["glVests", ["V_lxWS_PlateCarrierGL_desert"]]; +_militaryLoadoutData set ["vests", ["V_lxWS_PlateCarrier1_desert", "V_lxWS_PlateCarrier2_desert","V_PlateCarrier1_rgr", "V_PlateCarrier2_rgr"]]; +_militaryLoadoutData set ["Hvests", ["V_lxWS_PlateCarrierSpec_desert","V_PlateCarrierSpec_rgr"]]; +_militaryLoadoutData set ["glVests", ["V_lxWS_PlateCarrierGL_desert","V_PlateCarrierGL_rgr"]]; _militaryLoadoutData set ["backpacks", ["B_Carryall_cbr", "B_Kitbag_rgr", "B_AssaultPack_rgr", "B_Kitbag_mcamo"]]; _militaryLoadoutData set ["helmets", ["H_HelmetB_desert", "H_HelmetB_sand", "H_HelmetB_light_desert","H_HelmetB_light_sand"]]; _militaryLoadoutData set ["binoculars", ["Laserdesignator"]]; @@ -436,8 +448,9 @@ _policeLoadoutData set ["sidearms", ["hgun_Rook40_F"]]; private _militiaLoadoutData = _loadoutData call _fnc_copyLoadoutData; // touch and shit breaks _militiaLoadoutData set ["uniforms", ["U_lxWS_B_CombatUniform_desert", "U_lxWS_B_CombatUniform_desert_tshirt"]]; _militiaLoadoutData set ["vests", ["V_Chestrig_khk", "V_TacVest_khk"]]; +_militiaLoadoutData set ["Hvests", ["V_TacVest_khk"]]; _militiaLoadoutData set ["backpacks", ["B_AssaultPack_rgr"]]; -_militiaLoadoutData set ["helmets", ["H_Cap_tan_specops_US", "lxWS_H_MilCap_desert", "H_Bandanna_sand"]]; +_militiaLoadoutData set ["helmets", ["lxWS_H_MilCap_desert", "lxWS_H_MilCap_desert", "H_Bandanna_sand"]]; _militiaLoadoutData set ["rifles", [ ["arifle_MX_F", "", "acc_flashlight", "", ["30Rnd_65x39_caseless_mag", "30Rnd_65x39_caseless_mag", "30Rnd_65x39_caseless_mag_Tracer"], [], ""] @@ -519,6 +532,30 @@ if ("mark" in A3A_enabledDLC) then { ["srifle_DMR_02_sniper_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"], ["srifle_DMR_02_sniper_F", "", "acc_pointer_IR", "optic_LRPS", [], [], "bipod_01_F_snd"]]; }; +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "muzzle_snds_L", "acc_flashlight_IR_pistol_RF", "optic_MRD_tan_RF", [], [], ""] + ]; + (_militaryLoadoutData get "sidearms") append [ + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""], + ["hgun_Glock19_Tan_RF", "", "acc_flashlight_pistol", "optic_MRD_tan_RF", [], [], ""], + ["hgun_Glock19_auto_Tan_RF", "", "acc_flashlight_pistol", "", [], [], ""] + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; + (_pilotLoadoutData get "uniforms") append ["U_B_HeliPilotCoveralls_MTP_RF"]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetB_plain_sb_mtp_RF", + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF"]; + (_militaryLoadoutData get "helmets") append ["H_HelmetB_plain_sb_mtp_RF"]; +}; ///////////////////////////////// diff --git a/A3A/addons/core/Templates/Templates/WS/WS_AI_SFIA.sqf b/A3A/addons/core/Templates/Templates/WS/WS_AI_SFIA.sqf index 48dbc43279..a38e6af9dc 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_AI_SFIA.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_AI_SFIA.sqf @@ -43,7 +43,7 @@ ["vehiclesHelisLight", ["O_Heli_Light_02_unarmed_F"]] call _fnc_saveToTemplate; ["vehiclesHelisTransport", ["O_Heli_Transport_04_covered_black_F"]] call _fnc_saveToTemplate; ["vehiclesHelisLightAttack", ["O_Heli_Light_02_dynamicLoadout_F"]] call _fnc_saveToTemplate; -["vehiclesHelisAttack", ["O_SFIA_Heli_Attack_02_dynamicLoadout_lxWS"]] call _fnc_saveToTemplate; +private _vehiclesHelisAttack = ["O_SFIA_Heli_Attack_02_dynamicLoadout_lxWS"]; ["vehiclesArtillery", ["O_SFIA_Truck_02_MRL_lxWS", "O_MBT_02_arty_F"]] call _fnc_saveToTemplate; ["magazines", createHashMapFromArray [ @@ -80,6 +80,13 @@ if ("enoch" in A3A_enabledDLC) then { if ("orange" in A3A_enabledDLC) then { _vehiclesPolice append ["B_GEN_Van_02_vehicle_F","B_GEN_Van_02_transport_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesPolice append ["a3a_police_Pickup_rf", "B_GEN_Pickup_covered_rf", "a3a_police_Pickup_comms_rf"]; + _vehiclesMilitiaCars append ["O_Pickup_rf"]; + _vehiclesMilitiaLightArmed append ["a3a_hex_Pickup_mmg_rf","a3a_hex_Pickup_mmg_rf"]; + _vehiclesHelisAttack append ["a3a_sfia_Heli_EC_02_rf"]; +}; +["vehiclesHelisAttack", _vehiclesHelisAttack] call _fnc_saveToTemplate; ["vehiclesPolice", _vehiclesPolice] call _fnc_saveToTemplate; ["vehiclesMilitiaCars", _vehiclesMilitiaCars] call _fnc_saveToTemplate; ["vehiclesMilitiaLightArmed", _vehiclesMilitiaLightArmed] call _fnc_saveToTemplate; @@ -405,6 +412,16 @@ _officerLoadoutData set ["sidearms", ["hgun_ACPC2_F"]]; if ("expansion" in A3A_enabledDLC) then { + (_militaryLoadoutData get "rifles") append [ + ["arifle_AK12_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] + ]; + (_militaryLoadoutData get "grenadeLaunchers") append [ + ["arifle_AK12_GL_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] + ]; + (_militaryLoadoutData get "marksmanRifles") append [ + ["arifle_AK12_F", "", "acc_pointer_IR", "optic_Arco_AK_blk_F", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], "bipod_02_F_blk"] + ]; + (_militiaLoadoutData get "rifles") append [ ["arifle_AKM_F", "", "", "", ["30Rnd_762x39_Mag_Green_F","30Rnd_762x39_Mag_Tracer_Green_F"], [], ""]]; (_militiaLoadoutData get "carbines") append [ @@ -413,8 +430,9 @@ if ("expansion" in A3A_enabledDLC) then { ]; (_militiaLoadoutData get "SMGs") append [ ["arifle_AKS_F", "", "", "", ["30Rnd_545x39_Mag_Green_F", "30Rnd_545x39_Mag_Tracer_Green_F"], [], ""]]; - (_officerLoadoutData get "slRifles") append [ - ["arifle_AKS_F", "", "", "", ["30Rnd_545x39_Mag_Green_F", "30Rnd_545x39_Mag_Tracer_Green_F"], [], ""]]; + + _militiaLoadoutData set ["sidearms", ["hgun_Pistol_01_F"]]; + _crewLoadoutData set ["carbines", [ ["arifle_AKS_F", "", "", "", ["30Rnd_545x39_Mag_Green_F", "30Rnd_545x39_Mag_Tracer_Green_F"], [], ""], ["arifle_AKM_F", "", "", "", ["30Rnd_762x39_Mag_Green_F","30Rnd_762x39_Mag_Tracer_Green_F"], [], ""]]]; @@ -422,32 +440,42 @@ if ("expansion" in A3A_enabledDLC) then { (_pilotLoadoutData get "carbines") append [ ["arifle_AKS_F", "", "", "", ["30Rnd_545x39_Mag_Green_F", "30Rnd_545x39_Mag_Tracer_Green_F"], [], ""] ]; - _militiaLoadoutData set ["sidearms", ["hgun_Pistol_01_F"]]; + (_officerLoadoutData get "slRifles") append [ + ["arifle_AKS_F", "", "", "", ["30Rnd_545x39_Mag_Green_F", "30Rnd_545x39_Mag_Tracer_Green_F"], [], ""]]; }; if ("enoch" in A3A_enabledDLC) then { - (_militaryLoadoutData get "rifles") append [ - ["arifle_AK12_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] - ]; - (_militaryLoadoutData get "grenadeLaunchers") append [ - ["arifle_AK12_GL_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""] - ]; (_militaryLoadoutData get "carbines") append [ ["arifle_AK12U_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] ]; (_militaryLoadoutData get "machineGuns") append [ ["arifle_RPK12_F", "", "acc_pointer_IR", selectRandom _milSights, ["75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_F", "75rnd_762x39_AK12_Mag_Tracer_F"], [], ""] ]; - (_militaryLoadoutData get "marksmanRifles") append [ - ["arifle_AK12_F", "", "acc_pointer_IR", "optic_Arco_AK_blk_F", ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], "bipod_02_F_blk"] - ]; (_pilotLoadoutData get "carbines") append [ ["arifle_AK12U_F", "", "acc_pointer_IR", selectRandom _milSights, ["30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_F", "30Rnd_762x39_AK12_Mag_Tracer_F"], [], ""] ]; }; - +if ("rf" in A3A_enabledDLC) then { + (_sfLoadoutData get "slRifles") append [ + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""], + ["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""] + ]; + (_sfLoadoutData get "rifles") append [["arifle_ash12_desert_RF","suppressor_127x55_small_desert_RF","acc_pointer_IR","optic_Holosight_blk_F",["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], [], ""]]; + (_sfLoadoutData get "grenadeLaunchers") append [["arifle_ash12_GL_desert_RF", "suppressor_127x55_small_desert_RF", "acc_pointer_IR", "optic_Holosight_blk_F", ["20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF","20Rnd_127x55_Mag_desert_RF"], ["1Rnd_HE_Grenade_shell", "1Rnd_HE_Grenade_shell", "1Rnd_Smoke_Grenade_shell"], ""]]; + (_sfLoadoutData get "marksmanRifles") append [ + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_Arco_blk_F",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_DMS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"], + ["arifle_ash12_LR_desert_RF","suppressor_127x55_big_desert_RF","acc_pointer_IR","optic_SOS",["10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF","10Rnd_127x55_Mag_desert_RF"], [], "bipod_02_F_hex"] + ]; + (_sfLoadoutData get "helmets") append [ + "H_HelmetHeavy_Sand_RF", + "H_HelmetHeavy_Simple_Sand_RF", + "H_HelmetHeavy_VisorUp_Sand_RF" + ]; + (_policeLoadoutData get "sidearms") append ["hgun_Glock19_RF"]; +}; ///////////////////////////////// // Unit Type Definitions // diff --git a/A3A/addons/core/Templates/Templates/WS/WS_Civ.sqf b/A3A/addons/core/Templates/Templates/WS/WS_Civ.sqf index f7d2155f64..a7a5982e3b 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_Civ.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_Civ.sqf @@ -6,7 +6,7 @@ // Vehicles // ////////////////////////// -["vehiclesCivCar", [ +private _vehiclesCivCar = [ "C_Quadbike_01_F", 0.15 ,"C_Hatchback_01_F", 1.0 ,"C_Hatchback_01_sport_F", 0.15 @@ -17,10 +17,9 @@ ,"C_Van_02_transport_F", 0.2 // minibus ,"C_Offroad_02_unarmed_F", 1.5 // Apex 4WD ,"C_Offroad_01_comms_F", 0.3 // Contact - ,"C_Offroad_01_covered_F", 0.3 - ]] call _fnc_saveToTemplate; + ,"C_Offroad_01_covered_F", 0.3]; -["vehiclesCivIndustrial", [ +private _vehiclesCivIndustrial = [ "C_Van_01_transport_F", 1.0 ,"C_Van_01_box_F", 0.8 ,"C_Truck_02_transport_F", 0.5 @@ -28,27 +27,39 @@ ,"C_Tractor_01_F", 0.3 ,"C_Truck_02_racing_lxWS", 0.2 ,"C_Truck_02_flatbed_lxWS", 0.5 - ,"C_Truck_02_cargo_lxWS", 0.5 - ]] call _fnc_saveToTemplate; + ,"C_Truck_02_cargo_lxWS", 0.5]; -["vehiclesCivBoat", [ +private _vehiclesCivBoat = [ "C_Boat_Civil_01_rescue_F", 0.1 // motorboats ,"C_Boat_Civil_01_police_F", 0.1 ,"C_Boat_Civil_01_F", 1.0 ,"C_Rubberboat", 1.0 // rescue boat ,"C_Boat_Transport_02_F", 1.0 // RHIB - ,"C_Scooter_Transport_01_F", 0.5]] call _fnc_saveToTemplate; + ,"C_Scooter_Transport_01_F", 0.5]; -["vehiclesCivRepair", [ +private _vehiclesCivRepair = [ "C_Offroad_01_repair_F", 0.3 ,"C_Van_02_service_F", 0.3 // orange - ,"C_Truck_02_box_F", 0.1]] call _fnc_saveToTemplate; + ,"C_Truck_02_box_F", 0.1]; -["vehiclesCivMedical", ["C_Van_02_medevac_F", 0.1]] call _fnc_saveToTemplate; +private _vehiclesCivMedical = ["C_Van_02_medevac_F", 0.1]; -["vehiclesCivFuel", [ +private _vehiclesCivFuel = [ "C_Van_01_fuel_F", 0.2 - ,"C_Truck_02_fuel_F", 0.1]] call _fnc_saveToTemplate; + ,"C_Truck_02_fuel_F", 0.1]; + +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf", 1.25, "C_Pickup_covered_rf", 0.2]; + _vehiclesCivRepair append ["C_Pickup_repair_rf", 0.2]; + _vehiclesCivFuel append ["a3a_civ_Pickup_fuel_rf", 0.1]; +}; + +["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; +["vehiclesCivIndustrial", _vehiclesCivIndustrial] call _fnc_saveToTemplate; +["vehiclesCivBoat", _vehiclesCivBoat] call _fnc_saveToTemplate; +["vehiclesCivRepair", _vehiclesCivRepair] call _fnc_saveToTemplate; +["vehiclesCivMedical", _vehiclesCivMedical] call _fnc_saveToTemplate; +["vehiclesCivFuel", _vehiclesCivFuel] call _fnc_saveToTemplate; ///////////////////// /// Identities /// @@ -102,6 +113,21 @@ if (allowDLCOrange) then { "U_C_Mechanic_01_F" ]; }; + +if ("rf" in A3A_enabledDLC) then { + private _RFleatherJackets = [ + "U_C_PilotJacket_black_RF", + "U_C_PilotJacket_brown_RF", + "U_C_PilotJacket_lbrown_RF", + "U_C_PilotJacket_open_black_RF", + "U_C_PilotJacket_open_brown_RF", + "U_C_PilotJacket_open_lbrown_RF"]; + _dlcUniforms append _RFleatherJackets; + if (A3A_climate in ["temperate","arctic"]) then { + _civUniforms append _RFleatherJackets; + }; +}; + _workerUniforms append [ "U_C_ConstructionCoverall_Black_F", "U_C_ConstructionCoverall_Blue_F", diff --git a/A3A/addons/core/Templates/Templates/WS/WS_Reb_TURA.sqf b/A3A/addons/core/Templates/Templates/WS/WS_Reb_TURA.sqf index d40a8861f4..4bbba62df8 100644 --- a/A3A/addons/core/Templates/Templates/WS/WS_Reb_TURA.sqf +++ b/A3A/addons/core/Templates/Templates/WS/WS_Reb_TURA.sqf @@ -21,13 +21,13 @@ private _vehiclesAT = ["O_SFIA_Offroad_AT_lxWS","O_Tura_Offroad_armor_AT_lxWS"]; private _vehiclesCivCar = ["C_Offroad_lxWS", "C_Hatchback_01_F", "C_Hatchback_01_sport_F", "C_SUV_01_F", "C_Offroad_01_F"]; ["vehiclesCivTruck", ["C_Van_01_transport_F", "C_Van_02_transport_F", "C_Van_02_vehicle_F","C_Truck_02_transport_F","C_Truck_02_covered_F","C_Truck_02_flatbed_lxWS","C_Truck_02_cargo_lxWS"]] call _fnc_saveToTemplate; -["vehiclesCivHeli", ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]] call _fnc_saveToTemplate; +private _vehiclesCivHeli = ["C_Heli_Light_01_civil_F", "a3a_C_Heli_Transport_02_F"]; ["vehiclesCivBoat", ["C_Boat_Civil_01_F", "C_Rubberboat"]] call _fnc_saveToTemplate; ["staticMGs", ["I_G_HMG_02_high_F", "I_G_HMG_02_F"]] call _fnc_saveToTemplate; ["staticAT", ["I_static_AT_F"]] call _fnc_saveToTemplate; ["staticAA", ["I_Tura_ZU23_lxWS"]] call _fnc_saveToTemplate; -["staticMortars", ["I_G_Mortar_01_F"]] call _fnc_saveToTemplate; +private _staticMortars = ["I_G_Mortar_01_F"]; ["staticMortarMagHE", "8Rnd_82mm_Mo_shells"] call _fnc_saveToTemplate; ["staticMortarMagSmoke", "8Rnd_82mm_Mo_Smoke_white"] call _fnc_saveToTemplate; ["staticMortarMagFlare", "8Rnd_82mm_Mo_Flare_white"] call _fnc_saveToTemplate; @@ -44,6 +44,16 @@ if ("expansion" in A3A_enabledDLC) then { _vehiclesLightArmed append ["I_C_Offroad_02_LMG_F"]; _vehiclesAT append ["I_C_Offroad_02_AT_F"]; }; +if ("rf" in A3A_enabledDLC) then { + _vehiclesCivCar append ["C_Pickup_rf","C_Pickup_covered_rf"]; + _vehiclesLightUnarmed append ["a3a_FIA_Pickup_rf", "a3a_FIA_Pickup_covered_rf"]; + _vehiclesLightArmed append ["a3a_FIA_Pickup_mmg_rf", "a3a_FIA_Pickup_hmg_rf"]; + _staticMortars append ["I_G_CommandoMortar_rf"]; + _vehiclesCivHeli append ["C_Heli_EC_01A_civ_rf","C_Heli_EC_04_rescue_rf"]; +}; + +["vehiclesCivHeli", _vehiclesCivHeli] call _fnc_saveToTemplate; +["staticMortars", _staticMortars] call _fnc_saveToTemplate; ["vehiclesCivCar", _vehiclesCivCar] call _fnc_saveToTemplate; ["vehiclesLightUnarmed", _vehiclesLightUnarmed] call _fnc_saveToTemplate; ["vehiclesLightArmed", _vehiclesLightArmed] call _fnc_saveToTemplate; @@ -72,6 +82,10 @@ if (allowDLCExpansion) then { } else { _initialRebelEquipment append [["launch_RPG32_F", 15], ["RPG32_F", 30]]; }; +if ("rf" in A3A_enabledDLC) then { + _initialRebelEquipment append ["srifle_h6_tan_rf","10Rnd_556x45_AP_Stanag_red_Tan_RF","10Rnd_556x45_AP_Stanag_Tan_RF","10Rnd_556x45_AP_Stanag_green_Tan_RF"]; + _initialRebelEquipment = _initialRebelEquipment - ["hgun_PDW2000_F","SMG_02_F","30Rnd_9x21_Mag_SMG_02","SMG_05_F"]; +}; if ("enoch" in A3A_enabledDLC) then { _initialRebelEquipment append ["sgun_HunterShotgun_01_F", "sgun_HunterShotgun_01_sawedoff_F", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Slug"]; @@ -110,24 +124,33 @@ private _dlcUniforms = [ "U_I_L_Uniform_01_deserter_F" ]; -if ("enoch" in A3A_enabledDLC) then {_dlcUniforms append [ - "U_I_L_Uniform_01_camo_F" -]; +if ("enoch" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_I_L_Uniform_01_camo_F" + ]; }; -if (allowDLCExpansion) then {_dlcUniforms append [ - "U_I_C_Soldier_Bandit_4_F", - "U_I_C_Soldier_Bandit_1_F", - "U_I_C_Soldier_Bandit_2_F", - "U_I_C_Soldier_Bandit_5_F", - "U_I_C_Soldier_Bandit_3_F", - "U_I_C_Soldier_Para_2_F", - "U_I_C_Soldier_Para_3_F", - "U_I_C_Soldier_Para_5_F", - "U_I_C_Soldier_Para_4_F", - "U_I_C_Soldier_Para_1_F", - "U_I_C_Soldier_Camo_F" -]; +if (allowDLCExpansion) then { + _dlcUniforms append [ + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_2_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Bandit_3_F", + "U_I_C_Soldier_Para_2_F", + "U_I_C_Soldier_Para_3_F", + "U_I_C_Soldier_Para_5_F", + "U_I_C_Soldier_Para_4_F", + "U_I_C_Soldier_Para_1_F", + "U_I_C_Soldier_Camo_F" + ]; +}; + +if ("rf" in A3A_enabledDLC) then { + _dlcUniforms append [ + "U_IG_Guerrilla_RF", + "U_IG_leader_RF" + ]; }; ["uniforms", _rebUniforms + _dlcUniforms] call _fnc_saveToTemplate; diff --git a/A3A/addons/core/config.cpp b/A3A/addons/core/config.cpp index 6d068dcb4f..b08c911018 100644 --- a/A3A/addons/core/config.cpp +++ b/A3A/addons/core/config.cpp @@ -60,3 +60,6 @@ class CfgMPGameTypes { }; #include "CfgMarkers.hpp" + +// Base AI unit definitions +#include "CfgVehicles.hpp" diff --git a/A3A/addons/core/dialogs.hpp b/A3A/addons/core/dialogs.hpp index d2bf15e7d3..aa7d532f4c 100644 --- a/A3A/addons/core/dialogs.hpp +++ b/A3A/addons/core/dialogs.hpp @@ -147,7 +147,7 @@ class HQ_menu { y = 0.415981 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; - action = "closeDialog 0;if (player == theBoss) then {nul = [] call A3A_fnc_FIAskillAdd} else {[""Recruit Vehicle"", ""Only Player Commander has access to this function.""] call A3A_fnc_customHint;};"; + action = "if (player == theBoss) then {nul = [] call A3A_fnc_FIAskillAdd} else {[""Recruit Vehicle"", ""Only Player Commander has access to this function.""] call A3A_fnc_customHint;};"; }; class HQ_button_skill: A3A_core_BattleMenuRedButton { @@ -1312,13 +1312,13 @@ class radio_comm { class 8slots_R2: A3A_core_BattleMenuRedButton { idc = -1; - text = ""; //$STR_antistasi_dialogs_radio_comm_construct; + text = "New Battle Menu"; // Don't localize, tempory button. x = 0.482498 * safezoneW + safezoneX; y = 0.415981 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; - tooltip = $STR_antistasi_dialogs_radio_comm_construct_tooltip; - //action = "closeDialog 0;_nul = createDialog ""construction_menu"";"; + tooltip = "Experimental Battle Menu. Work in Progress."; // Don't localize, tempory button. + action = "closeDialog 0; if (A3A_GUIDevPreview) then { _nul = createDialog ""A3A_MainDialog""; } else {[localize ""$STR_A3A_Params_GUIDevPreview_title"",""This parameter must be enabled in the Setup menu.""] call A3A_fnc_customHint; };"; }; class 8slots_L3: A3A_core_BattleMenuRedButton { @@ -1704,123 +1704,145 @@ class AI_management { }; }; }; + class commander_comm { idd=-1; movingenable=false; class controls { //Menu Structure - class 8slots_box: A3A_core_BattleMenuBOX + class 10slots_box: A3A_core_BattleMenuBOX { idc = -1; text = $STR_antistasi_dialogs_generic_box_text; x = 0.244979 * safezoneW + safezoneX; - y = 0.223941 * safezoneH + safezoneY; + y = 0.173941 * safezoneH + safezoneY; w = 0.445038 * safezoneW; - h = 0.492103 * safezoneH; + h = 0.592103 * safezoneH; }; - class 8slots_frame: A3A_core_BattleMenuFrame + class 10slots_frame: A3A_core_BattleMenuFrame { idc = -1; text = $STR_antistasi_dialogs_commander_comm; x = 0.254979 * safezoneW + safezoneX; - y = 0.233941 * safezoneH + safezoneY; + y = 0.183941 * safezoneH + safezoneY; w = 0.425038 * safezoneW; - h = 0.462103 * safezoneH; + h = 0.562103 * safezoneH; }; - class 8slots_Back: A3A_core_BattleMenuRedButton + class 10slots_Back: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_generic_button_back_text; x = 0.61 * safezoneW + safezoneX; - y = 0.251941 * safezoneH + safezoneY; - w = 0.06 * safezoneW; + y = 0.201941 * safezoneH + safezoneY; + w = 0.06 * safezoneW;//0.175015 h = 0.05 * safezoneH; action = "closeDialog 0;nul = createDialog ""radio_comm"";"; }; - //Action Buttons - class 8slots_L1: A3A_core_BattleMenuRedButton + class 10slots_L1: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_recruit; x = 0.272481 * safezoneW + safezoneX; - y = 0.317959 * safezoneH + safezoneY; + y = 0.267959 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_recruit_tooltip; action = "closeDialog 0;if (player == theBoss) then { [] spawn A3A_fnc_squadRecruit; } else {[""Recruit Squad"", ""Only Player Commander has access to this function.""] call A3A_fnc_customHint;};"; }; - class 8slots_R1: A3A_core_BattleMenuRedButton + class 10slots_R1: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_air_support; x = 0.482498 * safezoneW + safezoneX; - y = 0.317959 * safezoneH + safezoneY; + y = 0.267959 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_air_support_tooltip; action = "closeDialog 0;if (player == theBoss) then {_nul = createDialog ""carpet_bombing""} else {[""Air Support"", ""Only Player Commander has access to this function.""] call A3A_fnc_customHint;};"; }; - class 8slots_L2: A3A_core_BattleMenuRedButton + class 10slots_L2: A3A_core_BattleMenuRedButton + { + idc = -1; + text = $STR_antistasi_dialogs_commander_comm_convSquad; + x = 0.272481 * safezoneW + safezoneX; + y = 0.365981 * safezoneH + safezoneY; + w = 0.175015 * safezoneW; + h = 0.0560125 * safezoneH; + tooltip = $STR_antistasi_dialogs_commander_comm_convSquad_tooltip; + action = "if (player == theBoss) then { closeDialog 0; [] spawn A3A_fnc_convertToSquad } else {[""Create Squad"", ""You're not the Commander!""] call A3A_fnc_customHint;};"; + }; + class 10slots_R2: A3A_core_BattleMenuRedButton + { + idc = -1; + text = ""; + x = 0.482498 * safezoneW + safezoneX; + y = 0.365981 * safezoneH + safezoneY; + w = 0.175015 * safezoneW; + h = 0.0560125 * safezoneH; + tooltip = ""; + action = ""; + }; + class 10slots_L3: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_roadblock; x = 0.272481 * safezoneW + safezoneX; - y = 0.415981 * safezoneH + safezoneY; + y = 0.464003 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_roadblock_tooltip; action = "if (player == theBoss) then {closeDialog 0;[""create""] spawn A3A_fnc_outpostDialog} else {[""Outposts/Roadblocks"", ""You're not the Commander!""] call A3A_fnc_customHint;};"; }; - class 8slots_R2: A3A_core_BattleMenuRedButton + class 10slots_R3: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_clean; x = 0.482498 * safezoneW + safezoneX; - y = 0.415981 * safezoneH + safezoneY; + y = 0.464003 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_clean_tooltip; action = "if (player == theBoss) then {closedialog 0;[] remoteExec [""A3A_fnc_garbageCleaner"",2]} else {[""Garbage Cleaner"", ""Only Player Commander has access to this function.""] call A3A_fnc_customHint;};"; }; - class 8slots_L3: A3A_core_BattleMenuRedButton + class 10slots_L4: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_roadblock_delete; x = 0.272481 * safezoneW + safezoneX; - y = 0.514003 * safezoneH + safezoneY; + y = 0.562025 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_roadblock_delete_tooltip; action = "if (player == theBoss) then {closeDialog 0; [""delete""] spawn A3A_fnc_outpostDialog} else {[""Outposts/Roadblocks"", ""You're not the Commander!""] call A3A_fnc_customHint;};"; }; - class 8slots_R3: A3A_core_BattleMenuRedButton + class 10slots_R4: A3A_core_BattleMenuRedButton { idc = -1; text = "Arsenal Limits"; //$STR_antistasi_dialogs_commander_comm_faction_garage; x = 0.482498 * safezoneW + safezoneX; - y = 0.514003 * safezoneH + safezoneY; + y = 0.562025 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = "Manage arsenal limitations of guests"; //$STR_antistasi_dialogs_commander_comm_faction_garage_tooltip; - action = "if (player == theBoss && theBoss call A3A_fnc_isMember) then {closeDialog 0; createDialog ""A3A_ArsenalLimitsDialog""} else {[""Arsenal limits"", ""Only member commanders have access to this function""] call A3A_fnc_customHint}"; + action = "if (player == theBoss) then {closeDialog 0; createDialog ""A3A_ArsenalLimitsDialog""} else {[""Arsenal limits"", ""Only commanders have access to this function""] call A3A_fnc_customHint}"; }; - class 8slots_L4: A3A_core_BattleMenuRedButton + class 10slots_L5: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_resign; x = 0.272481 * safezoneW + safezoneX; - y = 0.612025 * safezoneH + safezoneY; + y = 0.660047 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_resign_tooltip; action = "if (isMultiplayer) then {closedialog 0;[player, cursorTarget] remoteExec [""A3A_fnc_theBossToggleEligibility"", 2]} else {[""Resign Commander"", ""This feature is MP Only.""] call A3A_fnc_customHint;};"; }; - class 8slots_R4: A3A_core_BattleMenuRedButton + class 10slots_R5: A3A_core_BattleMenuRedButton { idc = -1; text = $STR_antistasi_dialogs_commander_comm_sell; x = 0.482498 * safezoneW + safezoneX; - y = 0.612025 * safezoneH + safezoneY; + y = 0.660047 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_commander_comm_sell_tooltip; @@ -2287,7 +2309,7 @@ class player_money { y = 0.317959 * safezoneH + safezoneY; w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; - action = "[true] call A3A_fnc_donateMoney;"; + action = "[player, cursorObject, 100] call A3A_fnc_sendMoney;"; }; class HQ_button_AA: A3A_core_BattleMenuRedButton { @@ -2298,7 +2320,7 @@ class player_money { w = 0.175015 * safezoneW; h = 0.0560125 * safezoneH; tooltip = $STR_antistasi_dialogs_player_money_donate_faction_tooltip; - action = "[] call A3A_fnc_donateMoney;"; + action = "[player, 'faction', 100] call A3A_fnc_sendMoney;"; }; }; }; diff --git a/A3A/addons/core/functions/AI/fn_AIreactOnKill.sqf b/A3A/addons/core/functions/AI/fn_AIreactOnKill.sqf index c2c7b0beab..ab11492fe3 100644 --- a/A3A/addons/core/functions/AI/fn_AIreactOnKill.sqf +++ b/A3A/addons/core/functions/AI/fn_AIreactOnKill.sqf @@ -35,7 +35,8 @@ _unit setVariable ["downedTimeout", time + 1200]; if((isNil "_killer") || {(isNull _killer) || {side (group _killer) == side _group}}) exitWith {}; // Add the unit to recent kills for reaction purposes -[side _group, getPosATL _unit, 10] remoteExec ["A3A_fnc_addRecentDamage", 2]; +[side _group, getPosATL _unit, 10, _killer] remoteExec ["A3A_fnc_addRecentDamage", 2]; + private _enemy = objNull; private _activeGroupMembers = (units _group) select {_x call A3A_fnc_canFight}; diff --git a/A3A/addons/core/functions/AI/fn_artySupport.sqf b/A3A/addons/core/functions/AI/fn_artySupport.sqf index 5b3bc72acc..4580a4011b 100644 --- a/A3A/addons/core/functions/AI/fn_artySupport.sqf +++ b/A3A/addons/core/functions/AI/fn_artySupport.sqf @@ -5,7 +5,7 @@ private _titleStr = localize "STR_A3A_fn_ai_artySupport_title"; if (count hcSelected player == 0) exitWith {[_titleStr, localize "STR_A3A_fn_ai_artySupport_select"] call A3A_fnc_customHint;}; -private ["_groups","_artyArray","_artyRoundsArr","_hasAmmunition","_areReady","_hasArtillery","_areAlive","_soldierX","_veh","_typeAmmunition","_typeArty","_positionTel","_artyArrayDef1","_artyRoundsArr1","_piece","_isInRange","_positionTel2","_rounds","_roundsMax","_markerX","_size","_forcedX","_textX","_mrkFinal","_mrkFinal2","_timeX","_eta","_countX","_pos","_ang"]; +private ["_groups","_artyArray","_artyRoundsArr","_hasAmmunition","_areReady","_hasArtillery","_areAlive","_soldierX","_veh","_typeAmmunition","_typeArty","_positionTel","_artyArrayDef1","_artyRoundsArr1","_piece","_isInRange","_positionTel2","_rounds","_roundsMax","_markerX","_size","_forcedX","_textX","_mrkFinal","_mrkFinal2","_mrkEllipse2","_mrkBarrageLine","_timeX","_eta","_countX","_pos","_ang"]; _groups = hcSelected player; _unitsX = []; @@ -128,28 +128,32 @@ for "_i" from 0 to (count _artyArray) - 1 do if (count _artyArrayDef1 == 0) exitWith {[_titleStr, localize "STR_A3A_fn_ai_artySupport_oob"] call A3A_fnc_customHint;}; +private _mrkEllipse1 = createMarkerLocal [format ["Arty%1", random 100], _positionTel]; +_mrkEllipse1 setMarkerShapeLocal "ELLIPSE"; +_mrkEllipse1 setMarkerBrushLocal "FDIAGONAL"; +_mrkEllipse1 setMarkerSizeLocal [30, 30]; // actually a radius +_mrkEllipse1 setMarkerColor "ColorGUER"; _mrkFinal = createMarkerLocal [format ["Arty%1", random 100], _positionTel]; _mrkFinal setMarkerShapeLocal "ICON"; _mrkFinal setMarkerTypeLocal "hd_destroy"; -_mrkFinal setMarkerColorLocal "ColorRed"; +_mrkFinal setMarkerColor "ColorBlack"; +positionTel2 = []; if (_typeArty == "BARRAGE") then { - _mrkFinal setMarkerTextLocal localize "STR_A3A_fn_ai_artySupport_mrkFinal"; - positionTel = []; + _mrkFinal setMarkerText localize "STR_A3A_fn_ai_artySupport_mrkFinal"; [_titleStr, localize "STR_A3A_fn_ai_artySupport_selectposend"] call A3A_fnc_customHint; if (!visibleMap) then {openMap true}; - onMapSingleClick "positionTel = _pos;"; + onMapSingleClick "positionTel2 = _pos;"; - waitUntil {sleep 1; (count positionTel > 0) or (!visibleMap)}; + waitUntil {sleep 1; (count positionTel2 > 0) or (!visibleMap)}; onMapSingleClick ""; - - _positionTel2 = positionTel; }; +private _positionTel2 = positionTel2; -if ((_typeArty == "BARRAGE") and (isNil "_positionTel2")) exitWith {deleteMarkerLocal _mrkFinal}; +if ((_typeArty == "BARRAGE") and (count _positionTel2 < 2)) exitWith {deleteMarker _mrkFinal; deleteMarker _mrkEllipse1}; // map was closed after initial target selection if (_typeArty != "BARRAGE") then { @@ -169,11 +173,11 @@ if (_typeArty != "BARRAGE") then waitUntil {!dialog or (!isNil "roundsX")}; }; -if ((isNil "roundsX") and (_typeArty != "BARRAGE")) exitWith {deleteMarkerLocal _mrkFinal}; +if ((isNil "roundsX") and (_typeArty != "BARRAGE")) exitWith {deleteMarker _mrkFinal; deleteMarker _mrkEllipse1}; if (_typeArty != "BARRAGE") then { - _mrkFinal setMarkerTextLocal localize "STR_A3A_fn_ai_artySupport_artyStrike"; + _mrkFinal setMarkerText localize "STR_A3A_fn_ai_artySupport_artyStrike"; _rounds = roundsX; _roundsMax = _rounds; roundsX = nil; @@ -202,25 +206,56 @@ _textX = format [localize "STR_A3A_fn_ai_artySupport_fireMission", mapGridPositi if (_typeArty == "BARRAGE") then { + _mrkEllipse2 = createMarkerLocal [format ["Arty%1", random 100], _positionTel2]; + _mrkEllipse2 setMarkerShapeLocal "ELLIPSE"; + _mrkEllipse2 setMarkerBrushLocal "FDIAGONAL"; + _mrkEllipse2 setMarkerSizeLocal [30, 30]; + _mrkEllipse2 setMarkerColor "ColorGUER"; _mrkFinal2 = createMarkerLocal [format ["Arty%1", random 100], _positionTel2]; _mrkFinal2 setMarkerShapeLocal "ICON"; _mrkFinal2 setMarkerTypeLocal "hd_destroy"; - _mrkFinal2 setMarkerColorLocal "ColorRed"; - _mrkFinal2 setMarkerTextLocal localize "STR_A3A_fn_ai_artySupport_mrkFinal2"; + _mrkFinal2 setMarkerColorLocal "ColorBlack"; + _mrkFinal2 setMarkerText localize "STR_A3A_fn_ai_artySupport_mrkFinal2"; _ang = [_positionTel,_positionTel2] call BIS_fnc_dirTo; sleep 5; + _barrageCenterX = (_positionTel#0 + _positionTel2#0)/2; + _barrageCenterY = (_positionTel#1 + _positionTel2#1)/2; + _mrkBarrageLine = createMarkerLocal [format ["ArtyBarrage%1", random 100], [_barrageCenterX,_barrageCenterY]]; + _mrkBarrageLine setMarkerShapeLocal "RECTANGLE"; + _mrkBarrageLine setMarkerDirLocal _ang; + _mrkBarrageLine setMarkerColorLocal "ColorGUER"; + _mrkBarrageLine setMarkerBrushLocal "FDIAGONAL"; + _distance = _positionTel distance2D _positionTel2; + _mrkBarrageLine setMarkerSize [30, _distance/2]; + private _barrageMarkers = [_mrkFinal,_mrkEllipse1,_mrkFinal2,_mrkEllipse2,_mrkBarrageLine]; _eta = (_artyArrayDef1 select 0) getArtilleryETA [_positionTel, ((getArtilleryAmmo [(_artyArrayDef1 select 0)]) select 0)]; _timeX = time + _eta; _textX = format [localize "STR_A3A_fn_ai_artySupport_yesBarrage",round _eta]; [petros,"sideChat",_textX] remoteExec ["A3A_fnc_commsMP",[teamPlayer,civilian]]; - [_timeX] spawn + [_timeX, _rounds, _barrageMarkers] spawn { - private ["_timeX"]; - _timeX = _this select 0; + params ["_timeX","_rounds", "_barrageMarkers"]; waitUntil {sleep 1; time > _timeX}; [petros,"sideChat",localize "STR_A3A_fn_ai_artySupport_splash"] remoteExec ["A3A_fnc_commsMP",[teamPlayer,civilian]]; + private _sleepTime = _rounds*4; + sleep _sleepTime; + {deleteMarker _x;} forEach _barrageMarkers; }; - }; + } else {_mrkEllipse1 setMarkerText localize "STR_A3A_fn_ai_artySupport_artyStrike";}; + +//Broadcast message to nearby players +private _isSmoke = (_typeAmmunition in FactionGet(reb,"staticMortarMagSmoke")); +private _string = if (_isSmoke) then { + ["STR_A3A_fn_ai_artySupport_precisionHintSmoke","STR_A3A_fn_ai_artySupport_barrageHintSmoke"] select (_typeArty == "BARRAGE"); +} else { + ["STR_A3A_fn_ai_artySupport_precisionHintHE","STR_A3A_fn_ai_artySupport_barrageHintHE"] select (_typeArty == "BARRAGE"); +}; +private _text = format [localize _string, mapGridPosition _positionTel]; +private _nearbyPlayers = allPlayers select {(_x distance2D _positionTel) <= 500}; +if(count _nearbyPlayers > 0) then +{ + ["MessageHQ", [_text]] remoteExec ["BIS_fnc_showNotification",_nearbyPlayers]; +}; _pos = [_positionTel,random 10,random 360] call BIS_fnc_relPos; @@ -280,16 +315,12 @@ if (_typeArty != "BARRAGE") then _roundPlural = if ((_roundsMax - _rounds) == 1) then {localize "STR_A3A_fn_ai_artySupport_singleRound"} else {localize "STR_A3A_fn_ai_artySupport_multiRound"}; _textX = format [localize "STR_A3A_fn_ai_artySupport_yesSingle",round _eta,_roundsMax - _rounds, _roundPlural]; [petros,"sideChat",_textX] remoteExec ["A3A_fnc_commsMP",[teamPlayer,civilian]]; - }; - -if (_typeArty != "BARRAGE") then - { waitUntil {sleep 1; time > _timeX}; [petros,"sideChat",localize "STR_A3A_fn_ai_artySupport_splash"] remoteExec ["A3A_fnc_commsMP",[teamPlayer,civilian]]; + sleep 10; + deleteMarker _mrkFinal; + deleteMarker _mrkEllipse1; }; -sleep 10; -deleteMarkerLocal _mrkFinal; -if (_typeArty == "BARRAGE") then {deleteMarkerLocal _mrkFinal2}; /*if (_forcedX) then { diff --git a/A3A/addons/core/functions/AI/fn_callForSupport.sqf b/A3A/addons/core/functions/AI/fn_callForSupport.sqf index 4bb3b7ddb4..5c25b5f35d 100644 --- a/A3A/addons/core/functions/AI/fn_callForSupport.sqf +++ b/A3A/addons/core/functions/AI/fn_callForSupport.sqf @@ -1,6 +1,6 @@ /* Simulates the call for support by a group by making the teamleader a bit more dumb for a time - Execution on: HC or Server + Execution on: HC or Server, group-local Scope: Internal @@ -22,6 +22,10 @@ if(_side != Occupants and _side != Invaders) exitWith { Error_2("Non-enemy group %1 of side %2 managed to call callForSupport", _group, _side); }; +// Don't call support against units unless there's slightly more information than damage dealt +// Should rule out calls for mines/charges but still pick up snipers (maybe only after the second kill) +if (_target isKindOf "CAManBase" and { _group knowsAbout _target <= 1.5 }) exitWith {}; + //If groupleader is down, dont call support if !(_groupLeader call A3A_fnc_canFight) exitWith {}; diff --git a/A3A/addons/core/functions/AI/fn_surrenderAction.sqf b/A3A/addons/core/functions/AI/fn_surrenderAction.sqf index 300279726a..8d3313b3fa 100644 --- a/A3A/addons/core/functions/AI/fn_surrenderAction.sqf +++ b/A3A/addons/core/functions/AI/fn_surrenderAction.sqf @@ -84,8 +84,8 @@ if (!isNil "_markerX") then { [_markerX, _unitSide] remoteExec ["A3A_fnc_zoneChe // timed cleanup functions -[_unit] spawn A3A_fnc_postmortem; -[_boxX] spawn A3A_fnc_postmortem; +[_unit] remoteExec ["A3A_fnc_postmortem", 2]; +[_boxX] remoteExec ["A3A_fnc_postmortem", 2]; sleep 3; // Also protects against box kills _unit allowDamage true; diff --git a/A3A/addons/core/functions/Ammunition/fn_arsenalManage.sqf b/A3A/addons/core/functions/Ammunition/fn_arsenalManage.sqf index 0198c4abba..c383a6f889 100644 --- a/A3A/addons/core/functions/Ammunition/fn_arsenalManage.sqf +++ b/A3A/addons/core/functions/Ammunition/fn_arsenalManage.sqf @@ -41,6 +41,7 @@ private _count = objNull; private _allExceptNVs = _weapons + _explosives + _backpacks + _items + _optics + _helmets + _vests + _magazine; +private _categoriesToPublish = createHashMap; { call { if (_x select 1 < minWeaps) exitWith {}; @@ -52,7 +53,8 @@ private _allExceptNVs = _weapons + _explosives + _backpacks + _items + _optics + if ("Backpacks" in _categories && {_item in allBackpacksTool}) exitWith {}; // should be UAV & static backpacks if ("StaticWeaponParts" in _categories) exitWith {}; - _item call A3A_fnc_unlockEquipment; + [_item, true] call A3A_fnc_unlockEquipment; + _categoriesToPublish insert [true, _categories, []]; private _name = switch (true) do { case ("Magazines" in _categories): {getText (configFile >> "CfgMagazines" >> _item >> "displayName")}; @@ -69,7 +71,8 @@ private _allExceptNVs = _weapons + _explosives + _backpacks + _items + _optics + if (!isNil "_weaponMagazine") then { if (not(_weaponMagazine in unlockedMagazines)) then { _updated = format ["%1%2
",_updated,getText (configFile >> "CfgMagazines" >> _weaponMagazine >> "displayName")]; - [_weaponMagazine] call A3A_fnc_unlockEquipment; + private _categories = [_weaponMagazine, true] call A3A_fnc_unlockEquipment; + _categoriesToPublish insert [true, _categories, []]; }; }; }; @@ -98,10 +101,13 @@ _sortedNVs sort true; // sort by count, ascending while {_totalNV >= minWeaps} do { private _nvToUnlock = (_sortedNVs deleteAt (count _sortedNVs - 1)) select 1; haveNV = true; publicVariable "haveNV"; - [_nvToUnlock] call A3A_fnc_unlockEquipment; + private _categories = [_nvToUnlock, true] call A3A_fnc_unlockEquipment; + _categoriesToPublish insert [true, _categories, []]; _updated = format ["%1%2
",_updated,getText (configFile >> "CfgWeapons" >> _nvToUnlock >> "displayName")]; _totalNV =_totalNV - minWeaps; // arguably wrong but doesn't matter in practice }; +// Publish the unlocked categories (once each) +{ publicVariable ("unlocked" + _x) } forEach keys _categoriesToPublish; _updated \ No newline at end of file diff --git a/A3A/addons/core/functions/Ammunition/fn_categoryOverrides.sqf b/A3A/addons/core/functions/Ammunition/fn_categoryOverrides.sqf index e516562e66..bff9053ace 100644 --- a/A3A/addons/core/functions/Ammunition/fn_categoryOverrides.sqf +++ b/A3A/addons/core/functions/Ammunition/fn_categoryOverrides.sqf @@ -2,6 +2,9 @@ //asval, Mk17 and SCAR-H arguable private _categoryOverrideTable = [ +//Bespoke, a3a +["a3a_UK3CB_CZ550_8mm", ["SniperRifles","Weapons"]], //UK3CB_CZ550 in 8mm + //Vanilla ["launch_NLAW_F", ["MissileLaunchers","Weapons","AT"]], ["hgun_PDW2000_F", ["SMGs","Weapons"]], @@ -261,6 +264,10 @@ private _categoryOverrideTable = [ ["vn_fkb1_red", ["Unknown","Weapons"]], ["vn_fkb1", ["Unknown","Weapons"]], +// Melee +["vn_m_mk2_knife_01", ["Unknown","Weapons"]], +["vn_m_axe_01", ["Unknown","Weapons"]], + ["vn_default_helmetbase_09", ["Unknown","Headgear"]], //Goat Hat ["vn_m1897", ["Shotguns","Weapons"]], ["vn_izh54", ["Shotguns","Weapons"]], @@ -400,6 +407,23 @@ private _categoryOverrideTable = [ ["LIB_GrWr34_Barrel_g", ["StaticWeaponParts","Items"]], ["LIB_M2_60_Tripod", ["StaticWeaponParts","Items"]], ["LIB_M2_60_Barrel", ["StaticWeaponParts","Items"]], +["LIB_Faustpatrone", ["RocketLaunchers","Weapons","AT","Disposable"]], +["LIB_Faustpatrone_used", ["UsedLaunchers","Weapons"]], +["LIB_PzFaust_30m", ["RocketLaunchers","Weapons","AT","Disposable"]], +["LIB_PzFaust_30m_used", ["UsedLaunchers","Weapons"]], +["LIB_PzFaust_60m", ["RocketLaunchers","Weapons","AT","Disposable"]], +["LIB_PzFaust_60m_used", ["UsedLaunchers","Weapons"]], +["LIB_M1_Carbine", ["SMGs","Rifles","Weapons"]], +["LIB_M1A1_Carbine", ["SMGs","Rifles","Weapons"]], +["LIB_FG42G", ["SniperRifles","MachineGuns","Rifles","Weapons"]], +["LIB_MP44", ["Rifles","Weapons"]], +["LIB_MP44_GW", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_K98_GW", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_K98_Late_GW", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_LeeEnfield_No1_CUP", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_LeeEnfield_No4_CUP", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_M1_Garand_M7", ["Rifles","Weapons","GrenadeLaunchers"]], +["LIB_M9130_DYAKONOV", ["Rifles","Weapons","GrenadeLaunchers"]], //GM wrong listed stuff ["gm_m72a3_oli", ["RocketLaunchers","Weapons","AT","Disposable"]], @@ -445,7 +469,9 @@ private _categoryOverrideTable = [ ["SPE_K98_Late_GW", ["Rifles","Weapons","GrenadeLaunchers"]], ["SPE_M1903A3_Springfield_M1_GL", ["Rifles","Weapons","GrenadeLaunchers"]], ["SPE_M1_Carbine_M8", ["Rifles","Weapons","GrenadeLaunchers"]], -["SPE_M1_Garand_M7", ["Rifles","Weapons","GrenadeLaunchers"]] ]; +["SPE_M1_Garand_M7", ["Rifles","Weapons","GrenadeLaunchers"]] + +]; //Create a local namespace. diff --git a/A3A/addons/core/functions/Ammunition/fn_equipmentClassToCategories.sqf b/A3A/addons/core/functions/Ammunition/fn_equipmentClassToCategories.sqf index a827a34025..eeb3294778 100644 --- a/A3A/addons/core/functions/Ammunition/fn_equipmentClassToCategories.sqf +++ b/A3A/addons/core/functions/Ammunition/fn_equipmentClassToCategories.sqf @@ -163,8 +163,8 @@ call { if (getNumber (_config >> "rhs_disposable") == 1 or _mainmag == "CBA_fakeLauncherMagazine") then { _categories pushBack "Disposable"; if (getNumber (_config >> "scope") == 1) exitWith { _categories set [0, "UsedLaunchers"] }; - if (_mainmag == "CBA_fakeLauncherMagazine" and !isNil "cba_disposable_normalLaunchers") then { - _mainmag = (cba_disposable_normalLaunchers getVariable _classname) # 1; // format is [realLauncher, magazine] + if (_mainmag == "CBA_fakeLauncherMagazine" and !isNil "cba_disposable_normalLaunchers" and {typeName cba_disposable_normalLaunchers == "HASHMAP"}) then { + _mainmag = (cba_disposable_normalLaunchers get _classname) # 1; // format is [realLauncher, magazine] }; }; if (_categories#0 == "UsedLaunchers") exitWith {}; diff --git a/A3A/addons/core/functions/Ammunition/fn_randomRifle.sqf b/A3A/addons/core/functions/Ammunition/fn_randomRifle.sqf index 187b4e6920..77c8633131 100644 --- a/A3A/addons/core/functions/Ammunition/fn_randomRifle.sqf +++ b/A3A/addons/core/functions/Ammunition/fn_randomRifle.sqf @@ -70,7 +70,7 @@ _unit addMagazines [_magazine, round (random 0.5 + _totalMagWeight / _magWeight) private _compatOptics = A3A_rebelOpticsCache get _weapon; if (isNil "_compatOptics") then { - private _compatItems = [_weapon] call BIS_fnc_compatibleItems; // cached, should be fast + private _compatItems = compatibleItems _weapon; // cached, should be fast _compatOptics = _compatItems arrayIntersect call { if (_weaponType in ["Rifles", "MachineGuns"]) exitWith { A3A_rebelGear get "OpticsMid" }; if (_weaponType == "SniperRifles") exitWith { A3A_rebelGear get "OpticsLong" }; diff --git a/A3A/addons/core/functions/Ammunition/fn_unlockEquipment.sqf b/A3A/addons/core/functions/Ammunition/fn_unlockEquipment.sqf index 811955f87e..a61e43cd15 100644 --- a/A3A/addons/core/functions/Ammunition/fn_unlockEquipment.sqf +++ b/A3A/addons/core/functions/Ammunition/fn_unlockEquipment.sqf @@ -6,15 +6,15 @@ Params: _className - Class of the equipment to unlock. - + _noPublish - If true, don't broadcast the unlockedXXX arrays. For internal use. _dontAddToArsenal - Avoid adding the item to the arsenal, and simply updates the appropriate variables. DO NOT USE UNLESS YOU HAVE A *VERY* GOOD REASON. Primarily used in save/loads. Returns: - None + Array of categories for item **/ #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -params ["_className", ["_dontAddToArsenal", false]]; +params ["_className", ["_noPublish", false], ["_dontAddToArsenal", false]]; private _categories = _className call A3A_fnc_equipmentClassToCategories; @@ -26,8 +26,8 @@ if (!_dontAddToArsenal) then { }; { - private _categoryName = _x; - //Consider making this pushBackUnique. - (missionNamespace getVariable ("unlocked" + _categoryName)) pushBack _className; - publicVariable ("unlocked" + _categoryName); + (missionNamespace getVariable ("unlocked" + _x)) pushBackUnique _className; + if (!_noPublish) then { publicVariable ("unlocked" + _x) }; } forEach _categories; + +_categories; diff --git a/A3A/addons/core/functions/Base/fn_addRecentDamage.sqf b/A3A/addons/core/functions/Base/fn_addRecentDamage.sqf index 923937f540..2cac1e5d0e 100644 --- a/A3A/addons/core/functions/Base/fn_addRecentDamage.sqf +++ b/A3A/addons/core/functions/Base/fn_addRecentDamage.sqf @@ -1,4 +1,5 @@ /* Adds an entry to the enemy recent damage records on the server + For air vehicles, adds the input threat to the vehicle instead Scope: Server Environment: Preferably unscheduled @@ -7,6 +8,7 @@ Arguments: Side that took the damage, must be occupants or invaders Position that damage was taken Resource value of damage, max 999 + Killer vehicle, for adding threat to */ #include "..\..\script_component.hpp" @@ -14,7 +16,14 @@ FIX_LINE_NUMBERS() if (!isServer) exitWith { Error("Server-only function miscalled") }; -params ["_side", "_pos", "_value"]; +params ["_side", "_pos", "_value", "_killer"]; + +if (_killer isKindOf "Air") exitWith { + Debug_2("Adding %1 threat to vehicle %2", _value, typeof _killer); + + private _extraThreat = _killer getVariable ["A3A_airKills", 0]; + _killer setVariable ["A3A_airKills", _extraThreat + _value]; +}; if (_side != Occupants && _side != Invaders) exitWith { Error_1("Called with invalid side: %1", _side) }; diff --git a/A3A/addons/core/functions/Base/fn_aggressionUpdateLoop.sqf b/A3A/addons/core/functions/Base/fn_aggressionUpdateLoop.sqf index dfec887bc4..0cbac4dec6 100644 --- a/A3A/addons/core/functions/Base/fn_aggressionUpdateLoop.sqf +++ b/A3A/addons/core/functions/Base/fn_aggressionUpdateLoop.sqf @@ -42,10 +42,8 @@ while {true} do private _lastScale = A3A_balancePlayerScale; A3A_balancePlayerScale = (A3A_activePlayerCount ^ 0.8 + 1 + tierWar / 4) / 6; // Normalized to 1 == 5 players @ war tier 6 A3A_balancePlayerScale = A3A_balancePlayerScale * (A3A_enemyBalanceMul / 10); - A3A_balanceVehicleCost = 100 + tierWar * 10; // pretty close to true - A3A_balanceResourceRate = A3A_balancePlayerScale * A3A_balanceVehicleCost; // base resources gained per 10 minutes - // back off the tier scaling a bit for reb vs occ vs inv, because you get some natural tier scaling due to attack choice - if (gameMode == 1) then { A3A_balanceResourceRate = A3A_balanceResourceRate * (1 - tierWar / 35) }; + A3A_balanceVehicleCost = 100 + tierWar * 10; + A3A_balanceResourceRate = A3A_balancePlayerScale * ([A3A_balanceVehicleCost, 140] select (gameMode == 1)); // base resources gained per 10 minutes publicVariable "A3A_balancePlayerScale"; // needed for determining enemy skill on headless clients // Rescale defence resources when player count or difficulty changes @@ -60,7 +58,7 @@ while {true} do { private _aggroMul = [1.0 + aggressionOccupants/200, 0.5 + aggressionOccupants/200] select (gameMode != 1); private _resRateDef = _aggroMul * A3A_balanceResourceRate / 10; - private _resRateAtk = _aggroMul * A3A_balanceResourceRate * (A3A_enemyAttackMul / 10) / 15; // Attack rate is 2/3 of defence + private _resRateAtk = _aggroMul * A3A_balanceResourceRate * (A3A_enemyAttackMul / 10) / 12; // Attack rate is a bit lower than defence private _noAirport = -1 == airportsX findIf { sidesX getVariable _x == Occupants }; if (_noAirport) then { _resRateDef = _resRateDef * 0.6; _resRateAtk = _resRateAtk * 0.6 }; diff --git a/A3A/addons/core/functions/Base/fn_airspaceControl.sqf b/A3A/addons/core/functions/Base/fn_airspaceControl.sqf index f661502398..4a8ca79397 100644 --- a/A3A/addons/core/functions/Base/fn_airspaceControl.sqf +++ b/A3A/addons/core/functions/Base/fn_airspaceControl.sqf @@ -57,50 +57,26 @@ private _airportWarningHeight = 750; //Initialize needed variables private _inWarningRangeOutpost = []; -private _inDetectionRangeOutpost = []; private _inWarningRangeAirport = []; -private _inDetectionRangeAirport = []; private _vehicleIsUndercover = false; private _supportCallAt = -1; private _vehPos = []; private _fn_sendSupport = { - params ["_vehicle", "_marker"]; - + params ["_vehicle", "_marker", "_threat"]; private _markerSide = sidesX getVariable [_marker, sideUnknown]; - //Reveal vehicle to all groups of the side so they can take actions -/* { - if(side _x == _markerSide) then - { - _x reveal [_vehicle, 4]; // TODO: doesn't actually work, needs remoteExec - }; - } forEach allGroups; -*/ - //Take actions against the aircraft + + ServerDebug_2("Vehicle %1 violated airspace of marker %2", typeof _vehicle, _marker); + + // Add threat to vehicle on server side. Hopefully faster than the requestSupport call + [_markerSide, false, _threat, _vehicle] remoteExecCall ["A3A_fnc_addRecentDamage", 2]; + // Let support system decide whether it's worth reacting to private _revealValue = [getMarkerPos _marker, _markerSide] call A3A_fnc_calculateSupportCallReveal; [_markerSide, _vehicle, markerPos _marker, 4, _revealValue] remoteExec ["A3A_fnc_requestSupport", 2]; -/* - switch (_airType) do - { - case (MIL_HELI): - { - Debug_3("Rebel military helicopter %1 detected by %2 (side %3), sending support now!", _vehicle, _marker, _markerSide); - [_vehicle, _markerSide, markerPos _marker, 4, _revealValue] remoteExec ["A3A_fnc_requestSupport", 2]; - }; - case (JET): - { - Debug_3("Rebel jet %1 detected by %2 (side %3), sending support now!", _vehicle, _marker, _markerSide); - [_vehicle, 4, ["ASF", "SAM"], _markerSide, _revealValue] remoteExec ["A3A_fnc_sendSupport", 2]; - }; - default - { - Debug_3("Rebel civil helicopter %1 detected by %2 (side %3), revealed for all groups!", _vehicle, _marker, _markerSide); - }; - }; -*/ + _supportCallAt = time + 30; }; private _fn_checkNoFlyZone = @@ -142,6 +118,9 @@ while {_player in crew _vehicle && alive _vehicle} do // Only run the checks for the vehicle's commander if (_player != effectiveCommander _vehicle) then { continue }; + // If we already made a call, wait until the timeout + if (time < _supportCallAt) then { continue }; + //Check undercover status _vehicleIsUndercover = captive ((crew _vehicle) select 0); _vehPos = getPosASL _vehicle; @@ -196,40 +175,23 @@ while {_player in crew _vehicle && alive _vehicle} do } else { - //Vehicles will be attacked instantly once detected - //Check for nearby airports private _airportsInRange = [_enemyAirports, _vehPos, _airportDetectionRange, _airportDetectionHeight] call _fn_getMarkersInRange; - //newAirports will contain all airports which just detected the aircraft - private _newAirports = _airportsInRange - _inDetectionRangeAirport; - _inDetectionRangeAirport = _airportsInRange; - - if(count _newAirports > 0) then + if(count _airportsInRange > 0) then { //Vehicle detected by another airport (or multiple, lucky in that case) - [_vehicle, _newAirports select 0] call _fn_sendSupport; - _supportCallAt = time + 300; - } - else - { - //No airport near, to save performance we only check outpost if they would be able to send support - if(time > _supportCallAt) then - { - //Check for nearby outposts - private _outpostsInRange = [_enemyOutposts, _vehPos, _outpostDetectionRange, _outpostDetectionHeight] call _fn_getMarkersInRange; + [_vehicle, _airportsInRange select 0, 30] call _fn_sendSupport; + continue; + }; - //Same as above - private _newOutposts = _outpostsInRange - _inDetectionRangeOutpost; - _inDetectionRangeOutpost = _outpostsInRange; + //Check for nearby outposts + private _outpostsInRange = [_enemyOutposts, _vehPos, _outpostDetectionRange, _outpostDetectionHeight] call _fn_getMarkersInRange; - if(count _newOutposts > 0) then - { - //Vehicle detected by another outpost, call support if possible - [_vehicle, _newOutposts select 0] call _fn_sendSupport; - _supportCallAt = time + 300; - }; - }; + if(count _outpostsInRange > 0) then + { + //Vehicle detected by another outpost, call support if possible + [_vehicle, _outpostsInRange select 0, 10] call _fn_sendSupport; }; }; }; diff --git a/A3A/addons/core/functions/Base/fn_chooseAttack.sqf b/A3A/addons/core/functions/Base/fn_chooseAttack.sqf index 686d5e0ab4..c08fc8bda4 100644 --- a/A3A/addons/core/functions/Base/fn_chooseAttack.sqf +++ b/A3A/addons/core/functions/Base/fn_chooseAttack.sqf @@ -92,11 +92,14 @@ if (_targetMrk in citiesX) exitWith { if (_side == Invaders) then { // Punishment, unsimulated Info_2("Starting punishment mission from %1 to %2", _originMrk, _targetMrk); + [-400, _side, "attack"] call A3A_fnc_addEnemyResources; + bigAttackInProgress = true; publicVariable "bigAttackInProgress"; [_targetMrk, _originMrk] spawn A3A_fnc_invaderPunish; } else { // Supply convoy, unsimulated // Do we allow these even if there's already a convoy? Probably not harmful. Info_2("Sending supply convoy from %1 to %2", _originMrk, _targetMrk); + [-200, _side, "attack"] call A3A_fnc_addEnemyResources; [[_targetMrk, _originMrk, "Supplies", "attack"],"A3A_fnc_convoy"] call A3A_fnc_scheduler; }; true; @@ -104,6 +107,8 @@ if (_targetMrk in citiesX) exitWith { if (_targetMrk == "Synd_HQ") exitWith { Info_2("Starting HQ attack from %1", _originMrk); + [-400, _side, "attack"] call A3A_fnc_addEnemyResources; + bigAttackInProgress = true; publicVariable "bigAttackInProgress"; [_side, _originMrk] spawn A3A_fnc_attackHQ; true; }; @@ -114,6 +119,8 @@ if((spawner getVariable _targetMrk) != 2 || (sidesX getVariable _targetMrk) == t // Sending real attack, execute the fight private _waves = round (1 + random 1 + _localThreat / 1000); // TODO: magic number Info_3("Starting waved attack with %1 waves from %2 to %3", _waves, _originMrk, _targetMrk); + [-400, _side, "attack"] call A3A_fnc_addEnemyResources; + bigAttackInProgress = true; publicVariable "bigAttackInProgress"; [_targetMrk, _originMrk, _waves] spawn A3A_fnc_wavedAttack; true; } @@ -128,7 +135,7 @@ else // land units are a bit cheaper, attack is generally more expensive than defence private _atkResources = _defResources + _localThreat + _flyoverThreat; - _atkResources = _atkResources * (0.75 + 2^(-_countLandAttackBases)); + _atkResources = 400 + _atkResources * (0.75 + 2^(-_countLandAttackBases)); [-_atkResources, _side, "attack"] call A3A_fnc_addEnemyResources; // Flip marker and add garrison once flipped diff --git a/A3A/addons/core/functions/Base/fn_citySupportChange.sqf b/A3A/addons/core/functions/Base/fn_citySupportChange.sqf index c9efb80340..e5e5480c33 100644 --- a/A3A/addons/core/functions/Base/fn_citySupportChange.sqf +++ b/A3A/addons/core/functions/Base/fn_citySupportChange.sqf @@ -5,7 +5,10 @@ if (!isServer) exitWith {Error("Server-only function miscalled")}; waitUntil {!cityIsSupportChanging}; cityIsSupportChanging = true; -params ["_changeGov", "_changeReb", "_pos", ["_scaled", true], ["_isRadio", false]]; +params [["_changeGov",""], ["_changeReb",""], ["_pos","",["",[]]], ["_scaled", true], ["_isRadio", false]]; // nil protection +if !(_changeGov isEqualType 0) exitWith {Error("The first parameter, the government support, must be a number");}; +if !(_changeReb isEqualType 0) exitWith {Error("The second parameter, the rebel support, must be a number");}; +if (_pos isEqualTo "") exitWith {Error("The third parameter, the position, must be a string (city name) or array (coordinates)");}; private _city = if (_pos isEqualType "") then {_pos} else {[citiesX, _pos] call BIS_fnc_nearestPosition}; private _cityData = server getVariable _city; diff --git a/A3A/addons/core/functions/Base/fn_destroyCity.sqf b/A3A/addons/core/functions/Base/fn_destroyCity.sqf index 3814493f32..f6de9102e1 100644 --- a/A3A/addons/core/functions/Base/fn_destroyCity.sqf +++ b/A3A/addons/core/functions/Base/fn_destroyCity.sqf @@ -1,21 +1,18 @@ -private ["_markerX","_positionX","_size","_buildings"]; +params ["_markerX"]; -_markerX = _this select 0; +private _positionX = getMarkerPos _markerX; +private _size = [_markerX] call A3A_fnc_sizeMarker; -_positionX = getMarkerPos _markerX; -_size = [_markerX] call A3A_fnc_sizeMarker; - -_buildings = _positionX nearobjects ["house",_size]; +private _buildings = _positionX nearObjects ["house",_size]; { -if (random 100 < 70) then - { - for "_i" from 1 to 7 do - { - _x sethit [format ["dam%1",_i],1]; - _x sethit [format ["dam %1",_i],1]; - }; - } + private _hitpoints = getAllHitPointsDamage _x; + if (_hitpoints isEqualTo []) then { continue }; + if (random 100 < 30) then { continue }; + private _building = _x; + { + _building setHit [_x, 1]; + } forEach (_hitpoints # 1 select { _x find "dam" == 0 }); } forEach _buildings; [_markerX,false] spawn A3A_fnc_blackout; \ No newline at end of file diff --git a/A3A/addons/core/functions/Base/fn_distance.sqf b/A3A/addons/core/functions/Base/fn_distance.sqf index 58d676ddd0..007ed96097 100644 --- a/A3A/addons/core/functions/Base/fn_distance.sqf +++ b/A3A/addons/core/functions/Base/fn_distance.sqf @@ -424,7 +424,7 @@ do _teamplayer = units teamPlayer select { private _veh = vehicle _x; _x getVariable ["spawner", false] and _x == effectiveCommander _veh - and (_veh == _x or {!(_veh isKindOf "Plane" and speed _veh > 250)}) + and (_veh == _x or {!(_veh isKindOf "Plane" and (!isTouchingGround _veh or speed _veh > 80))}) }; // Add in rebel-controlled UAVs _teamplayer append (allUnitsUAV select { side group _x == teamPlayer }); diff --git a/A3A/addons/core/functions/Base/fn_flagaction.sqf b/A3A/addons/core/functions/Base/fn_flagaction.sqf index 051595999c..c2206a8ae7 100644 --- a/A3A/addons/core/functions/Base/fn_flagaction.sqf +++ b/A3A/addons/core/functions/Base/fn_flagaction.sqf @@ -35,11 +35,12 @@ switch _typeX do #else CreateDialog "mission_menu"; #endif - },nil,0,false,true,"","([_this] call A3A_fnc_isMember or _this == theBoss) and (petros == leader group petros)",4]; + },nil,0,false,true,"","([_this] call A3A_fnc_isMember or _this == theBoss) and (petros == leader group petros) and _this == _this getVariable ['owner',objNull]",4]; petros addAction [localize "STR_A3A_fn_base_flagaction_hq_manage", A3A_fnc_dialogHQ,nil,0,false,true,"","(_this == theBoss) and (petros == leader group petros)", 4]; - petros addAction [localize "STR_A3A_fn_base_flagaction_asset_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss) and (petros == leader group petros)"]; + petros addAction [localize "STR_A3A_fn_base_flagaction_asset_move", A3A_fnc_carryItem,nil,0,false,true,"","(_this == theBoss) and (petros == leader group petros) and (isNull objectParent _this) and !(call A3A_fnc_isCarrying)"]; petros addAction [localize "STR_A3A_fn_base_flagaction_hq_build", A3A_fnc_buildHQ,nil,0,false,true,"","(_this == theBoss) and (petros != leader group petros)",4]; + //petros addAction ["Experimental HQ Management. Work in Progress.", { createDialog "A3A_HqDialog"; },nil,0,false,true,"","A3A_GUIDevPreview and (_this == theBoss) and (petros == leader group petros)",4]; }; case "truckX": { @@ -78,7 +79,7 @@ switch _typeX do }; //_flag addAction [format ["Revive %1",name _flag], { _this spawn A3A_fnc_actionRevive; },nil,0,false,true,"","!(_this getVariable [""helping"",false]) and (isNull attachedTo _target)"]; - _actionX = _flag addAction [format ["Carry %1 ",name _flag], A3A_fnc_carry,nil,5,true,false,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (isNull attachedTo _target) and !(_this getVariable [""helping"",false]);",4];// TODO: partial string created - unsure about implementation + _actionX = _flag addAction [format ["Carry %1 ",name _flag], A3A_fnc_carry,nil,5,true,false,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (isNull attachedTo _target) and !(_this getVariable [""helping"",false]) and !(call A3A_fnc_isCarrying);",4];// TODO: partial string created - unsure about implementation _flag setUserActionText [_actionX,format [localize "STR_A3A_fn_base_flagaction_heal_carry",name _flag],""];// TODO: string created, unsure about implementation // Call the internal logistics function, because this one is already global-JIP @@ -93,7 +94,6 @@ switch _typeX do { removeAllActions _flag; if (player == player getVariable ["owner",player]) then {[] call SA_Add_Player_Tow_Actions}; - call A3A_fnc_dropObject; } else { @@ -134,7 +134,6 @@ switch _typeX do fireX addAction [localize "STR_A3A_fn_base_flagaction_firex_forest", A3A_fnc_clearForest,nil,0,false,true,"","(_this == theBoss)",4]; fireX addAction [localize "STR_A3A_fn_base_flagaction_firex_fog", { [10,[0,0,0]] remoteExec ["setFog",2]; },nil,0,false,true,"","(_this == theBoss)",4]; fireX addAction [localize "STR_A3A_fn_base_flagaction_firex_rain", { [10,0] remoteExec ["setRain",2]; [60,0.25] remoteExec ["setOvercast",2] },nil,0,false,true,"","(_this == theBoss)",4]; - fireX addAction [localize "STR_A3A_fn_base_flagaction_asset_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)",4]; }; case "SDKFlag": { @@ -153,14 +152,14 @@ switch _typeX do case "Intel_Small": { _flag addAction [ - localize "STR_A3A_fn_base_flagaction_intel_search", - A3A_fnc_searchIntelOnLeader, - nil, - 4, - true, - false, - "", - "!([_target] call A3A_fnc_canFight) && !(_target getVariable ['intelSearchDone', false]) && isPlayer _this", + localize "STR_A3A_fn_base_flagaction_intel_search", + A3A_fnc_searchIntelOnLeader, + nil, + 4, + true, + false, + "", + "!([_target] call A3A_fnc_canFight) && !(_target getVariable ['intelSearchDone', false]) && isPlayer _this", 4 ]; }; @@ -178,10 +177,10 @@ switch _typeX do }; case "static": { - private _cond = "(_target getVariable ['ownerSide', teamPlayer] == teamPlayer) and (isNull attachedTo _target) and "; + private _cond = "(isPlayer _this) and (_target getVariable ['ownerSide', teamPlayer] == teamPlayer) and (isNull attachedTo _target) and "; _flag addAction [localize "STR_A3A_fn_base_flagaction_static_allow", A3A_fnc_unlockStatic, nil, 1, false, true, "", _cond+"!isNil {_target getVariable 'lockedForAI'}", 4]; _flag addAction [localize "STR_A3A_fn_base_flagaction_static_prevent", A3A_fnc_lockStatic, nil, 1, false, true, "", _cond+"isNil {_target getVariable 'lockedForAI'}", 4]; // _flag addAction ["Kick AI off this weapon", A3A_fnc_lockStatic, nil, 1, true, false, "", _cond+"isNil {_target getVariable 'lockedForAI'} and !(isNull gunner _target) and !(isPlayer gunner _target)}", 4]; - _flag addAction [localize "STR_A3A_fn_base_flagaction_asset_move", A3A_fnc_moveHQObject, nil, 1.5, false, true, "", _cond+"(count crew _target == 0)", 4]; + _flag addAction [localize "STR_A3A_fn_base_flagaction_asset_move", A3A_fnc_carryItem, nil, 1.5, false, true, "", _cond+"(count crew _target == 0) and (isNull objectParent _this) and !(call A3A_fnc_isCarrying)", 4]; }; }; diff --git a/A3A/addons/core/functions/Base/fn_garbageCleaner.sqf b/A3A/addons/core/functions/Base/fn_garbageCleaner.sqf index 2f61a5a55f..c22fceacc6 100644 --- a/A3A/addons/core/functions/Base/fn_garbageCleaner.sqf +++ b/A3A/addons/core/functions/Base/fn_garbageCleaner.sqf @@ -71,14 +71,16 @@ if (isClass (configFile >> "CfgVehicles" >> "GRAD_envelope_short")) then { }; if (isClass (configFile/"CfgPatches"/"rhsgref_main")) then {//ToDo: these should be moved to owner mod detection and not the broad one as we may allow some rhs factions without all of rhs modset loaded - { deleteVehicle _x } forEach (allMissionObjects "rhs_a10_acesII_seat"); // Ejection seat for A-10 and F-22 - { deleteVehicle _x } forEach (allMissionObjects "rhs_a10_canopy"); // other canopies delete on ground contact - { deleteVehicle _x } forEach (allMissionObjects "rhs_k36d5_seat"); // AFRF ejection seat - { deleteVehicle _x } forEach (allMissionObjects "rhs_vs1_seat"); // another dumb ejection seat - { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_door_pilot"); // another garbage piece not being cleaned - { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_door_gunner"); // another garbage piece not being cleaned - { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_wing_left"); // another garbage piece not being cleaned - { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_wing_right"); // another garbage piece not being cleaned + { deleteVehicle _x } forEach (allMissionObjects "rhs_a10_acesII_seat"); // Ejection seat for A-10 and F-22 + { deleteVehicle _x } forEach (allMissionObjects "rhs_a10_canopy"); // other canopies delete on ground contact + { deleteVehicle _x } forEach (allMissionObjects "rhs_k36d5_seat"); // AFRF ejection seat + { deleteVehicle _x } forEach (allMissionObjects "rhs_vs1_seat"); // another dumb ejection seat + { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_door_pilot"); // another garbage piece not being cleaned + { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_door_gunner"); // another garbage piece not being cleaned + { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_wing_left"); // another garbage piece not being cleaned + { deleteVehicle _x } forEach (allMissionObjects "rhs_mi28_wing_right"); // another garbage piece not being cleaned + { deleteVehicle _x } forEach (allMissionObjects "rhs_ka52_rps_rocket"); // ejection rocket? + { deleteVehicle _x } forEach (allMissionObjects "rhs_ka52_blade"); // blade for ka52 }; diff --git a/A3A/addons/core/functions/Base/fn_getVehicleSellPrice.sqf b/A3A/addons/core/functions/Base/fn_getVehicleSellPrice.sqf new file mode 100644 index 0000000000..e3969cdd8a --- /dev/null +++ b/A3A/addons/core/functions/Base/fn_getVehicleSellPrice.sqf @@ -0,0 +1,99 @@ +/* + Author: Tiny + Description + Get a valid sell price for a given vehicle + + Arguments: + 0. Vehicle object / vehicle class + + Return Value: + Sell price. 0 if invalid or otherwise not found. + + Scope: Any + Environment: Any + Public: Yes + Dependencies: + + Example: [_vehicle] call A3A_getVehicleSellPrice + + TODO: The sell prices themselves could do with a rework. Not even sure what's balanced +*/ + +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +#define OccAndInv(VAR) (FactionGet(occ, VAR) + FactionGet(inv, VAR)) + +params ["_veh"]; + +/* +Blacklisted Assets + +The array below contains classnames of assets which are not allowed to be sold within Antistasi. +Reason for this is that those items are one or more of the following: +- can be aquired by means that don't cost anything and the ability to sell those would be an infinite money exploit. +- are no proper "statics" in terms of weaponized statics but for example the ACE spotting scoped +- something else +*/ +private _blacklistedAssets = [ +"ACE_I_SpottingScope","ACE_O_SpottingScope","ACE_O_T_SpottingScope","ACE_B_SpottingScope","ACE_B_T_SpottingScope","ACE_SpottingScopeObject", +"O_Static_Designator_02_F","B_Static_Designator_01_F","B_W_Static_Designator_01_F", +"vn_o_nva_spiderhole_01","vn_o_nva_spiderhole_02","vn_o_nva_spiderhole_03", +"vn_o_pl_spiderhole_01","vn_o_pl_spiderhole_02","vn_o_pl_spiderhole_03", +"vn_o_vc_spiderhole_01","vn_o_vc_spiderhole_02","vn_o_vc_spiderhole_03"]; + +private _typeX = if (_veh isEqualType objNull) then {typeOf _veh} else {_veh}; + +if (_typeX in _blacklistedAssets) exitWith {0}; + +if (_veh isKindOf "StaticWeapon") exitWith {100}; // in case rebel static is same as enemy statics + +if ( + _typeX in FactionGet(all,"vehiclesReb") + or (_typeX in arrayCivVeh) + or (_typeX in civBoats) + or (_typeX in (FactionGet(reb,"vehiclesCivBoat") + FactionGet(reb,"vehiclesCivCar") + FactionGet(reb,"vehiclesCivTruck"))) +) exitWith { + private _vehiclePrice = ([_typeX] call A3A_fnc_vehiclePrice) / 2; + if (_vehiclePrice == 0) exitWith {25}; + _vehiclePrice; +}; + +if ( + (_typeX in FactionGet(all,"vehiclesLight")) + or (_typeX in OccAndInv("vehiclesTrucks")) + or (_typeX in OccAndInv("vehiclesCargoTrucks")) + or (_typeX in OccAndInv("vehiclesMilitiaTrucks")) + or (_typeX in FactionGet(reb,"vehiclesTruck")) +) exitWith {100}; + +if ( + (_typeX in FactionGet(all,"vehiclesBoats")) + or (_typeX in FactionGet(all,"vehiclesLightAPCs")) + or (_typeX in OccAndInv("vehiclesAmmoTrucks")) + or (_typeX in OccAndInv("vehiclesRepairTrucks")) + or (_typeX in OccAndInv("vehiclesFuelTrucks")) + or (_typeX in OccAndInv("vehiclesMedical")) +) exitWith {200}; + +if (_typeX in (FactionGet(all,"vehiclesHelisLight") + FactionGet(reb,"vehiclesCivHeli"))) exitWith {500}; + +if ( + (_typeX in FactionGet(all,"vehiclesAPCs")) + || (_typeX in FactionGet(all,"vehiclesIFVs")) + || (_typeX in FactionGet(all,"vehiclesLightTanks")) + || (_typeX in FactionGet(all,"vehiclesHelisLightAttack")) + || (_typeX in FactionGet(all,"vehiclesTransportAir")) + || (_typeX in FactionGet(all,"vehiclesUAVs")) +) exitWith {1000}; + +if ( + (_typeX in FactionGet(all,"vehiclesHelisAttack")) + or (_typeX in FactionGet(all,"vehiclesTanks")) + or (_typeX in FactionGet(all,"vehiclesAA")) + or (_typeX in FactionGet(all,"vehiclesArtillery")) +) exitWith {3000}; + +if (_typeX in (FactionGet(all,"vehiclesPlanesCAS") + FactionGet(all,"vehiclesPlanesAA"))) exitWith {4000}; + +0; \ No newline at end of file diff --git a/A3A/addons/core/functions/Base/fn_getVehiclesGroundSupport.sqf b/A3A/addons/core/functions/Base/fn_getVehiclesGroundSupport.sqf index 592386ebcb..18f01ce519 100644 --- a/A3A/addons/core/functions/Base/fn_getVehiclesGroundSupport.sqf +++ b/A3A/addons/core/functions/Base/fn_getVehiclesGroundSupport.sqf @@ -9,7 +9,7 @@ Arguments: Return value: [vehType, weight, vehType2, weight2, ...] */ -params ["_side", "_level"]; +params ["_side", "_level", ["_tanksOnly", false]]; _level = (_level max 1 min 10) - 1; private _faction = [A3A_faction_occ, A3A_faction_inv] select (_side == Invaders); @@ -20,27 +20,35 @@ private _fnc_addArrayToWeights = { private _vehWeights = []; -private _milCarWeight = [50, 40, 30, 20, 10, 0, 0, 0, 0, 0] select _level; -private _carWeight = [50, 50, 50, 50, 50, 50, 50, 40, 35, 30] select _level; +private _milCarWeight = [100, 70, 50, 30, 10, 0, 0, 0, 0, 0] select _level; +private _carWeight = [ 0, 30, 30, 40, 50, 50, 50, 40, 35, 30] select _level; private _aaWeight = [ 0, 0, 3, 5, 7, 8, 10, 12, 13, 14] select _level; -private _ltWeight = [ 0, 5, 7, 9, 10, 11, 12, 13, 14, 15] select _level; -private _tankWeight = [ 0, 0, 3, 6, 10, 14, 18, 22, 26, 35] select _level; +private _ltWeight = [ 0, 5, 7, 8, 8, 8, 8, 8, 8, 8] select _level; +private _tankWeight = [ 0, 0, 3, 5, 8, 11, 14, 17, 20, 28] select _level; +private _hvytWeight = [ 0, 0, 0, 2, 4, 6, 8, 10, 12, 14] select _level; // filter out weak AA that shouldn't be tier-scaled (eg. Avenger, zu23) private _vehAA = (_faction get "vehiclesAA") select { A3A_vehicleResourceCosts get _x >= 100 }; if (_vehAA isEqualTo []) then { _tankWeight = _tankWeight + _aaWeight }; -// Only one of these two is mandatory -if (_faction get "vehiclesLightTanks" isEqualTo []) then { _tankWeight = _tankWeight + _ltWeight }; +// At least one lightTanks or Tanks is mandatory, HeavyTanks are entirely optional +if (_faction get "vehiclesHeavyTanks" isEqualTo []) then { _ltWeight = _ltWeight + _hvytWeight/2; _tankWeight = _tankWeight + _hvytWeight/2}; +if (_faction get "vehiclesLightTanks" isEqualTo []) then { + if (_level < 3) exitWith {_carWeight + _ltWeight}; + _tankWeight = _tankWeight + _ltWeight; +}; if (_faction get "vehiclesTanks" isEqualTo []) then { _ltWeight = _ltWeight + _tankWeight }; +[_faction get "vehiclesLightTanks", _ltWeight] call _fnc_addArrayToWeights; +[_faction get "vehiclesTanks", _tankWeight] call _fnc_addArrayToWeights; +[_faction get "vehiclesHeavyTanks", _hvytWeight] call _fnc_addArrayToWeights; +if (_tanksOnly) exitWith { _vehWeights }; + // only occupants use militia vehicles? if (_side == Occupants) then { [_faction get "vehiclesMilitiaLightArmed", _milCarWeight] call _fnc_addArrayToWeights; }; [_faction get "vehiclesLightArmed", _carWeight] call _fnc_addArrayToWeights; -[_faction get "vehiclesLightTanks", _ltWeight] call _fnc_addArrayToWeights; -[_faction get "vehiclesTanks", _tankWeight] call _fnc_addArrayToWeights; [_vehAA, _aaWeight] call _fnc_addArrayToWeights; _vehWeights; diff --git a/A3A/addons/core/functions/Base/fn_getVehiclesGroundTransport.sqf b/A3A/addons/core/functions/Base/fn_getVehiclesGroundTransport.sqf index 012459dce3..0931f8c3cb 100644 --- a/A3A/addons/core/functions/Base/fn_getVehiclesGroundTransport.sqf +++ b/A3A/addons/core/functions/Base/fn_getVehiclesGroundTransport.sqf @@ -20,20 +20,30 @@ private _fnc_addArrayToWeights = { private _vehWeights = []; -private _policeWeight = [40, 20, 0, 0, 0, 0, 0, 0, 0, 0] select _level; -private _milCarWeight = [40, 30, 20, 10, 5, 0, 0, 0, 0, 0] select _level; -private _milTruckWeight = [50, 40, 30, 20, 10, 0, 0, 0, 0, 0] select _level; -private _carWeight = [20, 25, 20, 10, 10, 10, 5, 5, 5, 5] select _level; -private _armedCarWeight = [20, 25, 30, 30, 30, 25, 20, 20, 15, 15] select _level; -private _truckWeight = [50, 45, 40, 35, 30, 25, 20, 15, 10, 5] select _level; -private _lapcWeight = [30, 40, 50, 50, 45, 40, 35, 30, 25, 20] select _level; -private _apcWeight = [ 0, 10, 15, 20, 25, 30, 35, 40, 40, 40] select _level; -private _ifvWeight = [ 0, 0, 2, 4, 6, 8, 12, 16, 20, 25] select _level; - -// Assumption is that at least one of APC or battle bus exists -if (_faction get "vehiclesIFVs" isEqualTo []) then { _apcWeight = _apcWeight + _ifvWeight }; -if (_faction get "vehiclesAPCs" isEqualTo []) then { _lapcWeight = _lapcWeight + _apcWeight }; +private _policeWeight = [ 50, 20, 0, 0, 0, 0, 0, 0, 0, 0] select _level; +private _milCarWeight = [ 50, 50, 30, 10, 5, 0, 0, 0, 0, 0] select _level; +private _milTruckWeight = [100, 80, 60, 35, 15, 0, 0, 0, 0, 0] select _level; +private _carWeight = [ 0, 5, 10, 10, 10, 10, 5, 5, 5, 5] select _level; +private _armedCarWeight = [ 20, 25, 30, 30, 30, 25, 20, 20, 15, 15] select _level; +private _truckWeight = [ 0, 5, 10, 20, 25, 25, 20, 15, 10, 5] select _level; +private _lapcWeight = [ 30, 40, 50, 50, 45, 40, 35, 30, 25, 20] select _level; +private _apcWeight = [ 0, 10, 15, 20, 25, 30, 35, 40, 40, 40] select _level; +private _ifvWeight = [ 0, 0, 2, 4, 6, 8, 12, 16, 20, 25] select _level; + +if (_faction getOrDefault ["attributeMoreTrucks", false]) then { + _milTruckWeight = [100, 80, 60, 35, 15, 0, 0, 0, 0, 0] select _level; + _truckWeight = [ 10, 20, 30, 45, 55, 60, 55, 50, 45, 40] select _level; + _lapcWeight = [ 10, 15, 20, 20, 20, 20, 20, 20, 20, 20] select _level; + _apcWeight = [ 0, 4, 8, 12, 16, 20, 20, 20, 20, 20] select _level; + _ifvWeight = [ 0, 0, 2, 4, 6, 8, 12, 16, 20, 25] select _level; +}; + if (_faction get "vehiclesLightAPCs" isEqualTo []) then { _apcWeight = _apcWeight + _lapcWeight/2; _truckWeight = _truckWeight + _lapcWeight/2; }; +if (_faction get "vehiclesIFVs" isEqualTo []) then { _apcWeight = _apcWeight + _ifvWeight }; +if (_faction get "vehiclesAPCs" isEqualTo []) then { + if (_faction get "vehiclesLightAPCs" isEqualTo []) exitWith { _ifvWeight = _ifvWeight + _apcWeight }; + _lapcWeight = _lapcWeight + _apcWeight; +}; // only occupants use militia vehicle types? if (_side == Occupants) then diff --git a/A3A/addons/core/functions/Base/fn_postmortem.sqf b/A3A/addons/core/functions/Base/fn_postmortem.sqf new file mode 100644 index 0000000000..affece56df --- /dev/null +++ b/A3A/addons/core/functions/Base/fn_postmortem.sqf @@ -0,0 +1,38 @@ +/* Handles the cleanup of dead units, vehicles and temporary objects + +Environment: Server, scheduled or unscheduled +Arguments: + Object to be cleaned up + True to add to the start of the queue (optional, default false) + +Return Value: none +*/ + +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +params ["_victim", ["_addToStart", false]]; + +if (!isServer) exitWith { ServerError("Function must be called on server") }; +if (isNull _victim) exitWith {}; + +if (_victim isKindOf "CAManBase") then { + private _group = group _victim; + if (isNull _group or isGroupDeletedWhenEmpty _group) exitWith {}; // tested, global argument works + [_group, true] remoteExecCall ["deleteGroupWhenEmpty", groupOwner _group]; +} else { + if !(_victim in staticsToSave) exitWith {}; + Debug_1("Removing %1 from statics list", _victim); + staticsToSave = staticsToSave - [_victim]; + publicVariable "staticsToSave"; +}; + +Debug_1("Adding %1 to postmortem garbage cleaning", _victim); + +if (_addToStart) then { + _victim setVariable ["A3A_gcTime", 0]; + A3A_gcQueue insert [0, [_victim]]; +} else { + _victim setVariable ["A3A_gcTime", time + A3A_gcCleanTime]; + A3A_gcQueue pushBack _victim; +}; diff --git a/A3A/addons/core/functions/Base/fn_postmortemLoop.sqf b/A3A/addons/core/functions/Base/fn_postmortemLoop.sqf new file mode 100644 index 0000000000..9e52dabaee --- /dev/null +++ b/A3A/addons/core/functions/Base/fn_postmortemLoop.sqf @@ -0,0 +1,71 @@ +/* Handles cleaning up objects added to postmortem list +Maintainer: John Jordan + +Environment: Server, scheduled +Arguments: none +Return Value: none +*/ + +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +private _fnc_delete = { + if (_this isKindOf "CAManBase" and !isNull objectParent _this) then { + // Otherwise vehicle seats may remain blocked + [objectParent _this, _this] remoteExec ["deleteVehicleCrew", _this]; + } else { + deleteVehicle _this; + }; +}; + +while {true} do +{ + sleep 60; + + private _players = allPlayers - (entities "HeadlessClient_F"); // could filter with AFK... + private _lastIndex = count A3A_gcQueue - 1; + private _bumpTime = time + A3A_gcCleanTime / 3; + private _bumpList = []; + private _curIndex = -1; + while { _curIndex < _lastIndex } do + { + _curIndex = _curIndex + 1; + private _object = A3A_gcQueue # _curIndex; + if (isNull _object) then { continue }; // already deleted elsewhere + if (_object getVariable ["stopPostmortem", false]) then { continue }; // removed from GC + + // If we're at the limit, delete regardless of time or proximity + if (_lastIndex - _curIndex + count _bumpList >= A3A_gcMaxObjects) then { _object call _fnc_delete; continue }; + + // If this object has a higher expiry time then we're done + if (time < _object getVariable ["A3A_gcTime", 0]) exitWith {}; + + // If there are no players nearby then delete + if (_players inAreaArray [getPosATL _object, 100, 100] isEqualTo []) then { _object call _fnc_delete; continue }; + + // If the object has been bumped too many times, delete it + private _bumps = _object getVariable ["A3A_gcBumps", 0]; + if (_bumps >= A3A_gcMaxBumps) then { _object call _fnc_delete; continue }; + + // Otherwise re-add it to the queue + _object setVariable ["A3A_gcBumps", _bumps+1]; + _object setVariable ["A3A_gcTime", _bumpTime]; + _bumpList pushBack _object; + }; + + Debug_3("Queue size %1, processed %2 items, bumped %3", _lastIndex+1, _curIndex, count _bumpList); + + // Clear out the processed entries + A3A_gcQueue deleteRange [0, _curIndex]; + if (_bumpList isEqualTo []) then { continue }; // nothing more to do if no objects got bumped + + // Insert bump list into correct position + private _bumpIndex = -1; + _lastIndex = count A3A_gcQueue - 1; + while { _bumpIndex < _lastIndex } do + { + _bumpIndex = _bumpIndex + 1; + if ((A3A_gcQueue # _bumpIndex) getVariable ["A3A_gcTime", 0] < _bumpTime) exitWith {}; + }; + A3A_gcQueue insert [_bumpIndex, _bumpList]; +}; diff --git a/A3A/addons/core/functions/Base/fn_rebuildAssets.sqf b/A3A/addons/core/functions/Base/fn_rebuildAssets.sqf index 87f92c78bf..d35194ff14 100644 --- a/A3A/addons/core/functions/Base/fn_rebuildAssets.sqf +++ b/A3A/addons/core/functions/Base/fn_rebuildAssets.sqf @@ -3,12 +3,9 @@ FIX_LINE_NUMBERS() private _titleStr = localize "STR_A3A_fn_base_rebasset_title"; -_resourcesFIA = server getVariable "resourcesFIA"; - +private _resourcesFIA = server getVariable "resourcesFIA"; if (_resourcesFIA < 5000) exitWith {[_titleStr, localize "STR_A3A_fn_base_rebasset_no_money"] call A3A_fnc_customHint;}; -_destroyedSites = destroyedSites - citiesX; - if (!visibleMap) then {openMap true}; positionTel = []; [_titleStr, localize "STR_A3A_fn_base_rebasset_click_zone"] call A3A_fnc_customHint; @@ -20,55 +17,31 @@ onMapSingleClick ""; if (!visibleMap) exitWith {}; -_positionTel = positionTel; - -_siteX = [markersX,_positionTel] call BIS_fnc_nearestPosition; - -if (getMarkerPos _siteX distance _positionTel > 50) exitWith {[_titleStr, localize "STR_A3A_fn_base_rebasset_click_marker"] call A3A_fnc_customHint;}; - -if ((not(_siteX in _destroyedSites)) and (!(_siteX in outposts))) exitWith {[_titleStr, localize "STR_A3A_fn_base_rebasset_no"] call A3A_fnc_customHint;}; - -_leave = false; -_antennaDead = objNull; -_textX = localize "STR_A3A_fn_base_rebasset_no_notower"; -if (_siteX in outposts) then - { - _antennasDead = antennasDead select {_x inArea _siteX}; - if (count _antennasDead > 0) then - { - if (sidesX getVariable [_siteX, sideUnknown] != teamPlayer) then - { - _leave = true; - _textX = format [localize "STR_A3A_fn_base_rebasset_no_owner",FactionGet(reb,"name")]; - } - else - { - _antennaDead = _antennasDead select 0; - }; - } - else - { - _leave = true - }; - }; +private _positionTel = positionTel; -if (_leave) exitWith {[_titleStr, format ["%1",_textX]] call A3A_fnc_customHint;}; +private _siteX = [markersX,_positionTel] call BIS_fnc_nearestPosition; -if (isNull _antennaDead) then - { - _nameX = [_siteX] call A3A_fnc_localizar; +if (getMarkerPos _siteX distance2d _positionTel > 50) exitWith {[_titleStr, localize "STR_A3A_fn_base_rebasset_click_marker"] call A3A_fnc_customHint;}; +if (sidesX getVariable [_siteX, sideUnknown] != teamPlayer) exitWith {[_titleStr, localize "STR_A3A_fn_base_rebasset_click_marker"] call A3A_fnc_customHint;}; - [_titleStr, format [localize "STR_A3A_fn_base_rebasset_done_1", _nameX]] call A3A_fnc_customHint; +private _destroyedSites = destroyedSites - citiesX; +if (_siteX in _destroyedSites) exitWith { + private _nameX = [_siteX] call A3A_fnc_localizar; + [_titleStr, format [localize "STR_A3A_fn_base_rebasset_done_1", _nameX]] call A3A_fnc_customHint; - [0,10,_positionTel] remoteExec ["A3A_fnc_citySupportChange",2]; + [0,10,_positionTel] remoteExec ["A3A_fnc_citySupportChange",2]; [Occupants, 10, 30] remoteExec ["A3A_fnc_addAggression",2]; [Invaders, 10, 30] remoteExec ["A3A_fnc_addAggression",2]; - destroyedSites = destroyedSites - [_siteX]; - publicVariable "destroyedSites"; - } -else - { - [_titleStr, localize "STR_A3A_fn_base_rebasset_done_2"] call A3A_fnc_customHint; - [_antennaDead] remoteExec ["A3A_fnc_rebuildRadioTower", 2]; - }; -[0,-5000] remoteExec ["A3A_fnc_resourcesFIA",2]; + destroyedSites = destroyedSites - [_siteX]; + publicVariable "destroyedSites"; + [0,-5000] remoteExec ["A3A_fnc_resourcesFIA",2]; +}; + +private _radioTowers = antennasDead select {_x inArea _siteX}; +if (_radioTowers isNotEqualTo []) exitWith { + [_titleStr, localize "STR_A3A_fn_base_rebasset_done_2"] call A3A_fnc_customHint; + [_radioTowers#0] remoteExec ["A3A_fnc_rebuildRadioTower", 2]; + [0,-5000] remoteExec ["A3A_fnc_resourcesFIA",2]; +}; + +[_titleStr, localize "STR_A3A_fn_base_rebasset_no_nothing"] call A3A_fnc_customHint; diff --git a/A3A/addons/core/functions/Base/fn_resourcesFIA.sqf b/A3A/addons/core/functions/Base/fn_resourcesFIA.sqf index ca91790138..3ece512b29 100644 --- a/A3A/addons/core/functions/Base/fn_resourcesFIA.sqf +++ b/A3A/addons/core/functions/Base/fn_resourcesFIA.sqf @@ -1,15 +1,15 @@ #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -private ["_hr","_resourcesFIA","_hrT","_resourcesFIAT"]; +params [["_hr",""],["_resourcesFIA",""]]; // nil protection + +if !(_hr isEqualType 0) exitWith {Error("The first parameter, the added HR, must be a number");}; +if !(_resourcesFIA isEqualType 0) exitWith {Error("The second parameter, the added money, must be a number");}; waitUntil {!resourcesIsChanging}; resourcesIsChanging = true; -_hr = _this select 0; -_resourcesFIA = _this select 1; -if (isNil "_resourcesFIA") then {Error("_resourceFIA is nil");}; -if ((isNil "_hr") or (isNil "_resourcesFIA")) exitWith {resourcesIsChanging = false}; + if ((floor _resourcesFIA == 0) and (floor _hr == 0)) exitWith {resourcesIsChanging = false}; -_hrT = server getVariable "hr"; -_resourcesFIAT = server getVariable "resourcesFIA"; +private _hrT = server getVariable "hr"; +private _resourcesFIAT = server getVariable "resourcesFIA"; _hrT = _hrT + _hr; _resourcesFIAT = round (_resourcesFIAT + _resourcesFIA); diff --git a/A3A/addons/core/functions/Base/fn_sellVehicle.sqf b/A3A/addons/core/functions/Base/fn_sellVehicle.sqf index 459e2761c8..bd18cede56 100644 --- a/A3A/addons/core/functions/Base/fn_sellVehicle.sqf +++ b/A3A/addons/core/functions/Base/fn_sellVehicle.sqf @@ -34,8 +34,6 @@ params [ #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -#define OccAndInv(VAR) (FactionGet(occ, VAR) + FactionGet(inv, VAR)) - private _titleStr = localize "STR_A3A_fn_base_sellveh_sell"; /* @@ -69,49 +67,7 @@ if !(_owner isEqualTo "" || {getPlayerUID _player isEqualTo _owner}) exitWith { if (_veh getVariable ["A3A_sellVehicle_inProgress",false]) exitWith {[_titleStr, localize "STR_A3A_fn_base_sellveh_progress"] remoteExecCall ["A3A_fnc_customHint",_player];}; _veh setVariable ["A3A_sellVehicle_inProgress",true,false]; // Only processed on the server. It is absolutely pointless trying to network this due to race conditions. -private _typeX = typeOf _veh; -private _costs = call { - if (_typeX in _blacklistedAssets) exitWith {0}; - if (_veh isKindOf "StaticWeapon") exitWith {100}; // in case rebel static is same as enemy statics - if (_typeX in FactionGet(all,"vehiclesReb")) exitWith { ([_typeX] call A3A_fnc_vehiclePrice) / 2 }; - if ( - (_typeX in arrayCivVeh) - or (_typeX in civBoats) - or (_typeX in (FactionGet(reb,"vehiclesCivBoat") + FactionGet(reb,"vehiclesCivCar") + FactionGet(reb,"vehiclesCivTruck"))) - ) exitWith {25}; - if ( - (_typeX in FactionGet(all,"vehiclesLight")) - or (_typeX in OccAndInv("vehiclesTrucks")) - or (_typeX in OccAndInv("vehiclesCargoTrucks")) - or (_typeX in OccAndInv("vehiclesMilitiaTrucks")) - or (_typeX in FactionGet(reb,"vehiclesTruck")) - ) exitWith {100}; - if ( - (_typeX in FactionGet(all,"vehiclesBoats")) - or (_typeX in FactionGet(all,"vehiclesLightAPCs")) - or (_typeX in OccAndInv("vehiclesAmmoTrucks")) - or (_typeX in OccAndInv("vehiclesRepairTrucks")) - or (_typeX in OccAndInv("vehiclesFuelTrucks")) - or (_typeX in OccAndInv("vehiclesMedical")) - ) exitWith {200}; - if (_typeX in (FactionGet(all,"vehiclesHelisLight") + FactionGet(reb,"vehiclesCivHeli"))) exitWith {500}; - if ( - (_typeX in FactionGet(all,"vehiclesAPCs")) - || (_typeX in FactionGet(all,"vehiclesIFVs")) - || (_typeX in FactionGet(all,"vehiclesLightTanks")) - || (_typeX in FactionGet(all,"vehiclesHelisLightAttack")) - || (_typeX in FactionGet(all,"vehiclesTransportAir")) - || (_typeX in FactionGet(all,"vehiclesUAVs")) - ) exitWith {1000}; - if ( - (_typeX in FactionGet(all,"vehiclesHelisAttack")) - or (_typeX in FactionGet(all,"vehiclesTanks")) - or (_typeX in FactionGet(all,"vehiclesAA")) - or (_typeX in FactionGet(all,"vehiclesArtillery")) - ) exitWith {3000}; - if (_typeX in (FactionGet(all,"vehiclesPlanesCAS") + FactionGet(all,"vehiclesPlanesAA"))) exitWith {4000}; - 0; -}; +private _costs = [_veh] call A3A_fnc_getVehicleSellPrice; if (_costs == 0) exitWith { _veh setVariable ["A3A_sellVehicle_inProgress",false,false]; diff --git a/A3A/addons/core/functions/Base/fn_setPlaneLoadout.sqf b/A3A/addons/core/functions/Base/fn_setPlaneLoadout.sqf index 20707f1f3a..8a4eaa5147 100644 --- a/A3A/addons/core/functions/Base/fn_setPlaneLoadout.sqf +++ b/A3A/addons/core/functions/Base/fn_setPlaneLoadout.sqf @@ -10,412 +10,37 @@ params ["_plane", "_type"]; #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -private _validInput = false; private _loadout = []; if (_type == "CAS") then { - _validInput = true; - switch (typeOf _plane) do - { - //Vanilla NATO CAS (A-10) - case "B_D_Plane_CAS_01_dynamicLoadout_lxWS"; - case "B_Plane_CAS_01_dynamicLoadout_F": - { - _loadout = ["PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F","PylonRack_7Rnd_Rocket_04_HE_F"]; - _plane setVariable ["mainGun", "Gatling_30mm_Plane_CAS_01_F"]; - _plane setVariable ["rocketLauncher", ["Rocket_04_HE_Plane_CAS_01_F"]]; - _plane setVariable ["missileLauncher", ["Missile_AGM_02_Plane_CAS_01_F", "missiles_SCALPEL"]]; - }; - //Vanilla CSAT CAS - case "O_Plane_CAS_02_dynamicLoadout_F": - { - _loadout = ["PylonMissile_1Rnd_LG_scalpel","PylonRack_19Rnd_Rocket_Skyfire","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_4Rnd_LG_scalpel","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_19Rnd_Rocket_Skyfire","PylonMissile_1Rnd_LG_scalpel"]; - _plane setVariable ["mainGun", "Cannon_30mm_Plane_CAS_02_F"]; - _plane setVariable ["rocketLauncher", ["Rocket_03_AP_Plane_CAS_02_F", "rockets_Skyfire"]]; - _plane setVariable ["missileLauncher", ["missiles_SCALPEL"]]; - }; - //Vanilla IND CAS - case "a3a_Plane_Fighter_03_grey_F"; - case "I_Plane_Fighter_03_dynamicLoadout_F": - { -// _loadout = ["PylonRack_1Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","","PylonRack_3Rnd_LG_scalpel","PylonRack_3Rnd_LG_scalpel","PylonRack_1Rnd_LG_scalpel"]; - _loadout = ["PylonRack_7Rnd_Rocket_04_AP_F","PylonRack_3Rnd_LG_scalpel","PylonRack_1Rnd_Missile_AGM_02_F","PylonWeapon_300Rnd_20mm_shells","PylonRack_1Rnd_Missile_AGM_02_F","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_AP_F"]; - _plane setVariable ["mainGun", "Twin_Cannon_20mm"]; - _plane setVariable ["rocketLauncher", ["Rocket_04_AP_Plane_CAS_01_F"]]; - _plane setVariable ["missileLauncher", ["Missile_AGM_02_Plane_CAS_01_F", "missiles_SCALPEL"]]; - }; - //RHS US CAS (A-10) - case "RHS_A10"; - case "UK3CB_CW_US_B_EARLY_A10": + private _configPath = configFile >> "A3A" >> "Loadouts" >> "CASPlane" >> typeOf _plane; - { - _loadout = ["rhs_mag_ANALQ131","rhs_mag_M151_7_USAF_LAU131","rhs_mag_agm65d_3","rhs_mag_M151_21_USAF_LAU131_3","rhs_mag_M151_7_USAF_LAU131","","rhs_mag_M151_7_USAF_LAU131","rhs_mag_M151_21_USAF_LAU131_3","rhs_mag_agm65d_3","rhs_mag_M151_7_USAF_LAU131","","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x16"]; - _plane setVariable ["mainGun", "RHS_weap_gau8"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_FFARLauncher"]]; - _plane setVariable ["missileLauncher", ["rhs_weap_agm65d"]]; - }; - //RHS CDF - case "rhs_l159_cdf_b_CDF": - { - _loadout = ["rhs_mag_M151_7_USAF_LAU131","rhs_mag_agm65d","rhs_mag_agm65d","rhs_mag_zpl20_apit","rhs_mag_agm65d","rhs_mag_agm65d","rhs_mag_M151_7_USAF_LAU131","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"]; - _plane setVariable ["mainGun", "RHS_weap_zpl20"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_FFARLauncher"]]; - _plane setVariable ["missileLauncher", ["rhs_weap_agm65d"]]; - }; - case "RHS_Su25SM_vvsc"; - case "RHS_Su25SM_CAS_vvs"; - case "rhsgref_cdf_b_su25"; - case "UK3CB_TKA_B_Su25SM_CAS"; - case "UK3CB_LDF_B_Su25SM_CAS"; - case "UK3CB_ADA_I_Su25SM_CAS"; - case "UK3CB_KDF_B_Su25SM_CAS"; - case "UK3CB_CW_SOV_O_LATE_Su25SM_CAS": - { - _loadout = ["rhs_mag_kh29D","rhs_mag_kh29D","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_kh25MTP","rhs_mag_b8m1_s8kom","rhs_mag_b8m1_s8kom","rhs_mag_R60M","rhs_mag_R60M","rhs_ASO2_CMFlare_Chaff_Magazine_x4"]; - _plane setVariable ["mainGun", "rhs_weap_gsh302"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_s8"]]; - _plane setVariable ["missileLauncher", ["rhs_weap_kh29d_Launcher", "rhs_weap_kh25mtp_Launcher"]]; - }; - case "rhssaf_airforce_l_18": - { - _loadout = ["rhs_mag_b8m1_bd3_umk2a_s8kom","rhs_mag_b8m1_bd3_umk2a_s8kom","rhs_mag_kh25MTP_apu68_mig29","rhs_mag_kh25MTP_apu68_mig29","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"]; - _plane setVariable ["mainGun", "rhs_weap_gsh301"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_s8", "rhs_weap_s8df"]]; - _plane setVariable ["missileLauncher", ["rhs_weap_kh25mtp_Launcher"]]; - }; - case "vn_b_air_f4c_at": - { - _loadout = ["vn_missile_f4_out_agm45_mag_x1","vn_missile_f4_out_agm45_mag_x1","vn_rocket_ffar_f4_lau3_m229_he_x57","vn_rocket_ffar_f4_lau3_m229_he_x57","vn_bomb_f4_out_750_blu1b_fb_mag_x3","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1"]; - _plane setVariable ["rocketLauncher", ["vn_rocket_ffar_275in_launcher_m229"]]; - _plane setVariable ["missileLauncher", ["vn_missile_agm45_launcher"]]; - }; - case "vn_b_air_f100d_at": - { - _loadout = ["vn_rocket_ffar_f4_lau59_m229_he_x21","vn_rocket_ffar_f4_lau59_m229_he_x21","vn_fuel_f100_335_camo_01_mag","vn_fuel_f100_335_camo_01_mag","vn_missile_agm45_03_mag_x1","vn_missile_agm45_03_mag_x1"]; - _plane setVariable ["mainGun", "vn_m39a1_v_quad"]; - _plane setVariable ["rocketLauncher", ["vn_rocket_ffar_275in_launcher_m229"]]; - _plane setVariable ["missileLauncher", ["vn_missile_agm45_launcher"]]; - }; - case "vn_o_air_mig19_at": - { - _loadout = ["vn_rocket_s5_heat_x16","vn_rocket_s5_heat_x16","vn_missile_kh66_mag_01_x1","vn_missile_kh66_mag_01_x1"]; - _plane setVariable ["mainGun", "vn_nr30_v_01"]; - _plane setVariable ["rocketLauncher", ["vn_rocket_s5_heat_launcher"]]; - _plane setVariable ["missileLauncher", ["vn_missile_kh66_launcher"]]; - }; - case "vn_o_air_mig21_cas": - { - _loadout = ["vn_missile_mig21_kh66_mag_x1","vn_missile_mig21_kh66_mag_x1","vn_gunpod_gsh23l_v_200_mag"]; - _plane setVariable ["mainGun", "vn_gunpod_gsh23l"]; - _plane setVariable ["missileLauncher", ["vn_missile_kh66_launcher"]]; - }; - case "RHSGREF_A29B_HIDF": - { - _loadout = ["rhs_mag_AGM114K_2_plane","rhs_mag_FFAR_7_USAF","rhs_mag_mk82","rhs_mag_FFAR_7_USAF","rhs_mag_AGM114N_2_plane","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"]; - _plane setVariable ["mainGun", "rhs_weap_M3W_A29"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_FFARLauncher"]]; - _plane setVariable ["missileLauncher", ["rhs_weap_AGM114K_Launcher", "RHS_weap_AGM114N_Launcher"]]; - }; - case "UK3CB_B_Mystere_HIDF_CAS1"; - case "UK3CB_MDF_B_Mystere_CAS1": - { - _loadout = ["PylonRack_3Rnd_Missile_AGM_02_F","PylonRack_12Rnd_missiles","PylonRack_12Rnd_missiles","PylonRack_3Rnd_Missile_AGM_02_F"]; - _plane setVariable ["mainGun", "uk3cb_mystere_cannon_30mm"]; - _plane setVariable ["rocketLauncher", ["missiles_DAR"]]; - _plane setVariable ["missileLauncher", ["Missile_AGM_02_Plane_CAS_01_F"]]; - }; - case "UK3CB_ADA_B_L39_PYLON"; - case "UK3CB_AAF_B_L39_PYLON"; - case "UK3CB_KRG_B_L39_PYLON"; - case "UK3CB_LDF_B_L39_PYLON": - { - _loadout = ["PylonRack_7Rnd_Rocket_04_AP_F","PylonRack_3Rnd_LG_scalpel","PylonRack_12Rnd_missiles","PylonWeapon_300Rnd_20mm_shells","PylonRack_12Rnd_missiles","PylonRack_3Rnd_LG_scalpel","PylonRack_7Rnd_Rocket_04_AP_F"]; - _plane setVariable ["mainGun", "Twin_Cannon_20mm"]; - _plane setVariable ["rocketLauncher", ["Rocket_04_AP_Plane_CAS_01_F", "missiles_DAR"]]; - _plane setVariable ["missileLauncher", ["missiles_SCALPEL"]]; - }; - case "UK3CB_TKA_B_MIG21_AT": - { - _loadout = ["uk3cb_mag_kh25MA","rhs_mag_b8m1_bd3_umk2a_s8t","rhs_mag_b8m1_bd3_umk2a_s8t","uk3cb_mag_kh25MA"]; - _plane setVariable ["mainGun", "uk3cb_mig21_GSh23L_23mm"]; - _plane setVariable ["rocketLauncher", ["rhs_weap_s8t"]]; - _plane setVariable ["missileLauncher", ["uk3cb_weap_kh25ma_Launcher"]]; - }; - case "UK3CB_AAF_B_Gripen_G"; - case "UK3CB_AAF_B_Gripen_DG": - { - _loadout = ["","","PylonRack_Missile_AGM_02_x1","PylonRack_Missile_AGM_02_x1","PylonRack_Missile_AGM_02_x2","PylonRack_Missile_AGM_02_x2"]; - _plane setVariable ["mainGun", "weapon_Fighter_Gun20mm_AA"]; - _plane setVariable ["missileLauncher", ["weapon_AGM_65Launcher"]]; - }; - // cup aircraft - case "CUP_B_L39_CZ": - { - _loadout = ["CUP_PylonPod_20Rnd_S8_plane_M","PylonRack_1Rnd_Missile_AGM_01_F","PylonRack_1Rnd_Missile_AGM_01_F","CUP_PylonPod_20Rnd_S8_plane_M"]; - _plane setVariable ["mainGun", "CUP_Vacannon_GSh23L_L39"]; - _plane setVariable ["rocketLauncher", ["CUP_Vmlauncher_S8_veh"]]; - _plane setVariable ["missileLauncher", ["Missile_AGM_01_Plane_CAS_02_F"]]; - }; - case "CUP_B_Su25_Dyn_CDF"; - case "CUP_O_Su25_Dyn_RU"; - case "CUP_O_Su25_Dyn_SLA"; - case "CUP_O_Su25_Dyn_TKA": - { - _loadout = ["CUP_PylonPod_1Rnd_R73_Vympel","PylonRack_20Rnd_Rocket_03_HE_F","PylonRack_20Rnd_Rocket_03_AP_F","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","CUP_PylonPod_1Rnd_Kh29_M","PylonRack_20Rnd_Rocket_03_AP_F","PylonRack_20Rnd_Rocket_03_HE_F","CUP_PylonPod_1Rnd_R73_Vympel"]; - _plane setVariable ["mainGun", "CUP_Vacannon_GSh302K_veh"]; - _plane setVariable ["rocketLauncher", ["Rocket_03_HE_Plane_CAS_02_F", "Rocket_03_AP_Plane_CAS_02_F"]]; - _plane setVariable ["missileLauncher", ["CUP_Vmlauncher_Kh29L_veh"]]; - }; - case "CUP_B_A10_DYN_USA": - { - _loadout = ["CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_19Rnd_Rocket_FFAR_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_ALQ_131","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_Rocket_FFAR_plane_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M"]; - _plane setVariable ["mainGun", "CUP_Vacannon_GAU8_veh"]; - _plane setVariable ["rocketLauncher", ["CUP_Vmlauncher_FFAR_veh", "CUP_Vmlauncher_CRV7_veh"]]; - _plane setVariable ["missileLauncher", ["CUP_Vmlauncher_AGM65pod_veh"]]; - }; - case "CUP_B_GR9_DYN_GB": - { - _loadout = ["CUP_PylonPod_19Rnd_CRV7_FAT_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","PylonWeapon_300Rnd_20mm_shells","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_FAT_plane_M"]; - _plane setVariable ["mainGun", "Twin_Cannon_20mm"]; - _plane setVariable ["rocketLauncher", ["CUP_Vmlauncher_CRV7_veh"]]; - _plane setVariable ["missileLauncher", ["CUP_Vmlauncher_AGM65pod_veh"]]; - }; - case "CUP_B_AV8B_DYN_USMC": - { - _loadout = ["CUP_PylonPod_19Rnd_CRV7_FAT_plane_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_1Rnd_AGM65_Maverick_M","CUP_PylonPod_19Rnd_CRV7_FAT_plane_M"]; - _plane setVariable ["mainGun", "CUP_Vacannon_GAU12_veh"]; - _plane setVariable ["rocketLauncher", ["CUP_Vmlauncher_CRV7_veh"]]; - _plane setVariable ["missileLauncher", ["CUP_Vmlauncher_AGM65pod_veh"]]; - }; - //Unsung - case "uns_Mig21_CAS": - { - _loadout = ["","","uns_pylonRack_32Rnd_Rocket_57_HE","uns_pylonRack_32Rnd_Rocket_57_HE","uns_pylonRack_1Rnd_Bomb_kab500","uns_pylonRack_1Rnd_Bomb_kab500","uns_pylonRack_96Rnd_Rocket_57_HE"]; - _plane setVariable ["mainGun", "uns_NR30"]; - _plane setVariable ["rocketLauncher", ["uns_57mmLauncher_dl"]]; - }; - case "uns_A1J_CAS": - { - _loadout = ["uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_1Rnd_Rocket_HVAR_AT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_fuel_A1"]; - _plane setVariable ["mainGun", "uns_Uns_M2_4x20mm"]; - _plane setVariable ["rocketLauncher", ["Uns_FFAR_HEAT_Launcher_dl", "Uns_HVARLauncher_dl"]]; - }; - case "uns_A7_CAS": - { - _loadout = ["uns_pylonRack_19Rnd_Rocket_FFAR_WP","uns_pylonRack_19Rnd_Rocket_FFAR_WP","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_19Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E"]; - _plane setVariable ["mainGun", "uns_M61A1"]; - _plane setVariable ["rocketLauncher", ["Uns_FFAR_WP_Launcher_dl", "Uns_FFAR_HEAT_Launcher_dl"]]; - _plane setVariable ["missileLauncher", ["uns_AGM12_Launcher_dl"]]; - }; - case "uns_A6_Intruder_CAS": - { - _loadout = ["uns_pylonRack_12Rnd_Rocket_Zuni_AT","uns_pylonRack_12Rnd_Rocket_Zuni_AT","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12"]; - _plane setVariable ["rocketLauncher", ["Uns_ZuniLauncher_dl", "Uns_HVARLauncher_dl"]]; - _plane setVariable ["missileLauncher", ["uns_AGM12_Launcher_dl"]]; - }; - case "uns_F4J_CAS": - { - _loadout = ["uns_pylonRack_1Rnd_AGM12","uns_pylonRack_1Rnd_AGM12","uns_pylonRack_f4_38Rnd_Rocket_FFAR_HEAT","uns_pylonRack_f4_38Rnd_Rocket_FFAR_HEAT","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AGM12"]; - _plane setVariable ["rocketLauncher", ["Uns_FFAR_HEAT_Launcher_dl"]]; - _plane setVariable ["missileLauncher", ["uns_AGM12_Launcher_dl"]]; - }; - case "Tornado_AWS_camo_ger": - { - _loadout = ["Tornado_AWS_ECMpod_1rnd_M","FIR_IRIS_T_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_Litening_std_P_1rnd_M","FIR_Brimstone_DM_type1_P_3rnd_M","FIR_Brimstone_DM_type1_P_3rnd_M","FIR_GBU12_P_1rnd_M","FIR_Brimstone_DM_type2_P_3rnd_M","FIR_Brimstone_DM_type2_P_3rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_IRIS_T_P_1rnd_M","Tornado_AWS_AIRCMpod_1rnd_M","FIR_BK27_R_M","FIR_BK27_L_M"]; - _plane setVariable ["mainGun", "Tornado_AWS_CANNON_W"]; - _plane setVariable ["missileLauncher", ["FIR_Brimstone"]]; - }; - // IFA test planes - case "LIB_Ju87": { - _loadout = ["LIB_1Rnd_SC50","LIB_1Rnd_SC50","LIB_1Rnd_SC500","LIB_1Rnd_SC50","LIB_1Rnd_SC50"]; - _plane setVariable ["mainGun", "LIB_2xMG151_JU87"]; - _plane setVariable ["bombRacks", ["LIB_SC500_Bomb_Mount","LIB_SC50_Bomb_Mount"]]; - _plane setVariable ["diveParams", [1200, 300, 110, 55, 15, [15, -2]]]; // start (m), end (m), diveSpeed (m/s), dive start angle (deg), turnRate (deg/s), bombOffset (m) - }; - case "LIB_Pe2": { - _loadout = ["LIB_1Rnd_FAB250","LIB_1Rnd_FAB250","LIB_1Rnd_FAB250","LIB_1Rnd_FAB250"]; - _plane setVariable ["mainGun", "LIB_UBK_PE2"]; - _plane setVariable ["bombRacks", ["LIB_FAB250_Bomb_Mount"]]; - _plane setVariable ["diveParams", [1200, 300, 110, 55, 15, [12, 0]]]; // start (m), end (m), diveSpeed (m/s), dive start angle (deg), turnRate (deg/s), bombOffset (m) - }; - // SPE planes - case "SPE_FW190F8": { - _loadout = ["SPE_250Rnd_MG151","SPE_250Rnd_MG151","SPE_400Rnd_MG131","SPE_400Rnd_MG131","SPE_1Rnd_SC50","SPE_1Rnd_SC50","SPE_1Rnd_SC500","SPE_1Rnd_SC50","SPE_1Rnd_SC50"]; - _plane setVariable ["mainGun", "SPE_2xMG151"]; - _plane setVariable ["bombRacks", ["SPE_SC500_Bomb_Mount","SPE_SC50_Bomb_Mount"]]; - _plane setVariable ["diveParams", [1200, 300, 110, 55, 15, [0, 0]]]; // start (m), end (m), diveSpeed (m/s), dive start angle (deg), turnRate (deg/s), bombOffset (m) - }; - case "SPE_P47": { - _loadout = ["SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_425rnd_M2_P47","SPE_3Rnd_M8_P47","SPE_3Rnd_M8_P47","SPE_1Rnd_US_500lb","SPE_1Rnd_US_500lb","SPE_1Rnd_US_500lb"]; - _plane setVariable ["mainGun", "SPE_8xM2_P47"]; - _plane setVariable ["rocketLauncher", ["SPE_M8_Launcher_P47"]]; - _plane setVariable ["bombRacks", ["SPE_US_500lb_Bomb_Mount"]]; - _plane setVariable ["diveParams", [1200, 350, 110, 55, 15, [3, 0]]]; // start (m), end (m), diveSpeed (m/s), dive start angle (deg), turnRate (deg/s), bombOffset (m) - }; - default - { - Error_1("Plane type %1 currently not supported for CAS, please add the case!", typeOf _plane); - }; + if(isNull _configPath) then { + Error_1("%1 has no loadout set", typeOf _plane); }; + + _loadout = getArray(_configPath >> "loadout"); + + _plane setVariable ["mainGun", getArray(_configPath >> "mainGun") select 0]; + _plane setVariable ["rocketLauncher", getArray(_configPath >> "rocketLauncher")]; + _plane setVariable ["missileLauncher", getArray(_configPath >> "missileLauncher")]; + + _plane setVariable ["bombRacks", getArray(_configPath >> "bombRacks")]; + _plane setVariable ["diveParams", getArray(_configPath >> "diveParams")]; + + [_plane, _type] call (compile (getText(_configPath >> "code"))); }; if (_type == "AA") then { - switch (typeOf _plane) do - { - //Vanilla NATO Air superiority fighter - case "B_Plane_Fighter_01_F": - { - _loadout = ["PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2","PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1","PylonMissile_Missile_AMRAAM_D_INT_x1"]; - }; - //Vanilla CSAT Air superiority fighter - case "O_Plane_Fighter_02_F": - { - _loadout = ["PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R77_x1","PylonMissile_Missile_AA_R77_x1","PylonMissile_Missile_AA_R77_INT_x1","PylonMissile_Missile_AA_R77_INT_x1","PylonMissile_Missile_AA_R77_INT_x1"]; - }; - //Vanilla IND Air superiority fighter - case "a3a_Plane_Fighter_04_grey_F"; - case "I_Plane_Fighter_04_F": - { - _loadout = ["PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_BIM9X_x2","PylonRack_Missile_BIM9X_x2"]; - }; - //RHS US Air superiority fighter - case "rhsusf_f22": - { - _loadout = ["rhs_mag_Sidewinder_int","rhs_mag_aim120d_int","rhs_mag_aim120d_2_F22_l","rhs_mag_aim120d_2_F22_r","rhs_mag_aim120d_int","rhs_mag_Sidewinder_int","rhsusf_ANALE52_CMFlare_Chaff_Magazine_x4"]; - }; - case "rhs_l159_cdf_b_CDF_CAP": - { - _loadout = ["rhs_mag_aim9m","rhs_mag_aim120","rhs_mag_aim120","rhs_mag_zpl20_mixed","rhs_mag_aim120","rhs_mag_aim120","rhs_mag_aim9m","rhsusf_ANALE40_CMFlare_Chaff_Magazine_x2"]; - }; - //RHS Russian Air superiority - case "rhs_mig29sm_vvs"; - case "rhs_mig29s_vvs"; - case "rhsgref_cdf_b_mig29s"; - case "UK3CB_TKA_O_MIG29SM"; - case "UK3CB_CW_SOV_O_LATE_MIG29S"; - case "UK3CB_LDF_B_MIG29SM"; - case "UK3CB_KDF_B_MIG29SM"; - case "UK3CB_AAF_O_MIG29S": - { - _loadout = ["rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R77_AKU170_MIG29","rhs_mag_R77_AKU170_MIG29","","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"]; - }; - case "RHS_T50_vvs_generic_ext": - { - _loadout = ["rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R77M","rhs_mag_R74M2_int","rhs_mag_R74M2_int","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170","rhs_mag_R77M_AKU170"]; - }; - case "rhssaf_airforce_o_l_18_101": - { - _loadout = ["rhs_mag_R27ER_APU470","rhs_mag_R27ER_APU470","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_BVP3026_CMFlare_Chaff_Magazine_x2"]; - }; - case "UK3CB_ANA_B_L39_PYLON"; - case "UK3CB_ADA_B_L39_PYLON"; - case "UK3CB_ADA_I_L39_PYLON"; - case "UK3CB_TKA_B_L39_PYLON"; - case "UK3CB_KRG_B_L39_PYLON"; - case "UK3CB_LDF_B_L39_PYLON": - { - _loadout = ["PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_GAA_missiles","PylonWeapon_300Rnd_20mm_shells","PylonRack_1Rnd_GAA_missiles","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_Missile_AA_04_F"]; - }; - case "UK3CB_AAF_B_Gripen_G"; - case "UK3CB_AAF_B_Gripen_DG": - { - _loadout = ["PylonMissile_Missile_BIM9X_x1","PylonMissile_Missile_BIM9X_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x1","PylonRack_Missile_AMRAAM_C_x2","PylonRack_Missile_AMRAAM_C_x2"]; - }; - case "UK3CB_LDF_B_MIG21_AA"; - case "UK3CB_TKA_B_MIG21_AA": - { - _loadout = ["rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73"]; - }; - case "UK3CB_LDF_B_MIG21_AA"; - case "UK3CB_TKA_B_MIG21_AA": - { - _loadout = ["rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73","rhs_mag_R73M_APU73"]; - }; - case "vn_b_air_f4c_cap": - { - _loadout = ["vn_fuel_f4_370_mag","vn_fuel_f4_370_mag","","","vn_fuel_f4_600_mag","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_f4_lau7_aim9e_mag_x2","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1","vn_missile_aim7e2_mag_x1"]; - }; - case "vn_b_air_f100d_cap": - { - _loadout = ["vn_rocket_ffar_f4_lau59_m229_he_x21","vn_rocket_ffar_f4_lau59_m229_he_x21","vn_fuel_f100_335_mag","vn_fuel_f100_335_mag","vn_missile_aim9e_mag_x1","vn_missile_aim9e_mag_x1"]; - }; - case "vn_o_air_mig19_cap": - { - _loadout = ["vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1","vn_missile_mig19_01_aa2_mag_x1"]; - }; - case "vn_o_air_mig21_cap": - { - _loadout = ["vn_missile_mig21_aa2_mag_x1","vn_missile_mig21_aa2_mag_x1","vn_gunpod_gsh23l_v_200_mag"]; - }; - case "UK3CB_B_Mystere_HIDF_AA1"; - case "UK3CB_MDF_B_Mystere_AA1": - { - _loadout = ["PylonRack_1Rnd_Missile_AA_04_F","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_AAA_missiles","PylonRack_1Rnd_Missile_AA_04_F"]; - }; - // cup aircraft - case "CUP_B_L39_CZ": - { - _loadout = ["PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1"]; - }; - case "CUP_O_L39_TK": - { - _loadout = ["PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1","PylonMissile_Missile_AA_R73_x1"]; - }; - case "CUP_B_GR9_DYN_GB": - { - _loadout = ["CUP_PylonPod_19Rnd_CRV7_HE_plane_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","PylonRack_1Rnd_AAA_missiles"]; - }; - case "CUP_B_SU34_CDF"; - case "CUP_O_SU34_RU"; - case "CUP_O_SU34_SLA": - { - _loadout = ["CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel","CUP_PylonPod_1Rnd_R73_Vympel"]; - }; - case "CUP_B_F35B_USMC": - { - _loadout = ["CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonWeapon_220Rnd_TE1_Red_Tracer_GAU22_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_INT_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"]; - }; - case "CUP_B_GR9_DYN_GB": - { - _loadout = ["CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_ALQ_131","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"]; - }; - case "CUP_B_AV8B_DYN_USMC": - { - _loadout = ["CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M"]; - }; - case "CUP_I_JAS39_RACS": - { - _loadout = ["CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_9L_LAU_Sidewinder_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_1Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_2Rnd_AIM_120_AMRAAM_M","CUP_PylonPod_2Rnd_AIM_120_AMRAAM_M"]; - }; - //Unsung - case "uns_f100b_CAP": - { - _loadout = ["uns_pylonRack_1Rnd_AIM9D","uns_pylonRack_1Rnd_AIM9D","uns_pylonRack_1Rnd_fuel_f100","uns_pylonRack_1Rnd_fuel_f100","uns_pylonRack_1Rnd_AIM9D","uns_pylonRack_1Rnd_AIM9D","uns_pylonRack_1Rnd_fuel_f100"]; - }; - case "uns_F4E_CAP": - { - _loadout = ["uns_pylonRack_1Rnd_fuel_f4","uns_pylonRack_1Rnd_fuel_f4","","","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM9E","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_AIM7","uns_pylonRack_1Rnd_fuel_f4"]; - }; - case "uns_Mig21_CAP": - { - _loadout = ["uns_pylonRack_1Rnd_K13","uns_pylonRack_1Rnd_K13","uns_pylonRack_1Rnd_K13","uns_pylonRack_1Rnd_K13","uns_pylonRack_1rnd_fuel_mig21","uns_pylonRack_1rnd_fuel_mig21","uns_pylonRack_1rnd_fuel_mig21"]; + private _configPath = configFile >> "A3A" >> "Loadouts" >> "CAPPlane" >> typeOf _plane; - }; - //SEAD but no other Ground Weapons so AA - case "Tornado_AWS_ecr_ger": - { - _loadout = ["Tornado_AWS_AIRCMpod_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","","FIR_AGM88_P_1rnd_M","FIR_AGM88_P_1rnd_M","","","","Tornado_AWS_fuelsmall_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_ECMpod_1rnd_M","",""]; - }; - case "Tornado_AWS_GER": - { - _loadout = ["Tornado_AWS_AIRCMpod_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_Litening_std_P_1rnd_M","FIR_Brimstone_type1_P_3rnd_M","FIR_Brimstone_type1_P_3rnd_M","FIR_GBU12_P_1rnd_M","FIR_Brimstone_type2_P_3rnd_M","FIR_Brimstone_type2_P_3rnd_M","Tornado_AWS_fuelsmall_1rnd_M","FIR_AIM9L_P_1rnd_M","Tornado_AWS_ECMpod_1rnd_M","FIR_BK27_R_M","FIR_BK27_L_M"]; - }; - default - { - Error_1("Plane type %1 currently not supported for AA, please add the case!", typeOf _plane); - }; + if(isNull _configPath) then { + Error_1("%1 has no loadout set", typeOf _plane); }; + + _loadout = getArray(_configPath >> "loadout"); + [_plane, _type] call (compile (getText(_configPath >> "code"))); }; if !(_loadout isEqualTo []) then diff --git a/A3A/addons/core/functions/Base/fn_startBreachVehicle.sqf b/A3A/addons/core/functions/Base/fn_startBreachVehicle.sqf index 79f0175717..005419b2de 100644 --- a/A3A/addons/core/functions/Base/fn_startBreachVehicle.sqf +++ b/A3A/addons/core/functions/Base/fn_startBreachVehicle.sqf @@ -33,7 +33,7 @@ if(side (_aliveCrew select 0) == teamPlayer) exitWith _vehicle removeAction _actionID; }; -private _isTank = (typeOf _vehicle) in FactionGet(all,"vehiclesTanks"); +private _isTank = (typeOf _vehicle) in (FactionGet(all,"vehiclesTanks") + FactionGet(all,"vehiclesHeavyTanks")); private _magazines = magazines _caller; private _magazineArray = []; diff --git a/A3A/addons/core/functions/Builder/fn_buildingPlacer.sqf b/A3A/addons/core/functions/Builder/fn_buildingPlacer.sqf index 2101df9207..211bba8155 100644 --- a/A3A/addons/core/functions/Builder/fn_buildingPlacer.sqf +++ b/A3A/addons/core/functions/Builder/fn_buildingPlacer.sqf @@ -1,7 +1,7 @@ /* Author: [Killerswin2, Hakon (Stole his bb code)] team leader structured placer. Allows teamleaders to gain access to a - rts like camera to place objects. + rts like camera to place objects. Arguments: 1. object that will center placement 2. number that is used for the radius of placement @@ -9,7 +9,7 @@ Return Value: NONE Scope: Client Environment: Unscheduled -Public: +Public: no Example: [player, 100] call A3A_fnc_buildingPlacer.sqf @@ -48,7 +48,7 @@ for "_i" from 1 to 36 do { private _emptyDisplay = findDisplay 46 createDisplay "A3A_teamLeaderBuilder"; A3A_building_EHDB set [BUILD_DISPLAY, _emptyDisplay]; -call (A3A_building_EHDB # UPDATE_BB); +call (A3A_building_EHDB # UPDATE_BB); private _downKeyEH = _emptyDisplay displayAddEventHandler ["KeyDown", { params["_displayOrControl","_key"]; @@ -63,7 +63,7 @@ private _downKeyEH = _emptyDisplay displayAddEventHandler ["KeyDown", { if (_key isEqualTo DIK_R) then { A3A_building_EHDB set [ROTATION_MODE_CW, true]; - }; + }; }]; A3A_building_EHDB set [KEY_DOWN_EH, _downKeyEH]; @@ -79,7 +79,7 @@ private _upKeyEH = _emptyDisplay displayAddEventHandler ["KeyUp", { if (_tempObject distance (A3A_building_EHDB # BUILD_RADIUS_OBJECT_CENTER) > (A3A_building_EHDB # BUILD_RADIUS)) exitwith {}; if (isOnRoad getPosATL _tempObject) exitwith {}; // can't build on roads - + private _price = (A3A_building_EHDB # OBJECT_PRICE); private _supply = (A3A_building_EHDB # AVAILABLE_MONEY); @@ -87,7 +87,7 @@ private _upKeyEH = _emptyDisplay displayAddEventHandler ["KeyUp", { if (_price > _supply) exitWith {}; A3A_building_EHDB set [AVAILABLE_MONEY, _supply - _price]; - ["updateMoney"] call A3A_fnc_teamLeaderRTSPlacerDialog; + ["updateMoney"] call A3A_GUI_fnc_teamLeaderRTSPlacerDialog; private _position = getPosWorld _tempObject; private _dirAndUp = [vectorDir _tempObject, vectorUp _tempObject]; @@ -114,7 +114,7 @@ private _upKeyEH = _emptyDisplay displayAddEventHandler ["KeyUp", { private _buildData = _buildArray deleteAt _objIndex; private _supply = (A3A_building_EHDB # AVAILABLE_MONEY); A3A_building_EHDB set [AVAILABLE_MONEY, _supply + (_buildData#4)]; - ["updateMoney"] call A3A_fnc_teamLeaderRTSPlacerDialog; + ["updateMoney"] call A3A_GUI_fnc_teamLeaderRTSPlacerDialog; }; // Repair @@ -135,7 +135,7 @@ private _upKeyEH = _emptyDisplay displayAddEventHandler ["KeyUp", { private _supply = (A3A_building_EHDB # AVAILABLE_MONEY); if(_price > _supply) exitWith {}; A3A_building_EHDB set [AVAILABLE_MONEY, _supply - _price]; - ["updateMoney"] call A3A_fnc_teamLeaderRTSPlacerDialog; + ["updateMoney"] call A3A_GUI_fnc_teamLeaderRTSPlacerDialog; // Place imitation of repaired building private _oldPos = getPosATL _building; @@ -183,7 +183,7 @@ private _eventHanderEachFrame = addMissionEventHandler ["EachFrame", { private _stateChange = false; private _object = (A3A_building_EHDB # BUILD_OBJECT_TEMP_OBJECT); private _vehiclePos = screenToWorld getMousePosition; - + //change in position if (_object distance2d _vehiclePos > 0.1) then { _stateChange = true; @@ -193,7 +193,7 @@ private _eventHanderEachFrame = addMissionEventHandler ["EachFrame", { private _intersects = lineIntersectsSurfaces [getPosASL A3A_cam, AGLtoASL _vehiclePos, _object, A3A_cam]; private _intersectObj = if (count _intersects > 0) then { _intersects#0#3 } else { objNull }; A3A_building_EHDB set [CURSOR_OBJECT, _intersectObj]; - ["setContextKey", [""]] call A3A_fnc_setupPlacerHints; + ["setContextKey", [""]] call A3A_GUI_fnc_setUpPlacerHints; //((uiNamespace getVariable "A3A_placerHint_display") displayCtrl IDC_PLACERHINT_TEST_TEXT) ctrlSetText str _intersectObj; @@ -209,12 +209,12 @@ private _eventHanderEachFrame = addMissionEventHandler ["EachFrame", { private _bbsize = (boundingBoxReal _building # 1) vectorDiff (boundingBoxReal _building # 0); private _price = 6 * sqrt((_bbsize#0) * (_bbsize#1) * (_bbsize#2)); _price = 10 * round (_price / 10); - ["setContextKey", ["rebuild", _price]] call A3A_fnc_setupPlacerHints; + ["setContextKey", ["rebuild", _price]] call A3A_GUI_fnc_setUpPlacerHints; }; if (_intersectObj in (A3A_building_EHDB # BUILD_OBJECT_TEMP_OBJECT_ARRAY)) then { // show C key - ["setContextKey", ["cancel", getText (configof _intersectObj >> "displayName")]] call A3A_fnc_setupPlacerHints; + ["setContextKey", ["cancel", getText (configof _intersectObj >> "displayName")]] call A3A_GUI_fnc_setUpPlacerHints; }; if (A3A_building_EHDB # ROTATION_MODE_CCW) then { @@ -231,12 +231,12 @@ private _eventHanderEachFrame = addMissionEventHandler ["EachFrame", { _stateChange = true; }; - + if (A3A_building_EHDB # GUI_BUTTON_PRESSED) then { A3A_building_EHDB set [GUI_BUTTON_PRESSED, false]; _stateChange = true; }; - + if (A3A_building_EHDB # SNAP_SURFACE_MODE) then { private _posASL = AGLtoASL _vehiclePos; private _intersects = lineIntersectsSurfaces [_posASL vectorAdd [0,0,100], _posASL vectorAdd [0,0,-100], _object]; @@ -255,11 +255,11 @@ private _eventHanderEachFrame = addMissionEventHandler ["EachFrame", { private _camClampPos = [0,0,0]; _camClampPos set [0, _cameraPos#0 max (_centerPos#0 - _buildRad) min (_centerPos#0 + _buildRad)]; _camClampPos set [1, _cameraPos#1 max (_centerPos#1 - _buildRad) min (_centerPos#1 + _buildRad)]; - + // make the clamp a sphere instead of a weird rectangle _camClampPos set [2, _cameraPos#2 max (_centerPos#2 + 5) min (_centerPos#2 + _buildRad)]; A3A_cam setPosATL _camClampPos; - + // Object render state update if (!_stateChange) exitWith {}; diff --git a/A3A/addons/core/functions/CREATE/fn_AAFroadPatrol.sqf b/A3A/addons/core/functions/CREATE/fn_AAFroadPatrol.sqf index 4b0d4925d1..301a3282db 100644 --- a/A3A/addons/core/functions/CREATE/fn_AAFroadPatrol.sqf +++ b/A3A/addons/core/functions/CREATE/fn_AAFroadPatrol.sqf @@ -33,18 +33,29 @@ private _faction = Faction(_sideX); _typeCar = ""; _typePatrol = "LAND"; -if (_base in seaports) then { +if (_base in seaports) then +{ _typeCar = selectRandom (_faction get "vehiclesGunBoats"); _typePatrol = "SEA"; -} else { - if ( _sideX isEqualTo Invaders || random 10 < tierWar + aggressionOccupants/10) then { +} +else +{ + if ( _sideX isEqualTo Invaders || random 10 < tierWar + aggressionOccupants/10) then + { private _lowAir = _faction getOrDefault ["attributeLowAir", false]; - if (!_lowAir and (_base in airportsX) and (random 1 < 0.5)) exitWith { + if (!_lowAir and (_base in airportsX) and (random 1 < 0.5)) exitWith + { _typeCar = selectRandom (_faction get "vehiclesHelisLight"); + if(count (_faction get "vehiclesAirPatrol") > 0) then + { + _typeCar = selectRandom (_faction get "vehiclesAirPatrol"); + }; _typePatrol = "AIR"; }; _typeCar = selectRandom ((_faction get "vehiclesLightArmed") + (_faction get "vehiclesLightUnarmed")); - } else { + } + else + { _typeCar = selectRandom ((_faction get "vehiclesPolice") + (_faction get "vehiclesMilitiaLightArmed")); }; }; @@ -55,37 +66,37 @@ _posbase = getMarkerPos _base; if (_typePatrol == "AIR") then - { +{ _arrayDestinations = markersX select {sidesX getVariable [_x,sideUnknown] == _sideX}; _distanceX = 200; - } +} else - { +{ if (_typePatrol == "SEA") then - { + { _arrayDestinations = seaMarkers select {(getMarkerPos _x) distance _posbase < 2500}; _distanceX = 100; - } + } else - { + { _arrayDestinations = markersX select {sidesX getVariable [_x,sideUnknown] == _sideX}; _arrayDestinations = [_arrayDestinations,_posBase] call A3A_fnc_patrolDestinations; _distanceX = 50; - }; }; +}; if (count _arrayDestinations < 4) exitWith {}; AAFpatrols = AAFpatrols + 1; if (_typePatrol != "AIR") then - { +{ if (_typePatrol == "SEA") then - { + { _posbase = [_posbase,50,150,10,2,0,0] call BIS_Fnc_findSafePos; - } + } else - { + { _indexX = airportsX find _base; if (_indexX != -1) then { @@ -96,8 +107,8 @@ if (_typePatrol != "AIR") then { _posbase = position ([_posbase] call A3A_fnc_findNearestGoodRoad); }; - }; }; +}; _vehicle=[_posBase, 0,_typeCar, _sideX] call A3A_fnc_spawnVehicle; _veh = _vehicle select 0; @@ -113,26 +124,26 @@ _vehiclesX = _vehiclesX + [_veh]; if (_typeCar in (_faction get "vehiclesLightUnarmed")) then - { +{ sleep 1; _groupX = [_posbase, _sideX, _faction get "groupSentry"] call A3A_fnc_spawnGroup; {_x assignAsCargo _veh;_x moveInCargo _veh; _soldiers pushBack _x; [_x] joinSilent _groupVeh; [_x,"",false] call A3A_fnc_NATOinit} forEach units _groupX; deleteGroup _groupX; - }; +}; //if (_typePatrol == "LAND") then {_veh forceFollowRoad true}; while {alive _veh} do - { +{ if (count _arrayDestinations < 2) exitWith {}; _destinationX = selectRandom _arrayDestinations; if (debug) then {player globalChat format ["Generated AI patrol. Origin %2, destination %1.", _destinationX, _base]; sleep 3}; _posDestination = getMarkerPos _destinationX; if (_typePatrol == "LAND") then - { + { _road = [_posDestination] call A3A_fnc_findNearestGoodRoad; _posDestination = position _road; - }; + }; _Vwp0 = _groupVeh addWaypoint [_posDestination, 0]; _Vwp0 setWaypointType "MOVE"; _Vwp0 setWaypointBehaviour "SAFE"; @@ -143,22 +154,22 @@ while {alive _veh} do waitUntil {sleep 60; (_veh distance _posDestination < _distanceX) or (time > _timeout) or ({[_x] call A3A_fnc_canFight} count _soldiers == 0) or (!canMove _veh)}; if !(_veh distance _posDestination < _distanceX) exitWith {}; if (_typePatrol == "AIR") then - { + { _arrayDestinations = markersX select {sidesX getVariable [_x,sideUnknown] == _sideX}; - } + } else - { + { if (_typePatrol == "SEA") then - { + { _arrayDestinations = seaMarkers select {(getMarkerPos _x) distance position _veh < 2500}; - } + } else - { + { _arrayDestinations = markersX select {sidesX getVariable [_x,sideUnknown] == _sideX}; _arrayDestinations = [_arrayDestinations,position _veh] call A3A_fnc_patrolDestinations; - }; }; }; +}; { [_x] spawn A3A_fnc_VEHDespawner } forEach _vehiclesX; { [_x] spawn A3A_fnc_enemyReturnToBase } forEach _groups; diff --git a/A3A/addons/core/functions/CREATE/fn_AIVEHinit.sqf b/A3A/addons/core/functions/CREATE/fn_AIVEHinit.sqf index e14d2a3607..f9e4a6c286 100644 --- a/A3A/addons/core/functions/CREATE/fn_AIVEHinit.sqf +++ b/A3A/addons/core/functions/CREATE/fn_AIVEHinit.sqf @@ -80,7 +80,7 @@ if (_veh isKindOf "Car" or _veh isKindOf "Tank") then } else { - if ( _typeX in (FactionGet(all,"vehiclesFixedWing") + FactionGet(all,"vehiclesHelis")) ) then + if (_veh isKindOf "Air") then { _veh addEventHandler ["GetIn", { @@ -101,6 +101,12 @@ else _veh addEventHandler ["GetOut", {private ["_veh"];_veh = _this select 0; if ((isTouchingGround _veh) and (isEngineOn _veh)) then {if (side (_this select 2) != teamPlayer) then {if (_veh getVariable "within") then {_veh setVariable ["within",false]; [_veh] call A3A_fnc_smokeCoverAuto}}}}]; _veh addEventHandler ["GetIn", {private ["_veh"];_veh = _this select 0; if (side (_this select 2) != teamPlayer) then {_veh setVariable ["within",true]}}]; }; + _veh addEventHandler ["RopeAttach", { + params ["_object1", "_rope", "_object2"]; + { + [_x, false] remoteExec ["setCaptive", _x]; + } forEach crew _object1; + }]; }; } else @@ -144,7 +150,7 @@ if (_side == Invaders or _side == Occupants) then // Add 1/3 cost to recent casualties list on server private _vehCost = A3A_vehicleResourceCosts getOrDefault [typeof _veh, 0]; - [_veh getVariable "ownerSide", getPos _veh, _vehCost/3] remoteExec ["A3A_fnc_addRecentDamage", 2]; + [_veh getVariable "ownerSide", getPos _veh, _vehCost/3, _source] remoteExec ["A3A_fnc_addRecentDamage", 2]; // Attempt to call for support if there's a crew. Assume local, should be true if !(isNull group _veh) then { [group _veh, _source] spawn A3A_fnc_callForSupport }; diff --git a/A3A/addons/core/functions/CREATE/fn_NATOinit.sqf b/A3A/addons/core/functions/CREATE/fn_NATOinit.sqf index e6253f7dee..ead44da0aa 100644 --- a/A3A/addons/core/functions/CREATE/fn_NATOinit.sqf +++ b/A3A/addons/core/functions/CREATE/fn_NATOinit.sqf @@ -166,7 +166,7 @@ if !(A3A_hasIFA) then private _lamps = _weaponItems arrayIntersect allLightAttachments; if (_lamps isEqualTo []) then { - private _compatibleLamps = ((primaryWeapon _unit) call BIS_fnc_compatibleItems) arrayIntersect allLightAttachments; + private _compatibleLamps = (compatibleItems (primaryWeapon _unit)) arrayIntersect allLightAttachments; if !(_compatibleLamps isEqualTo []) then { _lamp = selectRandom _compatibleLamps; diff --git a/A3A/addons/core/functions/CREATE/fn_attackHQ.sqf b/A3A/addons/core/functions/CREATE/fn_attackHQ.sqf index 95312fa71c..e52e35fbfd 100644 --- a/A3A/addons/core/functions/CREATE/fn_attackHQ.sqf +++ b/A3A/addons/core/functions/CREATE/fn_attackHQ.sqf @@ -20,7 +20,6 @@ params ["_side", "_airbase", "_delay"]; // Side is now specified private _targPos = markerPos "Synd_HQ"; private _faction = Faction(_side); -bigAttackInProgress = true; publicVariable "bigAttackInProgress"; forcedSpawn pushBack "Synd_HQ"; publicVariable "forcedSpawn"; private _taskId = "DEF_HQ" + str A3A_taskCount; diff --git a/A3A/addons/core/functions/CREATE/fn_availableBasesAir.sqf b/A3A/addons/core/functions/CREATE/fn_availableBasesAir.sqf index 7afa50d097..8d669693ae 100644 --- a/A3A/addons/core/functions/CREATE/fn_availableBasesAir.sqf +++ b/A3A/addons/core/functions/CREATE/fn_availableBasesAir.sqf @@ -27,7 +27,8 @@ private _weights = []; if (count (garrison getVariable [_x,[]]) < 16) then {continue}; _freeAirports pushBack _x; - _weights pushBack (1 / (markerPos _x distance2D _targPos)^2); + private _effDist = abs ((markerPos _x distance2D _targPos) - 5000); // prefer mid-distance spawns + _weights pushBack (1 / _effDist^2); } forEach airportsX; // Carrier/air corridor is always available diff --git a/A3A/addons/core/functions/CREATE/fn_createAIAirbase.sqf b/A3A/addons/core/functions/CREATE/fn_createAIAirbase.sqf index 568893f330..7a01b907de 100644 --- a/A3A/addons/core/functions/CREATE/fn_createAIAirbase.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createAIAirbase.sqf @@ -253,12 +253,16 @@ private _ammoBox = if (garrison getVariable [_markerX + "_lootCD", 0] == 0) then // Otherwise when destroyed, ammoboxes sink 100m underground and are never cleared up _ammoBox addEventHandler ["Killed", { [_this#0] spawn { sleep 10; deleteVehicle (_this#0) } }]; [_ammoBox] spawn A3A_fnc_fillLootCrate; - [_ammoBox] call A3A_Logistics_fnc_addLoadAction; + [_ammoBox, nil, true] call A3A_Logistics_fnc_addLoadAction; [_ammoBox] spawn { sleep 1; //make sure fillLootCrate finished clearing the crate { - _this#0 addItemCargoGlobal [_x, round random [5,15,15]]; + if (getText(configFile >> "CfgVehicles" >> _x >> "vehicleClass") isEqualTo "Backpacks") then { + _this#0 addBackpackCargoGlobal [_x, round random [5,15,15]]; + } else { + _this#0 addItemCargoGlobal [_x, round random [5,15,15]]; + }; } forEach (A3A_faction_reb get "flyGear"); }; _ammoBox; @@ -267,7 +271,13 @@ private _ammoBox = if (garrison getVariable [_markerX + "_lootCD", 0] == 0) then if (!_busy) then { - private _vehTypesHeavy = (_faction get "vehiclesLightAPCs") + (_faction get "vehiclesAPCs") + (_faction get "vehiclesIFVs") + (_faction get "vehiclesLightTanks") + (_faction get "vehiclesTanks"); + private _vehTypesHeavy = + (_faction get "vehiclesLightAPCs") + + (_faction get "vehiclesAPCs") + + (_faction get "vehiclesIFVs") + + (_faction get "vehiclesLightTanks") + + (_faction get "vehiclesTanks") + + (_faction get "vehiclesHeavyTanks"); for "_i" from 1 to (round (random 2)) do { _spawnParameter = [_markerX, "Vehicle"] call A3A_fnc_findSpawnPosition; @@ -286,7 +296,14 @@ if (!_busy) then }; }; -private _vehTypesLight = (_faction get "vehiclesLightArmed") + (_faction get "vehiclesLightUnarmed") + (_faction get "vehiclesTrucks") + (_faction get "vehiclesAmmoTrucks") + (_faction get "vehiclesRepairTrucks") + (_faction get "vehiclesFuelTrucks") + (_faction get "vehiclesMedical"); +private _vehTypesLight = + (_faction get "vehiclesLightArmed") + + (_faction get "vehiclesLightUnarmed") + + (_faction get "vehiclesTrucks") + + (_faction get "vehiclesAmmoTrucks") + + (_faction get "vehiclesRepairTrucks") + + (_faction get "vehiclesFuelTrucks") + + (_faction get "vehiclesMedical"); _countX = 0; while {_countX < _nVeh && {_countX < 3}} do diff --git a/A3A/addons/core/functions/CREATE/fn_createAIOutposts.sqf b/A3A/addons/core/functions/CREATE/fn_createAIOutposts.sqf index eb5328afb9..1525eccc7f 100644 --- a/A3A/addons/core/functions/CREATE/fn_createAIOutposts.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createAIOutposts.sqf @@ -155,7 +155,7 @@ private _ammoBox = if (garrison getVariable [_markerX + "_lootCD", 0] == 0) then // Otherwise when destroyed, ammoboxes sink 100m underground and are never cleared up _ammoBox addEventHandler ["Killed", { [_this#0] spawn { sleep 10; deleteVehicle (_this#0) } }]; [_ammoBox] spawn A3A_fnc_fillLootCrate; - [_ammoBox] call A3A_Logistics_fnc_addLoadAction; + [_ammoBox, nil, true] call A3A_Logistics_fnc_addLoadAction; if (_markerX in seaports) then { [_ammoBox] spawn { diff --git a/A3A/addons/core/functions/CREATE/fn_createAIcontrols.sqf b/A3A/addons/core/functions/CREATE/fn_createAIcontrols.sqf index 6821d2a80c..4e2f92c820 100644 --- a/A3A/addons/core/functions/CREATE/fn_createAIcontrols.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createAIcontrols.sqf @@ -74,7 +74,7 @@ if (_isControl) then if !(A3A_hasIFA) then { _pos = [getPos (_roads select 0), 7, _dirveh + 270] call BIS_Fnc_relPos; - if (worldname == "SPE_Normandy") then { + if ((worldname == "SPE_Normandy") or (worldname == "SPE_Mortain")) then { _bunker = "Land_SPE_Sandbag_Nest" createVehicle _pos; _bunker setDir _dirveh; _pos = _bunker modelToWorld [-0.200684,-0.91333,-0.421184]; @@ -97,7 +97,7 @@ if (_isControl) then _soldiers pushBack _unit; sleep 1; _pos = [getPos (_roads select 0), 7, _dirveh + 90] call BIS_Fnc_relPos; - if (worldname == "SPE_Normandy") then { + if ((worldname == "SPE_Normandy") or (worldname == "SPE_Mortain")) then { _bunker = "Land_SPE_Sandbag_Nest" createVehicle _pos; _bunker setDir _dirveh + 180; _pos = _bunker modelToWorld [-0.200684,-0.91333,-0.421184]; diff --git a/A3A/addons/core/functions/CREATE/fn_createAttackForceLand.sqf b/A3A/addons/core/functions/CREATE/fn_createAttackForceLand.sqf index 9edb19938a..beb145d4c7 100644 --- a/A3A/addons/core/functions/CREATE/fn_createAttackForceLand.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createAttackForceLand.sqf @@ -14,6 +14,7 @@ Arguments: Number of attack/support vehicles to create Optional, tier modifier to apply to vehicle selection (Default: 0) Optional, troop type to use (Default: "Normal") + Optional, true to only use tanks (Default: false) Return array: Resources spent @@ -24,7 +25,7 @@ Return array: #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -params ["_side", "_base", "_target", "_resPool", "_vehCount", "_vehAttackCount", ["_tierMod", 0]]; +params ["_side", "_base", "_target", "_resPool", "_vehCount", "_vehAttackCount", ["_tierMod", 0], ["_troopType", "Normal"], ["_tanksOnly", false]]; private _targpos = if (_target isEqualType []) then { _target } else { markerPos _target }; private _transportRatio = 1 - _vehAttackCount / _vehCount; @@ -34,7 +35,7 @@ private _crewGroups = []; private _cargoGroups = []; private _transportPool = [_side, tierWar+_tierMod] call A3A_fnc_getVehiclesGroundTransport; -private _supportPool = [_side, tierWar+_tierMod] call A3A_fnc_getVehiclesGroundSupport; +private _supportPool = [_side, tierWar+_tierMod, _tanksOnly] call A3A_fnc_getVehiclesGroundSupport; private _numTransports = 0; private _isTransport = _vehAttackCount < _vehCount; // normal case, first vehicle should be a transport @@ -43,7 +44,7 @@ private _landPosBlacklist = []; for "_i" from 1 to _vehCount do { private _vehType = selectRandomWeighted ([_supportPool, _transportPool] select _isTransport); - private _vehData = [_vehType, "Normal", _resPool, _landPosBlacklist, _side, _base, _targPos] call A3A_fnc_createAttackVehicle; + private _vehData = [_vehType, _troopType, _resPool, _landPosBlacklist, _side, _base, _targPos] call A3A_fnc_createAttackVehicle; if !(_vehData isEqualType []) exitWith { Error_1("Failed to spawn land vehicle at marker %1", _base); }; // couldn't create for some reason, assume we're out of spawn places? diff --git a/A3A/addons/core/functions/CREATE/fn_createAttackVehicle.sqf b/A3A/addons/core/functions/CREATE/fn_createAttackVehicle.sqf index 1e2e74121f..67bf19763f 100644 --- a/A3A/addons/core/functions/CREATE/fn_createAttackVehicle.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createAttackVehicle.sqf @@ -58,7 +58,8 @@ if (_expectedCargo >= 2 and !_isAttackHeli) then } forEach ("true" configClasses (_config >> "Turrets")); }; private _cargoTurrets = []; - if !(_vehicleType in ["LIB_C47_Skytrain", "LIB_C47_RAF"]) then { +private _blacklistTypes = ["LIB_Li2","LIB_C47_RAF","LIB_C47_Skytrain","LIB_C47_RAF_bob","LIB_C47_RAF_snafu"]; + if !(_vehicleType in _blacklistTypes) then { [configFile >> "CfgVehicles" >> _vehicleType] call _fnc_addCargoTurrets; }; diff --git a/A3A/addons/core/functions/CREATE/fn_createVehicleQRFBehaviour.sqf b/A3A/addons/core/functions/CREATE/fn_createVehicleQRFBehaviour.sqf index 039f2de44c..db3cfce435 100644 --- a/A3A/addons/core/functions/CREATE/fn_createVehicleQRFBehaviour.sqf +++ b/A3A/addons/core/functions/CREATE/fn_createVehicleQRFBehaviour.sqf @@ -74,6 +74,7 @@ else // ground vehicle private _typeName = call { if (_vehType in FactionGet(all,"vehiclesTanks")) exitWith {"Tank"}; if (_vehType in FactionGet(all,"vehiclesLightTanks")) exitWith {"Tank"}; + if (_vehType in FactionGet(all,"vehiclesHeavyTanks")) exitWith {"Tank"}; if (_vehType in FactionGet(all,"vehiclesAA")) exitWith {"AA"}; if (_vehType in FactionGet(all,"vehiclesArmor")) exitWith {"APC"}; if (_vehType in FactionGet(all,"vehiclesTrucks")) exitWith {"Truck"}; @@ -137,7 +138,7 @@ else // ground vehicle //Set the waypoints for cargoGroup private _cargoWP0 = _cargoGroup addWaypoint [_landpos, 0]; - _cargoWP0 setWaypointType "GETOUT"; + //_cargoWP0 setWaypointType "GETOUT"; _cargoWP0 setWaypointStatements ["true", "if !(local this) exitWith {}; (group this) leaveVehicle (assignedVehicle this); (group this) spawn A3A_fnc_attackDrillAI"]; private _cargoWP1 = _cargoGroup addWaypoint [_posDestination, 0]; _cargoWP1 setWaypointBehaviour "AWARE"; @@ -169,7 +170,7 @@ else // ground vehicle //Set the waypoints for cargoGroup private _cargoWP0 = _cargoGroup addWaypoint [_landpos, 0]; - _cargoWP0 setWaypointType "GETOUT"; + //_cargoWP0 setWaypointType "GETOUT"; _cargoWP0 setWaypointStatements ["true", "if !(local this) exitWith {}; (group this) leaveVehicle (assignedVehicle this); (group this) spawn A3A_fnc_attackDrillAI"]; private _cargoWP1 = _cargoGroup addWaypoint [_posDestination, 0]; _cargoWP1 setWaypointBehaviour "AWARE"; diff --git a/A3A/addons/core/functions/CREATE/fn_invaderPunish.sqf b/A3A/addons/core/functions/CREATE/fn_invaderPunish.sqf index 7139b32a09..f6f0ab7a9d 100644 --- a/A3A/addons/core/functions/CREATE/fn_invaderPunish.sqf +++ b/A3A/addons/core/functions/CREATE/fn_invaderPunish.sqf @@ -19,8 +19,6 @@ params ["_mrkDest", "_mrkOrigin", "_delay"]; ServerInfo_2("Launching CSAT Punishment Against %1 from %2", _mrkDest, _mrkOrigin); -// Mostly to prevent fast travel -bigAttackInProgress = true; publicVariable "bigAttackInProgress"; forcedSpawn pushBack _mrkDest; publicVariable "forcedSpawn"; private _posDest = getMarkerPos _mrkDest; diff --git a/A3A/addons/core/functions/CREATE/fn_patrolReinf.sqf b/A3A/addons/core/functions/CREATE/fn_patrolReinf.sqf index 29c319944a..0f08ef20bd 100644 --- a/A3A/addons/core/functions/CREATE/fn_patrolReinf.sqf +++ b/A3A/addons/core/functions/CREATE/fn_patrolReinf.sqf @@ -88,7 +88,8 @@ else _returnWP setWaypointStatements ["true", "if (!local this or !alive this) exitWith {}; deleteVehicle (vehicle this); {deleteVehicle _x} forEach thisList"]; _getoutWP = _cargoGroup addWaypoint [_landpos, 0]; - _getoutWP setWaypointType "GETOUT"; + //_getoutWP setWaypointType "GETOUT"; + _getoutWP setWaypointStatements ["true", "if !(local this) exitWith {}; (group this) leaveVehicle (assignedVehicle this)"]; _reinfWP = _cargoGroup addWaypoint [_posDest, 0]; _reinfWP setWaypointBehaviour "AWARE"; _landWP synchronizeWaypoint [_getoutWP]; diff --git a/A3A/addons/core/functions/CREATE/fn_vehKilledOrCaptured.sqf b/A3A/addons/core/functions/CREATE/fn_vehKilledOrCaptured.sqf index a67d774843..fde65d3207 100644 --- a/A3A/addons/core/functions/CREATE/fn_vehKilledOrCaptured.sqf +++ b/A3A/addons/core/functions/CREATE/fn_vehKilledOrCaptured.sqf @@ -5,11 +5,12 @@ Params: 1. Object: Vehicle object 2. Side: Side of unit that captured or destroyed the vehicle - 2. Bool (default false): True if captured, else destroyed + 3. Bool (default false): True if captured, else destroyed + 4. Object (default objNull): Killer vehicle. Used for passthrough to reaction functions */ #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -params ["_veh", "_sideEnemy", ["_captured", false]]; +params ["_veh", "_sideEnemy", ["_captured", false], ["_killer", objNull]]; private _type = typeof _veh; private _side = _veh getVariable ["ownerSide", teamPlayer]; // default because Zeus @@ -38,7 +39,7 @@ if ((_side == Occupants or _side == Invaders) and _vehCost > 0) then // Vehicle not pre-resourced, deplete both pools [-_vehCost, _side, "legacy"] remoteExecCall ["A3A_fnc_addEnemyResources", 2]; }; - [_side, getPos _veh, 2*_vehCost/3] remoteExec ["A3A_fnc_addRecentDamage", 2]; // other third applied in HandleDamage + [_side, getPos _veh, 2*_vehCost/3, _killer] remoteExec ["A3A_fnc_addRecentDamage", 2]; // other third applied in HandleDamage if (_sideEnemy != teamPlayer) exitWith {}; diff --git a/A3A/addons/core/functions/CREATE/fn_wavedAttack.sqf b/A3A/addons/core/functions/CREATE/fn_wavedAttack.sqf index 75ccc8b6b6..2872acf040 100644 --- a/A3A/addons/core/functions/CREATE/fn_wavedAttack.sqf +++ b/A3A/addons/core/functions/CREATE/fn_wavedAttack.sqf @@ -18,8 +18,6 @@ params ["_mrkDest", "_mrkOrigin", "_maxWaves"]; Info_3("Creating waved attack against %1 from %2 with %3 waves", _mrkDest, _mrkOrigin, _maxWaves); -// TODO: move this to chooseAttack? -bigAttackInProgress = true; publicVariable "bigAttackInProgress"; forcedSpawn pushBack _mrkDest; publicVariable "forcedSpawn"; private _targpos = markerPos _mrkDest; diff --git a/A3A/addons/core/functions/Dialogs/fn_HQGameOptions.sqf b/A3A/addons/core/functions/Dialogs/fn_HQGameOptions.sqf index 259d4c01a8..e469cbaab5 100644 --- a/A3A/addons/core/functions/Dialogs/fn_HQGameOptions.sqf +++ b/A3A/addons/core/functions/Dialogs/fn_HQGameOptions.sqf @@ -6,11 +6,11 @@ Maintainer: Caleb Serafin Authenticated caller must be theBoss or an admin. Arguments: + Player executing the change. Spawn Option Action - -Return Value: - nil. + Amount to adjust by or set [DEFAULT: nil] + False to use hints. True to hide hints [DEFAULT: False] Scope: Server, Global Arguments, Global Effect Environment: Any @@ -23,38 +23,23 @@ Example: params [ ["_player",objNull,[objNull]], ["_option","",[""]], - ["_action","",[""]] + ["_action","",[""]], + ["_amount",nil,[nil,0]], + ["_noHints",false,[false]] ]; #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -//////////////////// -// Authentication // -//////////////////// +if (!isServer) exitWith { + Warning("A3A_fnc_HQGameOptions should be executed on the server."); + _this remoteExecCall ["A3A_fnc_HQGameOptions",2]; +}; + private _optionLocalisationTable = [["maxUnits","distanceSPWN","globalCivilianMax"],[localize "STR_A3A_fn_dialogs_HQGameOptions_AILimit",localize "STR_A3A_fn_dialogs_HQGameOptions_spwnDistance",localize "STR_A3A_fn_dialogs_HQGameOptions_civLimit"]]; private _hintTitle = localize "STR_A3A_fn_dialogs_HQGameOptions_title"; -private _authenticate = _option in ["maxUnits","distanceSPWN","globalCivilianMax"]; - -if (_authenticate && {!(_player == theBoss || admin owner _player > 0 || _player == player)}) exitWith { - [_hintTitle, localize "STR_A3A_fn_dialogs_HQGameOptions_commOnly"+(_optionLocalisationTable#1#(_optionLocalisationTable#0 find _option))] remoteExecCall ["A3A_fnc_customHint",_player]; - Error("ACCESS VIOLATION | "+ name _player + " ["+(getPlayerUID _player) + "] ["+ str owner _player +"] attempted calling restricted backing method "+str _this); - nil; -}; -if (owner _player != remoteExecutedOwner) exitWith { - private _allPlayers = allPlayers; - private _index = _allPlayers findIf {owner _x == remoteExecutedOwner}; - private _realPlayer = objNull; - if (_index != -1) then { - _realPlayer = _allPlayers#_index; - }; - Error("HACKING | "+ name _realPlayer + " ["+(getPlayerUID _realPlayer) + "] ["+ str remoteExecutedOwner +"] attempted impersonating "+ name _player + " ["+(getPlayerUID _player) + "] ["+ str owner _player +"] while calling "+str _this); - nil; -}; -/////////////////////// -// Increase/Decrease // -/////////////////////// -private _processAction = { +// Increase/Decrease/Set +private _fnc_processAction = { params["_option","_action","_upperLimit","_lowerLimit","_adjustmentAmount"]; private _inRange = 2; // 2 for in-range, 0 for low, 1 for high. private _invalid = false; @@ -64,6 +49,11 @@ private _processAction = { switch (_action) do { case "decrease": { if (_originalAmount < _lowerLimit + _adjustmentAmount) then {_inRange = 0}; _adjustmentAmount = -_adjustmentAmount; }; case "increase": { if (_originalAmount > _upperLimit - _adjustmentAmount) then {_inRange = 1}; }; + case "set": { + if (_adjustmentAmount < _lowerLimit) then {_inRange = 0; }; + if (_upperLimit < _adjustmentAmount) then {_inRange = 1; }; + _adjustmentAmount = _adjustmentAmount - _originalAmount; + }; default { _invalid = true; Error("INVALID METHOD | "+ name _player + " ["+(getPlayerUID _player) + "] ["+ str owner _player +"] called invalid backing method "+str _this); @@ -79,9 +69,15 @@ private _processAction = { _hintText = " set to "+str _finalAmount; Info("SET | "+name _player+" ["+ getPlayerUID _player +"] ["+ str owner _player +"] changed "+_optionName+" from " + str _originalAmount +" to " + str _finalAmount); } else { - _hintText = " " + [localize "STR_A3A_fn_dialogs_HQGameOptions_lower", localize "STR_A3A_fn_dialogs_HQGameOptions_upper"] select _inRange + str _originalAmount; + _hintText = " " + ([localize "STR_A3A_fn_dialogs_HQGameOptions_lower", localize "STR_A3A_fn_dialogs_HQGameOptions_upper"] select _inRange) + str _originalAmount; }; + if (_noHints) exitWith { + if (_inRange != 2) then { + Warning(_hintText); + } + }; + private _graphic = "--------------------------------------------------"; private _padding = _graphic; private _graphicLength = count _graphic; @@ -94,14 +90,18 @@ private _processAction = { [_hintTitle, _optionName+_hintText+"
"+_graphic+"
"+_graphicLabel] remoteExecCall ["A3A_fnc_customHint",_player]; }; -////////////////////////// -// ADD NEW OPTIONS HERE // -////////////////////////// +private _fnc_valueOrDefault = { + params [["_value", _this#1]]; + _value; +}; + + +// ADD NEW OPTIONS HERE switch (_option) do { - case "maxUnits": { [_option,_action,200,80,10] call _processAction; }; - case "globalCivilianMax": { [_option,_action,150,0,1] call _processAction; }; + //case "maxUnits": { [_option,_action,200,80,[_amount,10] call _fnc_valueOrDefault] call _fnc_processAction; }; + case "globalCivilianMax": { [_option,_action,150,0,[_amount,1] call _fnc_valueOrDefault] call _fnc_processAction; }; case "distanceSPWN": { // So close to generalising all of this away 😥, but then: - [_option,_action,2000,600,100] call _processAction; + [_option,_action,2000,600,[_amount,100] call _fnc_valueOrDefault] call _fnc_processAction; distanceSPWN1 = distanceSPWN * 1.3; distanceSPWN2 = distanceSPWN /2; publicVariable "distanceSPWN1"; diff --git a/A3A/addons/core/functions/Dialogs/fn_calculateFastTravelCost.sqf b/A3A/addons/core/functions/Dialogs/fn_calculateFastTravelCost.sqf new file mode 100644 index 0000000000..7d54a17788 --- /dev/null +++ b/A3A/addons/core/functions/Dialogs/fn_calculateFastTravelCost.sqf @@ -0,0 +1,119 @@ +/* +Maintainer: Caleb Serafin + Calculates the monetary and time cost of fast travel. + Note: Your code is responsible for to handling the money. That should happen on server in unscheduled execution to avoid the lost update problem. + Time is capped to 60 seconds. + +Arguments: + Player who orders fast travel. objNull skips discounts. + > Things being fast travelled. + Destination. + +Return Value: + Total Money and Max Time cost tuple. + +Scope: Any, Global Arguments, No Effect +Environment: Any +Public: Yes + +Example: + [player, [vehicle player], getPos _petrosWhitePowderHouse] call A3A_fnc_calculateFastTravelCost params ["_fastTravelCost","_fastTravelTime"]; + FUNCMAIN(calculateFastTravelCost) +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() +params [ + ["_initiator", objNull, [objNull]], + ["_things", objNull, [objNull, grpNull, []]], + ["_destination", nil, [[]], [2,3]] // Rather than using [0,0] as default for destination. We will explicitly log errors when nothing is passed. +]; +if (isNil "_destination") exitWith { + Error("_destination was nil"); +}; +if (_things isEqualType objNull || _things isEqualType grpNull) then { + _things = [_things]; +}; + +/* +Goal: +Encourage players to touch grass and perform infantry guerrilla tactics easily + +Methods: +Should be ultra affordable on foot. (free tier?) +Should be less affordable in vehicles. +Should be premium with cargo or towing. + + +"premium" is expensive enough to make players consider driving and risking interception by roadblock +We can probably balance based on mission radius, as ft outside that will more rare. +If only infantry are fast travelling, we could reduce the enemy-block-radius for towns. Since infantry should be able to slip in undetected. +Like ft players into building garrison positions. +*/ +private _distanceReference = distanceMission; + +private _costPerKmForInfantry = 0.0; +private _costPerKmForVehicle = 100.0 / _distanceReference; +private _costPerKmForCargo = 200.0 / _distanceReference; // For HR logistics cargo, ACE cargo and towing, DOES NOT include the vehicle or person hauling the cargo. + +private _secondsPerKmForInfantry = 1.0 / _distanceReference; +private _secondsPerKmForVehicle = 5.0 / _distanceReference; +private _secondsPerKmForCargo = 20.0 / _distanceReference; + +// Get all cargo that is being fast travelled. +private _allObjectCargo = []; +private _allInfantryCargo = []; +{ + // ToDo Get cargo of thing here + private _objectCargo = []; + private _infantryCargo = crew _x; + // Add to accumulators. + _allInfantryCargo append _infantryCargo; + { _allObjectCargo pushBack _x; } forEach _objectCargo; +} forEach _things; + +// Remove object cargo from things. (It gets special pricing) +_things = _things - _allObjectCargo; + +// Add infantry to things. There is no unique version of merge. +{ _things pushBackUnique _x } forEach _allInfantryCargo; + +// Calculate cost of things. +private _totalCost = 0.0; +private _longestTime = 0.0; +{ + private _distance = _x distance2D _destination; + private _cost = 0.0; + private _time = 0.0; + if (_x isKindOf "Man") then { + _cost = _distance * _costPerKmForInfantry; + _time = _distance * _secondsPerKmForInfantry; + } else { // If any other vehicle + _cost = _distance * _costPerKmForVehicle; + _time = _distance * _secondsPerKmForVehicle; + }; + + _totalCost = _totalCost + _cost; + if (_longestTime < _time) then { + _longestTime = _time; + } +} forEach _things; + +// Calculate cost of cargo. +{ + private _distance = _x distance2D _destination; + private _cost = _distance * _costPerKmForCargo; + private _time = _distance * _secondsPerKmForCargo; + + _totalCost = _totalCost + _cost; + if (_longestTime < _time) then { + _longestTime = _time; + } +} forEach _allObjectCargo; + +// Round +_totalCost = ceil _totalCost; +// Cap +_longestTime = _longestTime min 60.0; + +// Return +[_totalCost, _longestTime]; diff --git a/A3A/addons/core/functions/Dialogs/fn_canFastTravel.sqf b/A3A/addons/core/functions/Dialogs/fn_canFastTravel.sqf new file mode 100644 index 0000000000..85893c006b --- /dev/null +++ b/A3A/addons/core/functions/Dialogs/fn_canFastTravel.sqf @@ -0,0 +1,39 @@ +/* +Maintainer: Caleb Serafin + REAL CHECKING NOT IMPLEMENTED YET. A3A_fnc_fastTravelRadio still responsible for actual checks. Arguments will change. + Checks whether a player can fast travel. Does not check financials. + If destination is provided: travel to there will also be verified. + returns tuple of isAllowed and list of reasons why not. + +Arguments: + Player who orders fast travel. objNull skips permissions. + | | > Thing(s) being fast travelled. + Optionally specify destination. [DEFAULT = nil] + +Return Value: + > If fast travel is allowed and reasons why not. + +Scope: Any, Global Arguments, No Effect +Environment: Any +Public: Yes + +Example: + [player, player] call A3A_fnc_canFastTravel params ["_isFastTravelAllowed","_fastTravelBlockers"]; + if (!_isFastTravelAllowed) exitWith { + { systemChat _x } foreach _fastTravelBlockers; + } + [] call A3A_fnc_fastTravelRadio; +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() +params [ + ["_player", objNull, [objNull]], + ["_things", objNull, [objNull, grpNull, []]], + ["_destination", nil, [[]], [2,3]] +]; +if (_things isEqualType objNull || _things isEqualType grpNull) then { + _things = [_things]; +}; + +[true,[]]; + diff --git a/A3A/addons/core/functions/Dialogs/fn_fastTravelRadio.sqf b/A3A/addons/core/functions/Dialogs/fn_fastTravelRadio.sqf index a7508b65e7..9cb864ec5c 100644 --- a/A3A/addons/core/functions/Dialogs/fn_fastTravelRadio.sqf +++ b/A3A/addons/core/functions/Dialogs/fn_fastTravelRadio.sqf @@ -1,33 +1,38 @@ //TODO: add header +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + private ["_roads","_pos","_positionX","_groupX"]; private _titleStr = localize "STR_A3A_fn_dialogs_ftradio_title"; +if (limitedFT == 2) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_param"] call A3A_fnc_customHint;}; + _markersX = markersX + [respawnTeamPlayer]; _esHC = false; if (count hcSelected player > 1) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_grp_select"] call A3A_fnc_customHint;}; if (count hcSelected player == 1) then {_groupX = hcSelected player select 0; _esHC = true} else {_groupX = group player}; _checkForPlayer = false; -if ((!_esHC) and limitedFT) then {_checkForPlayer = true}; +if ((!_esHC) and (limitedFT == 1)) then {_checkForPlayer = true}; _boss = leader _groupX; if ((_boss != player) and (!_esHC)) then {_groupX = player}; -if (({isPlayer _x} count units _groupX > 1) and (_esHC)) +if (({isPlayer _x} count units _groupX > 1) and (_esHC)) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_command"] call A3A_fnc_customHint;}; -if (player != player getVariable ["owner",player]) +if (player != player getVariable ["owner",player]) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_control"] call A3A_fnc_customHint;}; -if (!_esHC and !isNil {vehicle player getVariable "SA_Tow_Ropes"}) +if (!_esHC and !isNil {vehicle player getVariable "SA_Tow_Ropes"}) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_tow"] call A3A_fnc_customHint;}; -if (!isNil "A3A_FFPun_Jailed" && {(getPlayerUID player) in A3A_FFPun_Jailed}) +if (!isNil "A3A_FFPun_Jailed" && {(getPlayerUID player) in A3A_FFPun_Jailed}) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_ff"] call A3A_fnc_customHint;}; _checkX = false; -//_distanceX = 500 - (([_boss,false] call A3A_fnc_fogCheck) * 450); + {if ([getPosATL _x] call A3A_fnc_enemyNearCheck) exitWith {_checkX = true}} forEach units _groupX; if (_checkX) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_enemy1"] call A3A_fnc_customHint;}; @@ -54,18 +59,18 @@ _positionTel = positionTel; if (count _positionTel > 0) then { _base = [_markersX, _positionTel] call BIS_Fnc_nearestPosition; - if (_checkForPlayer and ((_base != "SYND_HQ") and !(_base in airportsX))) + if (_checkForPlayer and ((_base != "SYND_HQ") and !(_base in airportsX))) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_onlyhq"] call A3A_fnc_customHint;}; - if ((sidesX getVariable [_base,sideUnknown] == Occupants) or (sidesX getVariable [_base,sideUnknown] == Invaders)) + if ((sidesX getVariable [_base,sideUnknown]) in [Occupants, Invaders]) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_enemy2"] call A3A_fnc_customHint; openMap [false,false]}; - if (_base in forcedSpawn) + if (_base in forcedSpawn) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_attack1"] call A3A_fnc_customHint; openMap [false,false]}; //if (_base in outpostsFIA) exitWith {hint "You cannot Fast Travel to roadblocks and watchposts"; openMap [false,false]}; - if ([getMarkerPos _base] call A3A_fnc_enemyNearCheck) + if ([getMarkerPos _base] call A3A_fnc_enemyNearCheck) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_ftradio_no_attack2"] call A3A_fnc_customHint; openMap [false,false]}; - if (!(player call A3A_fnc_isMember || player == theBoss) && {!([_positionTel] call A3A_fnc_playerLeashCheckPosition)}) + if (!(player call A3A_fnc_isMember || player == theBoss) && {!([_positionTel] call A3A_fnc_playerLeashCheckPosition)}) exitWith {[_titleStr, format [localize "STR_A3A_fn_dialogs_ftradio_no_members", ceil (memberDistance/1e3)]] call A3A_fnc_customHint;}; if (_positionTel distance getMarkerPos _base < 50) then @@ -75,33 +80,41 @@ if (count _positionTel > 0) then //if (!_esHC) then {disableUserInput true; cutText ["Fast traveling, please wait","BLACK",2]; sleep 2;} else {hcShowBar false;hcShowBar true;hint format ["Moving group %1 to destination",groupID _groupX]; sleep _distanceX;}; _forcedX = false; if (!isMultiplayer) then {if (not(_base in forcedSpawn)) then {_forcedX = true; forcedSpawn = forcedSpawn + [_base]}}; - if (!_esHC) then {disableUserInput true; cutText [format [localize "STR_A3A_fn_dialogs_fastTravelRadio_begin", _distanceX],"BLACK",1]; sleep 1;} - else {[_titleStr, format [localize "STR_A3A_fn_dialogs_ftradio_grp_moving",groupID _groupX]] call A3A_fnc_customHint; sleep _distanceX;}; + if (!_esHC) then { + disableUserInput true; + cutText [format [localize "STR_A3A_fn_dialogs_fastTravelRadio_begin", ([[_distanceX] call A3A_fnc_secondsToTimeSpan,0,0,false,2] call A3A_fnc_timeSpan_format)],"BLACK",1]; + sleep 1; + } else { + [_titleStr, format [localize "STR_A3A_fn_dialogs_ftradio_grp_moving",groupID _groupX]] call A3A_fnc_customHint; + sleep _distanceX; + }; if (!_esHC) then { _timePassed = 0; while {_timePassed < _distanceX} do { - cutText [format [localize "STR_A3A_fn_dialogs_fastTravelRadio_begin", (_distanceX - _timePassed)],"BLACK",0.0001]; + cutText [format [localize "STR_A3A_fn_dialogs_fastTravelRadio_begin", ([[_distanceX - _timePassed] call A3A_fnc_secondsToTimeSpan,0,0,false,2] call A3A_fnc_timeSpan_format)],"BLACK",0.0001]; sleep 1; _timePassed = _timePassed + 1; } }; _exit = false; - if (limitedFT) then + if (limitedFT == 1) then { _vehicles = []; {if (vehicle _x != _x) then {_vehicles pushBackUnique (vehicle _x)}} forEach units _groupX; {if ((vehicle _x) in _vehicles) exitWith {_checkForPlayer = true}} forEach (call A3A_fnc_playableUnits); }; - if (_checkForPlayer and ((_base != "SYND_HQ") and !(_base in airportsX))) + if (_checkForPlayer and ((_base != "SYND_HQ") and !(_base in airportsX))) exitWith {[_titleStr, format [localize "STR_A3A_fn_dialogs_ftradio_cancelled",groupID _groupX]] call A3A_fnc_customHint;}; + private _ftUnits = []; { _unit = _x; if ((!isPlayer _unit) or (_unit == player)) then { //_unit hideObject true; _unit allowDamage false; + _ftUnits pushBack _unit; if (_unit != vehicle _unit) then { if (driver vehicle _unit == _unit) then @@ -149,7 +162,7 @@ if (count _positionTel > 0) then if (_forcedX) then {forcedSpawn = forcedSpawn - [_base]}; [] call A3A_fnc_playerLeashRefresh; sleep 5; - {_x allowDamage true} forEach units _groupX; + {_x allowDamage true} forEach _ftUnits; } else { diff --git a/A3A/addons/core/functions/Dialogs/fn_moveHQObject.sqf b/A3A/addons/core/functions/Dialogs/fn_moveHQObject.sqf deleted file mode 100644 index d3604c6945..0000000000 --- a/A3A/addons/core/functions/Dialogs/fn_moveHQObject.sqf +++ /dev/null @@ -1,105 +0,0 @@ -//TODO: add header - -#include "..\..\script_component.hpp" -FIX_LINE_NUMBERS() -private ["_thingX","_playerX","_id","_isStatic","_sites","_markerX","_size","_positionX"]; -private _titleStr = localize "STR_A3A_fn_dialogs_movehqobj_title"; - -_thingX = _this select 0; -_playerX = _this select 1; -_id = _this select 2; -_isStatic = (_thingX isKindOf "StaticWeapon"); - -if (!_isStatic && player != theBoss) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_commander"] call A3A_fnc_customHint;}; -if (!(isNull attachedTo _thingX)) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_already"] call A3A_fnc_customHint;}; -if (vehicle _playerX != _playerX) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_vehicle"] call A3A_fnc_customHint;}; - -if (([_playerX] call A3A_fnc_countAttachedObjects) > 0) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_attached"] call A3A_fnc_customHint;}; - -_sites = markersX select {sidesX getVariable [_x,sideUnknown] == teamPlayer}; -_markerX = [_sites,_playerX] call BIS_fnc_nearestPosition; -_size = [_markerX] call A3A_fnc_sizeMarker; -_positionX = getMarkerPos _markerX; -if (_playerX distance2D _positionX > _size) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_closer"] call A3A_fnc_customHint;}; - -if (captive _playerX) then { _playerX setCaptive false }; - -_thingX setVariable ["objectBeingMoved", true]; -if !(_isStatic) then { _thingX removeAction _id }; -if (_isStatic) then { _thingX lock true }; - -if (isNil {_thingX getVariable "A3A_originalMass"}) then { _thingX setVariable ["A3A_originalMass", getMass _thingX] }; -[_thingX, 1e-12] remoteExecCall ["setMass", 0]; - -private _spacing = 2 max (1 - (boundingBoxReal _thingX select 0 select 1)); -private _height = 0.1 - (boundingBoxReal _thingX select 0 select 2); -_thingX attachTo [_playerX, [0, _spacing, _height]]; - -private _fnc_placeObject = { - params [["_thingX", objNull], ["_playerX", objNull], ["_dropObjectActionIndex", -1]]; - - if (isNull _thingX) exitWith {Error("trying to place invalid HQ object")}; - if (isNull _playerX) exitWith {Error("trying to place HQ object with invalid player")}; - - if (!(_thingX getVariable ["objectBeingMoved", false])) exitWith {}; - - if (_playerX == attachedTo _thingX) then { - _playerX setVelocity [0,0,0]; - _thingX setVelocity [0,0,0]; - detach _thingX; - }; - - if (_dropObjectActionIndex != -1) then { - _playerX removeAction _dropObjectActionIndex; - }; - - // Can't find a case where this is ever true, but we'll make sure - if (local _thingX) then { - if (isNull group _thingX) then { [_thingX, 2] remoteExec ["setOwner", 2] } - else { [group _thingX, 2] remoteExec ["setGroupOwner", 2] }; - }; - - // Some objects never lose (and even regain) their velocity when detached, becoming lethal - // On a DS, object locality changes when detached, so we have to remoteexec - [_thingX, [0,0,0]] remoteExec ["setVelocity", _thingX]; - - // Without this, non-unit objects often hang in mid-air - [_thingX, surfaceNormal position _thingX] remoteExec ["setVectorUp", _thingX]; - - // Place on closest surface - private _pos = getPosASL _thingX; - private _intersects = lineIntersectsSurfaces [_pos, _pos vectorAdd [0,0,-100], _thingX]; - if (count _intersects > 0) then { - _thingX setPosASL (_intersects select 0 select 0); - }; - - // _thingX setPosATL [getPosATL _thingX select 0,getPosATL _thingX select 1,0.1]; - - if (_thingX isKindOf "StaticWeapon") then { _thingX lock false }; - - _thingX setVariable ["objectBeingMoved", false]; - - [_thingX, _thingX getVariable "A3A_originalMass"] remoteExecCall ["setMass", _thingX]; -}; - -private _actionX = _playerX addAction [localize "STR_A3A_fn_dialogs_movehqobj_addact_drop", { - (_this select 3) params ["_thingX", "_fnc_placeObject"]; - - [_thingX, player, (_this select 2)] call _fnc_placeObject; -}, [_thingX, _fnc_placeObject],6,true,true,"",""]; - -waitUntil {sleep 1; - (_playerX != attachedTo _thingX) - or (vehicle _playerX != _playerX) - or (_playerX distance2D _positionX > (_size-3)) - or !([_playerX] call A3A_fnc_canFight) - or (!isPlayer _playerX) - or (_isStatic and {count crew _thingX > 0}) -}; - -[_thingX, _playerX, _actionX] call _fnc_placeObject; -if !(_isStatic) then { _thingX addAction [localize "STR_A3A_fn_dialogs_movehqobj_addact_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)"] }; - -if (vehicle _playerX != _playerX) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_vehicle"] call A3A_fnc_customHint;}; - -if (_playerX distance2D _positionX > _size) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_movehqobj_no_far"] call A3A_fnc_customHint;}; diff --git a/A3A/addons/core/functions/Dialogs/fn_skiptime.sqf b/A3A/addons/core/functions/Dialogs/fn_skiptime.sqf index 2753d080af..5be18bc2e1 100644 --- a/A3A/addons/core/functions/Dialogs/fn_skiptime.sqf +++ b/A3A/addons/core/functions/Dialogs/fn_skiptime.sqf @@ -3,7 +3,6 @@ private _titleStr = localize "STR_A3A_fn_dialogs_skiptime_title"; if (player!= theBoss) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_skiptime_no_commander"] call A3A_fnc_customHint;}; -_presente = false; private _rebelSpawners = units teamPlayer select { _x getVariable ["spawner",false] }; private _presente = (-1 != (_rebelSpawners findIf { [getPosATL _x] call A3A_fnc_enemyNearCheck })); @@ -12,12 +11,29 @@ if ("rebelAttack" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn if ("invaderPunish" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_skiptime_no_civatt"] call A3A_fnc_customHint;}; if ("DEF_HQ" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_skiptime_no_hqatt"] call A3A_fnc_customHint;}; -_checkX = false; -_posHQ = getMarkerPos respawnTeamPlayer; +private _absentPlayers = []; +private _posHQ = getMarkerPos respawnTeamPlayer; { -if ((_x distance _posHQ > 100) and (side _x == teamPlayer)) then {_checkX = true}; +if ((_x distance _posHQ > 100) and (side _x in [teamPlayer,civilian])) then {_absentPlayers pushBackUnique name _x;}; } forEach (allPlayers - (entities "HeadlessClient_F")); -if (_checkX) exitWith {[_titleStr, localize "STR_A3A_fn_dialogs_skiptime_no_radius"] call A3A_fnc_customHint;}; - -remoteExec ["A3A_fnc_resourcecheckSkipTime", 0]; +switch (true) do { + case (count _absentPlayers == 0): + { + remoteExec ["A3A_fnc_resourcecheckSkipTime", 0]; + }; + case (count _absentPlayers == 1): + { + [_titleStr, format [localize "STR_A3A_fn_dialogs_skiptime_no_radius_singleplayer",_absentPlayers#0]] call A3A_fnc_customHint; + }; + case (count _absentPlayers > 10): + { + [_titleStr, localize "STR_A3A_fn_dialogs_skiptime_no_radius"] call A3A_fnc_customHint; + }; + default + { + private _lastPlayer = _absentPlayers deleteAt 0; + private _absentString = _absentPlayers joinString ", "; + [_titleStr, format [localize "STR_A3A_fn_dialogs_skiptime_no_radius_players",_absentString,_lastPlayer]] call A3A_fnc_customHint; + }; +}; \ No newline at end of file diff --git a/A3A/addons/core/functions/EventHandler/fn_enemyUnitKilledEH.sqf b/A3A/addons/core/functions/EventHandler/fn_enemyUnitKilledEH.sqf index ed2eb9659c..105b5572e5 100644 --- a/A3A/addons/core/functions/EventHandler/fn_enemyUnitKilledEH.sqf +++ b/A3A/addons/core/functions/EventHandler/fn_enemyUnitKilledEH.sqf @@ -11,7 +11,7 @@ if (_victim getVariable ["spawner",false]) then //Gather infos, trigger timed despawn private _victimGroup = group _victim; private _victimSide = side (group _victim); -[_victim] spawn A3A_fnc_postmortem; +[_victim] remoteExec ["A3A_fnc_postmortem", 2]; // Deplete resource pools if we haven't paid for this unit in advance private _pool = _victim getVariable ["A3A_resPool", "legacy"]; diff --git a/A3A/addons/core/functions/LTC/fn_lootToCrate.sqf b/A3A/addons/core/functions/LTC/fn_lootToCrate.sqf index bb05459a17..71d0513cb2 100644 --- a/A3A/addons/core/functions/LTC/fn_lootToCrate.sqf +++ b/A3A/addons/core/functions/LTC/fn_lootToCrate.sqf @@ -49,12 +49,11 @@ _lootBodies = { private _gear = [[],[],[],[]];//weapons, mags, items, backpacks //build list of all gear - _weapons = [handgunWeapon _unit]; - _attachments = handgunItems _unit; - _weapons = _weapons select {!(_x isEqualTo "")}; + _weapons = weapons _unit; {(_gear#0) pushBack (_x call BIS_fnc_baseWeapon)} forEach _weapons; - _attachments = _attachments select {!(_x isEqualTo "")}; + + _attachments = primaryWeaponItems _unit + secondaryWeaponItems _unit + handgunItems _unit - [""]; (_gear#2) append _attachments; (_gear#2) append assignedItems _unit; @@ -87,7 +86,7 @@ _lootBodies = { }; if !(backpack _unit isEqualTo "") then { - (_gear#3) pushBack ((backpack _unit) call BIS_fnc_basicBackpack); + (_gear#3) pushBack ((backpack _unit) call A3A_fnc_basicBackpack); removeBackpackGlobal _unit; }; @@ -127,6 +126,7 @@ _lootBodies = { if (_remaining isEqualTo [[],[],[],[]]) exitWith {}; _pos = getPos _unit; _container = "GroundWeaponHolder" createVehicle _pos; + [_container, true] remoteExec ["A3A_fnc_postmortem", 2]; // clean up once players move away { _container addWeaponCargoGlobal [_x, 1]; } forEach (_remaining#0); @@ -162,6 +162,7 @@ _allUnlockedArray = []; if !(_remainder isEqualTo [[],[],[],[]]) then { _newContainer = "GroundWeaponHolder" createVehicle _pos; + [_newContainer, true] remoteExec ["A3A_fnc_postmortem", 2]; // clean up once players move away _remainder params ["_weaponsArray", "_magsArray", "_itemsArray", "_backpacksArray"]; diff --git a/A3A/addons/core/functions/Missions/fn_DES_Heli.sqf b/A3A/addons/core/functions/Missions/fn_DES_Heli.sqf index f7d61db5ac..ac05e7cf2d 100644 --- a/A3A/addons/core/functions/Missions/fn_DES_Heli.sqf +++ b/A3A/addons/core/functions/Missions/fn_DES_Heli.sqf @@ -83,8 +83,35 @@ while {_counter != _counterLimit} do { } else {_counter = _counter -1}; }; +//creating ammobox if not armed +_ammoBox = objNull; +if (!_isAttackHeli) then { + _ammoBox = [_faction get "ammobox", _posCrash, 10, 5, true] call A3A_fnc_safeVehicleSpawn; // Allegedly there's alternative syntax that allows you to check which classnames can be slingloaded + // For that alternative syntax, no results are accurate for the ammoboxes we use so I'm spawning it to test it + if !(_heli canSlingLoad _ammoBox) exitWith { + deleteVehicle _ammoBox; + }; + // Otherwise when destroyed, ammoboxes sink 100m underground and are never cleared up + _ammoBox addEventHandler ["Killed", { [_this#0] spawn { sleep 10; deleteVehicle (_this#0) } }]; + [_ammoBox] spawn A3A_fnc_fillLootCrate; + [_ammoBox] call A3A_Logistics_fnc_addLoadAction; +}; + //creating mission marker near crash site -private _posCrashMrk = _heli getRelPos [random 500,random 360]; +private _posCrashMrk = [0,0,0]; +private _crashMarkAttempt = 1; +private _isWater = true; +private _isInRange = false; + +while {_crashMarkAttempt < 10 && (_isWater || !_isInRange)} do { + Debug_1("Searching for marker position, attempt %1",_crashMarkAttempt); + _posCrashMrk = _heli getRelPos [random 500,random 360]; + _isWater = surfaceIsWater _posCrashMrk; + _isInRange = (_posCrashMrk select [0,2]) findIf { (_x < 300) || (_x > worldSize - 300)} isEqualTo -1; + _crashMarkAttempt = _crashMarkAttempt + 1; +}; + +if (_crashMarkAttempt isEqualTo 10) then {Debug("Failed to find suitable position for marker, assigning to heli pos"); _posCrashMrk = getPos _heli;}; private _taskMrk = createMarker [format ["DES%1", random 100],_posCrashMrk]; _taskMrk setMarkerShape "ICON"; @@ -140,7 +167,8 @@ deleteGroup _groupX; //moving to crash site private _escortWP = _groupVeh addWaypoint [_posCrash, 0]; -_escortWP setWaypointType "GETOUT"; +//_escortWP setWaypointType "GETOUT"; +_escortWP setWaypointStatements ["true", "if !(local this) exitWith {}; (group this) leaveVehicle (assignedVehicle this)"]; _escortWP setWaypointBehaviour "SAFE"; Debug_2("Placed Group: %1 in Lite Vehicle and set waypoint %2", _typeGroup, _posCrash); @@ -289,6 +317,7 @@ if (_vehR distance _heli < 50) then { private _notAlivePilots = true; {if ([_x] call A3A_fnc_canFight) exitWith {_notAlivePilots = false}}forEach units _pilots; + if (!isNull _ammoBox && _ammoBox distance _heli < 50) then {Debug("Crate is alive recovering now"); _heli setSlingLoad _ammoBox;}; if (_typeVehH in ( (_faction get "vehiclesHelisLight") + (_faction get "vehiclesHelisTransport") )) then { if !(_typeVehH in (_faction get "vehiclesHelisLight")) then { @@ -378,6 +407,8 @@ deleteMarker _taskMrk; deleteMarker _mrkCrash; //delete units, vehicles and groups +if (!isNull _ammoBox && (getSlingLoad _heli == _ammoBox) && (_ammoBox distance _missionOriginPos < 400)) then {deleteVehicle _ammoBox;}; {[_x] spawn A3A_fnc_vehDespawner} forEach _vehicles; {[_x] spawn A3A_fnc_groupDespawner} forEach _groups; + Debug("Downed Heli clean up complete"); diff --git a/A3A/addons/core/functions/Missions/fn_DES_Vehicle.sqf b/A3A/addons/core/functions/Missions/fn_DES_Vehicle.sqf index d6c0e5c525..90046a592e 100644 --- a/A3A/addons/core/functions/Missions/fn_DES_Vehicle.sqf +++ b/A3A/addons/core/functions/Missions/fn_DES_Vehicle.sqf @@ -64,7 +64,7 @@ if (spawner getVariable _markerX == 0) then { waitUntil {sleep 1;({leader _groupX knowsAbout _x > 1.4} count ([distanceSPWN,0,leader _groupX,teamPlayer] call A3A_fnc_distanceUnits) > 0) or (dateToNumber date > _dateLimitNum) or (not alive _veh) or ({(_x getVariable ["spawner",false]) and (side group _x == teamPlayer)} count crew _veh > 0)}; - if ({leader _groupX knowsAbout _x > 1.4} count ([distanceSPWN,0,leader _groupX,teamPlayer] call A3A_fnc_distanceUnits) > 0) then {_groupX addVehicle _veh;};x + if ({leader _groupX knowsAbout _x > 1.4} count ([distanceSPWN,0,leader _groupX,teamPlayer] call A3A_fnc_distanceUnits) > 0) then {_groupX addVehicle _veh;}; }; waitUntil {sleep 1;(dateToNumber date > _dateLimitNum) or (not alive _veh) or ({(_x getVariable ["spawner",false]) and (side group _x == teamPlayer)} count crew _veh > 0)}; diff --git a/A3A/addons/core/functions/Missions/fn_RES_Refugees.sqf b/A3A/addons/core/functions/Missions/fn_RES_Refugees.sqf index 03eae36218..4719080f8c 100644 --- a/A3A/addons/core/functions/Missions/fn_RES_Refugees.sqf +++ b/A3A/addons/core/functions/Missions/fn_RES_Refugees.sqf @@ -41,7 +41,7 @@ _displayTime = [_dateLimit] call A3A_fnc_dateToTimeString;//Converts the time po _sideX = if (sidesX getVariable [_markerX,sideUnknown] == Occupants) then {Occupants} else {Invaders}; private _faction = Faction(_sideX); _textX = if (_sideX == Occupants) then {format [localize "STR_A3A_fn_mission_res_refu_text1",_nameDest,_displayTime]} -else {format [localize "STR_A3A_fn_mission_res_refu_text2",_nameDest,FactionGet(inv,"name"),FactionGet(reb,"name")]}; +else {format [localize "STR_A3A_fn_mission_res_refu_text2",_nameDest,FactionGet(inv,"name"),FactionGet(reb,"name"),_displayTime]}; _posTsk = if (_sideX == Occupants) then {(position _houseX) getPos [random 100, random 360]} else {position _houseX}; private _taskId = "RES" + str A3A_taskCount; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_donateMoney.sqf b/A3A/addons/core/functions/OrgPlayers/fn_donateMoney.sqf index 370629d654..f66e061a2c 100644 --- a/A3A/addons/core/functions/OrgPlayers/fn_donateMoney.sqf +++ b/A3A/addons/core/functions/OrgPlayers/fn_donateMoney.sqf @@ -1,8 +1,29 @@ -private _titleStr = localize "STR_A3A_fn_orgp_donMon_titel"; +/* +Maintainer: Caleb Serafin + Prone to race conditions and confusing calling. Migrate to A3A_fnc_sendMoney. + Donates money to faction or person. + Gives the player a score for donating to faction. + If no arguments are passed, money is donated to the faction. + If one player object is passed, € 100 is donated to who he is looking at. + +Arguments: + The player object who loses money. + +Scope: Client donating from, Global Arguments, Global Effect +Environment: Any +Public: Yes + +Example: + [] call A3A_fnc_donateMoney; // Donate to faction + [player] call A3A_fnc_donateMoney; // Donates to player's cursor object. +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + private ["_resourcesPlayer","_pointsXJ","_target"]; _resourcesPlayer = player getVariable "moneyX"; -if (_resourcesPlayer < 100) exitWith {[_titleStr, localize "STR_A3A_fn_orgp_donMon_no_less"] call A3A_fnc_customHint;}; +if (_resourcesPlayer < 100) exitWith {[_title, format [localize "STR_A3A_fn_orgp_donMon_no_less", 100]] call A3A_fnc_customHint;}; if (count _this == 0) exitWith { @@ -10,12 +31,12 @@ if (count _this == 0) exitWith _pointsXJ = (player getVariable "score") + 1; player setVariable ["score",_pointsXJ,true]; [-100] call A3A_fnc_resourcesPlayer; - [_titleStr, localize "STR_A3A_fn_orgp_donMon_donated_faction"] call A3A_fnc_customHint; + [_title, format [localize "STR_A3A_fn_orgp_donMon_donated_faction", 100]] call A3A_fnc_customHint; }; -_target = cursortarget; +_target = cursorTarget; -if (!isPlayer _target) exitWith {[_titleStr, localize "STR_A3A_fn_orgp_donMon_no_looking"] call A3A_fnc_customHint;}; +if (!isPlayer _target) exitWith {[_title, localize "STR_A3A_fn_orgp_donMon_no_looking"] call A3A_fnc_customHint;}; [-100] call A3A_fnc_resourcesPlayer; [100] remoteExec ["A3A_fnc_resourcesPlayer", _target]; -[_titleStr, format [localize "STR_A3A_fn_orgp_donMon_donated_player", name _target]] call A3A_fnc_customHint; +[_title, format [localize "STR_A3A_fn_orgp_donMon_donated_player", name _target, 100]] call A3A_fnc_customHint; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_isClientAdmin.sqf b/A3A/addons/core/functions/OrgPlayers/fn_isClientAdmin.sqf new file mode 100644 index 0000000000..0df2790cf5 --- /dev/null +++ b/A3A/addons/core/functions/OrgPlayers/fn_isClientAdmin.sqf @@ -0,0 +1,24 @@ +/* +Maintainer: Caleb Serafin + Tests if passed in player is localhost or admin. + Does not work from a client's machine! + There is not solution for a client discovering admin status of another client at the moment. + +Arguments: + Player to test if admin. + +Return Value: + true if player is server, localhost or voted admin or logged-in admin. false if not. + +Scope: Server +Environment: Any +Public: Yes + +Example: + [_player] call A3A_fnc_isClientAdmin; // true for logged in, voted, localhost admin. +*/ + +params ["_player"]; + +((admin owner _player) > 0) + || (_player isEqualTo player); // checks if server or localhost. diff --git a/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdmin.sqf b/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdmin.sqf new file mode 100644 index 0000000000..ea3de9b1c1 --- /dev/null +++ b/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdmin.sqf @@ -0,0 +1,17 @@ +/* +Maintainer: Caleb Serafin + Similar to BIS_fnc_admin except that it recognises localhost as admin and skips checking if voted or logged admin. + https://community.bistudio.com/wiki/serverCommandAvailable + +Return Value: + true if player is localhost, voted admin or logged-in admin. false if not. + +Scope: Clients +Environment: Any +Public: Yes + +Example: + [] call A3A_fnc_isLocalAdmin; // false +*/ + +(isServer && hasInterface) || serverCommandAvailable "#logout"; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdminOrServer.sqf b/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdminOrServer.sqf new file mode 100644 index 0000000000..fb21df8236 --- /dev/null +++ b/A3A/addons/core/functions/OrgPlayers/fn_isLocalAdminOrServer.sqf @@ -0,0 +1,17 @@ +/* +Maintainer: Caleb Serafin + Similar to BIS_fnc_admin except that it recognises server as admin and skips checking if voted or logged admin. + https://community.bistudio.com/wiki/serverCommandAvailable + +Return Value: + true if player is server, localhost, voted admin or logged-in admin. false if not. + +Scope: Clients +Environment: Any +Public: Yes + +Example: + [] call A3A_fnc_isLocalAdminOrServer; // false +*/ + +serverCommandAvailable "#debug"; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_memberAdd.sqf b/A3A/addons/core/functions/OrgPlayers/fn_memberAdd.sqf index 5ec4b030d5..21b397a732 100644 --- a/A3A/addons/core/functions/OrgPlayers/fn_memberAdd.sqf +++ b/A3A/addons/core/functions/OrgPlayers/fn_memberAdd.sqf @@ -1,3 +1,6 @@ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + private _titleStr = localize "STR_A3A_fn_orgp_memAdd_titel"; if (!(serverCommandAvailable "#logout") and (!isServer)) exitWith {[_titleStr, localize "STR_A3A_fn_orgp_memAdd_no_admin"] call A3A_fnc_customHint;}; @@ -16,6 +19,7 @@ if ((_this select 0 == "remove") and !([_target] call A3A_fnc_isMember)) exitWi if (_this select 0 == "add") then { membersX pushBackUnique _uid; + ServerInfo_4("Admin %1 (ID: %2) has added %3 (ID: %4) to the server members list.", name player, getPlayerUID player, name _target, _uid); _target setVariable ["eligible", true, true]; [_titleStr, format [localize "STR_A3A_fn_orgp_memAdd_added_other",name _target]] call A3A_fnc_customHint; [_titleStr, localize "STR_A3A_fn_orgp_memAdd_added_you"] remoteExec ["A3A_fnc_customHint", _target]; @@ -23,6 +27,7 @@ if (_this select 0 == "add") then else { membersX = membersX - [_uid]; + ServerInfo_4("Admin %1 (ID: %2) has removed %3 (ID: %4) from the server members list.", name player, getPlayerUID player, name _target, _uid); [_titleStr, format [localize "STR_A3A_fn_orgp_memAdd_removed_other",name _target]] call A3A_fnc_customHint; [_titleStr, localize "STR_A3A_fn_orgp_memAdd_removed_you"] remoteExec ["A3A_fnc_customHint", _target]; }; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_playerLeash.sqf b/A3A/addons/core/functions/OrgPlayers/fn_playerLeash.sqf index 0fd7934ce5..459f6ad321 100644 --- a/A3A/addons/core/functions/OrgPlayers/fn_playerLeash.sqf +++ b/A3A/addons/core/functions/OrgPlayers/fn_playerLeash.sqf @@ -39,9 +39,11 @@ if (memberDistance <= 0 || !membershipEnabled) exitWith {}; // Membership is rechecked in the case that a temporary membership is granted. while {!([player] call A3A_fnc_isMember) || _debugMode} do { private _nearestLeashCentre = getPosATL player; // Only 2D pos is evaluated. Default to player position when no members or ff punishment is the exemption. + private _veh = vehicle player; private _withinLeash = switch (true) do { case (!isNil "A3A_FFPun_Jailed" && {(getPlayerUID player) in A3A_FFPun_Jailed}): { true }; case (player == theBoss): { true }; // covered in playerLeashCheckPosition, but shortcut + case (_veh isKindOf "Plane" and {!isTouchingGround _veh or speed _veh > 100}): { true }; // no air spawning check, distance.sqf + margin // Add leash exemptions here. default { [getPosATL player,_nearestLeashCentre] call A3A_fnc_playerLeashCheckPosition }; }; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_resourcesPlayer.sqf b/A3A/addons/core/functions/OrgPlayers/fn_resourcesPlayer.sqf index b2aa04920e..f2298837f5 100644 --- a/A3A/addons/core/functions/OrgPlayers/fn_resourcesPlayer.sqf +++ b/A3A/addons/core/functions/OrgPlayers/fn_resourcesPlayer.sqf @@ -1,7 +1,43 @@ -_moneyX = _this select 0; +/* +Maintainer: Caleb Serafin + Modifies the provided player's funds. + Function will automatically re-execute on the server if called on a client. + Provides backwards compatibility for direct execution on client. -_moneyX = _moneyX + (player getVariable "moneyX"); -if (_moneyX < 0) then {_moneyX = 0}; -player setVariable ["moneyX",_moneyX,true]; -[] spawn A3A_fnc_statistics; -true +Arguments: + Amount to add (make negative for deduction.) + The player to add to remove money from. (DEFAULT: player) + +Return Value: + Returns true if transaction successful, false if not. Will always be false if executed on non-server. + +Scope: Any, Global Arguments, Global Effect +Environment: Unscheduled +Public: Yes + +Example: + [-100] call A3A_fnc_resourcesPlayer; // Backwards compatible Deduct 100 Euros + [420, _theAffectedPlayer] call FUNCMAIN(resourcesPlayer); // The server-side call to add money. +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +params [ + ["_moneyAdjustment", 0, [0]], + ["_playerObject", player, [objNull]] +]; + +if (!isServer) exitWith { + [_moneyAdjustment, _playerObject] remoteExecCall ["A3A_fnc_resourcesPlayer", 2]; + false; +}; + +private _storedMoney = _playerObject getVariable ["moneyX", 0]; +Trace_1("_moneyAdjustment: %1",_moneyAdjustment); +Trace_1("_storedMoney: %1",_storedMoney); +if (_moneyAdjustment < 0 && -_moneyAdjustment > _storedMoney) exitWith {false}; // Prevent debt, but allow adding money if somehow in debt. +_storedMoney = _storedMoney + _moneyAdjustment; +_playerObject setVariable ["moneyX", _storedMoney, true]; + +[] remoteExec ["A3A_fnc_statistics", _playerObject]; +true; diff --git a/A3A/addons/core/functions/OrgPlayers/fn_sendMoney.sqf b/A3A/addons/core/functions/OrgPlayers/fn_sendMoney.sqf new file mode 100644 index 0000000000..9440a6baa0 --- /dev/null +++ b/A3A/addons/core/functions/OrgPlayers/fn_sendMoney.sqf @@ -0,0 +1,84 @@ +/* +Maintainer: Caleb Serafin + Replacement for fn_donateMoney + Transfers the desired funds from the donor to the receiver. + The donor does not get points for donating. This was disabled due to abuse-ability. + Function will automatically re-execute on the server if called on a client. + Provides backwards compatibility for direct execution on client. + +Arguments: + The player object who loses money. + The receiver who gains money. Either a player object or the string "faction" to donate to faction. + Amount of Euros to transfer. + +Return Value: + Returns true if donation successful, false if not. Will always be false if executed on non-server. + +Scope: Any, Global Arguments, Global Effect +Environment: Unscheduled +Public: Yes + +Example: + [player, cursorObject, 100] call A3A_fnc_sendMoney; + [player, "faction", 420] call A3A_fnc_sendMoney; +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +Trace_1("_this: %1",_this); +params [ + ["_donateFrom", player, [objNull]], + ["_donateTo", objNull, [objNull,""]], + ["_donateAmount", 0, [0]] +]; + +if (isNull _donateFrom || !isPlayer _donateFrom) exitWith { + Error("_donateFrom was null or not player."); + false; // Return +}; + +if (!isServer) exitWith { + _this remoteExecCall ["A3A_fnc_sendMoney", 2]; + false; +}; + +private _title = localize "STR_A3A_fn_orgp_donMon_titel"; + +if (_donateAmount <= 0) exitWith { + [_title, localize "STR_A3A_fn_orgp_donMon_not_positive"] remoteExecCall ["A3A_fnc_customHint", _donateFrom]; + false; +}; + +if (_donateTo isEqualType "") exitWith { + switch (toLower _donateTo) do { + case ("faction"): { + if ([-_donateAmount, _donateFrom] call A3A_fnc_resourcesPlayer) exitWith { + [0, _donateAmount] call A3A_fnc_resourcesFIA; + private _scoreReward = 1 * (_donateAmount / 100); + player setVariable ["score", (player getVariable ["score", 0]) + _scoreReward, true]; // Raise player score for donating. + [_title, format [localize "STR_A3A_fn_orgp_donMon_donated_faction", _donateAmount]] remoteExecCall ["A3A_fnc_customHint", _donateFrom]; + true; + }; + [_title, format [localize "STR_A3A_fn_orgp_donMon_no_less", _donateAmount]] remoteExecCall ["A3A_fnc_customHint", _donateFrom]; + false; // Return + }; + default { + Error("Switch case ("+toLower _donateTo+") does not match any options."); + false; // Return + }; + }; +}; + +if (isNull _donateTo || !isPlayer _donateTo) exitWith { + [_title, localize "STR_A3A_fn_orgp_donMon_no_looking"] call A3A_fnc_customHint; + false; // Return +}; + +if ([-_donateAmount, _donateFrom] call A3A_fnc_resourcesPlayer) exitWith { + [_donateAmount, _donateTo] call A3A_fnc_resourcesPlayer; + [_title, format [localize "STR_A3A_fn_orgp_donMon_donated_player", name _donateTo, _donateAmount]] remoteExecCall ["A3A_fnc_customHint", _donateFrom]; + [_title, format [localize "STR_A3A_fn_orgp_donMon_received_money", _donateAmount, name _donateFrom]] remoteExecCall ["A3A_fnc_customHint", _donateTo]; + true; // Return +}; +[_title, format [localize "STR_A3A_fn_orgp_donMon_no_less", _donateAmount]] remoteExecCall ["A3A_fnc_customHint", _donateFrom]; +false; // Return diff --git a/A3A/addons/core/functions/OrgPlayers/fn_unitTraits.sqf b/A3A/addons/core/functions/OrgPlayers/fn_unitTraits.sqf index b1460e43a3..1a96d1674c 100644 --- a/A3A/addons/core/functions/OrgPlayers/fn_unitTraits.sqf +++ b/A3A/addons/core/functions/OrgPlayers/fn_unitTraits.sqf @@ -32,6 +32,8 @@ if(roleDescription player == "Default Commander") then player setUnitTrait ["audibleCoef",0.8]; player setUnitTrait ["loadCoef",1.4]; player setUnitTrait ["medic", true]; + player setUnitTrait ["explosiveSpecialist", true]; + player setUnitTrait ["UAVHacker", true]; // ACE clears the engineer unitTrait and adds this var at CBA initPost, so we have to do it ourselves if (missionNamespace getVariable ["ace_repair_enabled", false]) then { player setVariable ["ace_isEngineer", true, true] } else { player setUnitTrait ["engineer", true] }; _text = localize "STR_A3A_fn_orgp_unitTraits_commander1" + "
" + localize "STR_A3A_fn_orgp_unitTraits_commander2"; diff --git a/A3A/addons/core/functions/Punishment/fn_punishment_evaluateEvent.sqf b/A3A/addons/core/functions/Punishment/fn_punishment_evaluateEvent.sqf index 36bb63cda3..2f30e06404 100644 --- a/A3A/addons/core/functions/Punishment/fn_punishment_evaluateEvent.sqf +++ b/A3A/addons/core/functions/Punishment/fn_punishment_evaluateEvent.sqf @@ -127,7 +127,7 @@ if (_isCollision) then { /////////Checks for important roles///////// _exemption = switch (true) do { - case (!(admin owner _instigator isEqualTo 0) || player isEqualTo _instigator): { // Local host included. + case ([_instigator] call A3A_fnc_isClientAdmin): { // Local host included. [localize "STR_A3A_fn_punishment_evalEvent_admin"] call _notifyInstigator; // Admin not reported to victim in case of Zeus remote control. format ["ADMIN, %1", ["Server","Voted","Logged"] select (admin owner _instigator)]; }; diff --git a/A3A/addons/core/functions/REINF/fn_FIAinit.sqf b/A3A/addons/core/functions/REINF/fn_FIAinit.sqf index fc4e94aec4..e5683ea078 100644 --- a/A3A/addons/core/functions/REINF/fn_FIAinit.sqf +++ b/A3A/addons/core/functions/REINF/fn_FIAinit.sqf @@ -39,7 +39,7 @@ if (player == leader _unit) then { _unit setVariable ["owner", player, true]; _unit addEventHandler ["killed", { _victim = _this select 0; - [_victim] spawn A3A_fnc_postmortem; + [_victim] remoteExec ["A3A_fnc_postmortem", 2]; _killer = _this select 1; if (side _killer == Occupants) then { _nul = [0.25,0,getPos _victim] remoteExec ["A3A_fnc_citySupportChange",2]; diff --git a/A3A/addons/core/functions/REINF/fn_FIAskillAdd.sqf b/A3A/addons/core/functions/REINF/fn_FIAskillAdd.sqf index aa83697349..7e47e33b2f 100644 --- a/A3A/addons/core/functions/REINF/fn_FIAskillAdd.sqf +++ b/A3A/addons/core/functions/REINF/fn_FIAskillAdd.sqf @@ -15,6 +15,15 @@ skillFIA = skillFIA + 1; [_titleStr, format [localize "STR_A3A_fn_reinf_FIASkAdd_upgraded",skillFIA,FactionGet(reb,"name")]] call A3A_fnc_customHint; publicVariable "skillFIA"; server setVariable ["resourcesFIA",_resourcesFIA,true]; + +//update tooltip +_display = findDisplay 100; +if (str (_display) != "no display") then +{ + _ChildControl = _display displayCtrl 109; + _ChildControl ctrlSetTooltip format [localize "STR_A3A_fn_dialogs_dialogHQ_upgrade",1000 + (1.5*((skillFIA) *750)),skillFIA]; +}; + [] spawn A3A_fnc_statistics; { _costs = server getVariable _x; diff --git a/A3A/addons/core/functions/REINF/fn_controlHCsquad.sqf b/A3A/addons/core/functions/REINF/fn_controlHCsquad.sqf index 8c00dcde2f..b43dc86d05 100644 --- a/A3A/addons/core/functions/REINF/fn_controlHCsquad.sqf +++ b/A3A/addons/core/functions/REINF/fn_controlHCsquad.sqf @@ -1,3 +1,32 @@ +/* +Maintainer: Not Caleb Serafin, somebody else pls + Controls a high-command squad. + Limitations and recommendations are currently unknown. + +Arguments: + ARRAY Backwards compatibility. + +Scope: Client, Global Arguments, Global Effect +Environment: Scheduled +Public: Yes + +Example: + // Easy use. + private _selectedSquads = hcSelected player; + if (count _selectedSquads == 1) then { + [_selectedSquads] spawn A3A_fnc_controlHCSquad; + }; + + // Intermediate + private _display = findDisplay A3A_IDD_MAINDIALOG; + private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; + private _group = _commanderMap getVariable ["selectedGroup", grpNull]; + if (_group isNotEqualTo grpNull) then { + closeDialog 1; + [[_group]] spawn A3A_fnc_controlHCSquad; + } +*/ + private _titleStr = localize "STR_A3A_fn_reinf_controlHQSquad_title"; if (player != theBoss) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_controlHQSquad_no_commander"] call A3A_fnc_customHint;}; diff --git a/A3A/addons/core/functions/REINF/fn_convertToSquad.sqf b/A3A/addons/core/functions/REINF/fn_convertToSquad.sqf new file mode 100644 index 0000000000..3f34f84ed0 --- /dev/null +++ b/A3A/addons/core/functions/REINF/fn_convertToSquad.sqf @@ -0,0 +1,43 @@ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + + +private _titleStr = localize "STR_A3A_fn_reinf_convSqd_title"; + +// reuse some addFIAsquadHC messages, should be fine +if (player != theBoss) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_addSqdHC_no_commander"] call A3A_fnc_customHint}; +if (markerAlpha respawnTeamPlayer == 0) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_addSqdHC_no_movehq"] call A3A_fnc_customHint}; +if !([player] call A3A_fnc_hasRadio) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_addSqdHC_no_radio"] call A3A_fnc_customHint}; + +private _maxGroups = [6,10] select (player call A3A_fnc_isMember); +if (count hcAllGroups player >= _maxGroups) exitWith { + [_titleStr, localize "STR_A3A_fn_reinf_addSqdHC_no_many"] call A3A_fnc_customHint; +}; + +private _bannedTypes = [FactionGet(reb,"unitCrew"), FactionGet(reb,"unitUnarmed"), FactionGet(reb,"unitPetros"), "unknown"]; +private _units = groupSelectedUnits player select { !isPlayer _x and !(_x getVariable ["unitType", "unknown"] in _bannedTypes) }; +if (_units isEqualTo []) exitWith { + [_titleStr, localize "STR_A3A_fn_reinf_convSqd_no_selected"] call A3A_fnc_customHint; +}; +// apparently the units are unselected when you change command bar mode, so don't need to worry about that + +private _group = createGroup teamPlayer; +_group setGroupIdGlobal ["Tm-" + str ({side (leader _x) == teamPlayer} count allGroups)]; // uh. whatever +_units join _group; + +// Select a suitable leader for the squad +private _types = _units apply {_x getVariable "unitType"}; +private _leaderIndex = _types find FactionGet(reb,"unitSL"); // not actually possible atm +if (_leaderIndex == -1) then { + private _badLeaders = [FactionGet(reb,"unitMedic"), FactionGet(reb,"unitAA"), FactionGet(reb,"unitAT")]; + _leaderIndex = _types findIf {!(_x in _badLeaders)}; +}; +if (_leaderIndex != -1) then { _group selectLeader _units#_leaderIndex }; + +player hcSetGroup [_group]; +_group spawn A3A_fnc_attackDrillAI; + +private _successStr = format [localize "STR_A3A_fn_reinf_convSqd_created", count _units, groupId _group]; +[_titleStr, _successStr] call A3A_fnc_customHint; + +// todo: comment, allow commander to purchase AI with faction money diff --git a/A3A/addons/core/functions/REINF/fn_equipRebel.sqf b/A3A/addons/core/functions/REINF/fn_equipRebel.sqf index 05a03a3f68..06cfc107c1 100644 --- a/A3A/addons/core/functions/REINF/fn_equipRebel.sqf +++ b/A3A/addons/core/functions/REINF/fn_equipRebel.sqf @@ -32,7 +32,7 @@ private _fnc_addSecondaryAndMags = { private _compatOptics = A3A_rebelOpticsCache get _weapon; if (isNil "_compatOptics") then { - private _compatItems = [_weapon] call BIS_fnc_compatibleItems; // cached, should be fast + private _compatItems = compatibleItems _weapon; // cached, should be fast _compatOptics = _compatItems arrayIntersect (A3A_rebelGear get "OpticsAll"); A3A_rebelOpticsCache set [_weapon, _compatOptics]; }; @@ -170,7 +170,7 @@ else { private _weapon = primaryWeapon _unit; private _compatLights = A3A_rebelFlashlightsCache get _weapon; if (isNil "_compatLights") then { - private _compatItems = [_weapon] call BIS_fnc_compatibleItems; // cached, should be fast + private _compatItems = compatibleItems _weapon; // cached, should be fast _compatLights = _compatItems arrayIntersect (A3A_rebelGear get "LightAttachments"); A3A_rebelFlashlightsCache set [_weapon, _compatLights]; }; diff --git a/A3A/addons/core/functions/REINF/fn_postmortem.sqf b/A3A/addons/core/functions/REINF/fn_postmortem.sqf deleted file mode 100644 index b64bdbf785..0000000000 --- a/A3A/addons/core/functions/REINF/fn_postmortem.sqf +++ /dev/null @@ -1,43 +0,0 @@ -/* Handles the despawn and cleanup of dead units -* Params: -* _victim : OBJECT : The dead unit -* -* Returns: -* Nothing -*/ - -params ["_victim"]; -#include "..\..\script_component.hpp" -FIX_LINE_NUMBERS() -private _group = group _victim; - -Debug("PostMortem Called"); -if (isnull _victim)exitwith{Error("Function failed called with null param.")}; - -if (isNull _group) then -{ - Debug_1("Group for victim :: %1, no group found! Removing from Statics list.",_victim); - - if (_victim in staticsToSave) then - { - staticsToSave = staticsToSave - [_victim]; - publicVariable "staticsToSave"; - }; -}; - -Debug_3("Pausing for %1 minutes before cleaning victim: %2 and group: %3", round cleantime/60, _victim, _group); -sleep cleantime; - -if (_victim getVariable ["stopPostmortem", false]) exitWith {}; - -if !(isnull _victim) then -{ - Debug_1("Cleanup complete for %1 victim.", _victim); - deleteVehicle _victim; -}; - -if !(isnull _group) then -{ - Debug_1("Cleanup complete for %1 group.", _group); - deleteGroup _group; -}; diff --git a/A3A/addons/core/functions/REINF/fn_reinfPlayer.sqf b/A3A/addons/core/functions/REINF/fn_reinfPlayer.sqf index 6674b35b85..d3a10ad813 100644 --- a/A3A/addons/core/functions/REINF/fn_reinfPlayer.sqf +++ b/A3A/addons/core/functions/REINF/fn_reinfPlayer.sqf @@ -10,18 +10,10 @@ if ([getPosATL player] call A3A_fnc_enemyNearCheck) exitWith {[_titleStr, locali if (player != leader group player) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_no_lead"] call A3A_fnc_customHint;}; -private _hr = server getVariable "hr"; - -if (_hr < 1) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_no_hr"] call A3A_fnc_customHint;}; -private _typeUnit = _this select 0; -private _costs = server getVariable _typeUnit; -private _resourcesFIA = 0; -if (!isMultiPlayer) then {_resourcesFIA = server getVariable "resourcesFIA"} else {_resourcesFIA = player getVariable "moneyX";}; - -if (_costs > _resourcesFIA) exitWith {[_titleStr, format [localize "STR_A3A_fn_reinf_reinfPlayer_no_money",_costs]] call A3A_fnc_customHint;}; - if ((count units group player) + (count units stragglers) > 9) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_no_full"] call A3A_fnc_customHint;}; +call A3A_fnc_fetchRebelGear; // Fetch rebel gear from the server if we're out of date + private _weaponHM = createHashMapFromArray [ [A3A_faction_reb get "unitSniper", "SniperRifles"], [A3A_faction_reb get "unitLAT", "RocketLaunchers"], @@ -30,19 +22,27 @@ private _weaponHM = createHashMapFromArray [ [A3A_faction_reb get "unitAA", "MissileLaunchersAA"], [A3A_faction_reb get "unitAT", "MissileLaunchersAT"]]; +private _typeUnit = _this select 0; if (A3A_rebelGear getOrDefault [_weaponHM getOrDefault [_typeUnit, ""], false] isEqualTo []) exitWith { [_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_no_weapons"] call A3A_fnc_customHint; }; +private _hr = server getVariable "hr"; +if (_hr < 1) exitWith {[_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_no_hr"] call A3A_fnc_customHint;}; +private _costs = server getVariable _typeUnit; + +private _resources = if (player == theBoss) then { server getVariable "resourcesFIA" } else { player getVariable "moneyX" }; +if (_costs > _resources) exitWith {[_titleStr, format [localize "STR_A3A_fn_reinf_reinfPlayer_no_money",_costs]] call A3A_fnc_customHint;}; + private _unit = [group player, _typeUnit, position player, [], 0, "NONE"] call A3A_fnc_createUnit; -if (!isMultiPlayer) then { - _nul = [-1, - _costs] remoteExec ["A3A_fnc_resourcesFIA",2]; +if (player == theBoss) then { + [-1, -_costs] remoteExec ["A3A_fnc_resourcesFIA",2]; } else { - _nul = [-1, 0] remoteExec ["A3A_fnc_resourcesFIA",2]; + [-1, 0] remoteExec ["A3A_fnc_resourcesFIA",2]; [- _costs] call A3A_fnc_resourcesPlayer; - [_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_recruited"] call A3A_fnc_customHint; }; +[_titleStr, localize "STR_A3A_fn_reinf_reinfPlayer_recruited"] call A3A_fnc_customHint; [_unit] spawn A3A_fnc_FIAinit; _unit disableAI "AUTOCOMBAT"; diff --git a/A3A/addons/core/functions/REINF/fn_spawnHCVeh.sqf b/A3A/addons/core/functions/REINF/fn_spawnHCVeh.sqf index e955a38aae..8ff0fb407b 100644 --- a/A3A/addons/core/functions/REINF/fn_spawnHCVeh.sqf +++ b/A3A/addons/core/functions/REINF/fn_spawnHCVeh.sqf @@ -35,7 +35,7 @@ private _spawnPos = false; private _spawnDir = false; for "_i" from 1 to 10 do { - //systemChat format ["Attempt %1", _i]; + if (_roads isEqualTo []) exitWith {}; private _road = selectRandom _roads; (getRoadInfo _road) params ["", "_roadWidth", "", "", "", "", "_begPos", "_endPos"]; diff --git a/A3A/addons/core/functions/REINF/fn_vehiclePrice.sqf b/A3A/addons/core/functions/REINF/fn_vehiclePrice.sqf index b1b6469a72..fe524f1ffb 100644 --- a/A3A/addons/core/functions/REINF/fn_vehiclePrice.sqf +++ b/A3A/addons/core/functions/REINF/fn_vehiclePrice.sqf @@ -3,29 +3,35 @@ FIX_LINE_NUMBERS() params ["_typeX"]; -private _costs = server getVariable _typeX; +private _costs = 0; + +if (isNil "_typeX") then +{ + Error_1("Vehicle does not exist."); + _costs = 0; +} +else +{ + _costs = server getVariable _typeX; +}; if (isNil "_costs") then - { - Error_1("Invalid vehicle price :%1.", _typeX); +{ + Error_1("Invalid vehicle price :%1.", _typeX); _costs = 0; - } +} else +{ + if (count seaports > 3) then + { + private _numFriendlySeaports = ({sidesX getVariable [_x,sideUnknown] == teamPlayer} count seaports) min 6; + _costs = round (_costs - (_costs * 0.05 * _numFriendlySeaports)); + } + else { - if (count seaports > 3) then { - private _numFriendlySeaports = ({sidesX getVariable [_x,sideUnknown] == teamPlayer} count seaports) min 6; - _costs = round (_costs - (_costs * 0.05 * _numFriendlySeaports)); - } else { - _discount = switch (true) do { - case (tierWar in [1,2]): { 0 }; - case (tierWar in [3,4]): { 0 }; - case (tierWar in [5,6]): { 1 }; - case (tierWar in [7,8]): { 2 }; - case (tierWar in [9,10]): { 3 }; - default { 0 }; - }; - _costs = round (_costs - (_costs * 0.1 * _discount)); - }; + _discount = 0 max ((tierWar - 4) * 0.5); //4 is the last war tier before discounts, the 0.5 makes the discount go from 0-3 instead of 0-6. + _costs = 5 * round ((_costs - (_costs * 0.1 * _discount))/5); //Applies the discount, rounds to the nearest 5€ }; +}; _costs diff --git a/A3A/addons/core/functions/Revive/fn_carry.sqf b/A3A/addons/core/functions/Revive/fn_carry.sqf index 125893b29c..ab38120e75 100644 --- a/A3A/addons/core/functions/Revive/fn_carry.sqf +++ b/A3A/addons/core/functions/Revive/fn_carry.sqf @@ -8,7 +8,10 @@ _carrierX = _this select 1; if (!alive _carryX) exitWith {[_titleStr, format [localize "STR_A3A_fn_revive_carry_dead",name _carryX]] call A3A_fnc_customHint;}; if !(_carryX getVariable ["incapacitated",false]) exitWith {[_titleStr, format [localize "STR_A3A_fn_revive_carry_nohelp",name _carryX]] call A3A_fnc_customHint;}; if !(isNull attachedTo _carryX) exitWith {[_titleStr, format [localize "STR_A3A_fn_revive_carry_no_carry",name _carryX]] call A3A_fnc_customHint;}; +if (call A3A_fnc_isCarrying) exitWith {[_titleStr, format [localize "STR_A3A_fn_revive_carry_already",name _carryX]] call A3A_fnc_customHint;}; + if (captive _carrierX) then {_carrierX setCaptive false}; +_carrierX setVariable ["A3A_carryingObject", true]; _carrierX playMoveNow "AcinPknlMstpSrasWrflDnon"; [_carryX,"AinjPpneMrunSnonWnonDb"] remoteExec ["switchMove",_carryX]; //_carryX setVariable ["carryX",true,true]; @@ -17,12 +20,14 @@ _carryX setVariable ["helped",_carrierX,true]; _carryX attachTo [_carrierX, [0,1.1,0.092]]; _carryX setDir 180; _timeOut = time + 60; -_action = _carrierX addAction [format [localize "STR_A3A_fn_revive_carry_addact_release",name _carryX], {{detach _x} forEach (attachedObjects player)},nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull])"]; +_action = _carrierX addAction [format [localize "STR_A3A_fn_revive_carry_addact_release",name _carryX], {_this#0 setVariable ["A3A_cancelCarry", true]},nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull])"]; -waitUntil {sleep 0.5; (!alive _carryX) or !([_carrierX] call A3A_fnc_canFight) or !(_carryX getVariable ["incapacitated",false]) or ({!isNull _x} count attachedObjects _carrierX == 0) or (time > _timeOut) or (vehicle _carrierX != _carrierX)}; +waitUntil {sleep 0.5; (!alive _carryX) or !([_carrierX] call A3A_fnc_canFight) or !(_carryX getVariable ["incapacitated",false]) or (_carrierX getVariable ["A3A_cancelCarry", false]) or (time > _timeOut) or (vehicle _carrierX != _carrierX)}; _carrierX removeAction _action; -if (count attachedObjects _carrierX != 0) then {detach _carryX}; +if (_carryX in attachedObjects _carrierX) then {detach _carryX}; +_carrierX setVariable ["A3A_cancelCarry", nil]; +_carrierX setVariable ["A3A_carryingObject", nil]; _carrierX playMove "amovpknlmstpsraswrfldnon"; [_carryX,"UnconsciousReviveDefault"] remoteExec ["switchMove",_carryX]; //_carryX setVariable ["carryX",false,true]; diff --git a/A3A/addons/core/functions/Revive/fn_respawn.sqf b/A3A/addons/core/functions/Revive/fn_respawn.sqf index 539d4f1256..bbd987d5ae 100644 --- a/A3A/addons/core/functions/Revive/fn_respawn.sqf +++ b/A3A/addons/core/functions/Revive/fn_respawn.sqf @@ -5,7 +5,8 @@ if (_unit getVariable "respawning") exitWith {}; if (_unit != _unit getVariable ["owner",_unit]) exitWith {}; if (!isPlayer _unit) exitWith {}; -if (!isNil "respawnMenu") then {(findDisplay 46) displayRemoveEventHandler ["KeyDown", respawnMenu]}; +removeAllUserActionEventHandlers ["A3A_core_respawn", "Activate"]; +removeAllUserActionEventHandlers ["A3A_core_selfRevive", "Activate"]; _unit setVariable ["respawning",true]; private _layer = ["A3A_infoCenter"] call BIS_fnc_rscLayer; ["Respawning",0,0,3,0,0,_layer] spawn bis_fnc_dynamicText; diff --git a/A3A/addons/core/functions/Revive/fn_selfRevive.sqf b/A3A/addons/core/functions/Revive/fn_selfRevive.sqf index 1e7767216c..df386b8b10 100644 --- a/A3A/addons/core/functions/Revive/fn_selfRevive.sqf +++ b/A3A/addons/core/functions/Revive/fn_selfRevive.sqf @@ -22,6 +22,9 @@ if (time < player getVariable ["A3A_selfReviveTimeout", -1]) exitWith { }; // ok so now we actually do it... +removeAllUserActionEventHandlers ["A3A_core_respawn", "Activate"]; +removeAllUserActionEventHandlers ["A3A_core_selfRevive", "Activate"]; + player setVariable ["incapacitated", false, true]; player setDamage 0.5; player removeItem selectRandom _hasFAKs; diff --git a/A3A/addons/core/functions/Revive/fn_unconscious.sqf b/A3A/addons/core/functions/Revive/fn_unconscious.sqf index a5a70dab51..1b05b155f9 100644 --- a/A3A/addons/core/functions/Revive/fn_unconscious.sqf +++ b/A3A/addons/core/functions/Revive/fn_unconscious.sqf @@ -17,19 +17,7 @@ if (isPlayer _unit) then _unit spawn { sleep 5; _this allowDamage true }; closeDialog 0; openMap false; - if (!isNil "respawnMenu") then {(findDisplay 46) displayRemoveEventHandler ["KeyDown", respawnMenu]}; - respawnMenu = (findDisplay 46) displayAddEventHandler ["KeyDown", - { - if !(player getVariable ["incapacitated",false]) exitWith {false}; - if (_this select 1 == 19) then { - [player] spawn A3A_fnc_respawn; - }; - if (_this select 1 == 35) then { - if (A3A_selfReviveMethods) then { [] spawn A3A_fnc_selfRevive }; - //if (A3A_selfReviveMethods == 2) then { [] spawn A3A_fnc_transferToAI }; // different keys later? - }; - false; - }]; + if (_injurer != Invaders) then {_unit setCaptive true}; { if ((!isPlayer _x) and (vehicle _x != _x) and (_x distance _unit < 50)) then {unassignVehicle _x; [_x] orderGetIn false} @@ -60,22 +48,31 @@ else _unit setFatigue 1; sleep 2; if (_isPlayer) then - { +{ + addUserActionEventHandler ["A3A_core_respawn", "Activate", { + if !(player getVariable ["incapacitated",false]) exitWith {}; + [player] spawn A3A_fnc_respawn; + }]; + addUserActionEventHandler ["A3A_core_selfRevive", "Activate", { + if !(player getVariable ["incapacitated",false]) exitWith {}; + if (A3A_selfReviveMethods) then { [] spawn A3A_fnc_selfRevive }; + }]; + if (A3A_hasTFAR || A3A_hasTFARBeta) then - { + { _saveVolumeVoice = player getVariable ["tf_voiceVolume", 1.0]; player setVariable ["tf_unable_to_use_radio", true, true]; player setVariable ["tf_voiceVolume", 0]; _saveVolume = player getVariable ["tf_globalVolume", 1.0]; player setVariable ["tf_globalVolume", 0.7, true]; - }; + }; group _unit setCombatMode "YELLOW"; if (isMultiplayer) then - { + { [_unit,"heal1"] remoteExec ["A3A_fnc_flagaction",0,_unit]; //[_unit,"carry"] remoteExec ["A3A_fnc_flagaction",0,_unit]; - }; }; +}; private _nextRequest = 0; @@ -90,14 +87,18 @@ while {(time < _bleedOut) and (_unit getVariable ["incapacitated",false]) and (a }; if (_isPlayer) then { + // Slow down self-revive timeout expiry while downed + private _timeout = _unit getVariable ["A3A_selfReviveTimeout", -1]; + if (_timeout > 0) then { _unit setVariable ["A3A_selfReviveTimeout", _timeout + 0.5] }; + private _helpText = "" + call { if (isNull _helper) exitWith {localize "STR_A3A_fn_revive_unconscious_noAI"}; if (_helper distance _unit < 3) exitWith { format [localize "STR_A3A_fn_revive_unconscious_helping", name _helper] }; format [localize "STR_A3A_fn_revive_unconscious_onTheWay", name _helper]; }; - private _respawnText = "
" + localize "STR_A3A_fn_revive_unconscious_respawn"; + private _respawnText = format ["
" + localize "STR_A3A_fn_revive_unconscious_respawn", actionKeysNames "A3A_core_respawn"]; private _reviveText = call { - if (A3A_selfReviveMethods) exitWith { "
" + localize "STR_A3A_fn_revive_unconscious_selfRevive" }; + if (A3A_selfReviveMethods) exitWith { format ["
" + localize "STR_A3A_fn_revive_unconscious_selfRevive", actionKeysNames "A3A_core_selfRevive"] }; //if (A3A_selfReviveMethods == 2) exitWith { "
Hit H to take over nearest AI ally" }; "" }; @@ -112,24 +113,26 @@ while {(time < _bleedOut) and (_unit getVariable ["incapacitated",false]) and (a }; if (_isPlayer) then - { - (findDisplay 46) displayRemoveEventHandler ["KeyDown", respawnMenu]; +{ + removeAllUserActionEventHandlers ["A3A_core_respawn", "Activate"]; + removeAllUserActionEventHandlers ["A3A_core_selfRevive", "Activate"]; + if (A3A_hasTFAR || A3A_hasTFARBeta) then - { + { player setVariable ["tf_unable_to_use_radio", false, true]; player setVariable ["tf_globalVolume", _saveVolume]; player setVariable ["tf_voiceVolume", _saveVolumeVoice, true]; - }; + }; if (isMultiplayer) then {[_unit,"remove"] remoteExec ["A3A_fnc_flagaction",0,_unit]}; - } +} else - { +{ _unit stop false; if (_inPlayerGroup or _playersX) then - { + { [_unit,"remove"] remoteExec ["A3A_fnc_flagaction",0,_unit]; - }; }; +}; if (_isPlayer and (_unit getVariable ["respawn",false])) exitWith {}; diff --git a/A3A/addons/core/functions/Save/fn_deleteSave.sqf b/A3A/addons/core/functions/Save/fn_deleteSave.sqf index 4d06309ba0..f94448118d 100644 --- a/A3A/addons/core/functions/Save/fn_deleteSave.sqf +++ b/A3A/addons/core/functions/Save/fn_deleteSave.sqf @@ -46,7 +46,7 @@ private _savedPlayers = _namespace getVariable ["savedPlayers" + _postfix, []]; "outpostsFIA", "tasks", "idlebases", "idleassets", "killZones", "controlsSDK", "params", "attackCountdownOccupants", "attackCountdownInvaders", "prestigeNATO", "prestigeCSAT", "savedPlayers", "testingTimerIsActive", "HR_Garage", "A3A_fuelAmountleftArray", "HQKnowledge", "enemyResources", - "version", "name", "saveTime", "ended", "factions", "addonVics", "DLC"]; + "version", "name", "saveTime", "ended", "factions", "addonVics", "DLC", "arsenalLimits"]; // Remove this campaign from the save list, if present diff --git a/A3A/addons/core/functions/Save/fn_loadServer.sqf b/A3A/addons/core/functions/Save/fn_loadServer.sqf index 393e46109f..fea398ef24 100644 --- a/A3A/addons/core/functions/Save/fn_loadServer.sqf +++ b/A3A/addons/core/functions/Save/fn_loadServer.sqf @@ -38,18 +38,26 @@ if (isServer) then { ["killZones"] call A3A_fnc_getStatVariable; ["controlsSDK"] call A3A_fnc_getStatVariable; ["bombRuns"] call A3A_fnc_getStatVariable; + ["arsenalLimits"] call A3A_fnc_getStatVariable; ["jna_dataList"] call A3A_fnc_getStatVariable; //=========================================================================== //RESTORE THE STATE OF THE 'UNLOCKED' VARIABLES USING JNA_DATALIST + private _categoriesToPublish = createHashMap; { private _arsenalTabDataArray = _x; private _unlockedItemsInTab = _arsenalTabDataArray select { _x select 1 == -1 } apply { _x select 0 }; { - [_x, true] call A3A_fnc_unlockEquipment; + private _categories = [_x, true, true] call A3A_fnc_unlockEquipment; + _categoriesToPublish insert [true, _categories, []]; } forEach _unlockedItemsInTab; } forEach jna_dataList; + Info_1("Categories to publish: %1", keys _categoriesToPublish); + + // Publish the unlocked categories (once each) + { publicVariable ("unlocked" + _x) } forEach keys _categoriesToPublish; + if !(unlockedNVGs isEqualTo []) then { haveNV = true; publicVariable "haveNV" }; @@ -57,10 +65,6 @@ if (isServer) then { //Check if we have radios unlocked and update haveRadio. call A3A_fnc_checkRadiosUnlocked; - //Sort optics list so that snipers pick the right sight - // obsolete since rebelGear - //unlockedOptics = [unlockedOptics,[],{getNumber (configfile >> "CfgWeapons" >> _x >> "ItemInfo" >> "mass")},"DESCEND"] call BIS_fnc_sortBy; - // Set enemy roadblock allegiance to match nearest main marker private _mainMarkers = markersX - controlsX - outpostsFIA; { diff --git a/A3A/addons/core/functions/Save/fn_loadStat.sqf b/A3A/addons/core/functions/Save/fn_loadStat.sqf index de49ea4684..c86ef55f86 100644 --- a/A3A/addons/core/functions/Save/fn_loadStat.sqf +++ b/A3A/addons/core/functions/Save/fn_loadStat.sqf @@ -33,7 +33,7 @@ private _specialVarLoads = [ "garrison","tasks","membersX","vehInGarage","destroyedBuildings","idlebases", "chopForest","weather","killZones","jna_dataList","controlsSDK","mrkCSAT","nextTick", "bombRuns","wurzelGarrison","aggressionOccupants", "aggressionInvaders", "enemyResources", "HQKnowledge", - "testingTimerIsActive", "version", "HR_Garage", "A3A_fuelAmountleftArray" + "testingTimerIsActive", "version", "HR_Garage", "A3A_fuelAmountleftArray", "arsenalLimits" ]; private _varName = _this select 0; @@ -375,6 +375,9 @@ if (_varName in _specialVarLoads) then { }; }; }; + if (_varname == "arsenalLimits") then { + A3A_arsenalLimits = _varValue; publicVariable "A3A_arsenalLimits"; + }; if(_varname == 'testingTimerIsActive') then { diff --git a/A3A/addons/core/functions/Save/fn_saveLoop.sqf b/A3A/addons/core/functions/Save/fn_saveLoop.sqf index 0069ae5e52..c45373d395 100644 --- a/A3A/addons/core/functions/Save/fn_saveLoop.sqf +++ b/A3A/addons/core/functions/Save/fn_saveLoop.sqf @@ -87,6 +87,7 @@ private _antennasDeadPositions = []; ["maxUnits", 140] call A3A_fnc_setStatVariable; // backwards compatibility ["nextTick", nextTick - time] call A3A_fnc_setStatVariable; ["weather",[fogParams,rain]] call A3A_fnc_setStatVariable; +["arsenalLimits", A3A_arsenalLimits] call A3A_fnc_setStatVariable; private _destroyedPositions = destroyedBuildings apply { getPosATL _x }; ["destroyedBuildings",_destroyedPositions] call A3A_fnc_setStatVariable; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_ASF.sqf b/A3A/addons/core/functions/Supports/fn_SUP_ASF.sqf index e8de0507db..bbd51a0155 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_ASF.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_ASF.sqf @@ -28,11 +28,11 @@ private _faction = Faction(_side); private _vehType = selectRandom (_faction get "vehiclesPlanesAA"); private _aggro = if(_side == Occupants) then {aggressionOccupants} else {aggressionInvaders}; -if (_delay < 0) then { _delay = (0.5 + random 1) * (300 - 15*tierWar - 1*_aggro) }; +if (_delay < 0) then { _delay = (0.5 + random 1) * (100 - _aggro + 18*A3A_enemyResponseTime) }; private _targArray = []; if (_target isEqualType objNull and {!isNull _target}) then { - A3A_supportStrikes pushBack [_side, "TARGET", _target, time + 1200, 1200, 200]; + A3A_supportStrikes pushBack [_side, "TARGET", _target, time + 1200, 1200, A3A_vehicleResourceCosts get _vehType]; _targArray = [_target, _targPos]; }; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_ASFRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_ASFRoutine.sqf index 6086b3bf1a..6098c5689c 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_ASFRoutine.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_ASFRoutine.sqf @@ -35,6 +35,7 @@ _plane setVariable ["SupportData", _suppData]; // for use in EHs private _group = [_side, _plane] call A3A_fnc_createVehicleCrew; { [_x, nil, false, _resPool] call A3A_fnc_NATOinit } forEach units _group; _group deleteGroupWhenEmpty true; +[-10 * count units _group, _side, _resPool] call A3A_fnc_addEnemyResources; _plane addEventHandler ["Killed", { params ["_plane"]; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_CAS.sqf b/A3A/addons/core/functions/Supports/fn_SUP_CAS.sqf index f7fa990c52..5fd1eabaf5 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_CAS.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_CAS.sqf @@ -28,7 +28,7 @@ private _faction = Faction(_side); private _vehType = selectRandom (_faction get "vehiclesPlanesCAS"); private _aggro = if(_side == Occupants) then {aggressionOccupants} else {aggressionInvaders}; -if (_delay < 0) then { _delay = (0.5 + random 1) * (300 - 15*tierWar - 1*_aggro) }; +if (_delay < 0) then { _delay = (0.5 + random 1) * (100 - _aggro + 18*A3A_enemyResponseTime) }; private _targArray = []; if (_target isEqualType objNull and {!isNull _target}) then { diff --git a/A3A/addons/core/functions/Supports/fn_SUP_CASApproach.sqf b/A3A/addons/core/functions/Supports/fn_SUP_CASApproach.sqf index d483256f13..e83f61e4da 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_CASApproach.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_CASApproach.sqf @@ -41,7 +41,7 @@ Debug_1("Starting ammo: %1", _ammoHM); private _fnc_getFireMatrix = { params ["_targetType", "_allowHeavyWeapon"]; - if (_targetType in FactionGet(all,"vehiclesTanks")) exitWith + if (_targetType in (FactionGet(all,"vehiclesTanks") + FactionGet(all,"vehiclesHeavyTanks"))) exitWith { Debug_1("%1 target is tank", _supportName); if(_allowHeavyWeapon) exitWith { [[true, 25, 3, 1], [true, 25, 3, 1], [true, 35, 3, 1]] }; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_CASDiveBombRun.sqf b/A3A/addons/core/functions/Supports/fn_SUP_CASDiveBombRun.sqf index 7138212f81..b4812d00c9 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_CASDiveBombRun.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_CASDiveBombRun.sqf @@ -17,6 +17,9 @@ private _group = group driver _plane; (_plane getVariable "diveParams") params ["_startAlt", "_endAlt", "_diveSpeed", "_diveAngle", "_turnRate", "_bombDrag"]; +// Reduce accuracy against foot troops +private _targetOffset = [0,0,0]; +if (_target isKindOf "Man") then { _targetOffset getPos [random 100, random 360]; _targetOffset set [2, 0] }; // Delay on loop until we're in the correct position private _inPosition = false; @@ -28,6 +31,7 @@ while {true} do { // Target lead calc private _timeToTarget = 1.1 * (_plane distance _target) / _diveSpeed; private _targetPos = eyePos _target vectorAdd (velocity _target vectorMultiply _timeToTarget); // posASL + _targetPos = _targetPos vectorAdd _targetOffset; private _targDirFwd = getPosASL _plane vectorFromTo _targetPos; _targDirFwd = vectorNormalized [_targDirFwd#0, _targDirFwd#1, 0]; @@ -65,7 +69,7 @@ _plane setVariable ["A3A_diveLastDir", vectorDir _plane]; _plane setVariable ["A3A_diveLastPos", getPosASL _plane]; private _ehID = addMissionEventHandler ["EachFrame", { - _thisArgs params ["_plane", "_target", "_endAlt", "_diveSpeed", "_turnRate", "_bombDrag"]; + _thisArgs params ["_plane", "_target", "_endAlt", "_diveSpeed", "_turnRate", "_bombDrag", "_targetOffset"]; if (!alive _target or !canMove _plane or isNull driver _plane) exitWith { Debug("EachFrame handler abandoned due to target or plane damage"); @@ -78,6 +82,7 @@ private _ehID = addMissionEventHandler ["EachFrame", { private _bombOffset = _bombOffset vectorAdd (vectorNormalized [_dir#1, -(_dir#0), 0] vectorMultiply (_bombDrag#1)); private _timeToTarget = (_plane distance _target) / _diveSpeed; private _targetPos = getPosASL _target vectorAdd (velocity _target vectorMultiply _timeToTarget) vectorAdd _bombOffset; + _targetPos = _targetPos vectorAdd _targetOffset; private _targetDir = getPosASL _plane vectorFromTo _targetPos; // heading adjustment @@ -103,7 +108,7 @@ private _ehID = addMissionEventHandler ["EachFrame", { _plane setVectorDirAndUp [_dir, _dir vectorCrossProduct [0,0,1] vectorCrossProduct _dir]; _plane setVelocity (_dir vectorMultiply _diveSpeed); - if (getPosATL _plane#2 < _endAlt) exitWith { + if (getPosASL _plane#2 - getPosASL _target#2 < _endAlt) exitWith { removeMissionEventHandler ["EachFrame", _thisEventHandler]; driver _plane enableAI "All"; if (_targetDir vectorDotProduct vectorDir _plane < 0.9) exitWith { @@ -126,7 +131,7 @@ private _ehID = addMissionEventHandler ["EachFrame", { _plane setVariable ["bombsDropped", true]; }; -}, [_plane, _target, _endAlt, _diveSpeed, _turnRate, _bombDrag]]; +}, [_plane, _target, _endAlt, _diveSpeed, _turnRate, _bombDrag, _targetOffset]]; waitUntil { sleep 1; !(getEventHandlerInfo ["EachFrame", _ehID] # 0) }; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_CASRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_CASRoutine.sqf index fbca76eae0..01b5d598b2 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_CASRoutine.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_CASRoutine.sqf @@ -35,6 +35,8 @@ private _group = [_side, _plane] call A3A_fnc_createVehicleCrew; { [_x, nil, false, _resPool] call A3A_fnc_NATOinit } forEach units _group; _group deleteGroupWhenEmpty true; _group setBehaviourStrong "CARELESS"; +[-10 * count units _group, _side, _resPool] call A3A_fnc_addEnemyResources; + _plane addEventHandler ["Killed", { params ["_plane"]; @@ -42,7 +44,7 @@ _plane addEventHandler ["Killed", { }]; // should we be passing the timeout around here? Or have separate timeouts for bomb & CAS? -if (!isNil {_plane getVariable "bombRacks"}) then { +if (count (_plane getVariable "diveParams") > 0) then { [_suppData, _plane, _group, _reveal] call A3A_fnc_SUP_CASDiveBomb; }; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_CASRun.sqf b/A3A/addons/core/functions/Supports/fn_SUP_CASRun.sqf index 9861cf5a5c..ba290d8e3c 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_CASRun.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_CASRun.sqf @@ -41,7 +41,18 @@ private _fnc_executeWeaponFire = //Fire weapon if one is selected (guided weapons only gets fired when they have a lockon possibility on the target) _plane setVariable ["missileShots", _missileShots min _currentHighest]; - _plane fireAtTarget [_plane getVariable "currentTarget", _selectedWeapon]; + private _missileFired = false; + _missileFired = _plane fireAtTarget [_plane getVariable "currentTarget", _selectedWeapon]; + + //This should only affect RHSGREF_A29B_HIDF and UK3CB_B_T28Trojan_HIDF_CAS + if (!(gunner _plane isEqualTo objNull) && !_missileFired) then { + //Strictly speaking not required for the two planes this fix is for, the backup if statement would select the correct firemode regardless - future proofing + private _weapCfg = configFile >> "cfgWeapons" >> _selectedWeapon; + private _modes = ["Direct","TopDown"] arrayIntersect getArray (_weapCfg >> "modes"); + if (_modes isEqualTo []) then { _modes = getArray (_weapCfg >> "modes") }; + private _modeCfg = [_weapCfg >> (_modes#0), _weapCfg] select (_modes#0 == "this"); + (driver _plane) forceWeaponFire [_selectedWeapon, configName _modeCfg]; + }; }; private _weapons = _plane getVariable ["rocketLauncher", []]; @@ -103,6 +114,7 @@ private _fireParams = private _fireParams = +(_plane getVariable "fireParams"); _plane setVariable ["currentTarget", _target]; + private _enterRunPos = getPosASL _plane; private _targetPos = eyePos _target; if(terrainIntersectASL [_enterRunPos, _targetPos]) exitWith { @@ -131,6 +143,13 @@ reverse _fireIntervals; while { count _fireParams > count _fireIntervals } do { _fireParams deleteAt 0 }; Debug_2("Fire intervals for run dist %1: %2", _runDist, _fireIntervals); +//This should only affect RHSGREF_A29B_HIDF and UK3CB_B_T28Trojan_HIDF_CAS +private _gunnerLaser = getText(configFile >> "A3A" >> "Loadouts" >> "CASPlane" >> typeOf _plane >> "gunnerLaser"); +if (_gunnerLaser isNotEqualTo "") then { + (gunner _plane) doTarget _target; + _plane lockCameraTo [_target, [0]]; + (gunner _plane) forceWeaponFire [_gunnerLaser, _gunnerLaser]; +}; addMissionEventHandler ["EachFrame", { @@ -158,6 +177,11 @@ waitUntil { sleep 1; _transform#8 >= 1 }; Debug_1("Gun run for %1 finished, returning control", _supportName); +//This should only affect RHSGREF_A29B_HIDF and UK3CB_B_T28Trojan_HIDF_CAS +if (_gunnerLaser isNotEqualTo "") then { + _plane lockCameraTo [objNull, [0]]; + (gunner _plane) forceWeaponFire [_gunnerLaser, _gunnerLaser]; +}; /* if(_interval > 0.25 && (_fireParams#0#0)) then { diff --git a/A3A/addons/core/functions/Supports/fn_SUP_SAM.sqf b/A3A/addons/core/functions/Supports/fn_SUP_SAM.sqf index f7f495def0..ba335b736d 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_SAM.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_SAM.sqf @@ -54,11 +54,11 @@ _group deleteGroupWhenEmpty true; private _aggro = if(_side == Occupants) then {aggressionOccupants} else {aggressionInvaders}; -if (_delay < 0) then { _delay = (0.5 + random 1) * (350 - 15*tierWar - 1*_aggro) }; +if (_delay < 0) then { _delay = (0.5 + random 1) * (100 - _aggro + 22*A3A_enemyResponseTime) }; private _targArray = []; if (_target isEqualType objNull and {!isNull _target}) then { - A3A_supportStrikes pushBack [_side, "TARGET", _target, time + 1200, 1200, 200]; + A3A_supportStrikes pushBack [_side, "TARGET", _target, time + 1200, 1200, 100]; _targArray = [_target, _targPos]; }; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_SAMAvailable.sqf b/A3A/addons/core/functions/Supports/fn_SUP_SAMAvailable.sqf index 160842dea6..56fff2cdb5 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_SAMAvailable.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_SAMAvailable.sqf @@ -17,6 +17,11 @@ params ["_target", "_side", "_maxSpend", "_availTypes"]; if !(_target isKindOf "Air") exitWith { 0 }; // can't hit anything except air -// Should limit to certain templates? +private _targThreat = A3A_vehicleResourceCosts getOrDefault [typeOf _target, 0]; +_targThreat = _targThreat + (_target getVariable ["A3A_airKills", 0]); -1; // maybe set higher, especially if it's fixed-wing aircraft? +// Avoid using SAMs against low-threat targets unless it's a low air faction +private _lowAir = Faction(_side) getOrDefault ["attributeLowAir", false]; +if (!_lowAir) then { _targThreat = _targThreat - 150 }; + +_targThreat / 500; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_UAVRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_UAVRoutine.sqf index f11ecf4c84..f7a6fda729 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_UAVRoutine.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_UAVRoutine.sqf @@ -27,6 +27,7 @@ private _uav = createVehicle [_planeType, _spawnPos, [], 0, "FLY"]; [_side, _uav] call A3A_fnc_createVehicleCrew; _groupVeh = group driver _uav; { [_x, nil, false, _resPool] call A3A_fnc_NATOinit } forEach (crew _uav); // arguable +[-10 * count units _groupVeh, _side, _resPool] call A3A_fnc_addEnemyResources; [_uav, _side, _resPool] call A3A_fnc_AIVEHinit; _wp = _groupVeh addWayPoint [_suppCenter, 0]; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_airstrikeRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_airstrikeRoutine.sqf index 41e5755463..22882842dd 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_airstrikeRoutine.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_airstrikeRoutine.sqf @@ -38,6 +38,7 @@ _group deleteGroupWhenEmpty true; _x disableAI "TARGET"; _x disableAI "AUTOTARGET"; } forEach units _group; +[-10 * count units _group, _side, _resPool] call A3A_fnc_addEnemyResources; // Should we really have these? _plane addEventHandler ["Killed", { @@ -46,7 +47,7 @@ _plane addEventHandler ["Killed", { }]; //["_reveal", "_position", "_side", "_supportType", "_markerType", "_markerLifeTime"] -[_reveal, _targetPos, _side, "Airstrike", 150, 120] spawn A3A_fnc_showInterceptedSupportCall; +[_reveal, _targetPos, _side, "Airstrike", 150, 120] spawn A3A_fnc_showInterceptedSupportCall; // no better way to time this with the current system, unfortunately //[_side, format ["%1_coverage", _supportName]] spawn A3A_fnc_clearTargetArea; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_artillery.sqf b/A3A/addons/core/functions/Supports/fn_SUP_artillery.sqf index a2316bdbbe..121a55a867 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_artillery.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_artillery.sqf @@ -59,9 +59,9 @@ if (_target isEqualType objNull) then { // name, side, suppType, pos, radius, remTargets, targets private _suppData = [_supportName, _side, "ARTILLERY", markerPos _base, _maxRange, _targArray, _minRange]; A3A_activeSupports pushBack _suppData; -[_suppData, _vehicle, _group, _delay, _reveal] spawn A3A_fnc_SUP_mortarRoutine; +[_suppData, _vehicle, _group, _delay, _reveal, true] spawn A3A_fnc_SUP_mortarRoutine; [_reveal, _side, "ARTILLERY", _targPos, _delay] spawn A3A_fnc_showInterceptedSetupCall; // Vehicle cost + extra support cost for balance -(A3A_vehicleResourceCosts get _vehType) + 200; +(A3A_vehicleResourceCosts get _vehType) + (10 * count units _group) + 200; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_artilleryAvailable.sqf b/A3A/addons/core/functions/Supports/fn_SUP_artilleryAvailable.sqf index d968fc48df..f258da4698 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_artilleryAvailable.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_artilleryAvailable.sqf @@ -19,4 +19,4 @@ if (_target isKindOf "Air") exitWith { 0 }; // can't hit air // Weighted against mortars if(tierWar < 5) exitWith { 0 }; -(tierWar - 4) / 8; // ~12.5% at tier 5, 75% at tier 10 +(tierWar - 4) / 12; // ~8.3% at tier 5, 50% at tier 10 diff --git a/A3A/addons/core/functions/Supports/fn_SUP_mortar.sqf b/A3A/addons/core/functions/Supports/fn_SUP_mortar.sqf index e376b2e3d4..611ad0c58e 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_mortar.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_mortar.sqf @@ -78,9 +78,9 @@ if (_target isEqualType objNull) then { // name, side, suppType, pos, radius, remTargets, targets private _suppData = [_supportName, _side, "MORTAR", _spawnParams#0, _maxRange, _targArray, _minRange]; A3A_activeSupports pushBack _suppData; -[_suppData, _vehicle, _group, _delay, _reveal] spawn A3A_fnc_SUP_mortarRoutine; +[_suppData, _vehicle, _group, _delay, _reveal, false] spawn A3A_fnc_SUP_mortarRoutine; [_reveal, _side, "MORTAR", _targPos, _delay] spawn A3A_fnc_showInterceptedSetupCall; // Mortar cost (might be free?) + extra support cost for balance -(A3A_vehicleResourceCosts getOrDefault [_vehType, 0]) + 100; +(A3A_vehicleResourceCosts getOrDefault [_vehType, 0]) + (10 * count units _group) + 100; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_mortarAvailable.sqf b/A3A/addons/core/functions/Supports/fn_SUP_mortarAvailable.sqf index 2833e7b1cf..913e0b5373 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_mortarAvailable.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_mortarAvailable.sqf @@ -20,4 +20,4 @@ if (_target isKindOf "Air") exitWith { 0 }; // can't hit air // balance this one against artillery if (tierWar < 2) exitWith { 0 }; if (tierWar < 5 or !("ARTILLERY" in _availTypes)) exitWith { 1 }; -1 - (tierWar - 4) / 8; // // 87.5% at tier 5, 25% at tier 10 +1 - (tierWar - 4) / 12; // // 91.7% at tier 5, 50% at tier 10 diff --git a/A3A/addons/core/functions/Supports/fn_SUP_mortarRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_mortarRoutine.sqf index c09eb1f93e..ddec7b08e1 100644 --- a/A3A/addons/core/functions/Supports/fn_SUP_mortarRoutine.sqf +++ b/A3A/addons/core/functions/Supports/fn_SUP_mortarRoutine.sqf @@ -8,65 +8,76 @@ Arguments: Crew group of mortar/artillery vehicle Delay time in seconds Amount of information to reveal to rebels, 0-1 - + True if it's heavy artillery, false if mortar/light */ #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -params ["_suppData", "_mortar", "_crewGroup", "_sleepTime", "_reveal"]; +params ["_suppData", "_mortar", "_crewGroup", "_sleepTime", "_reveal", "_isHeavyArty"]; _suppData params ["_supportName", "_side", "_suppType", "_suppCenter", "_suppRadius", "_target"]; //Sleep to simulate the time it would need to set the support up sleep _sleepTime; -//Decrease number of rounds and time alive if aggro is low -private _sideAggression = if(_side == Occupants) then {aggressionOccupants} else {aggressionInvaders}; -private _numberOfRounds = 24; private _timeAlive = 1200; - -//If the aggro is low, the mortar will shoot less and stay longer in one spot -if((30 + random 40) >_sideAggression) then -{ - _numberOfRounds = 12; - _timeAlive = 1800; -}; -private _shotsPerVolley = _numberOfRounds / 3; +private _shotsForEffect = 6; +private _maxVolleys = 3; +private _reloadTime = [3,10] select _isHeavyArty; +private _spreadOffset = [100, 200] select _isHeavyArty; //A function to repeatedly fire onto a target without loops by using an EH -_fn_executeMortarFire = +private _fn_executeMortarFire = { params ["_mortar"]; - _mortar addEventHandler - [ - "Fired", - { - params ["_mortar"]; - - private _subTargets = _mortar getVariable ["FireOrder", []]; - if(count _subTargets == 0) exitWith - { - _mortar removeEventHandler ["Fired", _thisEventHandler]; - _mortar setVariable ["FireOrder", nil]; - }; - private _shellTarget = _subTargets deleteAt 0; - - [_shellTarget, _mortar] spawn - { - params ["_shellTarget", "_mortar"]; - sleep 0.5; - _mortar doArtilleryFire [_shellTarget, _mortar getVariable "shellType", 1]; - } + _mortar addEventHandler ["Fired", { + params ["_mortar"]; + + private _subTargets = _mortar getVariable ["FireOrder", []]; + if (_subTargets isEqualTo []) exitWith { + _mortar removeEventHandler ["Fired", _thisEventHandler]; + _mortar setVariable ["FireOrder", nil]; + }; + (_subTargets deleteAt 0) params ["_shotPos", "_delayTime"]; + + [_shotPos, _delayTime, _mortar] spawn { + params ["_shotPos", "_delayTime", "_mortar"]; + sleep _delayTime; + _mortar doArtilleryFire [_shotPos, _mortar getVariable "shellType", 1]; } - ]; + }]; - sleep 30; // Give players a bit more warning before the shells land private _subTargets = _mortar getVariable ["FireOrder", []]; - private _target = _subTargets deleteAt 0; - _mortar doArtilleryFire [_target, _mortar getVariable "shellType", 1]; + + // Fire first shot after specified delay + (_subTargets deleteAt 0) params ["_shotPos", "_delayTime"]; + sleep _delayTime; + _mortar doArtilleryFire [_shotPos, _mortar getVariable "shellType", 1]; +}; + + +private _fn_rotateToTarget = +{ + params ["_mortar", "_targPos"]; + + private _change = (_mortar getDir _targPos) - getDir _mortar; + _change = (_change + 540) % 360 - 180; + if (abs _change < 1) exitWith {}; + + addMissionEventHandler ["EachFrame", { + _thisArgs params ["_mortar", "_startDir", "_change", "_startTime"]; + + private _interval = 10 * (time - _startTime) / abs _change; // 10 degree/sec turn + private _newDir = _startDir + _change * (_interval min 1); + _mortar setDir _newDir; + if (!alive _mortar or !alive gunner _mortar or _interval >= 1) exitWith { + removeMissionEventHandler ["EachFrame", _thisEventHandler]; + }; + }, [_mortar, getDir _mortar, _change, time]]; }; + private _timeout = time + _timeAlive; while {time < _timeout} do { @@ -79,32 +90,52 @@ while {time < _timeout} do if !(isNil {_mortar getVariable "FireOrder"}) then { continue }; // mortar still firing at last target - if (_numberOfRounds <= 0) exitWith { + if (_maxVolleys <= 0) exitWith { Info_1("%1 has no more rounds left to fire, aborting routine", _supportName); }; // Read in new target if there is one if (_target isEqualTo []) then { continue }; // no new target added yet + _mortar setVehicleAmmo 1; private _targetPos = _target select 1; // only use position here, not target object _target resize 0; // clear target array so that a new one can be added externally Debug_2("%1 Next target is %2", _supportName, _targetPos); - // 50m circular spread because it's easy + private _flightTime = _mortar getArtilleryETA [_targetPos, _mortar getVariable "shellType"]; private _subTargets = []; - for "_i" from 1 to _shotsPerVolley do { - _subTargets pushBack (_targetPos getPos [random 50, random 360]); + + // Ranging shots + if (_mortar distance2d _targetPos - 1500 < random 1500) then { + _subTargets pushBack [_targetPos getPos [_spreadOffset, random 360], 20]; + } else { + _subTargets pushBack [_targetPos getPos [_spreadOffset*1.5, random 360], 20]; + _subTargets pushBack [_targetPos getPos [_spreadOffset*0.75, random 360], _flightTime]; }; + // Other shots draw a line through the target + private _targDir = getPosATL _mortar vectorFromTo _targetPos; + private _startPos = _targetPos vectorAdd (_targDir vectorMultiply -0.5*_spreadOffset); + private _increment = _targDir vectorMultiply (_spreadOffset / (_shotsForEffect-1)); + + _subTargets pushBack [_startPos, _flightTime]; + for "_i" from 1 to (_shotsForEffect-1) do { + private _shotPos = _startPos vectorAdd (_increment vectorMultiply _i); + _subTargets pushBack [_shotPos, _reloadTime]; + }; + + private _volleyTime = 0; + { _volleyTime = _volleyTime + (_x#1) } forEach _subTargets; + _timeout = _timeout max (time + _volleyTime); // don't cleanup until the volley is done + [_reveal, _targetPos, _side, _suppType, 150, _volleyTime] spawn A3A_fnc_showInterceptedSupportCall; + // Start shooting _mortar setVariable ["FireOrder", _subTargets]; + [_mortar, _targetPos] spawn _fn_rotateToTarget; [_mortar] spawn _fn_executeMortarFire; - _numberOfRounds = _numberOfRounds - _shotsPerVolley; - _timeout = _timeout max (time + 60); // don't cleanup until the volley is done + _maxVolleys = _maxVolleys - 1; //Makes sure that all units escape before attacking // [_side, _targetMarker] spawn A3A_fnc_clearTargetArea; - - [_reveal, _targetPos, _side, _suppType, 150, 5*60] spawn A3A_fnc_showInterceptedSupportCall; }; _mortar removeAllEventHandlers "Fired"; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_tank.sqf b/A3A/addons/core/functions/Supports/fn_SUP_tank.sqf new file mode 100644 index 0000000000..ce8d1cdf5d --- /dev/null +++ b/A3A/addons/core/functions/Supports/fn_SUP_tank.sqf @@ -0,0 +1,51 @@ +/* Sets up a land QRF support + +Environment: Server, scheduled, internal + +Arguments: + The (unique) name of the support, mostly for logging + The side from which the support should be sent (occupants or invaders) + Resource pool used for this support. Should be "attack" or "defence" + Maximum resources to spend on this support. Must be greater than zero + Initial target, or "false" for none. + Estimated position of target, or center of target zone + Reveal value 0-1, higher values mean more information provided about support + Setup delay time in seconds, if negative will calculate based on war tier + +Returns: + Resource cost of support call, or -1 for failure +*/ + +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +params ["_suppName", "_side", "_resPool", "_maxSpend", "_target", "_targPos", "_reveal", "_delay"]; + +private _base = [_side, _targPos] call A3A_fnc_availableBasesLand; +if (isNil "_base") exitWith { Info("Tanks cancelled because no land bases available"); -1 }; + +// Prevent ground QRFs spawning on top of each other. Should be gone after a minute. +[_base, 1] call A3A_fnc_addTimeForIdle; + +private _vehCount = 2 min ceil (_maxSpend / 200); +private _estResources = _vehCount * 200; + +// Land QRF delay is purely dependent on travel as they're slow enough already +if (_delay < 0) then { _delay = 0 }; // land QRFs slow enough already + +private _targArray = []; +if (_target isEqualType objNull and {!isNull _target}) then { + // Should probably put a partial "troops" entry in here too? + A3A_supportStrikes pushBack [_side, "TARGET", _target, time + 1800, 1800, 150*_vehCount]; + _targArray = [_target, _targPos]; +}; + +// name, side, suppType, center, radius, [target, targpos] +private _suppData = [_supportName, _side, "TANK", _targPos, 1000, _targArray]; +A3A_activeSupports pushBack _suppData; +[_suppData, _resPool, _base, _vehCount, _delay, _estResources] spawn A3A_fnc_SUP_tankRoutine; + +private _approxTime = _delay + (markerPos _base distance2D _targPos) / (30 / 3.6); // (badly) estimated travel time +[_reveal, _side, "TANK", _targPos, _approxTime] spawn A3A_fnc_showInterceptedSetupCall; + +_estResources; // *estimated* resource cost of vehicles diff --git a/A3A/addons/core/functions/Supports/fn_SUP_tankAvailable.sqf b/A3A/addons/core/functions/Supports/fn_SUP_tankAvailable.sqf new file mode 100644 index 0000000000..907b8c517c --- /dev/null +++ b/A3A/addons/core/functions/Supports/fn_SUP_tankAvailable.sqf @@ -0,0 +1,24 @@ +/* Get tank support selection weight against target + +Arguments: + Target object + Side to send support from + Max resource spend (not currently used) + Array of strings of available types for this faction + +Return value: + Weight value, 0 for unavailable or useless +*/ + +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +params ["_target", "_side", "_maxSpend", "_availTypes"]; + +if (_target isKindOf "Air") exitWith { 0 }; // can't hit air + +if (_target isKindOf "Man") exitWith { 0.001 }; // Don't spawn to attack meatsacks, but re-use active supports + +// Against vehicles and statics, use more frequently against more dangerous stuff +private _threat = A3A_groundVehicleThreat getOrDefault [typeOf _target, 0]; +0.001 + _threat / 80; diff --git a/A3A/addons/core/functions/Supports/fn_SUP_tankRoutine.sqf b/A3A/addons/core/functions/Supports/fn_SUP_tankRoutine.sqf new file mode 100644 index 0000000000..d44120d5aa --- /dev/null +++ b/A3A/addons/core/functions/Supports/fn_SUP_tankRoutine.sqf @@ -0,0 +1,128 @@ +/* Create and maintain close air support bomber + +Environment: Server, must be spawned + +Arguments: + Active support data, see initSupports + Resource pool of support, "attack" or "defence" + Marker name of source land base + Number of tanks to send + Delay time in seconds + Estimated resources already spent on support +// Amount of information to reveal to rebels, 0-1 +*/ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() + +Debug_1("tankRoutine called with %1", _this); + +params ["_suppData", "_resPool", "_base", "_vehCount", "_sleepTime", "_estResources"]; +_suppData params ["_supportName", "_side", "_suppType", "_suppCenter", "_suppRadius", "_suppTarget"]; + +sleep _sleepTime; + +// Only spawn tanks +private _data = [_side, _base, _suppCenter, _resPool, _vehCount, _vehCount, 2, "Normal", true] call A3A_fnc_createAttackForceLand; +_data params ["_resources", "_vehicles", "_crewGroups", "_cargoGroups"]; +Info_1("Spawn performed: Vehicles %1", _vehicles apply { typeOf _x }); + +// Update the resource usage for the final value +[_estResources - _resources, _side, _resPool] remoteExec ["A3A_fnc_addEnemyResources", 2]; + + +#define STATE_TRAVEL 1 +#define STATE_ACQUIRE 2 +#define STATE_ATTACK 3 + +private _timeOut = time + 1800; +private _remTargets = 2; +private _state = STATE_TRAVEL; +private _targetObj = objNull; + +while {true} do +{ + private _remVehicles = _vehicles select { canFire _x and canMove _x and side _x == _side }; + if (_remVehicles isEqualTo []) exitWith { + Info_1("%1 has been defeated, starting retreat", _supportName); + }; + if (time > _timeOut) exitWith { + Info_1("%1 has timed out, starting retreat", _supportName); + }; + if (_remTargets <= 0) exitWith { + Info_1("%1 has run out of targets, aborting routine", _supportName); + }; + + switch (_state) do + { + case STATE_TRAVEL: { + if (_remVehicles inAreaArray [_suppCenter, _suppRadius, _suppRadius] isEqualTo []) exitWith { sleep 5 }; + + Debug_1("%1 reached patrol zone, acquiring target", _supportName); + _state = STATE_ACQUIRE; + continue; + }; + + case STATE_ACQUIRE: { + if (_suppTarget isEqualTo []) exitWith { sleep 5 }; + + _targetObj = _suppTarget select 0; + if !(_targetObj call A3A_fnc_canFight) exitWith { + _suppTarget resize 0; + Debug_1("%1 skips target, as it is already dead", _supportName); + }; + Debug_2("Next target for %2 is %1", _suppTarget, _supportName); + + private _lastKnownPos = _suppTarget select 1; + private _knownDist = _lastKnownPos distance2d getPosATL _targetObj; + private _knowledge = random 0.3 + _knownDist / _suppRadius; + + { + // reveal based on proximity to last known pos + _x reveal [_targetObj, 4*_knowledge]; + + { deleteWaypoint _x } forEachReversed (waypoints _x); + private _attackWP = _x addWaypoint [_targetObj, 0]; + _attackWP setWaypointType "DESTROY"; + _attackWP waypointAttachVehicle _targetObj; + private _sadWP = _x addWaypoint [_lastKnownPos, 0]; + _sadWP setWaypointType "SAD"; + + _x setCurrentWaypoint ([_sadWP, _attackWP] select (_knowledge > random 0.5)); + _x setBehaviourStrong "COMBAT"; + _x setCombatMode "RED"; + + } forEach _crewGroups; + + _timeout = _timeout + 300; + _state = STATE_ATTACK; + continue; + }; + + case STATE_ATTACK: { + if (alive _targetObj and {_targetObj distance2D _suppCenter < _suppRadius}) exitWith { sleep 5 }; + + _remTargets = _remTargets - 1; + _suppTarget resize 0; // clear target array so support routines can add the next + + if !(alive _targetObj) then { + Debug_1("Target destroyed, %1 returns to cycle mode", _supportName); + } else { + Debug_1("Target evaded, %1 returns to cycle mode", _supportName); + }; + + { + _x setBehaviourStrong "AWARE"; + _x setCombatMode "YELLOW"; + } forEach _crewGroups; + + _timeout = _timeout - 300; + _state = STATE_ACQUIRE; + continue; + }; + }; +}; + +_suppData set [4, 0]; // Set activesupport radius to 0, enables cleanup + +{ [_x] spawn A3A_fnc_VEHDespawner } forEach _vehicles; +{ [_x] spawn A3A_fnc_enemyReturnToBase } forEach (_crewGroups + _cargoGroups); diff --git a/A3A/addons/core/functions/Supports/fn_getArtilleryRanges.sqf b/A3A/addons/core/functions/Supports/fn_getArtilleryRanges.sqf index b95af690f7..0b5c9c06f4 100644 --- a/A3A/addons/core/functions/Supports/fn_getArtilleryRanges.sqf +++ b/A3A/addons/core/functions/Supports/fn_getArtilleryRanges.sqf @@ -12,7 +12,7 @@ Return array: Examples: ["UK3CB_ADA_I_BM21", "rhs_mag_m21of_1"] call A3A_fnc_getArtilleryRanges; - ["O_MBT_02_arty_F", "32Rnd_155mm_Mo_shells_O"] call A3A_fnc_getArtileryRanges; + ["O_MBT_02_arty_F", "32Rnd_155mm_Mo_shells_O"] call A3A_fnc_getArtilleryRanges; */ #include "..\..\script_component.hpp" @@ -20,9 +20,13 @@ FIX_LINE_NUMBERS() params ["_vehType", "_shellType"]; +private _hmkey = _vehType + "_" + _shellType; +if (isNil "A3A_artyRangeHM") then { A3A_artyRangeHM = createHashMap }; +if (_hmkey in A3A_artyRangeHM) exitWith { A3A_artyRangeHM get _hmkey }; + private _turretCfg = call { private _allTurrets = configProperties [configFile >> "CfgVehicles" >> _vehType >> "Turrets"]; - private _idx = _allTurrets findIf { getNumber (_x >> "elevationMode") == 3 }; // no idea if this is a valid check + private _idx = _allTurrets findIf { getNumber (_x >> "elevationMode") != 0 }; // no idea if this is a valid check if (_idx == -1) exitWith { Error_1("Artillery turret not found on %1", _vehType); configFile >> "CfgVehicles" >> _vehType >> "Turrets" >> "MainTurret"; @@ -37,13 +41,44 @@ private _weaponCfg = configFile >> "CfgWeapons" >> _weapon; // Assume that there's no speed override on weapon, probably true for arty private _initSpeed = getNumber (configFile >> "CfgMagazines" >> _shellType >> "initSpeed"); -private _maxElev = getNumber (_turretCfg >> "maxElev"); + +// Find min and max charges +private _minCharge = 1; +private _maxCharge = 0; +{ + private _modeCfg = if (_x == "this") then { _weaponCfg } else { _weaponCfg >> _x }; + private _charge = getNumber (_modeCfg >> "artilleryCharge"); + if (_charge == 0) then { continue }; + _minCharge = _charge min _minCharge; + _maxCharge = _charge max _maxCharge; +} forEach getArray (_weaponCfg >> "modes"); + +if (_maxCharge == 0) then { Error_1("Artillery charge lookup failed for %1", _vehType); _minCharge = 1; _maxCharge = 1; }; + +// Now for the horror. There should be a saner way to do this but I couldn't find one. +private _baseElev = 45; +isNil { + private _veh = createVehicleLocal [_vehType, [0,0,-1000], [], 0, "NONE"]; + _veh enableSimulation false; + private _gunBeg = _veh selectionPosition getText (_turretCfg >> "gunBeg"); + private _gunEnd = _veh selectionPosition getText (_turretCfg >> "gunEnd"); + // Arma bug? should be translated to world space (slightly different for LIB_M2_60) but isn't. + private _gunDir = _gunEnd vectorFromTo _gunBeg; + _baseElev = asin (_gunDir#2) - getNumber (_turretCfg >> "initElev"); + deleteVehicle _veh; +}; + +// Artillery engine doesn't seem to consider minElev as a short-range option +private _maxElev = _baseElev + getNumber (_turretCfg >> "maxElev"); +private _minElev = _baseElev + getNumber (_turretCfg >> "minElev"); +private _longElev = [45, _minElev] select (_minElev > 45); + // Simple formula works because Arma doesn't calculate air resistance for artillery -private _maxRange = (_initSpeed)^2 * sin (2*45) / 9.807; +private _maxRange = (_initSpeed * _maxCharge)^2 * sin (2*_longElev) / 9.807; +private _minRange = (_initSpeed * _minCharge)^2 * sin (2*_maxElev) / 9.807; -// Assumes first fire mode is closest range, probably true because artillery computer -private _minCharge = getNumber (_weaponCfg >> getArray (_weaponCfg >> "modes")#0 >> "artilleryCharge"); -if (_minCharge == 0) then { Error_1("Artillery charge lookup failed for %1", _vehType); _minCharge = 1 }; -private _minRange = (_minCharge * _initSpeed)^2 * sin (2*_maxElev) / 9.807; +//private _reloadTime = getNumber (_weaponCfg >> "reloadTime"); -[_minRange+100, _maxRange-100]; // make sure we can spread shots +private _result = [200 max (_minRange + 100), _maxRange - 100]; // make sure we can spread shots +A3A_artyRangeHM set [_hmkey, _result]; +_result; diff --git a/A3A/addons/core/functions/Supports/fn_initSupports.sqf b/A3A/addons/core/functions/Supports/fn_initSupports.sqf index b6ecf8c9ea..89320e09ca 100644 --- a/A3A/addons/core/functions/Supports/fn_initSupports.sqf +++ b/A3A/addons/core/functions/Supports/fn_initSupports.sqf @@ -37,11 +37,12 @@ private _initData = [ ["ARTILLERY", "AREA", 0.5, 0.9, 150, 85, "", "vehiclesArtillery"], // balanced against mortars (50/50 at tier 10), total will be 0.5/0.9 ["MORTAR", "AREA", 0.5, 0.9, 100, 50, "", "staticMortars"], ["ASF", "TARGET", 1.0, 0.4, 0, 100, "", "vehiclesPlanesAA"], // balanced against SAMs (if available), 66/33 weighting - ["CAS", "TARGET", 1.0, 0.4, 0, 100, "", "vehiclesPlanesCAS"], + ["CAS", "TARGET", 0.5, 0.5, 0, 100, "", "vehiclesPlanesCAS"], + ["TANK", "TARGET", 0.5, 0.5, 0, 100, "", ""], // balanced against CAS, lowAir based ["QRFLAND", "TROOPS", 1.0, 1.4, 0, 0, "", ""], ["QRFAIR", "TROOPS", 0.5, 0.1, 0, 0, "", ""], ["CARPETBOMBS", "AREA", 0.5, 0.1, 200, 0, "u", ""], // balanced against airstrikes - ["SAM", "TARGET", 1.0, 1.0, 0, 100, "u", ""], // balanced against ASF + ["SAM", "TARGET", 1.0, 1.0, 0, 100, "", ""], // balanced against ASF ["ORBITALSTRIKE", "AREA", 0.2, 0.0, 300, 0, "f", ""] // ["GUNSHIP", ["AREA", 0.2, 50, 0]], // uh. Does AREA work for this? Only lasts 5 minutes so maybe... ]; @@ -51,12 +52,14 @@ private _fnc_buildSupportHM = { params ["_faction"]; private _lowAir = _faction getOrDefault ["attributeLowAir", false]; + private _noSAM = _faction getOrDefault ["attributeNoSAM", false]; private _suppHM = createHashMap; { _x params ["_suppType", "_baseType", "_weight", "_lowAirWeight", "_effRadius", "_strikepower", "_flags", "_reqType"]; if (_faction get _reqType isEqualTo []) then { continue }; if ("u" in _flags and !allowUnfairSupports) then { continue }; if ("f" in _flags and !allowFuturisticSupports) then { continue }; + if (_suppType == "SAM" and _noSAM) then { continue }; private _weight = [_weight, _lowAirWeight] select _lowAir; _suppHM set [_suppType, [_baseType, _weight, _effRadius, _strikepower]]; @@ -67,6 +70,20 @@ private _fnc_buildSupportHM = A3A_supportTypesOcc = A3A_faction_occ call _fnc_buildSupportHM; A3A_supportTypesInv = A3A_faction_inv call _fnc_buildSupportHM; +// Generate anti-air support threshold for a faction, based on average ASF plane cost +private _fnc_getAirThreshold = +{ + params ["_faction"]; + private _planes = _faction get "vehiclesPlanesAA"; + if (_planes isEqualTo []) exitWith { 200 }; // SAM price + private _cost = 0; + { _cost = _cost + (A3A_vehicleResourceCosts get _x) } forEach _planes; + _cost / count _planes; +}; + +A3A_airThresholdOcc = A3A_faction_occ call _fnc_getAirThreshold; +A3A_airThresholdInv = A3A_faction_inv call _fnc_getAirThreshold; + // Build marker lists for determining importance of target locations diff --git a/A3A/addons/core/functions/Supports/fn_maxDefenceSpend.sqf b/A3A/addons/core/functions/Supports/fn_maxDefenceSpend.sqf index 26331c9495..ff34f85cfb 100644 --- a/A3A/addons/core/functions/Supports/fn_maxDefenceSpend.sqf +++ b/A3A/addons/core/functions/Supports/fn_maxDefenceSpend.sqf @@ -36,17 +36,23 @@ Debug_2("Current resources %1, max resources %2", _curResources, _maxResources); if (_curResources < 0) exitWith { 0 }; -// If target is air, use a global spend limit and only consider anti-air spends +// If target is air, use global anti-air and target threat specific spend limits if (_target isEqualType objNull and {_target isKindOf "Air"}) exitWith { - // TODO: should we consider aircraft type here? - // ideally want to prevent supports being spammed against unarmed aircraft - // but this might need to be the concern of the airspace manager - - // TODO: Might need to constrain this with the strike list so that you don't get multiple supports sent against one aircraft - - private _isArmed = typeOf _target in (FactionGet(all, "vehiclesHelisLightAttack") + FactionGet(all, "vehiclesHelisAttack") + FactionGet(all, "vehiclesPlanesCAS") + FactionGet(all, "vehiclesPlanesAA")); - private _maxAASpend = _maxResources * ([0.1, 0.3] select _isArmed); + private _targThreat = A3A_vehicleResourceCosts getOrDefault [typeOf _target, 0]; + _targThreat = _targThreat + (_target getVariable ["A3A_airKills", 0]); + + private _targSpend = 0; + { + _x params ["_sside", "_btype", "_starg", "_endtime", "_dur", "_pow"]; + if (_sside == _side && _starg isEqualTo _target) then { _targSpend = _targSpend + _pow }; + } forEach A3A_supportStrikes; + + private _threshold = [A3A_airThresholdOcc, A3A_airThresholdInv] select (_side == Invaders); + private _threshold = _threshold * 0.6 * (4 min _maxResources / _curResources); + private _maxSpendTarg = _targThreat - _targSpend - _threshold; + + private _maxAASpend = _maxResources * 0.3; private _curAASpend = 0; { _x params ["_spSide", "_spCallPos", "_spTargPos", "_spRes", "_spTime"]; @@ -59,8 +65,8 @@ if (_target isEqualType objNull and {_target isKindOf "Air"}) exitWith } forEach A3A_supportSpends; - Debug_2("Cur AA spend %1, max AA spend %2", _curAASpend, _maxAASpend); - _curResources min (_maxAASpend - _curAASpend); + Debug_5("Cur AA spend %1, max AA spend %2, targ threat %3, targ spend %4, threshold %5", _curAASpend, _maxAASpend, _targThreat, _targSpend, _threshold); + _curResources min _maxSpendTarg min (_maxAASpend - _curAASpend); }; @@ -102,15 +108,13 @@ else _maxSpendLoc = _maxSpendLoc * (_defMul - _defSub); Debug_3("Max location spend %1 from defmul %2 and defsub %3", _maxSpendLoc, _defMul, _defSub); - - // Prevent overreacting to threats: recentDamage + enemyStr - friendlyStr - // Recent damage, generated by AIReactOnKill & AIVehInit stuff? - private _recentDamage = [_side, _callPos, 300] call A3A_fnc_getRecentDamage; // should this be related to marker size? hmm - // Accumulate base strength of nearby enemies private _enemyStr = 0; private _nearEnemies = units _targetSide inAreaArray [_callPos, 500, 500]; - if (_target isEqualType objNull) then { _nearEnemies pushBackUnique gunner vehicle _target }; // add target, in case it's shooting from long range + if (_target isEqualType objNull and { _target distance2d _callPos > 400 }) then { + // Include enemies near the target + _nearEnemies = _nearEnemies arrayIntersect (units _targetSide inAreaArray [getPosATL _target, 100, 100]); + }; { if !(_x call A3A_fnc_canFight) then { continue }; if (vehicle _x isKindOf "Air") then { continue }; @@ -120,6 +124,17 @@ else }; } forEach _nearEnemies; + // Cap max location spend when enemies are a small proportion of total rebel firepower + if (_targetSide == teamPlayer) then { + private _maxSpendProp = 0.1 + (_enemyStr / (30 * A3A_activePlayerCount)) ^ 0.6; + Debug_1("Max spend by rebel threat proportion: %1", _maxSpendProp); + _maxSpendLoc = _maxSpendLoc min _maxSpendProp; + }; + + // Prevent overreacting to threats: recentDamage + enemyStr - friendlyStr + // Recent damage, generated by AIReactOnKill & AIVehInit stuff? + private _recentDamage = [_side, _callPos, 300] call A3A_fnc_getRecentDamage; // should this be related to marker size? hmm + // counter with friendly unit strength private _friendStr = 0; private _nearFriends = units _side inAreaArray [_callPos, 500, 500]; @@ -134,11 +149,9 @@ else //}; } forEach _nearFriends; - _threatBalance = (2*_recentDamage + _enemyStr) / (_friendStr max 1); + _threatBalance = (2.6*_recentDamage + _enemyStr) / (1 + _friendStr + _recentDamage); _threatBalance = 1 min (_threatBalance - 1); Debug_4("Threat balance %1 from: Recent damage %2 enemy strength %3 friend strength %4", _threatBalance, _recentDamage, _enemyStr, _friendStr); - -// _maxSpend = _maxSpend min 2*(2*_recentDamage + _enemyStr - _friendStr); }; if (_maxSpendLoc <= 0 or _threatBalance <= 0) exitWith { 0 }; // possible if near enemy markers diff --git a/A3A/addons/core/functions/Supports/fn_requestSupport.sqf b/A3A/addons/core/functions/Supports/fn_requestSupport.sqf index 4b3e26e3ea..a09019a878 100644 --- a/A3A/addons/core/functions/Supports/fn_requestSupport.sqf +++ b/A3A/addons/core/functions/Supports/fn_requestSupport.sqf @@ -69,10 +69,13 @@ private _classWeightsHM = call { // Shortcut this for air targets if (_target isKindOf "Air") exitWith { createHashMapFromArray [["AREA", 0], ["TROOPS", 0], ["TARGET", 1]] }; - // AREA has stronger reduction than TROOPS but over a smaller area - private _weightArea = 1; + // Some general aggro weighting for area supports + private _aggro = [aggressionInvaders, aggressionOccupants] select (_side == Occupants); + private _weightArea = 0.5 + (_aggro/200); private _weightTarget = 1; private _weightTroops = 1; + + // AREA has stronger reduction than TROOPS but over a smaller area { _x params ["_sside", "_btype", "_starg", "_endtime", "_dur", "_pow"]; if (_sside != _side or time >= _endtime) then { continue }; diff --git a/A3A/addons/core/functions/Supports/fn_showInterceptedSetupCall.sqf b/A3A/addons/core/functions/Supports/fn_showInterceptedSetupCall.sqf index fdc0a1efe1..b0336374cb 100644 --- a/A3A/addons/core/functions/Supports/fn_showInterceptedSetupCall.sqf +++ b/A3A/addons/core/functions/Supports/fn_showInterceptedSetupCall.sqf @@ -52,6 +52,10 @@ else { _text = format [localize "STR_A3A_fn_support_showIntStpCll_QRFLAND", _sideName]; }; + case ("TANK"): + { + _text = format [localize "STR_A3A_fn_support_showIntStpCll_TANK", _sideName]; + }; case ("AIRSTRIKE"): { _text = format [localize "STR_A3A_fn_support_showIntStpCll_AIRSTRIKE", _sideName]; @@ -109,7 +113,7 @@ private _timeStr = if(_setupTime < 60) then { "<1" } else { str round (_setup if(_reveal >= 0.8) then { - if(toupper _supportType in ["QRFLAND", "QRFAIR", "COUNTERATTACK", "MAJORATTACK"]) then + if(toupper _supportType in ["QRFLAND", "QRFAIR", "COUNTERATTACK", "MAJORATTACK", "TANK"]) then { _text = [_text,format[localize "STR_A3A_fn_support_showIntStpCll_arrivalTime",_timeStr]] joinString " "; } diff --git a/A3A/addons/core/functions/Templates/Loadouts/fn_loadout_addItems.sqf b/A3A/addons/core/functions/Templates/Loadouts/fn_loadout_addItems.sqf index ed3b631254..42a9bfcbf5 100644 --- a/A3A/addons/core/functions/Templates/Loadouts/fn_loadout_addItems.sqf +++ b/A3A/addons/core/functions/Templates/Loadouts/fn_loadout_addItems.sqf @@ -142,7 +142,7 @@ private _backpackItems = if (_backpack isEqualTo []) then {[]} else {_backpack s _uniformItems pushBack _itemInfo; _uniformCurrentLoad = _uniformCurrentLoad + _totalLoad; }; - case (_totalLoad < (_vestMaxLoad - _vestCurrentLoad)): { + case (_totalLoad < (_vestMaxLoad - _vestCurrentLoad) or _backpackMaxLoad == 0): { _vestItems pushBack _itemInfo; _vestCurrentLoad = _vestCurrentLoad + _totalLoad; }; diff --git a/A3A/addons/core/functions/Templates/fn_aceModCompat.sqf b/A3A/addons/core/functions/Templates/fn_aceModCompat.sqf index 78ce9a7923..6054aaad57 100644 --- a/A3A/addons/core/functions/Templates/fn_aceModCompat.sqf +++ b/A3A/addons/core/functions/Templates/fn_aceModCompat.sqf @@ -62,10 +62,11 @@ aceMedItems = [ "ACE_suture" ]; -aceMedItemsBlood = [ +aceMedItemsNonKat = [ "ACE_bloodIV", "ACE_bloodIV_250", - "ACE_bloodIV_500" + "ACE_bloodIV_500", + "ACE_painkillers" ]; advItems = [ @@ -210,6 +211,7 @@ aceFoodItems = [ "ACE_MRE_SteakVegetables" ]; +/* publicVariable "aceItems"; publicVariable "aceMedItems"; publicVariable "aceMedItemsBlood"; @@ -217,6 +219,7 @@ publicVariable "advItems"; publicVariable "katMedItems"; publicVariable "aceCoolingItems"; publicVariable "aceFoodItems"; +*/ //////////////////////////////////// // ACE ITEMS MODIFICATIONS /// @@ -227,7 +230,7 @@ FactionGet(reb,"initialRebelEquipment") append aceItems; //ACE medical starting items if (A3A_hasACEMedical && !A3A_hasKAT) then { FactionGet(reb,"initialRebelEquipment") append aceMedItems; - FactionGet(reb,"initialRebelEquipment") append aceMedItemsBlood; + FactionGet(reb,"initialRebelEquipment") append aceMedItemsNonKat; }; if (A3A_hasADV) then { diff --git a/A3A/addons/core/functions/Templates/fn_compatibilityLoadFaction.sqf b/A3A/addons/core/functions/Templates/fn_compatibilityLoadFaction.sqf index f06845819d..1ac0ae501d 100644 --- a/A3A/addons/core/functions/Templates/fn_compatibilityLoadFaction.sqf +++ b/A3A/addons/core/functions/Templates/fn_compatibilityLoadFaction.sqf @@ -26,29 +26,29 @@ missionNamespace setVariable ["A3A_faction_" + _factionPrefix, _faction]; [_faction, _factionPrefix] call A3A_fnc_compileGroups; private _baseUnitClass = switch (_side) do { - case west: { "B_G_Soldier_F" }; - case east: { "O_G_Soldier_F" }; - case independent: { "I_G_Soldier_F" }; - case civilian: { "C_Man_1" }; + case west: { "a3a_unit_west" }; + case east: { "a3a_unit_east" }; + case independent: { "a3a_unit_reb" }; + case civilian: { "a3a_unit_civ" }; }; private _unitClassMap = if (_side isNotEqualTo independent) then { createHashMap } else { createHashMapFromArray [ // Cases matter. Lower case here because allVariables on namespace returns lowercase - ["militia_Unarmed", "I_G_Survivor_F"], - ["militia_Rifleman", "I_G_Soldier_F"], - ["militia_staticCrew", "I_G_Soldier_F"], - ["militia_Medic", "I_G_medic_F"], - ["militia_Sniper", "I_G_Sharpshooter_F"], - ["militia_Marksman", "I_G_Soldier_M_F"], - ["militia_LAT", "I_G_Soldier_LAT_F"], - ["militia_MachineGunner", "I_G_Soldier_AR_F"], - ["militia_ExplosivesExpert", "I_G_Soldier_exp_F"], - ["militia_Grenadier", "I_G_Soldier_GL_F"], - ["militia_SquadLeader", "I_G_Soldier_SL_F"], - ["militia_Engineer", "I_G_engineer_F"], - ["militia_AT", "I_Soldier_AT_F"], - ["militia_AA", "I_Soldier_AA_F"], - ["militia_Petros", "I_G_officer_F"] + ["militia_Unarmed", "a3a_unit_reb_unarmed"], + ["militia_Rifleman", "a3a_unit_reb"], + ["militia_staticCrew", "a3a_unit_reb"], + ["militia_Medic", "a3a_unit_reb_medic"], + ["militia_Sniper", "a3a_unit_reb_sniper"], + ["militia_Marksman", "a3a_unit_reb_marksman"], + ["militia_LAT", "a3a_unit_reb_lat"], + ["militia_MachineGunner", "a3a_unit_reb_mg"], + ["militia_ExplosivesExpert", "a3a_unit_reb_exp"], + ["militia_Grenadier", "a3a_unit_reb_gl"], + ["militia_SquadLeader", "a3a_unit_reb_sl"], + ["militia_Engineer", "a3a_unit_reb_eng"], + ["militia_AT", "a3a_unit_reb_at"], + ["militia_AA", "a3a_unit_reb_aa"], + ["militia_Petros", "a3a_unit_reb_petros"] ] }; //validate loadouts diff --git a/A3A/addons/core/functions/Templates/fn_compileMissionAssets.sqf b/A3A/addons/core/functions/Templates/fn_compileMissionAssets.sqf index 24cae85aa8..6216820d80 100644 --- a/A3A/addons/core/functions/Templates/fn_compileMissionAssets.sqf +++ b/A3A/addons/core/functions/Templates/fn_compileMissionAssets.sqf @@ -67,6 +67,7 @@ setVar("vehiclesAPCs", OccAndInv("vehiclesAPCs") ); setVar("vehiclesIFVs", OccAndInv("vehiclesIFVs") ); setVar("vehiclesLightTanks", OccAndInv("vehiclesLightTanks")); setVar("vehiclesTanks", OccAndInv("vehiclesTanks")); +setVar("vehiclesHeavyTanks", OccAndInv("vehiclesHeavyTanks")); setVar("vehiclesAA", OccAndInv("vehiclesAA")); setVar("vehiclesArtillery", OccAndInv("vehiclesArtillery")); setVar("vehiclesTransportAir", OccAndInv("vehiclesHelisLight") + OccAndInv("vehiclesHelisTransport") + OccAndInv("vehiclesPlanesTransport") ); @@ -77,6 +78,7 @@ setVar("vehiclesHelisTransport", OccAndInv("vehiclesHelisTransport")); setVar("vehiclesPlanesAA", OccAndInv("vehiclesPlanesAA")); setVar("vehiclesPlanesCAS", OccAndInv("vehiclesPlanesCAS")); setVar("vehiclesPlanesTransport", OccAndInv("vehiclesPlanesTransport")); +setVar("vehiclesAirPatrol", OccAndInv("vehiclesAirPatrol")); setVar("staticMortars", OccAndInv("staticMortars") + Reb("staticMortars")); setVar("staticAA", OccAndInv("staticAA") + Reb("staticAA")); setVar("staticAT", OccAndInv("staticAT") + Reb("staticAT")); @@ -135,6 +137,7 @@ setVar("vehiclesLight", _carsArmed + _carsUnarmed); private _vehArmor = getVar("vehiclesTanks") + getVar("vehiclesLightTanks") ++ getVar("vehiclesHeavyTanks") + getVar("vehiclesAA") + getVar("vehiclesArtillery") + getVar("vehiclesLightAPCs") diff --git a/A3A/addons/core/functions/Time/fn_systemTimeDurationToTimeSpan.sqf b/A3A/addons/core/functions/Time/fn_systemTimeDurationToTimeSpan.sqf new file mode 100644 index 0000000000..9a770fdce3 --- /dev/null +++ b/A3A/addons/core/functions/Time/fn_systemTimeDurationToTimeSpan.sqf @@ -0,0 +1,154 @@ +/* + * File: fn_systemTimeDurationToTimeSpan.sqf + * Function: + * Author: + * Function description + * converts the arma 3 timespans to antistai timespans + * Arguments: + * 0: timespan + * 1: timespan + * + * Return Value: + * 0: timespan in antistasi format + * + * Example: + * [systemTimeUTC, _locktime] call A3A_fnc_systemTimeDurationToTimeSpan + * + * Public: No + */ + + /* + I MUST PREFACE THIS HERE. I FUCKING HATE DOING THIS SHIT IN SQF. + THIS CODE WENT THROUGH ABOUT 6 DIFFERENT REVISIONS, WHETHER BY + FIXING RANDOM ERRORS THAT ONLY SQF COULD HAVE, OR THE FUCKING + STUPID FACT THAT WE ONLY HAVE FUCKING FLOATS IN THIS LANGUAGE. + THAT WOULDN'T BE A PROBLEM IF WE HAD LOWER LEVEL OPERATORS + AND FUNCTIONS, BUT AFTER 20+ YEARS THOSE NEVER MATERAILIZED. + FLOATS CAN ONLY SUPPORT INT VALUES UP TO 16,777,216. NOW THINK + WHY IS THIS A PROBLEM. ONE YEAR, NON LEAP, IS 31,536,000 SECONDS. + IT IS IMPOSSIBLE TO ENCODE UNIX TIMESTAMPS OR ANY NORMAL STAMP + WITH THIS ABYSMAL LANGUAGE. SO WHAT DO WE DO? WE FUCKING HAVE + TO MANUALLY FUCKING SUBTRACT PER TIME UNIT. WHY? WHY? WHY? THIS + IS FUCKING STUPID, I'M NOT A FUCKING EXPERT ON CALENDAR + CALCULATIONS BUT THIS LANGUAGE HAS FORCED MY HAND. I WANT THIS + LANGUAGE TO DIE A HORRIBLE DEATH. IF WE WENT TO INTERCEPT OR + JUST A PLAIN EXTENSION, I WOULDN'T HAVE HAD TO SPEND HOURS + ON THIS. I'M NOT A BETTER PROGRAMMER AFTER EXPERIENCING THIS. + MY TIME IS VALUABLE, IT IS A FINITE RESOURCE. I HAVE LOST IT + HERE, I'LL NEVER GET IT BACK. THIS LANGUAGE TREATS US LIKE + SHIT, ONLY BY SPENDING TIME AWAY FROM IT DO WE REASON HOW + TERRIBLE WE HAVE IT. IF THIS WAS ANY OTHER LANGUAGE THIS CODE + WOULD HAVE BEEN THREE LINES MAX. + + MAY GOD HAVE MERCY ON THE SOULS THAT MAINTAIN THIS PIECE OF + SHIT. + + */ + +params ["_systemTimeFinal", "_systemTimeinit"]; + +#define YEARS 0 +#define MONTHS 1 +#define DAYS 2 +#define HOURS 3 +#define MINUTES 4 +#define SECONDS 5 +#define MILLISECS 6 + +// test case here [false,580,0,48,22,210,0,0] +//_systemTimeinit = [2022, 11, 30, 16, 31, 2, 685]; +//_systemTimeFinal = [2024, 7, 2, 17, 19, 24, 895]; + +private _daysToMonths365 = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365]; +private _daysToMonths366 = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366]; + +private _daysInMonths365 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +private _daysInMonths366 = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + + +private _fnc_isLeapYear = +{ + (_this % 4) == 0 && {( _this % 100) != 0 || {_this % 400 == 0}} +}; + +private _fnc_daysToYear = +{ + private _year = _this - 1; + private _century = floor (_year / 100); + floor (_year * (365 * 4 + 1) / 4) - _century + floor (_century / 4) +}; + +// make a copy of init for use in adder math stuff. +private _finalTime = +_systemTimeFinal; +private _initTime = +_systemTimeinit; + +// we don't support months and years, so convert them to days +private _finalDaysFrom = _finalTime # YEARS call _fnc_daysToYear; +_finalDaysFrom = _finalDaysFrom + ([_daysToMonths365, _daysToMonths366] select ((_finalTime # YEARS) call _fnc_isLeapYear) select (_finalTime # MONTHS) - 1); +_finalTime set [DAYS, (_finalTime # DAYS) + _finalDaysFrom]; + +private _initDaysFrom = _initTime # YEARS call _fnc_daysToYear; +_initDaysFrom = _initDaysFrom+ ([_daysToMonths365, _daysToMonths366] select ((_initTime # YEARS) call _fnc_isLeapYear) select (_initTime # MONTHS) - 1); +_initTime set [DAYS, (_initTime # DAYS) + _initDaysFrom]; + +// we go one by one for readability +// I definitly do not like doing this. +private _durationMS = _finalTime # MILLISECS - _initTime # MILLISECS; +if(_durationMS < 0) then +{ + // now do adder stuff + _finalTime set [SECONDS, (_finalTime # SECONDS) - 1]; + _finalTime set [MILLISECS, (_finalTime # MILLISECS) + 1000]; + _durationMS = _finalTime # MILLISECS - _initTime # MILLISECS; +}; + +private _durationSEC = _finalTime # SECONDS - _initTime # SECONDS; +if(_durationSEC < 0) then +{ + _finalTime set [MINUTES, (_finalTime # MINUTES) - 1]; + _finalTime set [SECONDS, (_finalTime # SECONDS) + 60]; + _durationSEC = _finalTime # SECONDS - _initTime # SECONDS; +}; + +private _durationMIN = _finalTime # MINUTES - _initTime # MINUTES; +if(_durationMIN < 0) then +{ + _finalTime set [HOURS, (_finalTime # HOURS) - 1]; + _finalTime set [MINUTES, (_finalTime # MINUTES) + 60]; + _durationMIN = _finalTime # MINUTES - _initTime # MINUTES; +}; + +private _durationHOUR = _finalTime # HOURS - _initTime # HOURS; +if(_durationHOUR < 0) then +{ + _finalTime set [DAYS, (_finalTime # DAYS) - 1]; + _finalTime set [HOURS, (_finalTime # HOURS) + 24]; + _durationHOUR = _finalTime # HOURS - _initTime # HOURS; +}; + +private _durationDAYS = _finalTime # DAYS - _initTime # DAYS; +if(_durationDAYS < 0) exitwith +{ + // days are not uniform, so just do this shit. WELCOME TO HELL. + [false, 0, 0, 0, 0, 0, 0, 0] +}; + +// DON'T FUCKING UNCOMMENT THIS SHIT BELOW +// IT'S HERE TO REMIND OF WHAT SQF TOOK FROM ME +// private _durationMONTHS = _finalTime # MONTHS - _initTime # MONTHS; +// if(_durationMONTHS < 0) then +// { +// _finalTime set [YEARS, (_finalTime # YEARS) - 1]; +// _finalTime set [MONTHS, (_finalTime # MONTHS) + 12]; +// _durationMONTHS = _finalTime # MONTHS - _initTime # MONTHS; +// }; + +// private _durationYEARS = _finalTime # YEARS - _initTime # YEARS; +// if(_durationYEARS < 0) exitWith +// { +// // well shit, you're not supposed to get here... just return a zero array +// [0,0,0,0,0,0,0] +// }; + + +[false, _durationDAYS, _durationHOUR, _durationMIN, _durationSEC, _durationMS, 0, 0] \ No newline at end of file diff --git a/A3A/addons/core/functions/Time/fn_timeSpan_format.sqf b/A3A/addons/core/functions/Time/fn_timeSpan_format.sqf index 373c028cc5..5c49c6a4c0 100644 --- a/A3A/addons/core/functions/Time/fn_timeSpan_format.sqf +++ b/A3A/addons/core/functions/Time/fn_timeSpan_format.sqf @@ -8,11 +8,11 @@ Maintainer: Caleb Serafin Note: Sub seconds are used instead of fractions due to float's limited precision. Arguments: - Timespan. isNegative is index 0, days are index 1, hours are index 2, and smaller units follow in order. May be any amount of fields as long as it starts with isNegative and is in order. + Timespan. | Seconds isNegative is index 0, days are index 1, hours are index 2, and smaller units follow in order. May be any amount of fields as long as it starts with isNegative and is in order. | Seconds get converted to timespan. Symbol Set. 0 are full names. 1 are abbreviations. 2 are condensed colons & en-dash. [DEFAULT=0] Show Zeros. 0 will only show non-zero fields. 1 will show in-between zeros between non-zeros. 2 will show all zeros. [DEFAULT=0] Show Positive.false will hide the positive sign. true will allow the positive sign all fields [DEFAULT=false] - Fields Amount | Slice Number of significant fields to display. | First & last Index to be displayed. Days #1, hours #2 ect.. [DEFAULT=1e7] + Fields Amount | Slice Number of significant fields to display. | First & last index to be displayed. Days #0, hours #1 etc. [DEFAULT=1e7] Pad. All fields will be padded, Days will be padded to 2 characters. [DEFAULT=false] Localise. false for Great British English symbols, true for localised symbols. [DEFAULT=false] @@ -24,54 +24,27 @@ Environment: Any Public: Yes Example: - // Negatives. - DEV_timeSpan = [true,0,0,21,0,0,69,420]; - [DEV_timeSpan] call A3A_fnc_timeSpan_format; // "(-) 21 Minutes 69 Microseconds 420 Nanoseconds" - [DEV_timeSpan,1] call A3A_fnc_timeSpan_format; // "(-) 21m 69µs 420ns" - [DEV_timeSpan,2,2] call A3A_fnc_timeSpan_format; // "-0:0:21:0–0:69:420" + // These are probably the ones you want: + // Assuming + private _seconds = _eventStart - serverTime; + // Dynamic range. (Full names; Show zeros between non-zeros; Hide positive sign; Limit to 2 significant fields; No padding; Localised) + [_seconds,0,1,false,2,false,true] call A3A_fnc_timeSpan_format; // "1 Days 2 Hours" / "1 天 2 小时"; "13 Hours" + // Fixed Range like a digital clock (Colon separated; Show all zeros; Hide positive sign; Select only hours and minutes; With padding; Not localised) + [_seconds,2,2,false,[1,3],true,false] call A3A_fnc_timeSpan_format; // "23:54"; "00:43"; "14:00" - // Zeros. Note the negative marker in DEV_timeSpan. - DEV_timeSpan = [true]; - [DEV_timeSpan] call A3A_fnc_timeSpan_format; // "(Now)" - [DEV_timeSpan,0,0,true] call A3A_fnc_timeSpan_format; // "(+) (Now)" - [DEV_timeSpan,1] call A3A_fnc_timeSpan_format; // "0" - [DEV_timeSpan,1,0,true] call A3A_fnc_timeSpan_format; // "(+) 0" - [DEV_timeSpan,0,2,false] call A3A_fnc_timeSpan_format; // "0 Days 0 Hours 0 Minutes 0 Seconds 0 Milliseconds 0 Microseconds 0 Nanoseconds" - [DEV_timeSpan,0,2,false,nil,true] call A3A_fnc_timeSpan_format; // "00 Days 00 Hours 00 Minutes 00 Seconds 000 Milliseconds 000 Microseconds 000 Nanoseconds" - [DEV_timeSpan,1,2,false] call A3A_fnc_timeSpan_format; // "0d 0h 0m 0s 0ms 0µs 0ns" - [DEV_timeSpan,2,2,false] call A3A_fnc_timeSpan_format; // "0:0:0:0–0:0:0" - [DEV_timeSpan,2,2,true,nil,true] call A3A_fnc_timeSpan_format; // "+00:00:00:00–000:000:000" + // See fn_timeSpan_formatTests for non-localised examples. - // Field visibility. - DEV_timeSpan = [false,0,3,54,0,152,0]; - [DEV_timeSpan,0] call A3A_fnc_timeSpan_format; // "3 Hours 54 Minutes 152 Milliseconds" - [DEV_timeSpan,0,1] call A3A_fnc_timeSpan_format; // "3 Hours 54 Minutes 0 Seconds 152 Milliseconds" - [DEV_timeSpan,0,2] call A3A_fnc_timeSpan_format; // "0 Days 3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds" - [DEV_timeSpan,0,2,true] call A3A_fnc_timeSpan_format; // "(+) 0 Days 3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds" - - // Slicing. - DEV_timeSpan = [false,0,3,54,0,152,0]; - [DEV_timeSpan,0,1,false,2] call A3A_fnc_timeSpan_format; // "3 Hours 54 Minutes" - [DEV_timeSpan,0,2,false,[1,1e7]] call A3A_fnc_timeSpan_format; // "3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds" - [DEV_timeSpan,0,2,false,[0,4]] call A3A_fnc_timeSpan_format; // "0 Days 3 Hours 54 Minutes 0 Seconds" - [DEV_timeSpan,0,2,false,[1,4]] call A3A_fnc_timeSpan_format; // "3 Hours 54 Minutes 0 Seconds" - - // Slicing to get digital time. - DEV_timeSpan = [false,0,3,54,0,152,0]; - [DEV_timeSpan,2,2,false,[1,4]] call A3A_fnc_timeSpan_format; // "3:54:0" - [DEV_timeSpan,2,2,false,[1,4],true] call A3A_fnc_timeSpan_format; // "03:54:00" - - // Localised all places on machine + // Example of each time unit being Localised on a machine set to Simplified Chinese DEV_timeSpan = [false,1,2,3,4,5,6,7]; - [nil,0,0,false,nil,false,true] call A3A_fnc_timeSpan_format; // "(Now)" - [DEV_timeSpan,0,2,false,nil,false,true] call A3A_fnc_timeSpan_format; // "1 Days 2 Hours 3 Minutes 4 Seconds 5 Milliseconds 6 Microseconds 7 Nanoseconds" + [nil,0,0,false,nil,false,true] call A3A_fnc_timeSpan_format; // "(现在)" + [DEV_timeSpan,0,2,false,nil,false,true] call A3A_fnc_timeSpan_format; // "1 天 2 小时 3 分钟 4 秒 5 毫秒 6 微秒 7 纳秒" [DEV_timeSpan,1,2,false,nil,false,true] call A3A_fnc_timeSpan_format; // "1d 2h 3m 4s 5ms 6µs 7ns" */ // A3A_fnc_timeSpan_format = { params [ - ["_timeSpan",[], [ [] ]], + ["_timeSpan",[], [ [], 0 ]], ["_symbolSet", 0, [ 0 ]], ["_showZeros", 0, [ 0 ]], ["_showPositive", false, [ false ]], @@ -80,22 +53,28 @@ params [ ["_localise", false, [ false ]] ]; +if (_timeSpan isEqualType 0) then { + _timeSpan = [_timeSpan] call A3A_fnc_secondsToTimeSpan; +}; + // Note the lack of front spacing on abbreviations. // Note: Micro sign (µ) U+00B5, is completely different from Greek Mu (μ) U+03BC -private _sizeFieldList = if (_localise && (_symbolSet != 2)) then { - private _preSpace = [" ",""] #_symbolSet; - private _postSpace = [" "," "] #_symbolSet; - [ - ["STR_antistasi_timeSpan_days","STR_antistasi_timeSpan_hours","STR_antistasi_timeSpan_minutes","STR_antistasi_timeSpan_seconds","STR_antistasi_timeSpan_milliseconds","STR_antistasi_timeSpan_microseconds","STR_antistasi_timeSpan_nanoseconds"], - ["STR_antistasi_timeSpan_days_abbr","STR_antistasi_timeSpan_hours_abbr","STR_antistasi_timeSpan_minutes_abbr","STR_antistasi_timeSpan_seconds_abbr","STR_antistasi_timeSpan_milliseconds_abbr","STR_antistasi_timeSpan_microseconds_abbr","STR_antistasi_timeSpan_nanoseconds_abbr"] - ] #_symbolSet apply {_preSpace + (localize _x) + _postSpace}; -} else { - [ - [" Days "," Hours "," Minutes "," Seconds "," Milliseconds "," Microseconds "," Nanoseconds "], - ["d ","h ","m ","s ","ms ","µs ","ns "], - [":",":",":","–",":",":",":"] // Note En-Dash U+2013 (toString[8211]) is used to separate seconds from smaller parts. - ] #_symbolSet; -}; +private _sizeFieldList = ( + if (_localise && (_symbolSet != 2)) then { + private _preSpace = [" ",""] #_symbolSet; + private _postSpace = [" "," "] #_symbolSet; + [ + ["STR_antistasi_timeSpan_days","STR_antistasi_timeSpan_hours","STR_antistasi_timeSpan_minutes","STR_antistasi_timeSpan_seconds","STR_antistasi_timeSpan_milliseconds","STR_antistasi_timeSpan_microseconds","STR_antistasi_timeSpan_nanoseconds"], + ["STR_antistasi_timeSpan_days_abbr","STR_antistasi_timeSpan_hours_abbr","STR_antistasi_timeSpan_minutes_abbr","STR_antistasi_timeSpan_seconds_abbr","STR_antistasi_timeSpan_milliseconds_abbr","STR_antistasi_timeSpan_microseconds_abbr","STR_antistasi_timeSpan_nanoseconds_abbr"] + ] #_symbolSet apply {_preSpace + (localize _x) + _postSpace}; + } else { + [ + [" Days "," Hours "," Minutes "," Seconds "," Milliseconds "," Microseconds "," Nanoseconds "], + ["d ","h ","m ","s ","ms ","µs ","ns "], + [":",":",":","–",":",":",":"] // Note En-Dash U+2013 (toString[8211]) is used to separate seconds from smaller parts. + ] #_symbolSet; + } +); private _showInBetweenZeros = _showZeros > 0; private _showAllZeros = _showZeros > 1; // Copy timeSpan to avoid resizes changing input array. diff --git a/A3A/addons/core/functions/Time/fn_timeSpan_formatTests.sqf b/A3A/addons/core/functions/Time/fn_timeSpan_formatTests.sqf new file mode 100644 index 0000000000..8ccede2995 --- /dev/null +++ b/A3A/addons/core/functions/Time/fn_timeSpan_formatTests.sqf @@ -0,0 +1,81 @@ +/* +Maintainer: Caleb Serafin + Not registered in CfgFunctions. + Manually copy and paste. + Tests assertions for A3A_fnc_timeSpan_format. + +Return Array: + True if success, false if failed. + empty is success, list of failed assertions if failure joined by newlines. + +Scope: Any +Environment: Any +Public: No +*/ + +// Format [Code, ExpectedValue] +private _tests = [ + +//// These are probably the ones you want: //// +// Dynamic range. (Full names; Show zeros between non-zeros; Hide positive sign; Limit to 2 significant fields; No padding; Localised) +[{[(1*24*60*60 + 2*60*60),0,1,false,2,false,true] call A3A_fnc_timeSpan_format;}, "1 Days 2 Hours"], +[{[(13*60*60 + 0),0,1,false,2,false,true] call A3A_fnc_timeSpan_format;}, "13 Hours"], +// Fixed Range like a digital clock (Colon separated; Show all zeros; Hide positive sign; Select only hours and minutes; With padding; Not localised) +[{[(23*60*60 + 54*60),2,2,false,[1,3],true,false] call A3A_fnc_timeSpan_format;}, "23:54"], +[{[(0*60*60 + 43*60),2,2,false,[1,3],true,false] call A3A_fnc_timeSpan_format;}, "00:43"], +[{[(24*60*60 + 43*60),2,2,false,[1,3],true,false] call A3A_fnc_timeSpan_format;}, "00:43"], +[{[(14*60*60 + 0*60),2,2,false,[1,3],true,false] call A3A_fnc_timeSpan_format;}, "14:00"], +//// //// + +// Negatives. +[{DEV_timeSpan = [true,0,0,21,0,0,69,420];"";}, ""], +[{[DEV_timeSpan] call A3A_fnc_timeSpan_format;}, "(-) 21 Minutes 69 Microseconds 420 Nanoseconds"], +[{[DEV_timeSpan,1] call A3A_fnc_timeSpan_format;}, "(-) 21m 69µs 420ns"], +[{[DEV_timeSpan,2,2] call A3A_fnc_timeSpan_format;}, "-0:0:21:0–0:69:420"], + +// Zeros. Note the negative marker in DEV_timeSpan. +[{DEV_timeSpan = [true]; "";}, ""], +[{[DEV_timeSpan] call A3A_fnc_timeSpan_format;}, "(Now)"], +[{[DEV_timeSpan,0,0,true] call A3A_fnc_timeSpan_format;}, "(+) (Now)"], +[{[DEV_timeSpan,1] call A3A_fnc_timeSpan_format;}, "0"], +[{[DEV_timeSpan,1,0,true] call A3A_fnc_timeSpan_format;}, "(+) 0"], +[{[DEV_timeSpan,0,2,false] call A3A_fnc_timeSpan_format;}, "0 Days 0 Hours 0 Minutes 0 Seconds 0 Milliseconds 0 Microseconds 0 Nanoseconds"], +[{[DEV_timeSpan,0,2,false,nil,true] call A3A_fnc_timeSpan_format;}, "00 Days 00 Hours 00 Minutes 00 Seconds 000 Milliseconds 000 Microseconds 000 Nanoseconds"], +[{[DEV_timeSpan,1,2,false] call A3A_fnc_timeSpan_format;}, "0d 0h 0m 0s 0ms 0µs 0ns"], +[{[DEV_timeSpan,2,2,false] call A3A_fnc_timeSpan_format;}, "0:0:0:0–0:0:0"], +[{[DEV_timeSpan,2,2,true,nil,true] call A3A_fnc_timeSpan_format;}, "+00:00:00:00–000:000:000"], + +// Fields Amount. (First examples show effects of "show zeros" options, last one exhibits show field amount.) +[{DEV_timeSpan = [false,0,3,54,0,152,0]; "";}, ""], +[{[DEV_timeSpan,0] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes 152 Milliseconds"], +[{[DEV_timeSpan,0,1] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes 0 Seconds 152 Milliseconds"], +[{[DEV_timeSpan,0,2] call A3A_fnc_timeSpan_format;}, "0 Days 3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds"], +[{[DEV_timeSpan,0,2,true] call A3A_fnc_timeSpan_format;}, "(+) 0 Days 3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds"], +[{[DEV_timeSpan,0,0,false,2] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes"], + +// Slicing. (inclusive start index and exclusive end index) +[{DEV_timeSpan = [false,0,3,54,0,152,0]; "";}, ""], +[{[DEV_timeSpan,0,1,false,2] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes"], +[{[DEV_timeSpan,0,2,false,[1,1e7]] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes 0 Seconds 152 Milliseconds 0 Microseconds 0 Nanoseconds"], +[{[DEV_timeSpan,0,2,false,[0,4]] call A3A_fnc_timeSpan_format;}, "0 Days 3 Hours 54 Minutes 0 Seconds"], +[{[DEV_timeSpan,0,2,false,[1,4]] call A3A_fnc_timeSpan_format;}, "3 Hours 54 Minutes 0 Seconds"], + +// Slicing to get digital time. +[{DEV_timeSpan = [false,0,3,54,0,152,0]; "";}, ""], +[{[DEV_timeSpan,2,2,false,[1,4]] call A3A_fnc_timeSpan_format;}, "3:54:0"], +[{[DEV_timeSpan,2,2,false,[1,4],true] call A3A_fnc_timeSpan_format;}, "03:54:00"], + +[{"";}, ""] + +]; + +private _errors = []; +{ + _x params ["_code", "_expectedValue"]; + private _result = [] call _code; + if (_result isNotEqualTo _expectedValue) then { + _errors pushBack (format ["Code %1 produced %2 but was expected to be %3", _code, str _result, str _expectedValue]); + }; +} forEach _tests; + +[count _errors == 0, _errors joinString endl]; diff --git a/A3A/addons/core/functions/Undercover/fn_canGoUndercover.sqf b/A3A/addons/core/functions/Undercover/fn_canGoUndercover.sqf index 73112fb6d5..47b3aea28b 100644 --- a/A3A/addons/core/functions/Undercover/fn_canGoUndercover.sqf +++ b/A3A/addons/core/functions/Undercover/fn_canGoUndercover.sqf @@ -1,12 +1,20 @@ /* Author: Wurzel0701 - Checks if the player is able to go undercover + Checks if the player is able to go undercover. + Returns result and text to be displayed. + To display the long reason, you can use localize "STR_A3A_fn_undercover_title" as the title. + Text is localised to local machine. Arguments: Return Value: - ARRAY The result of the check and a small reason + ARRAY< + BOOL, True if player can go undercover, else false + INTEGER, Reason why not Enum. See Reason Enum section in header. + STRING, Short reason why not. + STRING Long reason why not. Expected to be put into a customHint body. + > and a small reason Scope: Local Environment: Any @@ -25,114 +33,102 @@ Dependencies: Occupants Example: - [] call A3A_fnc_canGoUndercover; -*/ -private _titleStr = localize "STR_A3A_fn_undercover_title"; -private _reasons = []; + ([] call A3A_fnc_canGoUndercover) params ["_canUndercover", "_reasonNotEnum", "_shortReasonNot", "_longReasonNot"]; + if (!_canUndercover) exitWith { + [localize "STR_A3A_fn_undercover_title", _longReasonNot] call A3A_fnc_customHint; + } +Reason Enum: + 0 - No reason, can go undercover. + >0 - Cannot go undercover + 1 - No Undercover while controlling AI + 2 - Already undercover + 3 - In non civilian vehicle + 4 - In reported vehicle + 5 - In vehicle with tow ropes attached + 6 - Recently reported + 7 - Weapon visible + 8 - Vest visible + 9 - Helmet visible + 10 - NVG visible + 11 - Suspicious uniform + 12 - No clothes + 13 - Holding tow ropes + 14 - Near enemy territory + 15 - Spotted by enemies +*/ if (player != player getVariable["owner", player]) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_ai"] call A3A_fnc_customHint; - [false, "No Undercover while controlling AI"]; + [false, 1, "No Undercover while controlling AI", localize "STR_A3A_fn_undercover_canGoUn_no_ai"]; }; if (captive player) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_already"] call A3A_fnc_customHint; - [false, "Already undercover"]; + [false, 2, "Already undercover", localize "STR_A3A_fn_undercover_canGoUn_already"]; }; -private _roadblocks = controlsX select {isOnRoad(getMarkerPos _x)}; -private _secureBases = airportsX + outposts + seaports + _roadblocks; -private _result = []; - if !(isNull (objectParent player)) then { if (!(typeOf(objectParent player) in undercoverVehicles)) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_nociv"] call A3A_fnc_customHint; - _result = [false, "In non civilian vehicle"]; + [false, 3, "In non civilian vehicle", localize "STR_A3A_fn_undercover_canGoUn_no_nociv"]; }; if ((objectParent player) getVariable ["A3A_reported", false]) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_reported1"] call A3A_fnc_customHint; - _result = [false, "In reported vehicle"]; + [false, 4, "In reported vehicle", localize "STR_A3A_fn_undercover_canGoUn_no_reported1"]; }; if ((objectParent player) getVariable ["SA_Tow_Ropes", []] isNotEqualTo []) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_towrope"] call A3A_fnc_customHint; - _result = [false, "In vehicle with tow ropes attached"]; + [false, 5, "In vehicle with tow ropes attached", localize "STR_A3A_fn_undercover_canGoUn_no_towrope"]; }; } else { if (dateToNumber date < (player getVariable ["compromised", 0])) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_reported2"] call A3A_fnc_customHint; - _result = [false, "Recently reported"]; + [false, 6, "Recently reported", localize "STR_A3A_fn_undercover_canGoUn_no_reported2"]; }; - private _text = localize "STR_A3A_fn_undercover_canGoUn_no_while"; - _result = [true]; - if (primaryWeapon player != "" || secondaryWeapon player != "" || handgunWeapon player != "") then - { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_weapon", _text]; - _result set [0, false]; - _result pushBack "Weapon visible"; - }; - if (vest player != "") then + private _cantUndercoverWhile = localize "STR_A3A_fn_undercover_canGoUn_no_while"; + + if (primaryWeapon player != "" || secondaryWeapon player != "" || handgunWeapon player != "") exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_vest", _text]; - _result set [0, false]; - _result pushBack "Vest visible"; + [false, 7, "Weapon visible", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_weapon", _cantUndercoverWhile]]; }; - if (headgear player in allArmoredHeadgear) then + if (vest player != "") exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_helmet", _text]; - _result set [0, false]; - _result pushBack "Helmet visible"; + [false, 8, "Vest visible", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_vest", _cantUndercoverWhile]]; }; - if (hmd player != "") then + if (headgear player in allArmoredHeadgear) exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_ngv", _text]; - _result set [0, false]; - _result pushBack "NVG visible"; + [false, 9, "Helmet visible", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_helmet", _cantUndercoverWhile]]; }; - if ((uniform player != "") && !(uniform player in (A3A_faction_civ get "uniforms"))) then + if (hmd player != "") exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_uniform", _text]; - _result set [0, false]; - _result pushBack "Suspicious uniform"; + [false, 10, "NVG visible", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_ngv", _cantUndercoverWhile]]; }; - if (uniform player == "") then + if ((uniform player != "") && !(uniform player in (A3A_faction_civ get "uniforms"))) exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_naked", _text]; - _result set [0, false]; - _result pushBack "No clothes"; + [false, 11, "Suspicious uniform", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_uniform", _cantUndercoverWhile]]; }; - if (!isNull (player getVariable ["SA_Tow_Ropes_Vehicle", objNull])) then + if (uniform player == "") exitWith { - _text = format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_rope", _text]; - _result set [0, false]; - _result pushBack "Holding tow ropes"; + [false, 12, "No clothes", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_naked", _cantUndercoverWhile]]; }; - if !(_result select 0) then + if (!isNull (player getVariable ["SA_Tow_Ropes_Vehicle", objNull])) exitWith { - [_titleStr, _text] call A3A_fnc_customHint; + [false, 13, "Holding tow ropes", format [localize "STR_A3A_fn_undercover_canGoUn_no_reason_rope", _cantUndercoverWhile]]; }; }; -if (count _result != 0 && !(_result select 0)) exitWith -{ - _result; -}; +private _roadblocks = controlsX select {isOnRoad(getMarkerPos _x)}; +private _secureBases = airportsX + outposts + seaports + _roadblocks; private _base = [_secureBases, player] call BIS_fnc_nearestPosition; private _size = [_base] call A3A_fnc_sizeMarker; if ((player distance2D getMarkerPos _base < _size * 2) && (sidesX getVariable [_base, sideUnknown] != teamPlayer)) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_close"] call A3A_fnc_customHint; - [false, "Near enemy territory"]; + [false, 14, "Near enemy territory", localize "STR_A3A_fn_undercover_canGoUn_no_close"]; }; if @@ -144,8 +140,8 @@ if } count allUnits > 0 ) exitWith { - [_titleStr, localize "STR_A3A_fn_undercover_canGoUn_no_spotted"] call A3A_fnc_customHint; - [false, "Spotted by enemies"]; + [false, 15, "Spotted by enemies", localize "STR_A3A_fn_undercover_canGoUn_no_spotted"]; }; +// Return +[true, 0, "", ""]; -[true, ""]; diff --git a/A3A/addons/core/functions/Undercover/fn_goUndercover.sqf b/A3A/addons/core/functions/Undercover/fn_goUndercover.sqf index 21fdafedc7..a998b4ea13 100644 --- a/A3A/addons/core/functions/Undercover/fn_goUndercover.sqf +++ b/A3A/addons/core/functions/Undercover/fn_goUndercover.sqf @@ -37,11 +37,12 @@ FIX_LINE_NUMBERS() private _layer = ["A3A_infoCenter"] call BIS_fnc_rscLayer; private _titleStr = localize "STR_A3A_fn_undercover_title"; -private _result = [] call A3A_fnc_canGoUndercover; +([] call A3A_fnc_canGoUndercover) params ["_canUndercover", "_reasonNotEnum", "_shortReasonNot", "_longReasonNot"]; -if(!(_result select 0)) exitWith +if(!_canUndercover) exitWith { - if((_result select 1) == "Spotted by enemies") then + [localize "STR_A3A_fn_undercover_title", _longReasonNot] call A3A_fnc_customHint; + if(_reasonNotEnum == 15) then // Spotted by enemies { if !(isNull (objectParent player)) then { diff --git a/A3A/addons/core/functions/UtilityItems/fn_carryItem.sqf b/A3A/addons/core/functions/UtilityItems/fn_carryItem.sqf index d506e0c9d9..bf0552a9c1 100644 --- a/A3A/addons/core/functions/UtilityItems/fn_carryItem.sqf +++ b/A3A/addons/core/functions/UtilityItems/fn_carryItem.sqf @@ -3,13 +3,12 @@ Author: Killerswin2, trys to carry an object to a place Arguments: 0. object that will be carried - 1. bool that determines if the object will be picked up - 2. player that calls or holds object (optional) + 1. player that calls or holds object Return Value: Scope: Clients -Environment: Unscheduled +Environment: Scheduled unfortunately (addAction) Public: yes Dependencies: @@ -18,90 +17,57 @@ Example: */ +params ["_item", "_player"]; // standard addAction -params [["_item", objNull, [objNull]], "_pickUp", ["_player", player]]; +// Redo the checks, because this function might be delayed by script load +if ((!isNull attachedTo _item) or (call A3A_fnc_isCarrying) or (!isNull objectParent _player)) exitWith {}; +if (_item isKindOf "StaticWeapon" and count crew _item != 0) exitWith {}; -if (_pickUp) then { - if (([_player] call A3A_fnc_countAttachedObjects) > 0) exitWith {[localize "STR_A3A_Utility_Title", localize "STR_A3A_Utility_Items_Feedback_Normal"] call A3A_fnc_customHint}; - - // we need to prevent the player from carrying an object into a vehicle to prevent damage to vehicle - private _eventIDcarry = _player addEventHandler ["GetInMan", { - params ["_unit", "_role", "_vehicle", "_turret"]; - // get variables - private _objectCarrying = _unit getVariable ['A3A_objectCarrying', nil]; - if (isNil "_objectCarrying") exitwith {_unit removeEventHandler ["GetInMan", _thisEventHandler]}; - - //remove object and find safe placement - detach _objectCarrying; - _unit setVelocity [0,0,0]; - _objectCarrying setVelocity [0,0,0]; - _objectCarrying setVehiclePosition [position _unit, [], 10,"NONE"]; - - [_objectCarrying, true] remoteExec ["enableSimulationGlobal", 0]; - - - - _unit setVariable ["A3A_carryingObject", nil]; - _unit setVariable ['A3A_objectCarrying', nil]; - _unit allowSprint true; - - - }]; +// Go unscheduled to keep the state consistent +isNil { + if (_item isKindOf "StaticWeapon") then { _item lock true }; + // Prevent killing players with item if (isNil {_item getVariable "A3A_originalMass"}) then { _item setVariable ["A3A_originalMass", getMass _item] }; [_item, 1e-12] remoteExecCall ["setMass", 0]; + [_item, false] remoteExecCall ["enableSimulationGlobal", 2]; - _player setVariable ['A3A_eventIDcarry', _eventIDcarry]; - _player setVariable ['A3A_objectCarrying', _item]; - - // prevent killing players with item - [_item, false] remoteExec ["enableSimulationGlobal", 2]; private _bbReal = boundingBoxReal _item; - private _diff = (_bbReal select 1) vectorDiff (_bbReal select 0); - private _positionAttached = [0, (_diff vectorDotProduct [0,.65,0]) + 1.0, (_diff vectorDotProduct [0,0,0.5]) + 0.5]; - _item attachTo [_player, _positionAttached, "Chest"]; - _player setVariable ["A3A_carryingObject", true]; - [_player ,_item] spawn { - params ["_player", "_item"]; - waitUntil {_player allowSprint false; !alive _item or !(_player getVariable ["A3A_carryingObject", false]) or !(vehicle _player isEqualTo _player) or _player getVariable ["incapacitated",false] or !alive _player or !(isPlayer attachedTo _item) }; - [_item, false, _player] call A3A_fnc_carryItem; - }; -} else { - //re-add item if null - if (isNull _item) then { - private _attached = [_player] call A3A_fnc_attachedObjects; - if (_attached isEqualTo []) exitWith {}; - _item = _attached # 0; - }; - if !(isNull _item) then { - _player setVelocity [0,0,0]; - detach _item; + private _spacing = 1.3 - _bbReal#0#1; + private _height = (1 - _bbReal#1#2) max (0.1 - _bbReal#0#2); + _item attachTo [_player, [0, _spacing, _height]]; - // Some objects never lose (and even regain) their velocity when detached, becoming lethal - // On a DS, object locality changes when detached, so we have to remoteexec - [_item, [0,0,0]] remoteExec ["setVelocity", _item]; + // We need to prevent the player from carrying an object into a vehicle to prevent damage to vehicle + private _eventIDcarry = _player addEventHandler ["GetInMan", { + params ["_unit", "_role", "_vehicle", "_turret"]; + _unit call A3A_fnc_dropItem; + }]; - // Without this, non-unit objects often hang in mid-air - [_item, surfaceNormal position _item] remoteExec ["setVectorUp", _item]; + _player setVariable ["A3A_eventIDcarry", _eventIDcarry]; + _player setVariable ["A3A_objectCarried", _item]; + _player setVariable ["A3A_carryingObject", true]; - // Place on closest surface - private _pos = getPosASL _item; - private _intersects = lineIntersectsSurfaces [_pos, _pos vectorAdd [0,0,-100], _item]; - if (count _intersects > 0) then { - _item setPosASL (_intersects select 0 select 0); - }; - - [_item, true] remoteExec ["enableSimulationGlobal", 2]; - _eventIDcarry = _player getVariable 'A3A_eventIDcarry'; - _player removeEventHandler ["GetInMan", _eventIDcarry]; + private _dropID = _player addAction [ + localize "STR_A3A_fn_UtilItem_dropOb_addact_drop", + { (_this#1) call A3A_fnc_dropItem }, _item, 4, true, true, "", "true" + ]; + _player setVariable ["A3A_actionIDdrop", _dropID]; - _item spawn { - sleep 1; - if (isNull _this) exitWith {}; - // Restore original _item mass. This one can be slow. - [_this, _this getVariable "A3A_originalMass"] remoteExecCall ["setMass", _this]; + [_player, _item] spawn { + params ["_player", "_item"]; + private _isHQ = _item in [petros, fireX, mapX, vehicleBox, flagX, boxX]; + waitUntil { + _player allowSprint false; + !alive _item or !alive _player + or (lifestate _player isEqualTo "INCAPACITATED") // drop when ACE-unconscious + or !(_player getVariable ["A3A_carryingObject", false]) + // or !(vehicle _player == _player) + or !(_player == attachedTo _item) + or (_isHQ and _player distance2d markerPos "Synd_HQ" > 50) }; + if (_player getVariable ["A3A_carryingObject", false]) then { _player call A3A_fnc_dropItem }; + _player allowSprint true; }; - _player setVariable ["A3A_carryingObject", nil]; - _player allowSprint true; -}; \ No newline at end of file +}; + +nil; diff --git a/A3A/addons/core/functions/UtilityItems/fn_dropItem.sqf b/A3A/addons/core/functions/UtilityItems/fn_dropItem.sqf new file mode 100644 index 0000000000..13372ddb57 --- /dev/null +++ b/A3A/addons/core/functions/UtilityItems/fn_dropItem.sqf @@ -0,0 +1,76 @@ +/* + Drop the carried object + + Environment: Player-local, scheduled (usually addAction) + + Arguments: + Player carrying an item + + Return Value: + +*/ + +params ["_player"]; + +// Possible to fire this off twice at high script load +private _dropID = _player getVariable "A3A_actionIDdrop"; +if (isNil "_dropID") exitWith {}; + +// Go unscheduled to keep the state consistent +isNil { + // Clear drop action + _player removeAction _dropID; + _player setVariable ["A3A_actionIDdrop", nil]; + + // Clear GetInMan EH + private _eventIDcarry = _player getVariable "A3A_eventIDcarry"; + _player removeEventHandler ["GetInMan", _eventIDcarry]; + _player setVariable ["A3A_eventIDcarry", nil]; + + private _item = _player getVariable "A3A_objectCarried"; + + _player setVelocity [0,0,0]; + detach _item; + + if (vehicle _player != _player) then { + // GetInMan triggered case, semi-safe place nearby + _item setVehiclePosition [getPosATL _player, [], 10, "NONE"]; + }; + + private _isHQ = _item in [petros, fireX, mapX, vehicleBox, flagX, boxX]; + private _posHQ = markerPos "Synd_HQ"; + if (_isHQ and {_item distance2d _posHQ > 50}) then { + // Drag object back into HQ area if moved out + private _objdir = _posHQ vectorFromTo getPosATL _item; + private _edgepos = _posHQ vectorAdd (_objdir vectorMultiply 49); + _item setPosATL _edgePos; + }; + + // Some objects never lose (and even regain) their velocity when detached, becoming lethal + // On a DS, object locality changes when detached, so we have to remoteexec + [_item, [0,0,0]] remoteExecCall ["setVelocity", _item]; + + // Without this, non-unit objects often hang in mid-air + [_item, surfaceNormal position _item] remoteExecCall ["setVectorUp", _item]; + + // Place on closest surface + private _pos = getPosASL _item; + private _intersects = lineIntersectsSurfaces [_pos, _pos vectorAdd [0,0,-100], _item]; + if (count _intersects > 0) then { + _item setPosASL (_intersects select 0 select 0); + }; + + [_item, true] remoteExecCall ["enableSimulationGlobal", 2]; + + if (_item isKindOf "StaticWeapon") then { _item lock false }; + + _item spawn { + sleep 1; + if (isNull _this) exitWith {}; + // Restore original _item mass. This one can be slow. + [_this, _this getVariable "A3A_originalMass"] remoteExecCall ["setMass", _this]; + }; + + _player setVariable ["A3A_objectCarried", nil]; + _player setVariable ["A3A_carryingObject", nil]; +}; diff --git a/A3A/addons/core/functions/UtilityItems/fn_dropObject.sqf b/A3A/addons/core/functions/UtilityItems/fn_dropObject.sqf deleted file mode 100644 index 2537ff23a5..0000000000 --- a/A3A/addons/core/functions/UtilityItems/fn_dropObject.sqf +++ /dev/null @@ -1,34 +0,0 @@ -/* -Author: Killerswin2 - add actions for dropping objects -Arguments: - 0. - -Return Value: - - -Scope: Clients -Environment: Unscheduled -Public: No -Dependencies: - -Example: - [] call A3A_fnc_dropObject; -*/ - -player addAction [ - localize "STR_A3A_fn_UtilItem_dropOb_addact_drop", - { - [nil, false] call A3A_fnc_carryItem; - }, - nil, - 1.5, - true, - true, - "", - "( - (_this getVariable ['A3A_carryingObject', false]) - )" -]; - -nil; \ No newline at end of file diff --git a/A3A/addons/core/functions/UtilityItems/fn_initObjectRemote.sqf b/A3A/addons/core/functions/UtilityItems/fn_initObjectRemote.sqf index f0a32b7b53..7bb437b058 100644 --- a/A3A/addons/core/functions/UtilityItems/fn_initObjectRemote.sqf +++ b/A3A/addons/core/functions/UtilityItems/fn_initObjectRemote.sqf @@ -34,9 +34,9 @@ private _flags = (A3A_utilityItemHM get typeof _object) # 4; if ("move" in _flags) then { _object addAction [ localize "STR_A3A_fn_UtilItem_initObjRem_addact_carry", - { [_this#3, true] call A3A_fnc_carryItem }, + A3A_fnc_carryItem, _object, 1.5, true, true, "", - "([_this] call A3A_fnc_countAttachedObjects == 0) + "!(call A3A_fnc_isCarrying) and (vehicle _this == _this) and (isNull attachedTo _originalTarget)", 8 ]; }; diff --git a/A3A/addons/core/functions/UtilityItems/fn_isCarrying.sqf b/A3A/addons/core/functions/UtilityItems/fn_isCarrying.sqf new file mode 100644 index 0000000000..eb41cbd830 --- /dev/null +++ b/A3A/addons/core/functions/UtilityItems/fn_isCarrying.sqf @@ -0,0 +1,25 @@ +/* + Check if player is carrying an Antistasi or ACE object + + Environment: Any + + Arguments: + None + + Return Value: + True if the player is carrying an Antistasi or ACE object + +*/ + +// could early-out if player has no attached objects? + +// Carrying an Antistasi object +if (player getVariable ["A3A_carryingObject", false]) exitWith { true }; + +// Currently holding a tow rope attached to live vehicle +if (!isNull (player getVariable ["SA_Tow_Ropes_Vehicle", objNull])) exitWith { true }; + +// ACE item carry and drag cases. Check medical? +if (player getVariable ["ace_dragging_isCarrying", false] or player getVariable ["ace_dragging_isDragging", false]) exitWith { true }; + +false; diff --git a/A3A/addons/core/functions/init/fn_initACE.sqf b/A3A/addons/core/functions/init/fn_initACE.sqf index 41e665d3bb..43d0b5480a 100644 --- a/A3A/addons/core/functions/init/fn_initACE.sqf +++ b/A3A/addons/core/functions/init/fn_initACE.sqf @@ -21,10 +21,12 @@ if (A3A_hasACEMedical) then { // log atropine, epinephrine, and morphine use // Appears to be local to the medic - ["ace_treatmentStarted", { + ["ace_treatmentSucceded", { params ["_caller", "_target", "_selectionName", "_className", "_itemUser", "_usedItem"]; - if (_usedItem in ["ACE_atropine", "ACE_epinephrine", "ACE_morphine"]) then { - ServerInfo_3("Player: %1 used %2 on %3",name _caller,_usedItem,name _target); + if (_usedItem in ["ACE_adenosine", "ACE_epinephrine", "ACE_morphine", "ACE_painkillers"]) then { + private _callerUID = ["AI",getPlayerUID _caller] select (isPlayer _caller); + private _targetUID = ["AI",getPlayerUID _target] select (isPlayer _target); + ServerInfo_5("Player %1 [%2] used %3 on %4 [%5]",name _caller,_callerUID,_usedItem,name _target,_targetUID); }; }] call CBA_fnc_addEventHandler; }; @@ -50,9 +52,16 @@ if (A3A_hasACEMedical) then { if (isNil "ace_interact_menu_fnc_compileMenu" || isNil "ace_interact_menu_fnc_compileMenuSelfAction") exitWith { Error("ACE non-public functions have changed, rebel group join/leave actions will not be removed."); }; -// Remove group join action from all rebel unit types + +// Remove actions from Antistasi unit types // Need to compile the menus first, because ACE delays creating menus until a unit of that class is created -private _unitTypes = ["I_G_soldier_F", "I_G_Soldier_TL_F", "I_G_Soldier_AR_F", "I_G_medic_F", "I_G_engineer_F", "I_G_Soldier_GL_F", "I_G_officer_F"]; + +// Player units +private _unitTypes = ["I_G_soldier_F", "I_G_Soldier_TL_F", "I_G_Soldier_AR_F", "I_G_medic_F", "I_G_engineer_F", "I_G_Soldier_GL_F"]; +// AI units +_unitTypes append ["a3a_unit_west", "a3a_unit_east", "a3a_unit_civ", "a3a_unit_reb", "a3a_unit_reb_unarmed", "a3a_unit_reb_medic", "a3a_unit_reb_sniper", "a3a_unit_reb_marksman", + "a3a_unit_reb_lat", "a3a_unit_reb_mg", "a3a_unit_reb_exp", "a3a_unit_reb_gl", "a3a_unit_reb_sl", "a3a_unit_reb_eng", "a3a_unit_reb_at", "a3a_unit_reb_aa", "a3a_unit_reb_petros"]; + { [_x] call ace_interact_menu_fnc_compileMenu; [_x] call ace_interact_menu_fnc_compileMenuSelfAction; @@ -60,4 +69,3 @@ private _unitTypes = ["I_G_soldier_F", "I_G_Soldier_TL_F", "I_G_Soldier_AR_F", " [_x, 1, ["ACE_SelfActions", "ACE_TeamManagement", "ACE_LeaveGroup"]] call ace_interact_menu_fnc_removeActionFromClass; [_x, 0, ["ACE_MainActions", "ACE_JoinGroup"]] call ace_interact_menu_fnc_removeActionFromClass; } forEach _unitTypes; // TODO: add raw unit types from new templates - diff --git a/A3A/addons/core/functions/init/fn_initClient.sqf b/A3A/addons/core/functions/init/fn_initClient.sqf index ff3f8f3e2d..70424e220d 100644 --- a/A3A/addons/core/functions/init/fn_initClient.sqf +++ b/A3A/addons/core/functions/init/fn_initClient.sqf @@ -64,7 +64,8 @@ while {true} do { if (dialog) then { sleep 0.1; continue }; // don't spam hints while the setup dialog is open private _stateStr = localize ("STR_A3A_feedback_serverinfo_" + A3A_startupState); isNil { [localize "STR_A3A_feedback_serverinfo", _stateStr, true] call A3A_fnc_customHint }; // not re-entrant, apparently - if (A3A_startupState == "completed") exitWith {}; + //if (A3A_startupState == "completed") exitWith {}; + if (!isNil "serverInitDone") exitWith {}; // speculative init order fix sleep 0.1; }; @@ -111,6 +112,7 @@ recruitCooldown = 0; //Prevents units being recruited too soon after being dis incomeRep = false; autoHeal = true; //Should AI in player squad automatically heal teammates +player switchMove ""; // kick the player out of any animation before teleporting player setPos (getMarkerPos respawnTeamPlayer); player setVariable ["spawner",true,true]; @@ -357,7 +359,7 @@ if (isServer || player isEqualTo theBoss || (call BIS_fnc_admin) > 0) then { // _modsAndLoadText append _loadedTemplateInfoXML; if (count _modsAndLoadText isEqualTo 0) exitWith {}; - private _textXML = "" + ((_modsAndLoadText apply { "" + _x#1 + ":" + _x#2 }) joinString "
") + "
"; + private _textXML = "" + ((_modsAndLoadText apply { "" + _x#1 + ": " + _x#2 }) joinString "
") + "
"; [localize "STR_A3A_fn_init_initclient_mods_loaded",_textXML] call A3A_fnc_customHint; }; @@ -366,12 +368,15 @@ waituntil {!isnull (finddisplay 46)}; GVAR(keys_battleMenu) = false; //initilize key flags to false +{ + _x addAction [localize "STR_A3A_fn_init_initclient_addact_move", A3A_fnc_carryItem, + nil,0,false,true,"", "(_this == theBoss) and (isNull objectParent _this) and !(call A3A_fnc_isCarrying)", 4]; +} forEach [boxX, flagX, vehicleBox, fireX, mapX]; + boxX allowDamage false; // hmm... -boxX addAction [localize "STR_A3A_fn_init_initclient_addact_transfer", {[] spawn A3A_fnc_empty;}, 4]; -boxX addAction [localize "STR_A3A_fn_init_initclient_addact_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)", 4]; +boxX addAction [localize "STR_A3A_fn_init_initclient_addact_transfer", {[] spawn A3A_fnc_empty;}, 4,1.5,true,true,"","!unitIsUAV _this"]; flagX allowDamage false; flagX addAction [localize "STR_A3A_fn_init_initclient_addact_recruit", {if ([getPosATL player] call A3A_fnc_enemyNearCheck) then {[localize "STR_A3A_fn_init_initclient_recunit", localize "STR_A3A_fn_init_initclient_recunit_no"] call A3A_fnc_customHint;} else { [] spawn A3A_fnc_unit_recruit; }},nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer)"]; -flagX addAction [localize "STR_A3A_fn_init_initclient_addact_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)", 4]; //Adds a light to the flag private _flagLight = "#lightpoint" createVehicle (getPos flagX); @@ -383,8 +388,8 @@ _flagLight lightAttachObject [flagX, [0, 0, 4]]; _flagLight setLightAttenuation [7, 0, 0.5, 0.5]; vehicleBox allowDamage false; -vehicleBox addAction [localize "STR_A3A_actions_restore_units", A3A_fnc_vehicleBoxRestore,nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer)", 4]; -vehicleBox addAction [localize "STR_A3A_fn_init_initclient_addact_arsenal", JN_fnc_arsenal_handleAction, [], 0, true, false, "", "alive _target && vehicle _this != _this", 10]; +vehicleBox addAction [localize "STR_A3A_actions_restore_units", A3A_fnc_vehicleBoxRestore,nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer) and !A3A_removeRestore", 4]; +vehicleBox addAction [localize "STR_A3A_fn_init_initclient_addact_arsenal", JN_fnc_arsenal_handleAction, [], 0, true, false, "", "alive _target && vehicle _this != _this && _this == _this getVariable ['owner',objNull]", 10]; [vehicleBox] call HR_GRG_fnc_initGarage; vehicleBox addAction [localize "STR_A3A_fn_init_initclient_addact_buyveh", { @@ -395,10 +400,6 @@ vehicleBox addAction [localize "STR_A3A_fn_init_initclient_addact_buyveh", { } },nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer)", 4]; -call A3A_fnc_dropObject; - -vehicleBox addAction [localize "STR_A3A_fn_init_initclient_addact_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)", 4]; - fireX allowDamage false; [fireX, "fireX"] call A3A_fnc_flagaction; @@ -409,7 +410,7 @@ mapX addAction [localize "STR_A3A_fn_init_initclient_addact_gameOpt", { localize "STR_A3A_fn_init_initclient_gameOpt_version"+" "+ QUOTE(VERSION_FULL) +"

"+ localize "STR_A3A_fn_init_initclient_gameOpt_resoBal"+" "+ (A3A_enemyBalanceMul / 10 toFixed 1) + "x" +"
"+ localize "STR_A3A_fn_init_initclient_gameOpt_unlockNo"+" "+ str minWeaps +"
"+ - localize "STR_A3A_fn_init_initclient_gameOpt_limFT"+" "+ (["No","Yes"] select limitedFT) +"
"+ + localize "STR_A3A_fn_init_initclient_gameOpt_limFT"+" "+ ([localize "STR_antistasi_dialogs_generic_button_no_text",localize "STR_antistasi_dialogs_generic_button_yes_text"] select limitedFT) +"
"+ localize "STR_A3A_fn_init_initclient_gameOpt_spawnDist"+" "+ str distanceSPWN + "m" +"
"+ localize "STR_A3A_fn_init_initclient_gameOpt_civLim"+" "+ str globalCivilianMax +"
"+ localize "STR_A3A_fn_init_initclient_gameOpt_timeGC"+" "+ ([[serverTime-A3A_lastGarbageCleanTime] call A3A_fnc_secondsToTimeSpan,1,0,false,2,false,true] call A3A_fnc_timeSpan_format) @@ -422,8 +423,7 @@ mapX addAction [localize "STR_A3A_fn_init_initclient_addact_gameOpt", { nil; },nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer)", 4]; mapX addAction [localize "STR_A3A_fn_init_initclient_addact_mapinfo", A3A_fnc_cityinfo,nil,0,false,true,"","(isPlayer _this) and (_this == _this getVariable ['owner',objNull]) and (side (group _this) == teamPlayer)", 4]; -mapX addAction [localize "STR_A3A_fn_init_initclient_addact_move", A3A_fnc_moveHQObject,nil,0,false,true,"","(_this == theBoss)", 4]; -if (isMultiplayer) then {mapX addAction [localize "STR_A3A_fn_init_initclient_addact_ailoadinfo", { [] remoteExec ["A3A_fnc_AILoadInfo",2];},nil,0,false,true,"","((_this == theBoss) || (serverCommandAvailable ""#logout""))"]}; +if (isMultiplayer) then {mapX addAction [localize "STR_A3A_fn_init_initclient_addact_ailoadinfo", { [] remoteExec ["A3A_fnc_AILoadInfo",2];},nil,0,false,true,"",""]}; // should be no reason to restrict the aiLoadInfo to anyone [] call A3A_fnc_unitTraits; diff --git a/A3A/addons/core/functions/init/fn_initServer.sqf b/A3A/addons/core/functions/init/fn_initServer.sqf index d74b1d8db9..b08d4d6416 100644 --- a/A3A/addons/core/functions/init/fn_initServer.sqf +++ b/A3A/addons/core/functions/init/fn_initServer.sqf @@ -17,6 +17,7 @@ if (call A3A_fnc_modBlacklist) exitWith {}; // hide all the HQ objects { + _x enableRopeAttach false; _x allowDamage false; _x hideObjectGlobal true; } forEach [boxX, flagX, vehicleBox, fireX, mapX, petros]; @@ -25,6 +26,7 @@ switch (toLower worldname) do { case "cam_lao_nam": {}; case "vn_khe_sanh": {mapX setObjectTextureGlobal [0,"Pictures\Mission\whiteboard.paa"];}; case "spe_normandy": {mapX setObjectTextureGlobal [0,"Pictures\Mission\whiteboard.paa"];}; + case "spe_mortain": {mapX setObjectTextureGlobal [0,"Pictures\Mission\whiteboard.paa"];}; default {mapX setObjectTextureGlobal [0,"Pictures\Mission\whiteboard.jpg"];}; }; @@ -123,14 +125,28 @@ else // Fill out garrisons, set sides/names as appropriate call A3A_fnc_initGarrisons; + Info("Starting item unlocks"); + // Do initial arsenal filling + private _categoriesToPublish = createHashMap; + private _addedClasses = createHashMap; // dupe proofing { - if (_x isEqualType "") then { _x call A3A_fnc_unlockEquipment; continue }; - _x params ["_class", "_count"]; - private _arsenalTab = _class call jn_fnc_arsenal_itemType; - [_arsenalTab, _class, _count] call jn_fnc_arsenal_addItem; + _x params ["_class", ["_count", -1]]; + if (_class in _addedClasses) then { continue }; + _addedClasses set [_class, nil]; + + private _arsenalTab = _class call jn_fnc_arsenal_itemType; + jna_dataList#_arsenalTab pushBack [_class, _count]; // direct add to avoid O(N^2) issue + + private _categories = _class call A3A_fnc_equipmentClassToCategories; + { (missionNamespace getVariable ("unlocked" + _x)) pushBack _class } forEach _categories; + _categoriesToPublish insert [true, _categories, []]; + } foreach FactionGet(reb,"initialRebelEquipment"); + // Publish the unlocked categories (once each) + { publicVariable ("unlocked" + _x) } forEach keys _categoriesToPublish; + Info("Initial arsenal unlocks completed"); call A3A_fnc_checkRadiosUnlocked; @@ -215,7 +231,14 @@ call A3A_fnc_createPetros; //HandleDisconnect doesn't get 'owner' param, so we can't use it to handle headless client disconnects. addMissionEventHandler ["HandleDisconnect",{_this call A3A_fnc_onPlayerDisconnect;false}]; //PlayerDisconnected doesn't get access to the unit, so we shouldn't use it to handle saving. -addMissionEventHandler ["PlayerDisconnected",{_this call A3A_fnc_onHeadlessClientDisconnect;false}]; +addMissionEventHandler ["PlayerDisconnected",{ + // Remove player from arsenal in case they disconnected while in it + private _temp = server getVariable ["jna_playersInArsenal",[]]; + _temp = _temp - [param [4]]; + server setVariable ["jna_playersInArsenal",_temp,true]; + _this call A3A_fnc_onHeadlessClientDisconnect; + false; +}]; addMissionEventHandler ["BuildingChanged", { params ["_oldBuilding", "_newBuilding", "_isRuin"]; @@ -244,7 +267,7 @@ addMissionEventHandler ["EntityKilled", { if !(isNil {_victim getVariable "ownerSide"}) then { // Antistasi-created vehicle - [_victim, _killerSide, false] call A3A_fnc_vehKilledOrCaptured; + [_victim, _killerSide, false, _killer] call A3A_fnc_vehKilledOrCaptured; [_victim] spawn A3A_fnc_postmortem; }; }]; @@ -289,13 +312,14 @@ if (A3A_hasACE) then { }; +A3A_startupState = "completed"; publicVariable "A3A_startupState"; serverInitDone = true; publicVariable "serverInitDone"; Info("Setting serverInitDone as true"); -A3A_startupState = "completed"; publicVariable "A3A_startupState"; // ********************* Initialize loops ******************************************* +[] spawn A3A_fnc_postmortemLoop; // Postmortem cleanup loop [] spawn A3A_fnc_distance; // Marker spawn loop [] spawn A3A_fnc_resourcecheck; // 10-minute loop [] spawn A3A_fnc_aggressionUpdateLoop; // 1-minute loop diff --git a/A3A/addons/core/functions/init/fn_initVarServer.sqf b/A3A/addons/core/functions/init/fn_initVarServer.sqf index 4fab68d84b..088a329c03 100644 --- a/A3A/addons/core/functions/init/fn_initVarServer.sqf +++ b/A3A/addons/core/functions/init/fn_initVarServer.sqf @@ -35,8 +35,6 @@ private _declareServerVariable = { //////////////////////////////////////// Info("initialising general server variables"); -//time to delete dead bodies, vehicles etc.. -DECLARE_SERVER_VAR(cleantime, 3600); //initial spawn distance. Less than 1Km makes parked vehicles spawn in your nose while you approach. //User-adjustable variables are now declared in initParams //DECLARE_SERVER_VAR(distanceSPWN, 1000); @@ -128,7 +126,7 @@ A3A_recentDamageInv = []; // Balance params updated by aggressionUpdateLoop A3A_balancePlayerScale = 1; // Important due to load/save scaling to 1 playerScale A3A_balanceVehicleCost = 110; -A3A_balanceResourceRate = A3A_balancePlayerScale * A3A_balanceVehicleCost; +A3A_balanceResourceRate = A3A_balancePlayerScale * ([A3A_balanceVehicleCost, 140] select (gameMode == 1)); // Current resources, overwritten by saved game A3A_resourcesDefenceOcc = A3A_balanceResourceRate * 3; // 30% of max @@ -168,6 +166,10 @@ A3A_tasksData = []; A3A_buildingsToSave = []; +A3A_gcQueue = []; // List of postmortem objects to clean up +A3A_gcCleanTime = 1800; // Base time for deleting postmortem objects +A3A_gcMaxBumps = 3; // Max times to delay cleanup for an object that's near players + hcArray = []; // array of headless client IDs membersX = []; // These two published later by startGame @@ -260,11 +262,12 @@ FIX_LINE_NUMBERS() ////////////////////////////////////// Info("Setting up faction and DLC equipment flags"); +// Arma bug: Need to hardcode CDLC because arma3.cfg mod loading method doesn't register CDLC as "official" +private _loadedDLC = getLoadedModsInfo select { (_x#2) and !(_x#1 in ["A3","curator","argo","tacops"]) }; +_loadedDLC append (getLoadedModsInfo select { tolower (_x#1) in ["gm", "rf", "spe", "vn", "ws"] }); +_loadedDLC = _loadedDLC apply { tolower (_x#1) }; + // Set enabled & disabled DLC/CDLC arrays for faction/equipment modification -private _loadedDLC = getLoadedModsInfo select { - (_x#3 or {_x#0 isEqualTo "Arma 3 Creator DLC: Western Sahara"}) - and {!(_x#1 in ["A3","curator","argo","tacops"])} -} apply {tolower (_x#1)}; A3A_enabledDLC = (_saveData get "DLC") apply {tolower _x}; // should be pre-checked against _loadedDLC { A3A_enabledDLC insert [0, getArray (configFile/"A3A"/"Templates"/_x/"forceDLC"), true]; // add unique elements only @@ -275,7 +278,7 @@ A3A_disabledMods = A3A_disabledDLC; // Split to allow CUP civili // Everything that counts as vanilla: Official DLC plus various junk tags A3A_vanillaMods = (getLoadedModsInfo select {_x#2 and _x#3} apply {tolower (_x#1)}) + ["", "officialmod"]; -Debug_3("DLC enabled: %1 Disabled: %2 Vanilla: %3", A3A_enabledDLC, A3A_disabledDLC, A3A_vanillaMods); +Debug_4("DLC loaded: %1 Enabled: %2 Disabled: %3 Vanilla: %4", _loadedDLC, A3A_enabledDLC, A3A_disabledDLC, A3A_vanillaMods); // TODO: fix all allowDLCxxx and A3A_hasxxx references in templates // for the moment just fudge the ones that we're using @@ -476,8 +479,9 @@ private _vehicleResourceCosts = createHashMap; { _vehicleResourceCosts set [_x, 100] } forEach FactionGet(all, "vehiclesAPCs"); { _vehicleResourceCosts set [_x, 150] } forEach FactionGet(all, "vehiclesAA") + FactionGet(all, "vehiclesArtillery") + FactionGet(all, "vehiclesIFVs") + FactionGet(all, "vehiclesLightTanks"); { _vehicleResourceCosts set [_x, 230] } forEach FactionGet(all, "vehiclesTanks"); +{ _vehicleResourceCosts set [_x, 300] } forEach FactionGet(all, "vehiclesHeavyTanks"); -{ _vehicleResourceCosts set [_x, 70] } forEach FactionGet(all, "vehiclesHelisLight"); +{ _vehicleResourceCosts set [_x, 70] } forEach FactionGet(all, "vehiclesHelisLight") + FactionGet(all, "vehiclesAirPatrol"); { _vehicleResourceCosts set [_x, 100] } forEach FactionGet(all, "vehiclesHelisTransport"); { _vehicleResourceCosts set [_x, 130] } forEach FactionGet(all, "vehiclesHelisLightAttack") + FactionGet(all, "vehiclesPlanesTransport"); { _vehicleResourceCosts set [_x, 250] } forEach FactionGet(all, "vehiclesPlanesCAS") + FactionGet(all, "vehiclesPlanesAA"); @@ -495,6 +499,7 @@ private _groundVehicleThreat = createHashMap; { _groundVehicleThreat set [_x, 120] } forEach FactionGet(all, "vehiclesAPCs"); { _groundVehicleThreat set [_x, 200] } forEach FactionGet(all, "vehiclesAA") + FactionGet(all, "vehiclesArtillery") + FactionGet(all, "vehiclesIFVs") + FactionGet(all, "vehiclesLightTanks"); { _groundVehicleThreat set [_x, 300] } forEach FactionGet(all, "vehiclesTanks"); +{ _groundVehicleThreat set [_x, 500] } forEach FactionGet(all, "vehiclesHeavyTanks"); //Expect these to mostly exist in templates which lack good access of most things to deal with tanks, ie WW2 // Rebel vehicle cost diff --git a/A3A/addons/core/functions/init/fn_initZones.sqf b/A3A/addons/core/functions/init/fn_initZones.sqf index b3a6bca98b..9c530db66d 100644 --- a/A3A/addons/core/functions/init/fn_initZones.sqf +++ b/A3A/addons/core/functions/init/fn_initZones.sqf @@ -73,7 +73,7 @@ private _disabledTowns = getArray (_mapInfo/"disabledTowns"); {server setVariable [_x select 0,_x select 1]} forEach _townPopulations; private _hardCodedPopulation = _townPopulations isNotEqualTo []; -"(getText (_x >> ""type"") in [""NameCityCapital"",""Namecitycapital"", ""NameCity"",""Namecity"", ""NameVillage"",""Namevillage"", ""CityCenter"",""Citycenter""]) && +"(toLower getText (_x >> ""type"") in [""namecitycapital"",""namecity"",""namevillage"",""citycenter""]) && !(getText (_x >> ""Name"") isEqualTo """") && !((configName _x) in _disabledTowns)" configClasses (configfile >> "CfgWorlds" >> worldName >> "Names") apply { diff --git a/A3A/addons/core/functions/init/fn_setupMonitor.sqf b/A3A/addons/core/functions/init/fn_setupMonitor.sqf index ce7ed31b79..13a812b785 100644 --- a/A3A/addons/core/functions/init/fn_setupMonitor.sqf +++ b/A3A/addons/core/functions/init/fn_setupMonitor.sqf @@ -15,11 +15,9 @@ private _addonVics = "true" configClasses (configFile/"A3A"/"AddonVics"); // Ignore DLC without equipment and vehicles // Need the true names from here, so pass it all in -private _loadedDLC = getLoadedModsInfo select { - (_x#3 or {_x#0 isEqualTo "Arma 3 Creator DLC: Western Sahara"}) - and {!(_x#1 in ["A3","curator","argo","tacops"])} -}; - +// Arma bug: Need to hardcode CDLC because arma3.cfg mod loading method doesn't register CDLC as "official" +private _loadedDLC = getLoadedModsInfo select { (_x#2) and !(_x#1 in ["A3","curator","argo","tacops"]) }; +_loadedDLC append (getLoadedModsInfo select { tolower (_x#1) in ["gm", "rf", "spe", "vn", "ws"] }); private _autoLoadTime = "autoLoadLastGame" call BIS_fnc_getParamValue; private _autoLoadData = nil; @@ -82,7 +80,7 @@ while {isNil "A3A_saveData"} do { Info_1("Player %1 is no longer admin, disabling their setup dialog", name A3A_setupPlayer); A3A_startupState = _waitState; publicVariable "A3A_startupState"; - ["serverClose"] remoteExec ["A3A_fnc_setupDialog", A3A_setupPlayer]; + ["serverClose"] remoteExec ["A3A_GUI_fnc_setupDialog", A3A_setupPlayer]; A3A_setupPlayer = objNull; }; @@ -98,7 +96,7 @@ while {isNil "A3A_saveData"} do { // Collect save data. Do this each time so consistency is maintained with deletes private _saveData = call A3A_fnc_collectSaveData; DebugArray("Save data found:", _saveData); - ["sendData", [_saveData, _loadedPatches, _loadedDLC]] remoteExec ["A3A_fnc_setupDialog", A3A_setupPlayer]; + ["sendData", [_saveData, _loadedPatches, _loadedDLC]] remoteExec ["A3A_GUI_fnc_setupDialog", A3A_setupPlayer]; }; Info("Setup monitor terminated"); diff --git a/A3A/addons/core/functions/init/fn_tags.sqf b/A3A/addons/core/functions/init/fn_tags.sqf index d43352a17b..8c1854dbcf 100644 --- a/A3A/addons/core/functions/init/fn_tags.sqf +++ b/A3A/addons/core/functions/init/fn_tags.sqf @@ -22,11 +22,11 @@ while{true}do{ // PLAYER NAME CHECK AND DISPLAY _target = cursorTarget; if (_target isKindOf "CAManBase" && player == vehicle player) then{ - if((side _target == playerSide) && ((player distance _target) < _distance))then + if((side group _target == playerSide) && ((player distance _target) < _distance))then { _weaponsplayer = weapons _target; _name = name _target; - _nameString = "" + format['%1 %2',_target getVariable ['unitname', name _target]] + ""; + _nameString = ""; _rank = [_target,"displayNameShort"] call BIS_fnc_rankParams; if (count _weaponsPlayer > 0) then { diff --git a/A3A/addons/core/functions/proxy/fn_onPlayerRespawn.sqf b/A3A/addons/core/functions/proxy/fn_onPlayerRespawn.sqf index 36b4b93830..43dba9c917 100644 --- a/A3A/addons/core/functions/proxy/fn_onPlayerRespawn.sqf +++ b/A3A/addons/core/functions/proxy/fn_onPlayerRespawn.sqf @@ -234,7 +234,6 @@ if (side group player == teamPlayer) then ]; [] spawn A3A_fnc_unitTraits; [] spawn A3A_fnc_statistics; - call A3A_fnc_dropObject; } else { diff --git a/A3A/addons/core/keybinds/CfgDefaultKeysPresets.hpp b/A3A/addons/core/keybinds/CfgDefaultKeysPresets.hpp index 6d3f70ec35..647df59fbc 100644 --- a/A3A/addons/core/keybinds/CfgDefaultKeysPresets.hpp +++ b/A3A/addons/core/keybinds/CfgDefaultKeysPresets.hpp @@ -4,6 +4,8 @@ class CfgDefaultKeysPresets { class Mappings { GVAR(battleMenu)[] = {DIK_Y}; GVAR(artyMenu)[] = {0x2A130015}; //combo Left shift + Y (no double tap) + GVAR(respawn)[] = {DIK_R}; + GVAR(selfRevive)[] = {DIK_H}; GVAR(infoBar)[] = {0x381300C7}; //combo Left alt + Home (no double tap) GVAR(earPlugs)[] = {DIK_END}; GVAR(customHintDismiss)[] = {}; diff --git a/A3A/addons/core/keybinds/CfgUserActions.hpp b/A3A/addons/core/keybinds/CfgUserActions.hpp index f2d9967c3e..61158dc308 100644 --- a/A3A/addons/core/keybinds/CfgUserActions.hpp +++ b/A3A/addons/core/keybinds/CfgUserActions.hpp @@ -13,6 +13,16 @@ class CfgUserActions { onActivate = ACTION(artyMenu); }; + class GVAR(respawn) { + displayName = $STR_A3A_keybinds_CfgUserAct_respawn_DN; + tooltip = $STR_A3A_keybinds_CfgUserAct_respawn_tip; + }; + + class GVAR(selfRevive) { + displayName = $STR_A3A_keybinds_CfgUserAct_selfRevive_DN; + tooltip = $STR_A3A_keybinds_CfgUserAct_selfRevive_tip; + }; + class GVAR(infoBar) { displayName = $STR_A3A_keybinds_CfgUserAct_infoBar_DN; tooltip = $STR_A3A_keybinds_CfgUserAct_infoBar_tip; diff --git a/A3A/addons/core/keybinds/UserActionGroups.hpp b/A3A/addons/core/keybinds/UserActionGroups.hpp index 187d3fcbfd..b72a141ce0 100644 --- a/A3A/addons/core/keybinds/UserActionGroups.hpp +++ b/A3A/addons/core/keybinds/UserActionGroups.hpp @@ -5,6 +5,8 @@ class UserActionGroups { group[] = { QGVAR(battleMenu), QGVAR(artyMenu), + QGVAR(respawn), + QGVAR(selfRevive), QGVAR(infoBar), QGVAR(earPlugs), QGVAR(customHintDismiss) diff --git a/A3A/addons/core/keybinds/UserActionsConflictGroups.hpp b/A3A/addons/core/keybinds/UserActionsConflictGroups.hpp index 4eeb8e35e6..c419c16540 100644 --- a/A3A/addons/core/keybinds/UserActionsConflictGroups.hpp +++ b/A3A/addons/core/keybinds/UserActionsConflictGroups.hpp @@ -3,6 +3,8 @@ class UserActionsConflictsGroups { PREFIX[] = { QGVAR(battleMenu), QGVAR(artyMenu), + QGVAR(respawn), + QGVAR(selfRevive), QGVAR(infoBar), QGVAR(earPlugs), QGVAR(customHintDismiss) diff --git a/A3A/addons/core/script_component.hpp b/A3A/addons/core/script_component.hpp index 86c9dbc7d7..9d9691d99e 100644 --- a/A3A/addons/core/script_component.hpp +++ b/A3A/addons/core/script_component.hpp @@ -1,2 +1,3 @@ #define COMPONENT core #include "Includes\script_mod.hpp" +#define PATCHNAME(x) ADDON##_##x diff --git a/A3A/addons/garage/CfgDefines.inc b/A3A/addons/garage/CfgDefines.inc index a16c44306a..9b8651ac83 100644 --- a/A3A/addons/garage/CfgDefines.inc +++ b/A3A/addons/garage/CfgDefines.inc @@ -50,6 +50,7 @@ #define HR_GRG_IDC_tLock 170012 #define HR_GRG_IDC_Confirm 170013 #define HR_GRG_IDC_InfoPanel 170014 +#define HR_GRG_IDC_SellVeh 170015 #define HR_GRG_IDC_SourcePanelAmmo 1700141 #define HR_GRG_IDC_SourcePanelFuel 1700142 #define HR_GRG_IDC_SourcePanelRepair 1700143 diff --git a/A3A/addons/garage/CfgFunctions.hpp b/A3A/addons/garage/CfgFunctions.hpp index 470db8c542..49aa619bfb 100644 --- a/A3A/addons/garage/CfgFunctions.hpp +++ b/A3A/addons/garage/CfgFunctions.hpp @@ -26,6 +26,8 @@ class CfgFunctions class requestSelectionChange {}; class requestVehicle {}; class selectionChange {}; + class sellVehGRG {}; + class sellVehGRGLocal {}; class switchCategory {}; class toggleConfirmBttn {}; class toggleLock {}; diff --git a/A3A/addons/garage/Core/fn_confirmPlacement.sqf b/A3A/addons/garage/Core/fn_confirmPlacement.sqf index 76f933bf03..1b2dd4bbe6 100644 --- a/A3A/addons/garage/Core/fn_confirmPlacement.sqf +++ b/A3A/addons/garage/Core/fn_confirmPlacement.sqf @@ -406,7 +406,7 @@ HR_GRG_EH_EF = addMissionEventHandler ["EachFrame", { if (HR_GRG_renderPlacementRays) then { //Debug render HR_GRG_dispSquare params ["_adjustment", "_square"]; - _square params ["_a","_b"]; + _square params ["_a","_b","_c"]; drawLine3D [HR_GRG_dispVehicle modelToWorldVisual _adjustment,HR_GRG_dispVehicle modelToWorldVisual (_adjustment vectorAdd [_a,0,0]), [0.9,0,0,1]]; drawLine3D [HR_GRG_dispVehicle modelToWorldVisual _adjustment,HR_GRG_dispVehicle modelToWorldVisual (_adjustment vectorAdd [0,_b,0]), [0.9,0,0,1]]; drawLine3D [HR_GRG_dispVehicle modelToWorldVisual _adjustment,HR_GRG_dispVehicle modelToWorldVisual (_adjustment vectorAdd [0,0,_c]), [0.9,0,0,1]]; diff --git a/A3A/addons/garage/Core/fn_onLoad.sqf b/A3A/addons/garage/Core/fn_onLoad.sqf index 444053175c..4ce7d321b8 100644 --- a/A3A/addons/garage/Core/fn_onLoad.sqf +++ b/A3A/addons/garage/Core/fn_onLoad.sqf @@ -98,6 +98,12 @@ HR_GRG_Cats = [HR_GRG_IDC_CatCar,HR_GRG_IDC_CatArmored,HR_GRG_IDC_CatAir,HR_GRG_ } forEach HR_GRG_Cats; [0] call HR_GRG_fnc_switchCategory; +//sell button init + +if (HR_GRG_disableSellButton) then { + _disp displayCtrl HR_GRG_IDC_SellVeh ctrlEnable false; +}; + //extras list init if ( !HR_GRG_Pylons_Enabled //Pylon editing disabled diff --git a/A3A/addons/garage/Core/fn_reciveBroadcast.sqf b/A3A/addons/garage/Core/fn_reciveBroadcast.sqf index b81b02a542..c84f42f890 100644 --- a/A3A/addons/garage/Core/fn_reciveBroadcast.sqf +++ b/A3A/addons/garage/Core/fn_reciveBroadcast.sqf @@ -26,7 +26,7 @@ #include "defines.inc" FIX_LINE_NUMBERS() Trace_1("Reciving broadcast: %1",_this); -params ["_lockUID", "_checkoutUID", "_catIndex", "_vehUID", "_player", "_switch"]; +params ["_lockUID", "_checkoutUID", "_catIndex", "_vehUID", "_player", "_switch", "_time"]; private _cat = HR_GRG_Vehicles#_catIndex; private _vehicle = _cat get _vehUID; @@ -37,6 +37,7 @@ if (_switch) then { [getPlayerUID _player] call HR_GRG_fnc_releaseAllVehicles }; if (!isNil "_lockUID") then { _vehicle set [2, _lockUID]; _vehicle set [5, if (_lockUID isEqualTo "") then { "" } else { name _player }]; + _vehicle set [7, [_time, []] select (_lockUID isEqualTo "")]; }; if (!isNil "_checkoutUID") then { diff --git a/A3A/addons/garage/Core/fn_reloadCategory.sqf b/A3A/addons/garage/Core/fn_reloadCategory.sqf index 4c16e59db5..8df30b1c7e 100644 --- a/A3A/addons/garage/Core/fn_reloadCategory.sqf +++ b/A3A/addons/garage/Core/fn_reloadCategory.sqf @@ -29,7 +29,7 @@ lbClear _ctrl; private _selected = -1; private _HR_GRG_SelectedVehicles = [-1,-1,""]; { - _y params ["_displayName", "_class", "_lockedUID", "_checkedOut", "", ["_lockName", ""]]; + _y params ["_displayName", "_class", "_lockedUID", "_checkedOut", "", ["_lockName", ""], "", ["_lockTime", []]]; private _index = _ctrl lbAdd _displayName; _ctrl lbSetData [_index, str _x]; _ctrl lbSetValue [_index, _x]; @@ -46,7 +46,7 @@ private _HR_GRG_SelectedVehicles = [-1,-1,""]; }; _ctrl lbSetPictureRight [_index, CheckOutIcon]; _ctrl lbSetPictureRightColor [_index, _color]; - _tooltipText = name (_checkedOut call BIS_fnc_getUnitByUID) +" "+( localize "STR_HR_GRG_Feedback_checkedOutToolTip" )+" "; + _tooltipText = format ["%1 %2 %3", name (_checkedOut call BIS_fnc_getUnitByUID), ( localize "STR_HR_GRG_Feedback_checkedOutToolTip" ), parseText "\n"]; }; if !( _lockedUID isEqualTo "" ) then { @@ -54,6 +54,13 @@ private _HR_GRG_SelectedVehicles = [-1,-1,""]; _ctrl lbSetPictureRight [_index, LockIcon]; _ctrl lbSetPictureRightColor [_index, _color]; _tooltipText = _tooltipText + ( localize "STR_HR_GRG_Feedback_LockedToolTip" )+" "+ _lockName; + + private _systemTime = systemTimeUTC; + if(_lockTime isEqualTo []) then {_lockTime = _systemTime;}; + private _timeSpan = [_systemTime, _locktime] call A3A_fnc_systemTimeDurationToTimeSpan; + _tooltipText = format [localize "STR_HR_GRG_Feedback_LockedToolTip_Ago", _tooltipText, + [_timeSpan, 0,0,false,2] call A3A_fnc_timeSpan_format + ]; }; _ctrl lbSetTooltip [_index, _tooltipText]; _ctrl lbSetPictureRightColorSelected [_index, [0.85,0.85,0.55,1]]; diff --git a/A3A/addons/garage/Core/fn_removeFromPool.sqf b/A3A/addons/garage/Core/fn_removeFromPool.sqf index d90d9f5446..e598871613 100644 --- a/A3A/addons/garage/Core/fn_removeFromPool.sqf +++ b/A3A/addons/garage/Core/fn_removeFromPool.sqf @@ -5,6 +5,8 @@ Arguments: 0. Client UID + 1. Player, for logging + 2. Whether or not to exclude mounts from removal (default false) Return Value: succesfull @@ -20,12 +22,14 @@ */ #include "defines.inc" FIX_LINE_NUMBERS() -params [["_UID", "", [""]], ["_player", objNull, [objNull]]]; +params [["_UID", "", [""]], ["_player", objNull, [objNull]], ["_removeMounts",false,[false]]]; Trace_1("Removing vehicles from garage with UID: %1", _UID); if (_UID isEqualTo "") exitWith {false}; //find vehicles to remove private _toRemove = []; +private _localVehicleList = +HR_GRG_Vehicles; +if (_removeMounts) then {_localVehicleList deleteAt 4}; { private _catIndex = _forEachIndex; private _hashMap = _x; @@ -33,8 +37,9 @@ private _toRemove = []; _veh = _hashMap get _x; if ((_veh#3) isEqualTo _UID) then {_toRemove pushBack [_catIndex, _x, _veh]}; } forEach keys _x; -} forEach HR_GRG_Vehicles; +} forEach _localVehicleList; + //remove vehicles { //remove vehicle diff --git a/A3A/addons/garage/Core/fn_requestSelectionChange.sqf b/A3A/addons/garage/Core/fn_requestSelectionChange.sqf index f13b601a2a..9a36b86923 100644 --- a/A3A/addons/garage/Core/fn_requestSelectionChange.sqf +++ b/A3A/addons/garage/Core/fn_requestSelectionChange.sqf @@ -34,7 +34,7 @@ if (-1 in [_catIndex, _vehUID]) exitWith _exit; private _cat = HR_GRG_Vehicles#_catIndex; private _vehicle = _cat get _vehUID; -if !( ((_vehicle#2) in ["", _UID]) || (_player call HR_GRG_isCmdClient) ) exitWith _exit; +if !( ((_vehicle#2) in ["", _UID]) || (_player call HR_GRG_canOverrideLock) ) exitWith _exit; if !((_vehicle#3) in ["", _UID] ) exitWith _exit; [_UID] call HR_GRG_fnc_releaseAllVehicles; diff --git a/A3A/addons/garage/Core/fn_sellVehGRG.sqf b/A3A/addons/garage/Core/fn_sellVehGRG.sqf new file mode 100644 index 0000000000..925694200c --- /dev/null +++ b/A3A/addons/garage/Core/fn_sellVehGRG.sqf @@ -0,0 +1,51 @@ +/* + Author: Tiny, parts of code ethically sourced from Håkon + [Description] + Attempts to sell currently selected vehicle + + Arguments: + 0. player UID + 1. Player + 2. vehicle to sell (intended use with HR_GRG_SelectedVehicles) + + Return Value: + n/A + + Scope: Server + Environment: Unscheduled + Public: [No] + Dependencies: + + Example: [HR_GRG_PlayerUID, player, HR_GRG_SelectedVehicles] remoteExecCall ["HR_GRG_fnc_sellVehGRG",2]; + + License: APL-ND +*/ + +#include "defines.inc" +FIX_LINE_NUMBERS() +params ["_UID", "_player", "_selectedVehicle"]; + +if (!isServer) exitWith {Error("Not server executed")}; +if !(_player call HR_GRG_canSell) exitWith {["STR_HR_GRG_Feedback_sellVehicle_comOnly"] remoteExecCall ["HR_GRG_fnc_hint", _player];}; +_selectedVehicle params [["_catIndex", -1], ["_vehUID", -1], ["_class", ""]]; +if ( (_catIndex isEqualTo -1) || (_vehUID isEqualTo -1) ) exitWith {}; +Trace_2("Attempting to sell vehicle at cat: %1 | Vehicle ID: %2 | Classname: %3", _catIndex, _vehUID, _class); + +private _refund = [_class] call HR_GRG_getVehicleSellPrice; +if (_refund == 0) exitWith {["STR_HR_GRG_Feedback_sellVehicle_noPrice"] remoteExecCall ["HR_GRG_fnc_hint", _player];}; + +private _cat = HR_GRG_Vehicles#_catIndex; +private _veh = _cat get _vehUID; +private _lock = _veh#2; +if !(_lock isEqualTo "") exitWith {["STR_HR_GRG_Feedback_sellVehicle_locked"] remoteExecCall ["HR_GRG_fnc_hint", _player];}; + +private _recipients = +HR_GRG_Users; +_recipients pushBackUnique 2; // to avoid double-calling the function on localhost +private _removeStatics = (_catIndex != 4); +[_UID,_player,_removeStatics] remoteExecCall ["HR_GRG_fnc_removeFromPool", _recipients]; +[] remoteExec ["HR_GRG_fnc_sellVehGRGLocal",_player]; + +[_refund] spawn HR_GRG_addResources; + +["STR_HR_GRG_Feedback_sellVehicle_sold",[str _refund]] remoteExecCall ["HR_GRG_fnc_hint", _player]; +Info_4("Vehicle UID %1 sold by %2 for %3. Vehicle classname: %4.", _vehUID, name _player, _refund,_class); diff --git a/A3A/addons/garage/Core/fn_sellVehGRGLocal.sqf b/A3A/addons/garage/Core/fn_sellVehGRGLocal.sqf new file mode 100644 index 0000000000..6b7276a56b --- /dev/null +++ b/A3A/addons/garage/Core/fn_sellVehGRGLocal.sqf @@ -0,0 +1,32 @@ +/* + Author: Tiny + [Description] + A helper script to fn_sellvehGRG, runs on the client to reset displays + + Arguments: + 1. The category to change selection to (default = -1) + 2. The vehicle UID to change selection to (default = -1) + 3. The classname of the selected vehicle (default = "") + + + Return Value: + + + Scope: Client + Environment: Any + Public: [No] + + License: APL-ND +*/ +#include "defines.inc" +FIX_LINE_NUMBERS() + +if (isNull player) exitWith {Error("fn_sellVehGRGLocal was not executed by a client")}; +params [["_catIndex",-1],["_vehUID",-1],["_class",""]]; +HR_GRG_SelectedVehicles = [_catIndex, _vehUID,_class]; + +[] call HR_GRG_fnc_reloadPreview; +[] call HR_GRG_fnc_reloadExtras; +[0] call HR_GRG_fnc_switchExtrasMenu; +[] call HR_GRG_fnc_reloadPylons; +[] call HR_GRG_fnc_updateVehicleCount; diff --git a/A3A/addons/garage/Core/fn_toggleLock.sqf b/A3A/addons/garage/Core/fn_toggleLock.sqf index 6f8dd02184..43f4e2a58b 100644 --- a/A3A/addons/garage/Core/fn_toggleLock.sqf +++ b/A3A/addons/garage/Core/fn_toggleLock.sqf @@ -35,7 +35,7 @@ private _owner = _veh#5; _success = call { if ( _lock isEqualTo "" ) exitWith { true }; if ( _lock isEqualTo _UID) exitWith { _UID = ""; true }; - if (_player call HR_GRG_isCmdClient) exitWith { _UID = ""; Info_5("Commander unlock | Vehicle ID: %1 | Owner: %2 [%3] | Commander: %4 [%5]", _vehUID, _owner, _lock, name _player, _UID); true }; + if (_player call HR_GRG_canOverrideLock) exitWith { _UID = ""; Info_5("Commander unlock | Vehicle ID: %1 | Owner: %2 [%3] | Commander: %4 [%5]", _vehUID, _owner, _lock, name _player, _UID); true }; false }; if (!_success) exitWith { Trace("Failed to toggle lock") }; @@ -45,7 +45,10 @@ if (_lock isEqualTo "" && !(_vehUID in flatten HR_GRG_Sources) && {[_UID] call H ["STR_HR_GRG_Feedback_toggleLock_limit"] remoteExecCall ["HR_GRG_fnc_Hint", _player]; }; +private _lockTime = systemTimeUTC; + _veh set [2, _UID]; _veh set [5, [name _player, ""] select (_UID isEqualTo "")]; -[_UID, nil, _catIndex, _vehUID, _player, false] call HR_GRG_fnc_broadcast; +_veh set [7, [_lockTime, 0] select (_UID isEqualTo "")]; +[_UID, nil, _catIndex, _vehUID, _player, false, _lockTime] call HR_GRG_fnc_broadcast; Info_3("Lock state toggled for Vehicle ID: %1 | By: %2 | Locked: %3", _vehUID, name _player, (_UID isNotEqualTo "")); diff --git a/A3A/addons/garage/Dialogs.hpp b/A3A/addons/garage/Dialogs.hpp index 4003652d26..46ce85517a 100644 --- a/A3A/addons/garage/Dialogs.hpp +++ b/A3A/addons/garage/Dialogs.hpp @@ -220,7 +220,7 @@ class HR_GRG_VehicleSelect x = SCREEN_RIGHT - 39 * GRID_NOUISCALE_W; y = SCREEN_TOP + 4 * GRID_NOUISCALE_H; w = 39 * GRID_NOUISCALE_W; - h = safeZoneH - (56 * GRID_NOUISCALE_H); // Screen height - title and buttons height + h = safeZoneH - (66 * GRID_NOUISCALE_H); // Screen height - title and buttons height size = TEXT_SIZE_MEDIUM; rowHeight = 3 * GRID_NOUISCALE_H; onMouseButtonClick = "_this call HR_GRG_fnc_requestMount;"; @@ -244,7 +244,7 @@ class HR_GRG_VehicleSelect x = SCREEN_RIGHT - 39 * GRID_NOUISCALE_W; y = SCREEN_TOP + 4 * GRID_NOUISCALE_H; w = 39 * GRID_NOUISCALE_W; - h = safeZoneH - (56 * GRID_NOUISCALE_H); // Screen height - title and buttons height + h = safeZoneH - (66 * GRID_NOUISCALE_H); // Screen height - title and buttons height class controls { @@ -254,7 +254,7 @@ class HR_GRG_VehicleSelect x = 0; y = 0; w = 39 * GRID_NOUISCALE_W; - h = safeZoneH - (56 * GRID_NOUISCALE_H); + h = safeZoneH - (66 * GRID_NOUISCALE_H); }; class HR_GRG_MirrorCheckbox: HR_GRG_RscCheckBox @@ -292,7 +292,7 @@ class HR_GRG_VehicleSelect x = 0; y = 4 * GRID_NOUISCALE_H; w = 38 * GRID_NOUISCALE_W; - h = safeZoneH - (65 * GRID_NOUISCALE_H); // Screen height - title and buttons height 51 + h = safeZoneH - (70 * GRID_NOUISCALE_H); // Screen height - title and buttons height 51 }; }; }; @@ -301,7 +301,7 @@ class HR_GRG_VehicleSelect class HR_GRG_SourcePanel: HR_GRG_RscControlsGroup { x = SCREEN_RIGHT - 39 * GRID_NOUISCALE_W; - y = SCREEN_BOTTOM - 52 * GRID_NOUISCALE_H; + y = SCREEN_BOTTOM - 62 * GRID_NOUISCALE_H; w = 39 * GRID_NOUISCALE_W; h = 7 * GRID_NOUISCALE_H; size = TEXT_SIZE_MEDIUM; @@ -350,9 +350,9 @@ class HR_GRG_VehicleSelect class HR_GRG_InfoPanelWrapper: HR_GRG_RscControlsGroup { x = SCREEN_RIGHT - 39 * GRID_NOUISCALE_W; - y = SCREEN_BOTTOM - 45 * GRID_NOUISCALE_H; + y = SCREEN_BOTTOM - 55 * GRID_NOUISCALE_H; w = 39 * GRID_NOUISCALE_W; - h = 45 * GRID_NOUISCALE_H; + h = 48 * GRID_NOUISCALE_H; size = TEXT_SIZE_MEDIUM; class controls @@ -363,12 +363,36 @@ class HR_GRG_VehicleSelect x = 0; y = 0; w = 39 * GRID_NOUISCALE_W; - h = 45 * GRID_NOUISCALE_H; + h = 48 * GRID_NOUISCALE_H; size = TEXT_SIZE_MEDIUM; }; }; }; + class HR_GRG_SellButtonWrapper: HR_GRG_RscControlsGroup + { + x = SCREEN_RIGHT - 39 * GRID_NOUISCALE_W; + y = SCREEN_BOTTOM - 7 * GRID_NOUISCALE_H; + w = 39 * GRID_NOUISCALE_W; + h = 7 * GRID_NOUISCALE_H; + size = TEXT_SIZE_LARGE; + + class controls + { + class HR_GRG_SellVeh: HR_GRG_RscButton + { + idc = HR_GRG_IDC_SellVeh; + text = $STR_HR_GRG_Generic_SellVeh; + x = 0; + y = 0; + w = 39 * GRID_NOUISCALE_W; + h = 7 * GRID_NOUISCALE_H; + action = "if !(HR_GRG_SelectedVehicles isEqualTo [-1,-1,'']) then {[HR_GRG_PlayerUID, player, HR_GRG_SelectedVehicles] remoteExecCall ['HR_GRG_fnc_sellVehGRG',2];};"; + sizeEx = TEXT_SIZE_LARGE; + }; + }; + }; + // Camera controls hint class HR_GRG_KeyBindHint: HR_GRG_RscStructuredText { diff --git a/A3A/addons/garage/Extras/fn_findMount.sqf b/A3A/addons/garage/Extras/fn_findMount.sqf index 9c5c514c5e..119cc201ba 100644 --- a/A3A/addons/garage/Extras/fn_findMount.sqf +++ b/A3A/addons/garage/Extras/fn_findMount.sqf @@ -38,7 +38,7 @@ private _CheckedUID = ["",_UID] select (_newIconIndex isEqualTo 1); //block checkout condition if ( !((_mount#2) in ["",_UID]) //locked by someone else - && !(_player call HR_GRG_isCmdClient) //cmd overwrite + && !(_player call HR_GRG_canOverrideLock) //cmd overwrite ) exitWith _failed; if !((_mount#3) in ["", _UID]) exitWith _failed; //Checked out by someone else diff --git a/A3A/addons/garage/Extras/fn_reloadExtras.sqf b/A3A/addons/garage/Extras/fn_reloadExtras.sqf index fbd59b56f3..713868bd9d 100644 --- a/A3A/addons/garage/Extras/fn_reloadExtras.sqf +++ b/A3A/addons/garage/Extras/fn_reloadExtras.sqf @@ -25,8 +25,21 @@ private _class = HR_GRG_SelectedVehicles param [2, "", [""]]; Trace("Reloading Extras"); //Mounts private _disp = findDisplay HR_GRG_IDD_Garage; -private _ctrl = _disp displayCtrl HR_GRG_IDC_ExtraMounts; -lbClear _ctrl; +private _ctrlExtraMounts = _disp displayCtrl HR_GRG_IDC_ExtraMounts; +lbClear _ctrlExtraMounts; +private _ctrlExtraTexture = _disp displayCtrl HR_GRG_IDC_ExtraTexture; +lbClear _ctrlExtraTexture; +private _ctrlExtraAnim = _disp displayCtrl HR_GRG_IDC_ExtraAnim; +lbClear _ctrlExtraAnim; +private _ctrlSourcePanelAmmo = _disp displayCtrl HR_GRG_IDC_SourcePanelAmmo; +private _ctrlSourcePanelFuel = _disp displayCtrl HR_GRG_IDC_SourcePanelFuel; +private _ctrlSourcePanelRepair = _disp displayCtrl HR_GRG_IDC_SourcePanelRepair; +private _ctrlInfoPanel = _disp displayCtrl HR_GRG_IDC_InfoPanel; + +if (!isClass (configFile >> "CfgVehicles" >> _class)) exitWith { + _ctrlInfoPanel ctrlSetStructuredText text ""; +}; + private _nodeCfg = [HR_GRG_previewVeh] call A3A_Logistics_fnc_getNodeConfig; private _vehNodes = [HR_GRG_previewVeh] call A3A_Logistics_fnc_getVehicleNodes; private _vehModel = getText (configFile >> "CfgVehicles" >> typeOf HR_GRG_previewVeh >> "model"); @@ -53,15 +66,15 @@ if (_vehNodes isEqualType []) then { //add entry if ( (_allowed) && (_size != -1) && (_capacity >= _size) && !_block) then { //static is loadable and vehicle can fit it - private _index = _ctrl lbAdd _displayName; - _ctrl lbSetData [_index, _staticClass]; - _ctrl lbSetValue [_index, _x]; - _ctrl lbsetpicture [_index,checkboxTextures select (_checkedOut isEqualTo HR_GRG_PlayerUID)]; - _ctrl lbSetTextRight [_index, format ["Size: %1", _size]]; + private _index = _ctrlExtraMounts lbAdd _displayName; + _ctrlExtraMounts lbSetData [_index, _staticClass]; + _ctrlExtraMounts lbSetValue [_index, _x]; + _ctrlExtraMounts lbsetpicture [_index,checkboxTextures select (_checkedOut isEqualTo HR_GRG_PlayerUID)]; + _ctrlExtraMounts lbSetTextRight [_index, format ["Size: %1", _size]]; Trace_4("Mount Added to list | Class: %1 | UID: %2 | Checked: %3 | Size: %4", _staticClass, _x, (_checkedOut isEqualTo HR_GRG_PlayerUID), _type); }; } forEach (HR_GRG_Vehicles#4);//statics - lbSort _ctrl; + lbSort _ctrlExtraMounts; }; if (_reloadMounts) then { [] call HR_GRG_fnc_reloadMounts }; @@ -69,62 +82,55 @@ private _customisation = [HR_GRG_previewVeh] call BIS_fnc_getVehicleCustomizatio //textures HR_GRG_curTexture = _customisation#0; private _badInit = HR_GRG_curTexture isEqualTo []; -private _ctrl = _disp displayCtrl HR_GRG_IDC_ExtraTexture; -lbClear _ctrl; { private _displayName = getText (_x >> "displayName"); private _cfgName = configname _x; if (_displayName != "" && {!(_displayName in HR_GRG_blackListCamo)}) then { - private _index = _ctrl lbAdd _displayName; - _ctrl lbsetdata [_index,_cfgName]; + private _index = _ctrlExtraTexture lbAdd _displayName; + _ctrlExtraTexture lbsetdata [_index,_cfgName]; if (_badInit) then { - _ctrl lbsetpicture [_index,checkboxTextures#0]; + _ctrlExtraTexture lbsetpicture [_index,checkboxTextures#0]; } else { - _ctrl lbsetpicture [_index,checkboxTextures select ((HR_GRG_curTexture#0) isEqualTo _cfgName)]; + _ctrlExtraTexture lbsetpicture [_index,checkboxTextures select ((HR_GRG_curTexture#0) isEqualTo _cfgName)]; }; }; } foreach (configProperties [(configfile >> "CfgVehicles" >> _class >> "textureSources"),"isclass _x",true]); -lbSort _ctrl; +lbSort _ctrlExtraTexture; //animations -private _ctrl = _disp displayCtrl HR_GRG_IDC_ExtraAnim; -lbClear _ctrl; { _configName = configname _x; _displayName = getText (_x >> "displayName"); if (_displayName != "") then { _textures = getArray (_x >> "textures"); - _index = _ctrl lbAdd _displayName; - _ctrl lbSetData [_index,_configName]; + _index = _ctrlExtraAnim lbAdd _displayName; + _ctrlExtraAnim lbSetData [_index,_configName]; private _phase = ceil (HR_GRG_PreviewVeh animationPhase _configName); - _ctrl lbSetPicture [_index,checkboxTextures#_phase]; + _ctrlExtraAnim lbSetPicture [_index,checkboxTextures#_phase]; }; } foreach (configProperties [(configfile >> "CfgVehicles" >> _class >> "animationSources"),"isclass _x",true]); -lbSort _ctrl; +lbSort _ctrlExtraAnim; HR_GRG_curAnims = _customisation#1; [HR_GRG_previewVeh, HR_GRG_curTexture, HR_GRG_curAnims] call BIS_fnc_initVehicle; //update source panel -private _ctrl = _disp displayCtrl HR_GRG_IDC_SourcePanelAmmo; -_ctrl ctrlSetStructuredText composeText [" ", image RearmIcon, " ", image (checkboxTextures select (HR_GRG_hasAmmoSource && !HR_GRG_ServiceDisabled_Rearm))]; -_ctrl ctrlSetTooltip ([ +_ctrlSourcePanelAmmo ctrlSetStructuredText composeText [" ", image RearmIcon, " ", image (checkboxTextures select (HR_GRG_hasAmmoSource && !HR_GRG_ServiceDisabled_Rearm))]; +_ctrlSourcePanelAmmo ctrlSetTooltip ([ localize "STR_HR_GRG_SourcePanel_toolTip_Ammo_Unavailable" , localize "STR_HR_GRG_SourcePanel_toolTip_Ammo_Available" , localize "STR_HR_GRG_SourcePanel_toolTip_Ammo_Disabled" ] select (if (HR_GRG_ServiceDisabled_Rearm) then {2} else {HR_GRG_hasAmmoSource})); -private _ctrl = _disp displayCtrl HR_GRG_IDC_SourcePanelFuel; -_ctrl ctrlSetStructuredText composeText [" ", image RefuelIcon, " ", image (checkboxTextures select (HR_GRG_hasFuelSource && !HR_GRG_ServiceDisabled_Refuel))]; -_ctrl ctrlSetTooltip ([ +_ctrlSourcePanelFuel ctrlSetStructuredText composeText [" ", image RefuelIcon, " ", image (checkboxTextures select (HR_GRG_hasFuelSource && !HR_GRG_ServiceDisabled_Refuel))]; +_ctrlSourcePanelFuel ctrlSetTooltip ([ localize "STR_HR_GRG_SourcePanel_toolTip_Fuel_Unavailable" , localize "STR_HR_GRG_SourcePanel_toolTip_Fuel_Available" , localize "STR_HR_GRG_SourcePanel_toolTip_Fuel_Disabled" ] select (if (HR_GRG_ServiceDisabled_Refuel) then {2} else {HR_GRG_hasFuelSource})); -private _ctrl = _disp displayCtrl HR_GRG_IDC_SourcePanelRepair; -_ctrl ctrlSetStructuredText composeText [" ", image RepairIcon, " ", image (checkboxTextures select (HR_GRG_hasRepairSource && !HR_GRG_ServiceDisabled_Repair))]; -_ctrl ctrlSetTooltip ([ +_ctrlSourcePanelRepair ctrlSetStructuredText composeText [" ", image RepairIcon, " ", image (checkboxTextures select (HR_GRG_hasRepairSource && !HR_GRG_ServiceDisabled_Repair))]; +_ctrlSourcePanelRepair ctrlSetTooltip ([ localize "STR_HR_GRG_SourcePanel_toolTip_Repair_Unavailable" , localize "STR_HR_GRG_SourcePanel_toolTip_Repair_Available" , localize "STR_HR_GRG_SourcePanel_toolTip_Repair_Disabled" @@ -132,7 +138,6 @@ _ctrl ctrlSetTooltip ([ if (isNull HR_GRG_previewVeh) exitWith {}; //update info panel -private _ctrl = _disp displayCtrl HR_GRG_IDC_InfoPanel; private _spacer = composeText [lineBreak, lineBreak]; private _topBar = composeText [ image cfgIcon(_class), " ", cfgDispName(_class) @@ -151,6 +156,9 @@ private _typeSource = switch (_source find true) do { default {localize "STR_HR_GRG_InfoPanel_isNotSource"}; }; +private _sellPrice = [HR_GRG_previewVeh] call HR_GRG_getVehicleSellPrice; +_sellPrice = [str _sellPrice, localize "STR_HR_GRG_InfoPanel_cannotBeSold"] select (_sellPrice == 0); +_sellPrice = [localize "STR_HR_GRG_InfoPanel_salePrice",_sellPrice] joinString " "; //state indicator private _getPercentageAmmo = { @@ -271,4 +279,4 @@ _generalInfo = composeText [ ,image MassIcon," ",localize "STR_HR_GRG_InfoPanel_Mass"," ", str _mass ]; -_ctrl ctrlSetStructuredText composeText [_topBar, lineBreak, _typeSource, _spacer, "Vehicle state:", lineBreak, _vehicleState,lineBreak,_refuelInfo, _spacer, _seatsInfo, _spacer, _cargoInfo, _spacer, _generalInfo]; +_ctrlInfoPanel ctrlSetStructuredText composeText [_topBar, lineBreak, _typeSource, lineBreak, _sellPrice, _spacer, "Vehicle state:", lineBreak, _vehicleState,lineBreak,_refuelInfo, _spacer, _seatsInfo, _spacer, _cargoInfo, _spacer, _generalInfo]; diff --git a/A3A/addons/garage/Public/config.inc b/A3A/addons/garage/Public/config.inc index 40d6187432..8c879144f3 100644 --- a/A3A/addons/garage/Public/config.inc +++ b/A3A/addons/garage/Public/config.inc @@ -19,7 +19,7 @@ HR_GRG_Prefix = "Antistasi"; // Condition for whether the player can override garage locks -HR_GRG_isCmdClient = { +HR_GRG_canOverrideLock = { (isServer && hasInterface && _this isEqualTo player) //Lan host || {admin owner _this > 0} //admin || {_this isEqualTo theBoss && _this call A3A_fnc_isMember } //member-commander @@ -133,3 +133,23 @@ if (isClass (configfile >> "CBA_Extended_EventHandlers")) then { }] call CBA_fnc_addSetting; }; + +// sell button +HR_GRG_disableSellButton = false; + +HR_GRG_addResources = { + params ["_money"]; + [0,_money] call A3A_fnc_resourcesFIA; +}; + +HR_GRG_canSell = {_this isEqualTo theBoss}; + +HR_GRG_getVehicleSellPrice = { + private _disableSale = false; + if (_disableSale) exitWith {0}; + params ["_veh"]; + [_veh] call A3A_fnc_getVehicleSellPrice; +}; + + + diff --git a/A3A/addons/garage/Public/fn_addVehicle.sqf b/A3A/addons/garage/Public/fn_addVehicle.sqf index 37e2c23098..c97b246afe 100644 --- a/A3A/addons/garage/Public/fn_addVehicle.sqf +++ b/A3A/addons/garage/Public/fn_addVehicle.sqf @@ -172,6 +172,7 @@ private _addVehicle = { private _stateData = [_this] call HR_GRG_fnc_getState; private _customisation = [_this] call BIS_fnc_getVehicleCustomization; + private _lockTime = [systemTimeUTC, []] select (_lockUID isEqualTo ""); //Antistasi adaptions _this call _transferToArsenal; @@ -182,7 +183,7 @@ private _addVehicle = { //Add vehicle to garage private _vehUID = [] call HR_GRG_fnc_genVehUID; - (HR_GRG_Vehicles#_cat) set [_vehUID, [cfgDispName(_class), _class, _lockUID, "", _stateData, _lockName, _customisation]]; + (HR_GRG_Vehicles#_cat) set [_vehUID, [cfgDispName(_class), _class, _lockUID, "", _stateData, _lockName, _customisation, _lockTime]]; //register vehicle as a source if (_sourceIndex != -1) then { diff --git a/A3A/addons/garage/Public/fn_initGarage.sqf b/A3A/addons/garage/Public/fn_initGarage.sqf index 4d71ba7787..f8a29dc3ec 100644 --- a/A3A/addons/garage/Public/fn_initGarage.sqf +++ b/A3A/addons/garage/Public/fn_initGarage.sqf @@ -31,7 +31,7 @@ private _id = _object addAction [ ", nil, 1.5, true, true, "" , " ((isNil {HR_GRG_Placing}) || {!HR_GRG_Placing}) - && player isEqualTo vehicle player + && player isEqualTo vehicle player && _this == _this getVariable ['owner',objNull] ", 6 ]; _object setVariable ["HR_GRG_GarageID", _id, true]; diff --git a/A3A/addons/garage/Stringtable.xml b/A3A/addons/garage/Stringtable.xml index 47cc511396..7ca07fc68f 100644 --- a/A3A/addons/garage/Stringtable.xml +++ b/A3A/addons/garage/Stringtable.xml @@ -422,6 +422,9 @@ Aracı kilitledi 载具被上锁,它属于 + + %1: %2 ago + Can't mount static Kann gegenstand nicht montieren. @@ -436,6 +439,22 @@ Statik monte edilemez 无法装载固定式武器 + + Only the Commander can sell vehicles. + Seul le Commandant peux vendre des véhicules. + + + You cannot sell a locked vehicle. If this is your vehicle, make sure to unlock it first. + Vous ne pouvez vendre de véhicule vérrouiller. Si c'est votre véhicule, dévérouiller le d'abord. + + + This vehicle is not suitable for our marketplace. + Ce véhicule n'est pas adapté pour notre marché. + + + Vehicle sold for %1 €. + Véhicule vendu pour %1 €. + You have too many vehicles locked Du hast zu viele Fahrzeuge abgeschlossen @@ -647,6 +666,10 @@ Direkler 挂架 + + Sell Vehicle + Vendre véhicule + Statics Statik @@ -703,6 +726,10 @@ Mevcut: 可用: + + Cannot be sold. + Ne peux pas être vendu. + Capacity: Kapazität: @@ -815,6 +842,9 @@ Yığın: 重量: + + Sell Price: + Seats: Sitze: @@ -1155,123 +1185,163 @@ Base capacity of the garage at War Level 1. + Capacità del garage della base at Livello Guerra 1. Capacité de base du garage au niveau de guerre 1. 전쟁 레벨 1의 기본 차고 수용량입니다. + Базовая вместимость гаража на 1 уровне войны. Základní kapacita garáže v úrovni války 1. Base Capacity + Capienza della Base Capacité de Base 기본 수용량 + Базовая вместимость Pojemność bazy Základní kapacita Capacity increase per War Level for the garage. + Capacità del garage incrementata per Livello Guerra. Augmentation de la capacité du garage par niveau de guerre. 전쟁 레벨이 오를 때마다 차고의 수용량이 증가합니다. + Увеличение вместимости гаража за каждый уровень войны. Zvýšení kapacity garáže dle úrovně války. Capacity Increase + Incremento Capacità Augmentation de la capacité 수용량 증가 + Увеличение вместимости Zvýšení kapacity Vehicles won't be rearmed when taken from the garage. + I veicoli non saranno riarmati quando lasceranno il garage. Les Véhicules ne sont pas réarmé quand ils sont pris du garage. 차고에서 차량을 가져오면 차량이 재무장되지 않습니다. + Техника не будет перевооружена при выводе из гаража. Vozidla nebudou přezbrojena po vyndání z garáže Disable garage rearm + Disabilita riarmamento garage Désactiver le réarmement depuis le garage 차고 재무장 비활성화 + Выключить перевооружение в гараже Vypnout přezbrojení vozidel v garáži Vehicles won't be refueled when taken from the garage. + I veicoli non saranno riforniti quando lasceranno il garage. Les véhicules ne seront pas ravitaillés en carburant lorsqu'ils seront sortis du garage. 차고에서 차량을 가져오면 차량이 재급유되지 않습니다. + Техника не будет заправляться при выводе из гаража. Vozidla nebudou natankována po vyndání z garáže Disable garage refuel + Disabilita rifornimento garage Désactiver le ravitaillement depuis le garage 차고 재급유 비활성화 + Выключить заправку в гараже Vypnout tankování vozidel v garáži Vehicles won't be repaired when taken from the garage. + I veicoli non saranno riparati quando lasceranno il garage. Les véhicules ne sont pas réparés lorsqu'ils sont retirés du garage. 차고에서 차량을 가져오면 차량이 수리되지 않습니다. + Техника не будет отремонтирована при выводе из гаража. Vozidla nebudou opraveny po vyndání z garáže Disable garage repair + Disabilita riparazione garage Désactiver la réparation depuis le garage 차량 수리 비활성화 + Выключить ремонт в гараже Vypnout opravování vozidel v garáži Maximum number of vehicles that can be locked by a guest at once. + Massimo numero di veicoli che possono essere chiusi da un ospite all'unisono. Nombre maximum de véhicules pouvant être verrouillés simultanément par un invité. 게스트가 한 번에 잠글 수 있는 최대 차량 수입니다. + Максимальное количество транспортных средств, которые гость может заблокировать одновременно. Maximální možný počet zamčených vozidel návštěvníky Guest lock limit + Limite chiusura ospiti Limire de verrouillage pour les invités 게스트 잠금 제한 + Лимит блокировки техники гостем Limit zamčení návštěvníky Lock vehicles automatically when garaged. + Chiudi veicoli automaticamente quando parcheggiati nel garage. Verrouiller automatiquement les véhicules lorsqu'ils sont garés. 차고로 이동하면 자동으로 차량을 잠급니다. + Автоматически запирать технику, когда она находятся в гараже. Automaticky uzamknout vozidla při garážování. Lock garaged vehicles + Chiudi veicoli parcheggiati nel garage Verrouiller les véhicules garés 차고로 간 차량 잠금 + Запирать технику в гараже Uzamknout garážovaná vozidla Maximum number of vehicles that can be locked by a member at once. + Massimo numero di veicoli che possono essere chiusi da un membro all'unisono. Nombre maximum de véhicules pouvant être verrouillés simultanément par un membre. 멤버가 한 번에 잠글 수 있는 최대 차량 수입니다. + Максимальное количество транспортных средств, которые участником может заблокировать одновременно. Maximální možný počet zamčených vozidel členy Member lock limit + Limite chiusura membri Limire de verrouillage pour les membres 멤버 잠금 제한 + Лимит блокировки техники участником Limit uzamknutí členy Debug setting: Enables the placement rays used to check for vehicle collision. + Settaggio debug: Abilità il posizionamento di raggi uttilizzati per controllare le collisioni veicolari. Paramètre de débogage : Active les rayons de placement utilisés pour vérifier les collisions de véhicules. 디버그 설정: 차량 충돌을 확인하는 데 사용되는 배치선을 활성화합니다. + Настройка отладки: Включает лучи размещения, используемые для проверки на столкновение транспортного средства. Nastavení ladění: Povolit zobrazení paprsků pro sledování kolizí vozidel. Render placement rays + Renderizza raggi di posizionamento Rendu des rayons de placement 배치선 활성화 + Показывать лучи размещения Zobrazit paprsky při pokládání Allows pylons to be edited in the arsenal, as long as an ammo source is available. + Permetti di modificare i piloni nell'arsenale, finché vi è una fonte di munizioni disponibile. Permet d'éditer des pylônes dans l'arsenal, à condition qu'une source de munitions soit disponible. 탄약 공급원이 있는 한 무기고에서 무장창을 편집하는 것을 허용합니다. + Позволяет редактировать пилоны в арсенале, если доступен источник боеприпасов. Povolí úpravu pylonů v arzenáli, pokud je dostupná munice. Allow pylon editing + Permetti la modifica dei piloni Permettre l'édition des pylônes 무장창 편집 허용 + Разрешить редактирование пилона Povolit úpravu pylónů diff --git a/A3A/addons/gui/CfgFunctions.hpp b/A3A/addons/gui/CfgFunctions.hpp index 6f5b7a603b..33144ae173 100644 --- a/A3A/addons/gui/CfgFunctions.hpp +++ b/A3A/addons/gui/CfgFunctions.hpp @@ -1,6 +1,6 @@ // note use of preInit & postInit will run for EVERY mission, use sparingly or with non a3a mission aborts in place, example check if the class (missionConfigFile >> "A3A") exists class CfgFunctions { - class A3A { + class ADDON { class GUI { file = QPATHTOFOLDER(functions\GUI); class adminTab {}; @@ -32,6 +32,7 @@ class CfgFunctions { class setUpPlacerHints {}; class teamLeaderRTSPlacerDialog {}; }; + class SetupGUI { file = QPATHTOFOLDER(functions\SetupGUI); class setupDialog {}; @@ -41,8 +42,7 @@ class CfgFunctions { class setupConfirmDialog {}; class setupHQPosDialog {}; }; - }; - class ADDON { + class controlsHelpers { file = QPATHTOFOLDER(functions\controlsHelpers); class directChildCtrls {}; @@ -50,8 +50,8 @@ class CfgFunctions { class sortCGList {}; }; - class ObjectHelpers { - file = QPATHTOFOLDER(functions\ObjectHelpers); + class objectHelpers { + file = QPATHTOFOLDER(functions\objectHelpers); class sizeOf {}; }; }; diff --git a/A3A/addons/gui/Stringtable.xml b/A3A/addons/gui/Stringtable.xml index e76fafdc75..a014945bc5 100644 --- a/A3A/addons/gui/Stringtable.xml +++ b/A3A/addons/gui/Stringtable.xml @@ -30,6 +30,12 @@ Şu anki 当前 + + As a guest commander you can't reduce arsenal limits below default, or below values set by members. + + + Arsenal Guest Limits + Limit Grenze @@ -58,6 +64,9 @@ RESET 重置 + + Reset all items in this category to the default guest limit + STEP Schritt @@ -95,6 +104,7 @@ Alt: Alt: Alt: + Alt: Alt: Alt 键 : @@ -105,6 +115,7 @@ C: Cancelar %1 C: Annuler %1 C: %1 취소 + C: Отменить %1 C: Zrušit %1 C键: 取消 %1 @@ -115,6 +126,7 @@ E: Rotar antihorario E: Tourner dans le sens inverse des aiguilles E: 반시계 방향으로 돌리기 + E: Поворот против часовой стрелки E: Otočit protisměru ručiček E键: 逆时针旋转 @@ -125,6 +137,7 @@ R: Rotar horario R: Tourner dans le sens des aiguilles R: 시계 방향으로 돌리기 + R: Поворот по часовой стрелке R: Otočit po směru ručiček R 键: 顺时针旋转 @@ -135,6 +148,7 @@ SHIFT: Modo de colocación insegura SHIFT: Mode de placement non sécurisé 쉬프트: 불안전한 배치 모드 + SHIFT: Режим небезопасного размещения SHIFT: Nebezpečný mód položení SHIFT: 自由放置模式 @@ -145,6 +159,7 @@ SPACE: Colocar objeto ESPACE: Placer objet 스페이스: 개체 놓기 + SPACE: Разместить объект MEZERNÍK: Položit objekt 空格键: 放置物品 @@ -345,6 +360,7 @@ Este objeto puede recolectar loot<br/>La carga máxima de %1 es %2 Cet objet peut collecter du butin<br/>%1 charge max est %2 이 아이템은 전리품을 수집할 수 있습니다.<br/>%1의 최대 수용량은 %2입니다. + Этот объект может собирать вещи<br/>%1 с максимальной вместимостью в %2 Tento předmět může sbírat loot<br/>%1 maximální kapacita je %2 @@ -396,6 +412,7 @@ Este objeto puede repostar a otros<br/>El combustible máximo de %1 es %2 Cet objet peut ravitailler les autres<br/>%1 carburant max est %2 이 아이템은 다른 차량을 재급유할 수 있습니다.<br/>%1의 최대 연료량은 %2입니다. + Этот объект может заправлять технику<br/>%1 с запасом топлива в %2 Tento předmět může tankovat ostatní<br/>%1 maximální palivo je %2 @@ -500,45 +517,66 @@ You cannot rest while our HQ is under attack. + Non puoi riposare mentre il QG è sott'attacco. Vous ne pouvez vous reposer alors que notre QG est attaqué. 우리 본부가 공격받는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока наша штаб-квартира находится под атакой. Nemůžeš odpočívat když je základna pod útokem. + 你无法在敌人入侵基地时休息 You cannot rest while enemies are near our HQ. + Non puoi riposare quando ci sono nemici nelle vicinanze del QG. Vous ne pouvez vous reposer alors que des ennemis sont près de notre QG. 적들이 우리 본부 근처에 있는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока враги находятся рядом с нашей штаб-квартирой. Nemůžeš odpočívat když jsou nepřátelkské jednotky poblíž základny. + 你无法在基地附近存在敌人的情况下休息 You cannot rest while %1 is attacking civilians. + Non puoi riposare mentre %1 sta attaccando i civili. Vous ne pouvez vous reposer alors que %1 attaque des civils. %1 세력이 민간인을 공격하는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока %1 нападает на мирных жителей. Nemůžeš odpočívat když %1 útočí na civilisty. + 你无法在 %1 残害平民的情况下休息 Only the commander can skip time. + Solo il comandante può fare avanzare il tempo. Seul le commandant peut passer le temps. 지휘관만이 시간을 스킵할 수 있습니다. + Только командир может пропустить время. Pouze velitel může přeskočit čas. + 只有指挥官才能略过时间 All players must be within 100m of the HQ marker to skip time. + Tutti i giocatori devono essere entro 100m dal segnalino del QG per far avanzare il tempo. Tous les joueurs doivent se trouver à moins de 100 m du marqueur du QG pour passer le temps. 시간을 스킵하려면 모든 플레이어가 본부 마커로부터 100m 이내에 있어야 합니다. + Все игроки должны находиться в пределах 100 метров от флага штаба, чтобы пропустить время. Všichni hráči musí být v okruhu méně než 100m od základny, aby se mohl přeskočit čas. + 为了略过时间,所有玩家必须待在总部图标周边100米内 You cannot rest while the enemy is launching a major attack. + Non puoi riposare mentre il nemico sta lanciando un attacco principale. Vous ne pouvez vous reposer alors que l'ennemi déclenche une attaque majeur. 적이 대규모 공격을 가하는 동안에는 쉴 수 없습니다. + Вы не можете отдыхать, пока враг предпринимает крупную атаку. Nemůžeš odpočívat když nepřítel zahajuje velký útok. + 你无法在敌人发动强大攻势休息 Skip Time / Rest + Passa il Tempo / Riposa Passer le Temps / Repos 시간 스킵 / 휴식 + Пропустить время Přeskočit čas / Odpočívat + 略过时间/ Aggression: @@ -687,6 +725,7 @@ Población fallecida<br/>Cuando llegue al 33% fracasará la misión Population morte<br/>Vous perdez quand cela atteint 33% 사망한 인구<br/>33% 이상 잃으면 패배합니다 + Мертвое население<br/>Вы проиграете, когда оно достигнет 33% Mrtvá populace<br/> prohrajete, pokud bude 33% @@ -808,6 +847,7 @@ Apoyo Popular<br/>Necesita el 50% para ganar Support populaire<br/>Vous avez besoin de 50% pour gagner 시민의 지지율<br/>50%를 넘으면 이깁니다 + Поддержка населения<br/>Вам необходимо 50% для победы Popularita<br/> K vítezství potřebujete 50% @@ -1706,8 +1746,10 @@ No AIs in group. Recruit some at an allied marker's flag. + Nessuna IA nel gruppo. Reclutale al segnalino di una bandiera alleata. Pas d'IA dans ce groupe. Recruter en au drapeau d'un marqueur allié. 그룹에 AI가 없습니다. 아군 마커의 깃발에서 AI를 모집하십시오. + В группе нет ИИ. Наймите кого-нибудь у флага штаба. Žádné AI ve skupině. Naverbuj nějaké na značce spřátelené vlajky. @@ -1801,6 +1843,7 @@ Sólo puede contorlar una unidad de forma remota<br/>Seleccione exactamente una en la lista de la IA Vous ne pouvez contrôler à distance que des unités individuelles<br/>Sélectionnez exactement une IA dans la liste 단일 유닛만 원격 조종 가능합니다<br/>목록에서 인공지능을 정확히 하나만 선택하십시오 + Вы можете удаленное управлять только одним юнитом<br/>Выберете конкретно одного ИИ из списка Můžete ovládat pouze jednotlivé jednotky<br/>Vyber přesně jedno AI z listu @@ -2542,6 +2585,7 @@ Número de unidades en el grupo<br/>Capaces de combatir / Total número de unidades Unités dans le groupe<br/>Prêtes au combat / Nombre totale d'unités 해당 그룹 내 유닛 수<br/>전투 가능 / 총 유닛 수 + Количество человек в группе<br/>Боеспособных / Всего Počet jednotek ve skupině<br/>Bojeschopných / celkový počet jednotek @@ -2753,6 +2797,7 @@ Necesita grupo de miembros de la IA<br/>Puede reclutarlos en la bandera Nécessite des membres du groupe IA<br/>Vous pouvez les recruter au drapeau 인공지능 분대원 필요<br/>깃발에서 모집할 수 있습니다. + Необходимы ИИ в отряде<br/>Вы можете нанять их у Флага Potřebuje AI členy skupiny<br/>Můžete je narekrutovat u vlajky @@ -3008,13 +3053,7 @@ 无可用载具 - Current money:<br/>€ %1 - Aktuelles Geld:<br/>€ %1 - Denaro attuale:<br/>€ %1 - Dinero:<br/>€ %1 - Argent actuel :<br/>€ %1 - 현재 자금:<br/>%1€ - Aktuální peníze:<br/>€ %1 + Current money: € %1 Sell @@ -3333,6 +3372,7 @@ Anti-Tank 대전차병 + Гранатометчик Protitankový střelec @@ -3904,38 +3944,52 @@ + + The currently selected factions are not loaded.<br/>Go to the Factions tab and select available factions. + Copy game with ID %1 + Copia partita con ID %1 Copier le jeu avec l'ID %1 게임 ID %1 복사 + Копировать игру с ID %1 Skopírovat hru s ID %1 Create new game with + Crea nuova partita con Créer une nouvelle partie avec 다음으로 새 게임 생성: + Создать новую игру с помощью Vytvořit novou hru s Are you sure you want to delete game ID %1 on %2? + Sei sicuro di volere eliminare la partita con ID %1 su %2 Êtes-vous sûr de vouloir supprimer l'ID de jeu %1 sur %2 ? %2에서 게임 ID %1을(를) 삭제하시겠습니까? + Вы уверены, что хотите удалить игру ID %1 с %2? Jsi si jistý, že chceš smazat hru s ID %1 na %2? Load game with ID %1 + Carica partita con ID %1 Charger le jeu avec l'ID %1 게임 ID %1 불러오기 + Загрузить игру с ID %1 Načíst hru s ID %1 name ""%1"" + nome ""%1"" nom ""%1"" 이름 ""%1"" + название ""%1"" Název ""%1"" %1 occupants and %2 invaders? + %1 occupanti e %2 invasori? %1 occupants et %2 envahisseurs ? %1이(가) 점령군이고 %2이(가) 침략군입니까? %1 okupanti a %2 vetřelci? @@ -4053,18 +4107,7 @@ 删除存档 - DLC - DLC - DLC - DLC - DLC - DLC - DLC - DLC - DLC - DLC - DLC - DLC + DLC and Addons Factions @@ -4080,6 +4123,12 @@ Hizipler 派系 + + Faction Information + + + %1 Information + Invaders Angreifer @@ -4206,6 +4255,9 @@ Parametreler 参数 + + Required Addons: %1 + Rebels Rebellen @@ -4318,6 +4370,12 @@ ANTİSTASİ KURULUMU ANTISTASI设置 + + Switch to Addons + + + Switch to DLCs + Use New Save file Nutze neue Spielstand Datei diff --git a/A3A/addons/gui/dialogues/arsenalLimitsDialog.hpp b/A3A/addons/gui/dialogues/arsenalLimitsDialog.hpp index 369cdc1b3f..f95761e102 100644 --- a/A3A/addons/gui/dialogues/arsenalLimitsDialog.hpp +++ b/A3A/addons/gui/dialogues/arsenalLimitsDialog.hpp @@ -1,256 +1,200 @@ -// From 3den\UI\macros.inc. DoomGUI uses different values for GRID_W, GRID_H, CENTER_X, CENTER_Y -#define AL_GRID_W (pixelW * pixelGrid * 0.5) -#define AL_GRID_H (pixelH * pixelGrid * 0.5) -#define AL_CENTER_X ((getResolution select 2) * 0.5 * pixelW) -#define AL_CENTER_Y ((getResolution select 3) * 0.5 * pixelH) - #include "ids.inc" -class RscText; -class RscButton; -class RscListNBox; -class RscControlsGroup; - -class A3A_ArsenalLimitsDialog { +class A3A_ArsenalLimitsDialog : A3A_DefaultDialog { idd = A3A_IDD_ARSENALLIMITSDIALOG; movingenable = false; - onLoad = "['typeSelect'] spawn A3A_fnc_arsenalLimitsDialog"; + onLoad = "['init'] spawn A3A_GUI_fnc_arsenalLimitsDialog"; onUnload = "publicVariable 'A3A_arsenalLimits'"; - class ControlsBackground { - class blackAllBlack : RscText { - colorBackground[]={0.1,0.1,0.1,0.8}; - x = AL_CENTER_X - 80*AL_GRID_W; - y = safezoneY + 30*AL_GRID_H; - w = 160*AL_GRID_W; - h = safezoneH - 60*AL_GRID_H; - }; - class TitleBar: RscText { - colorBackground[]={0.7,0.3,0,1}; - style = ST_CENTER; - sizeEx = 6*AL_GRID_H; + class Controls { + class TitlebarText : A3A_TitlebarText { + idc = -1; text = $STR_antistasi_arsenal_limits_dialog_title; - font = "TahomaB"; - x = AL_CENTER_X - 80*AL_GRID_W; - y = safezoneY + 20*AL_GRID_H; - w = 160*AL_GRID_W; - h = 10*AL_GRID_H; + x = DIALOG_X; + y = DIALOG_Y - 5*GRID_H; + w = DIALOG_W * GRID_W; + h = 5*GRID_H; }; - }; - class Controls { - class ArrowLeft: RscButton { - idc = A3A_IDC_ARSLIMARROWMINUS; - text = "-"; - colorBackground[]={0,0,0,0.8}; - onButtonClick = "['listButton', [-1]] call A3A_fnc_arsenalLimitsDialog"; - fade = 1; - enable = 0; - w = 6*AL_GRID_W; // x/y ignored - h = 6*AL_GRID_H; - sizeEx = 6*AL_GRID_H; - }; - class ArrowRight: ArrowLeft { - idc = A3A_IDC_ARSLIMARROWPLUS; - onButtonClick = "['listButton', [1]] call A3A_fnc_arsenalLimitsDialog"; - text="+"; - }; - class MainListBox : RscListNBox { + class MainListBox : A3A_ControlsGroup { idc = A3A_IDC_ARSLIMLISTBOX; - colorBackground[]={0,0,0.5,0.8}; // completely ignored? - colorSelectBackground[]={0.7,0.3,0,0.5}; - colorSelectBackground2[]={0.7,0.3,0,0.5}; - colorPictureSelected[]={1,1,1,1}; - colorSelect[]={1,1,1,1}; - colorSelect2[]={1,1,1,1}; - colorPictureRightSelected[]={1,1,1,1}; - columns[]={0.05, 0.67, 0.80}; - idcLeft = A3A_IDC_ARSLIMARROWMINUS; - idcRIght = A3A_IDC_ARSLIMARROWPLUS; - drawSideArrows=1; - disableOverflow=1; - x = AL_CENTER_X - 60*AL_GRID_W; - y = safezoneY + 36*AL_GRID_H; - w = 130*AL_GRID_W; - h = safezoneH - 80*AL_GRID_H; - sizeEx = 5*AL_GRID_H; + x = DIALOG_X + 42*GRID_W; + y = DIALOG_Y + 6*GRID_H; + w = 102*GRID_W; + h = 88*GRID_H; }; - class HeaderCurrent : RscText { + class HeaderCurrent : A3A_TextRight { idc = -1; - colorBackground[]={0,0,0,0}; - colorText[]={1,1,1,0.8}; - x = AL_CENTER_X - 60*AL_GRID_W + 85*AL_GRID_W; - y = safezoneY + 30*AL_GRID_H; - w = 50*AL_GRID_W; - h = 6*AL_GRID_H; - sizeEx = 5*AL_GRID_H; + x = DIALOG_X + 95*GRID_W; + y = DIALOG_Y + 2*GRID_H; + w = 10*GRID_W; + h = 4*GRID_H; text = $STR_antistasi_arsenal_limits_dialog_current; }; class HeaderLimit : HeaderCurrent { - x = AL_CENTER_X - 60*AL_GRID_W + 104*AL_GRID_W; + x = DIALOG_X + 115*GRID_W; text = $STR_antistasi_arsenal_limits_dialog_limit; }; - class CloseButton : RscButton { + class ResetButton : A3A_Button { + idc = A3A_IDC_ARSLIMRESETBUTTON; + x = DIALOG_X + 14*GRID_W; + y = DIALOG_Y + 78*GRID_H; + text = $STR_antistasi_arsenal_limits_dialog_reset; + tooltip = $STR_antistasi_arsenal_limits_dialog_reset_tooltip; + onButtonClick = "['resetButton'] call A3A_GUI_fnc_ArsenalLimitsDialog"; + }; + + class CloseButton : A3A_Button { idc = A3A_IDC_ARSLIMCLOSEBUTTON; - colorBackground[]={0.7,0.3,0,1}; - colorFocused[]={0.7,0.3,0,1}; - colorText[]={1,1,1,1}; - font = "PuristaBold"; - style = ST_CENTER; - sizeEx = 6*AL_GRID_H; - x = AL_CENTER_X - 80*AL_GRID_W; - y = safezoneY + safezoneH - 38*AL_GRID_H; - w = 40*AL_GRID_W; - h = 8*AL_GRID_H; + x = DIALOG_X + 14*GRID_W; + y = DIALOG_Y + 88*GRID_H; text = $STR_antistasi_arsenal_limits_dialog_close; onButtonClick = "closeDialog 0"; }; + + +/* class StepButton : CloseButton { idc = A3A_IDC_ARSLIMSTEPBUTTON; x = AL_CENTER_X - 20*AL_GRID_W; text = ""; // stringtable combination doesn't work so prep in onLoad instead - onButtonClick = "['stepButton'] call A3A_fnc_arsenalLimitsDialog"; - onLoad = "['stepButton'] spawn A3A_fnc_arsenalLimitsDialog"; + onButtonClick = "['stepButton'] call A3A_GUI_fnc_arsenalLimitsDialog"; + onLoad = "['stepButton'] spawn A3A_GUI_fnc_arsenalLimitsDialog"; }; - class ResetButton : CloseButton { - idc = A3A_IDC_ARSLIMRESETBUTTON; - x = AL_CENTER_X + 40*AL_GRID_W; - text = $STR_antistasi_arsenal_limits_dialog_reset; - onButtonClick = "['resetButton'] call A3A_fnc_arsenalLimitsDialog"; - }; - - class TypeSelection : RscControlsGroup { +*/ + class TypeSelection : A3A_ControlsGroup { idc = A3A_IDC_ARSLIMTYPESELECT; - x = AL_CENTER_X - 76*AL_GRID_W; - y = safezoneY + 34*AL_GRID_H; - w = 10*AL_GRID_W; - h = safezoneH - 80*AL_GRID_H; + x = DIALOG_X + 14*GRID_W; + y = DIALOG_Y + 6*GRID_H; + w = 16*GRID_W; + h = 68*GRID_H; class controls { - class buttonPrimaryWeapon : RscButton { + class buttonPrimaryWeapon : A3A_Button { style = ST_PICTURE + ST_KEEP_ASPECT_RATIO; idc = A3A_IDC_ARSLIMTYPESBASE + 0; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\PrimaryWeapon_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_PrimaryWeapon"; - onButtonClick = "['typeSelect', [ctrlIDC (_this#0)]] call A3A_fnc_arsenalLimitsDialog"; - colorBackground[]={0,0,0,0.5}; + onLoad = "(_this # 0) ctrlEnable false"; // disable until init is complete + onButtonClick = "['typeSelect', [ctrlIDC (_this#0)]] call A3A_GUI_fnc_arsenalLimitsDialog"; colorDisabled[] = {0,0,0,1}; colorBackgroundDisabled[] = {1,1,1,1}; x = 0; y = 0; - w = 8*AL_GRID_W; - h = 8*AL_GRID_H; + w = 6*GRID_W; + h = 6*GRID_H; }; class buttonHandgun : buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 2; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Handgun_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_Handgun"; - y = 8*AL_GRID_H; + y = 6*GRID_H; }; class buttonSecondaryWeapon : buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 1; tooltip="$STR_A3_RscDisplayArsenal_tab_SecondaryWeapon"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\SecondaryWeapon_ca.paa"; - y = 16*AL_GRID_H; + y = 12*GRID_H; }; class buttonHeadgear : buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 6; tooltip="$STR_A3_RscDisplayArsenal_tab_Headgear"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Headgear_ca.paa"; - y = 24*AL_GRID_H; + y = 18*GRID_H; }; class buttonUniform : buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 3; tooltip="$STR_A3_RscDisplayArsenal_tab_Uniform"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Uniform_ca.paa"; - y = 32*AL_GRID_H; + y = 24*GRID_H; }; class buttonVest: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 4; tooltip="$STR_A3_RscDisplayArsenal_tab_Vest"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Vest_ca.paa"; - y = 40*AL_GRID_H; + y = 30*GRID_H; }; class buttonBackpack: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 5; tooltip="$STR_A3_RscDisplayArsenal_tab_Backpack"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Backpack_ca.paa"; - y = 48*AL_GRID_H; + y = 36*GRID_H; }; class buttonNVG: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 8; tooltip="$STR_A3_RscDisplayArsenal_tab_NVGs"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\NVGs_ca.paa"; - y = 56*AL_GRID_H; + y = 42*GRID_H; }; class buttonBinoculars: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 9; tooltip="$STR_A3_RscDisplayArsenal_tab_Binoculars"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Binoculars_ca.paa"; - y = 64*AL_GRID_H; + y = 48*GRID_H; }; class buttonGPS: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 11; tooltip="$STR_A3_RscDisplayArsenal_tab_GPS"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\GPS_ca.paa"; - y = 72*AL_GRID_H; + y = 54*GRID_H; }; class buttonRadio: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 12; tooltip="$STR_A3_RscDisplayArsenal_tab_Radio"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\Radio_ca.paa"; - y = 80*AL_GRID_H; + y = 60*GRID_H; }; class buttonOptic: buttonPrimaryWeapon { idc = A3A_IDC_ARSLIMTYPESBASE + 18; tooltip="$STR_A3_RscDisplayArsenal_tab_ItemOptic"; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemOptic_ca.paa"; - y = 92*AL_GRID_H; + x = 10*GRID_W; + y = 0*GRID_H; }; - class buttonItemAcc: buttonPrimaryWeapon { + class buttonItemAcc: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 19; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemAcc_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_ItemAcc"; - y = 100*AL_GRID_H; + y = 6*GRID_H; }; - class buttonMuzzle: buttonPrimaryWeapon { + class buttonMuzzle: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 20; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemMuzzle_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_ItemMuzzle"; - y = 108*AL_GRID_H; + y = 12*GRID_H; }; - class buttonBipod: buttonPrimaryWeapon { + class buttonBipod: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 25; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemBipod_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_ItemBipod"; - y = 116*AL_GRID_H; + y = 18*GRID_H; }; - class buttonMag: buttonPrimaryWeapon { + class buttonMag: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 26; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\CargoMagAll_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_CargoMagAll"; - y = 128*AL_GRID_H; + y = 28*GRID_H; }; - class buttonThrow: buttonPrimaryWeapon { + class buttonThrow: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 22; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\CargoThrow_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_CargoThrow"; - y = 136*AL_GRID_H; + y = 34*GRID_H; }; - class buttonPut: buttonPrimaryWeapon { + class buttonPut: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 23; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\CargoPut_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_CargoPut"; - y = 144*AL_GRID_H; + y = 40*GRID_H; }; - class buttonMisc: buttonPrimaryWeapon { + class buttonMisc: buttonOptic { idc = A3A_IDC_ARSLIMTYPESBASE + 24; text="\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\CargoMisc_ca.paa"; tooltip="$STR_A3_RscDisplayArsenal_tab_CargoMisc"; - y = 152*AL_GRID_H; + y = 46*GRID_H; }; }; }; diff --git a/A3A/addons/gui/dialogues/buyVehicleDialog.hpp b/A3A/addons/gui/dialogues/buyVehicleDialog.hpp index abe008a551..2e1487ccd8 100644 --- a/A3A/addons/gui/dialogues/buyVehicleDialog.hpp +++ b/A3A/addons/gui/dialogues/buyVehicleDialog.hpp @@ -1,7 +1,7 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog { - idd = A3A_IDD_BUYVEHICLEDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_buyVehicleDialog"; + idd = A3A_IDD_BUYVEHICLEDIALOG; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_buyVehicleDialog"; class Controls { @@ -29,7 +29,7 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_vehicle_tab_civ; - onButtonClick = "[""switchTab"", [""civilian""]] call A3A_fnc_buyVehicleDialog"; + onButtonClick = "[""switchTab"", [""civilian""]] call A3A_GUI_fnc_buyVehicleDialog"; x = 0; y = 0; w = 30 * GRID_W; @@ -40,7 +40,7 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_vehicle_tab_reb; - onButtonClick = "[""switchTab"", [""rebel""]] call A3A_fnc_buyVehicleDialog"; + onButtonClick = "[""switchTab"", [""rebel""]] call A3A_GUI_fnc_buyVehicleDialog"; x = 30 * GRID_W; y = 0; w = 30 * GRID_W; @@ -51,7 +51,7 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_vehicle_tab_static; - onButtonClick = "[""switchTab"", [""static""]] call A3A_fnc_buyVehicleDialog"; + onButtonClick = "[""switchTab"", [""static""]] call A3A_GUI_fnc_buyVehicleDialog"; x = 60 * GRID_W; y = 0; w = 30 * GRID_W; @@ -62,7 +62,7 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_vehicle_tab_other; - onButtonClick = "[""switchTab"", [""other""]] call A3A_fnc_buyVehicleDialog"; + onButtonClick = "[""switchTab"", [""other""]] call A3A_GUI_fnc_buyVehicleDialog"; x = 90 * GRID_W; y = 0; w = 30 * GRID_W; @@ -179,4 +179,4 @@ class A3A_BuyVehicleDialog : A3A_TabbedDialog zoomDuration = 0.001; }; }; -}; \ No newline at end of file +}; diff --git a/A3A/addons/gui/dialogues/controls.hpp b/A3A/addons/gui/dialogues/controls.hpp index fcc11db881..596fa8cb5d 100644 --- a/A3A/addons/gui/dialogues/controls.hpp +++ b/A3A/addons/gui/dialogues/controls.hpp @@ -57,6 +57,11 @@ class A3A_Text : A3A_CtrlDefault colorBackground[] = A3A_COLOR_TRANSPARENT; }; +class A3A_TextRight : A3A_Text +{ + style = ST_RIGHT; +}; + class A3A_TextMulti: A3A_Text { style = ST_LEFT + ST_MULTI + ST_NO_RECT; diff --git a/A3A/addons/gui/dialogues/defines.hpp b/A3A/addons/gui/dialogues/defines.hpp index f56d5c296e..5f8b4c6d88 100644 --- a/A3A/addons/gui/dialogues/defines.hpp +++ b/A3A/addons/gui/dialogues/defines.hpp @@ -138,6 +138,7 @@ Maintainer: DoomMetal #define CENTER_Y(n) ((getResolution select 3) * 0.5 * pixelH) - (0.5 * (PX_H(n))) // Text sizes +#define GUI_TEXT_SIZE_TINY (GRID_H * 2.75) // Don't know where this fits #define GUI_TEXT_SIZE_SMALL (GRID_H * 3.2) // Fits inside 3*GRID_H #define GUI_TEXT_SIZE_MEDIUM (GRID_H * 4.2) // Fits inside 4*GRID_H #define GUI_TEXT_SIZE_LARGE (GRID_H * 5) // Fits inside 6*GRID_H diff --git a/A3A/addons/gui/dialogues/hqDialog.hpp b/A3A/addons/gui/dialogues/hqDialog.hpp index 33719d69e2..fd1c8674d0 100644 --- a/A3A/addons/gui/dialogues/hqDialog.hpp +++ b/A3A/addons/gui/dialogues/hqDialog.hpp @@ -1,7 +1,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idd = A3A_IDD_HQDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_hqDialog"; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_hqDialog"; class Controls { @@ -39,7 +39,7 @@ class A3A_HqDialog : A3A_DefaultDialog idc = -1; text = $STR_antistasi_dialogs_hq_garrisons_button; sizeEx = GUI_TEXT_SIZE_LARGE; - onButtonClick = "[""switchTab"",[""garrison""]] call A3A_fnc_hqDialog"; + onButtonClick = "[""switchTab"",[""garrison""]] call A3A_GUI_fnc_hqDialog"; x = 20 * GRID_W; y = 11 * GRID_H; w = 36 * GRID_W; @@ -61,7 +61,7 @@ class A3A_HqDialog : A3A_DefaultDialog idc = -1; text = $STR_antistasi_dialogs_hq_minefields_button; sizeEx = GUI_TEXT_SIZE_LARGE; - onButtonClick = "[""switchTab"",[""minefields""]] call A3A_fnc_hqDialog"; + onButtonClick = "[""switchTab"",[""minefields""]] call A3A_GUI_fnc_hqDialog"; x = 20 * GRID_W; y = 32 * GRID_H; w = 36 * GRID_W; @@ -536,7 +536,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_hq_train_button; - onButtonClick = "[] call A3A_fnc_FIAskillAdd; [""updateMainTab""] call A3A_fnc_hqDialog"; // TODO UI-update: Update tooltip with price + onButtonClick = "[] call A3A_fnc_FIAskillAdd; [""updateMainTab""] call A3A_GUI_fnc_hqDialog"; // TODO UI-update: Update tooltip with price x = 60 * GRID_W; y = 7 * GRID_H; w = 22 * GRID_W; @@ -580,7 +580,7 @@ class A3A_HqDialog : A3A_DefaultDialog y = 24 * GRID_H; w = 39 * GRID_W; h = 4 * GRID_H; - onSliderPosChanged = "[""factionMoneySliderChanged""] spawn A3A_fnc_hqDialog"; + onSliderPosChanged = "[""factionMoneySliderChanged""] spawn A3A_GUI_fnc_hqDialog"; }; class FactionMoneyEditBox : A3A_Edit @@ -592,14 +592,14 @@ class A3A_HqDialog : A3A_DefaultDialog y = 24 * GRID_H; w = 16 * GRID_W; h = 4 * GRID_H; - onChar = "[""factionMoneyEditBoxChanged""] spawn A3A_fnc_hqDialog"; + onChar = "[""factionMoneyEditBoxChanged""] spawn A3A_GUI_fnc_hqDialog"; }; class FactionMoneyButton : A3A_Button { idc = A3A_IDC_FACTIONMONEYBUTTON; text = $STR_antistasi_dialogs_hq_take_money_button; - onButtonClick = "[""factionMoneyButtonClicked""] call A3A_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging + onButtonClick = "[""factionMoneyButtonClicked""] call A3A_GUI_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging x = 60 * GRID_W; y = 19 * GRID_H; w = 22 * GRID_W; @@ -650,14 +650,14 @@ class A3A_HqDialog : A3A_DefaultDialog y = 21 * GRID_H; w = 39 * GRID_W; h = 4 * GRID_H; - onSliderPosChanged = "[""restSliderChanged""] spawn A3A_fnc_hqDialog"; + onSliderPosChanged = "[""restSliderChanged""] spawn A3A_GUI_fnc_hqDialog"; }; class RestButton : A3A_Button { idc = -1; text = $STR_antistasi_dialogs_hq_rest_button; - onButtonClick = "[""skipTime""] spawn A3A_fnc_hqDialog;"; + onButtonClick = "[""skipTime""] spawn A3A_GUI_fnc_hqDialog;"; x = 41 * GRID_W; // 108 y = 20 * GRID_H; w = 16 * GRID_W; @@ -698,7 +698,7 @@ class A3A_HqDialog : A3A_DefaultDialog class GarrisonMap : A3A_MapControl { idc = A3A_IDC_GARRISONMAP; - onMouseButtonClick = "[""garrisonMapClicked"", [[_this select 2, _this select 3]]] call A3A_fnc_hqDialog"; + onMouseButtonClick = "[""garrisonMapClicked"", [[_this select 2, _this select 3]]] call A3A_GUI_fnc_hqDialog"; x = CENTER_X(DIALOG_W) + 68 * GRID_W; y = CENTER_Y(DIALOG_H) + 8 * GRID_H; w = 84 * GRID_W; @@ -799,7 +799,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_RIFLEMANSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""rifleman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""rifleman""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 0 * GRID_H; w = 4 * GRID_W; @@ -818,7 +818,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_RIFLEMANADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""rifleman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""rifleman""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 0 * GRID_H; w = 4 * GRID_W; @@ -869,7 +869,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_SQUADLEADERSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""squadleader""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""squadleader""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 5 * GRID_H; w = 4 * GRID_W; @@ -888,7 +888,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_SQUADLEADERADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""squadleader""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""squadleader""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 5 * GRID_H; w = 4 * GRID_W; @@ -939,7 +939,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_AUTORIFLEMANSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""autorifleman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""autorifleman""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 10 * GRID_H; w = 4 * GRID_W; @@ -958,7 +958,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_AUTORIFLEMANADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""autorifleman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""autorifleman""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 10 * GRID_H; w = 4 * GRID_W; @@ -1009,7 +1009,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_GRENADIERSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""grenadier""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""grenadier""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 15 * GRID_H; w = 4 * GRID_W; @@ -1028,7 +1028,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_GRENADIERADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""grenadier""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""grenadier""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 15 * GRID_H; w = 4 * GRID_W; @@ -1079,7 +1079,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MEDICSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""medic""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""medic""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 20 * GRID_H; w = 4 * GRID_W; @@ -1098,7 +1098,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MEDICADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""medic""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""medic""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 20 * GRID_H; w = 4 * GRID_W; @@ -1149,7 +1149,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MORTARSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""mortar""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""mortar""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 25 * GRID_H; w = 4 * GRID_W; @@ -1168,7 +1168,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MORTARADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""mortar""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""mortar""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 25 * GRID_H; w = 4 * GRID_W; @@ -1219,7 +1219,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MARKSMANSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""marksman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""marksman""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 30 * GRID_H; w = 4 * GRID_W; @@ -1238,7 +1238,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_MARKSMANADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""marksman""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""marksman""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 30 * GRID_H; w = 4 * GRID_W; @@ -1289,7 +1289,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_ATSUBBUTTON; text = "-"; - onButtonClick = "[""garrisonRemove"",[""at""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonRemove"",[""at""]] spawn A3A_GUI_fnc_hqDialog"; x = 41 * GRID_W; y = 35 * GRID_H; w = 4 * GRID_W; @@ -1308,7 +1308,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_ATADDBUTTON; text = "+"; - onButtonClick = "[""garrisonAdd"",[""at""]] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""garrisonAdd"",[""at""]] spawn A3A_GUI_fnc_hqDialog"; x = 46 * GRID_W; y = 35 * GRID_H; w = 4 * GRID_W; @@ -1340,7 +1340,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = A3A_IDC_DISMISSGARRISONBUTTON; text = $STR_antistasi_dialogs_hq_garrisons_dismiss_garrison_button; - onButtonClick = "[""dismissGarrison""] spawn A3A_fnc_hqDialog"; + onButtonClick = "[""dismissGarrison""] spawn A3A_GUI_fnc_hqDialog"; x = 38 * GRID_W; y = 60 * GRID_H; w = 22 * GRID_W; @@ -1353,7 +1353,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_hq_garrisons_build_watchpost_button; - onButtonClick = "[""buildWatchpost""] spawn A3A_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging + onButtonClick = "[""buildWatchpost""] spawn A3A_GUI_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging x = 10 * GRID_W; y = 80 * GRID_H; w = 22 * GRID_W; @@ -1364,7 +1364,7 @@ class A3A_HqDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_hq_garrisons_remove_watchpost_button; - onButtonClick = "[""removeWatchpost""] spawn A3A_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging + onButtonClick = "[""removeWatchpost""] spawn A3A_GUI_fnc_hqDialog"; // TODO UI-update: Replace placeholder when merging x = 38 * GRID_W; y = 80 * GRID_H; w = 22 * GRID_W; diff --git a/A3A/addons/gui/dialogues/ids.inc b/A3A/addons/gui/dialogues/ids.inc index dd563e68f7..8928674707 100644 --- a/A3A/addons/gui/dialogues/ids.inc +++ b/A3A/addons/gui/dialogues/ids.inc @@ -322,6 +322,7 @@ Maintainer: DoomMetal #define A3A_IDC_ARSLIMTYPESELECT 9504 #define A3A_IDC_ARSLIMSTEPBUTTON 9505 #define A3A_IDC_ARSLIMCLOSEBUTTON 9506 +#define A3A_IDC_ARSLIMRESETBUTTON 9507 #define A3A_IDC_ARSLIMTYPESBASE 9550 // Setup interface @@ -355,11 +356,14 @@ Maintainer: DoomMetal #define A3A_IDC_SETUP_CIVILIANSLISTBOX 6205 #define A3A_IDC_SETUP_ADDONVICSBOX 6206 #define A3A_IDC_SETUP_DLCBOX 6207 +#define A3A_IDC_SETUP_DLCTOGGLE 6208 #define A3A_IDC_SETUP_SWITCHENEMYCHECK 6210 #define A3A_IDC_SETUP_ANYENEMYCHECK 6211 #define A3A_IDC_SETUP_IGNOREMAPCHECK 6212 #define A3A_IDC_SETUP_IGNORECAMOCHECK 6213 #define A3A_IDC_SETUP_SHOWMISSINGCHECK 6214 +#define A3A_IDC_SETUP_INFOLABEL 6620 +#define A3A_IDC_SETUP_INFOBOX 6621 #define A3A_IDC_SETUP_PARAMSTAB 6300 #define A3A_IDC_SETUP_PARAMSTABLE 6301 diff --git a/A3A/addons/gui/dialogues/mainDialog.hpp b/A3A/addons/gui/dialogues/mainDialog.hpp index deef8f6cbd..4c6f2f66fd 100644 --- a/A3A/addons/gui/dialogues/mainDialog.hpp +++ b/A3A/addons/gui/dialogues/mainDialog.hpp @@ -7,8 +7,8 @@ class A3A_MainDialog : A3A_TabbedDialog { idd = A3A_IDD_MAINDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_mainDialog"; - onUnload = "[""onUnload""] call A3A_fnc_mainDialog"; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_mainDialog"; + onUnload = "[""onUnload""] call A3A_GUI_fnc_mainDialog"; class Controls { @@ -36,7 +36,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_PLAYERTABBUTTON; text = $STR_antistasi_dialogs_main_player_tab_button; - onButtonClick = "[""switchTab"", [""player""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""player""]] call A3A_GUI_fnc_mainDialog;"; x = 0; y = 0; w = 30 * GRID_W; @@ -47,7 +47,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_COMMANDERTABBUTTON; text = $STR_antistasi_dialogs_main_commander_tab_button; - onButtonClick = "[""switchTab"", [""commander""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""commander""]] call A3A_GUI_fnc_mainDialog;"; x = 30 * GRID_W; y = 0; w = 30 * GRID_W; @@ -58,7 +58,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_ADMINTABBUTTON; text = $STR_antistasi_dialogs_main_admin_tab_button; - onButtonClick = "[""switchTab"", [""admin""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""admin""]] call A3A_GUI_fnc_mainDialog;"; x = 60 * GRID_W; y = 0; w = 30 * GRID_W; @@ -120,7 +120,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_FASTTRAVELBUTTON; text = $STR_antistasi_dialogs_main_fast_travel; tooltip = $STR_antistasi_dialogs_main_fast_travel_tooltip; - onButtonClick = "[""setHcMode"", [false]] call A3A_fnc_fastTravelTab; [""switchTab"", [""fasttravel""]] call A3A_fnc_mainDialog"; + onButtonClick = "[""setHcMode"", [false]] call A3A_GUI_fnc_fastTravelTab; [""switchTab"", [""fasttravel""]] call A3A_GUI_fnc_mainDialog"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 20 * GRID_W; y = 32 * GRID_H; @@ -143,7 +143,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_CONSTRUCTBUTTON; text = $STR_antistasi_dialogs_main_construct; - onButtonClick = "[""switchTab"", [""construct""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""construct""]] call A3A_GUI_fnc_mainDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 20 * GRID_W; y = 53 * GRID_H; @@ -166,7 +166,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AIMANAGEMENTBUTTON; text = $STR_antistasi_dialogs_main_ai_management; - onButtonClick = "[""switchTab"", [""aimanagement""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""aimanagement""]] call A3A_GUI_fnc_mainDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 20 * GRID_W; y = 74 * GRID_H; @@ -312,7 +312,7 @@ class A3A_MainDialog : A3A_TabbedDialog class CommanderButton : A3A_Button { idc = A3A_IDC_COMMANDERBUTTON; - onButtonClick = "[player, cursorTarget] call A3A_fnc_theBossToggleEligibility; [""update""] call A3A_fnc_playerTab;"; + onButtonClick = "[player, cursorTarget] call A3A_fnc_theBossToggleEligibility; [""update""] call A3A_GUI_fnc_playerTab;"; x = 74 * GRID_W; y = 34 * GRID_H; w = 22 * GRID_W; @@ -334,7 +334,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_DONATEBUTTON; text = $STR_antistasi_dialogs_main_donate; - onButtonClick = "[""switchTab"", [""donate""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""donate""]] call A3A_GUI_fnc_mainDialog;"; x = 130 * GRID_W; y = 34 * GRID_H; w = 22 * GRID_W; @@ -355,6 +355,7 @@ class A3A_MainDialog : A3A_TabbedDialog class HideTopBarCheckBox :A3A_CheckBox { idc = A3A_IDC_HIDETOPBARCHECKBOX; + onCheckedChanged = "params [""_control"", ""_checked""]; [""uiEvent_hideTopBarCheckBox_checked"", [_checked]] call A3A_GUI_fnc_mainDialog;"; x = 124 * GRID_W; y = 47 * GRID_H; w = 4 * GRID_W; @@ -492,7 +493,7 @@ class A3A_MainDialog : A3A_TabbedDialog class CommanderMap : A3A_MapControl { idc = A3A_IDC_COMMANDERMAP; - onMouseButtonClick = "[""commanderMapClicked"", [[_this select 2, _this select 3]]] call A3A_fnc_commanderTab"; + onMouseButtonClick = "[""commanderMapClicked"", [[_this select 2, _this select 3]]] call A3A_GUI_fnc_commanderTab"; x = CENTER_X(DIALOG_W) + 68 * GRID_W; y = CENTER_Y(DIALOG_H) + 8 * GRID_H; w = 84 * GRID_W; @@ -569,7 +570,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_HCGROUPNAME; text = ""; - onButtonClick = "[""groupNameLabelClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""groupNameLabelClicked""] call A3A_GUI_fnc_commanderTab"; x = 0; y = 0; w = 42 * GRID_W; @@ -581,7 +582,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_HCFASTTRAVELBUTTON; textureNoShortcut = A3A_Icon_FastTravel; tooltip = $STR_antistasi_dialogs_main_fast_travel; - onButtonClick = "[""groupFastTravelButtonClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""groupFastTravelButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 42 * GRID_W; y = 0 * GRID_H; w = 6 * GRID_W; @@ -601,7 +602,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = -1; textureNoShortcut = A3A_Icon_Remotecontrol; tooltip = $STR_antistasi_dialogs_main_remote_control_tooltip; - onButtonClick = "[""groupRemoteControlButtonClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""groupRemoteControlButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 48 * GRID_W; y = 0 * GRID_H; w = 6 * GRID_W; @@ -704,7 +705,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_HCFIREMISSIONBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_button; - onButtonClick = "[""updateFireMissionView""] call A3A_fnc_commanderTab;"; + onButtonClick = "[""updateFireMissionView""] call A3A_GUI_fnc_commanderTab;"; x = 28 * GRID_W; y = 30 * GRID_H; w = 24 * GRID_W; @@ -745,7 +746,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_hc_dismiss; - onButtonClick = "[""groupDismissButtonClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""groupDismissButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 28 * GRID_W; y = 54 * GRID_H; w = 24 * GRID_W; @@ -771,7 +772,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_hc_fire_mission_label; - onButtonClick = "[""update""] call A3A_fnc_commanderTab;"; + onButtonClick = "[""update""] call A3A_GUI_fnc_commanderTab;"; x = 0; y = 0; w = 54 * GRID_W; @@ -869,7 +870,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_HEBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_shell_type_he; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""he""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""he""]] call A3A_GUI_fnc_commanderTab;"; x = 20 * GRID_W; y = 0 * GRID_H; w = 15 * GRID_W; @@ -886,7 +887,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_SMOKEBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_shell_type_smoke; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""smoke""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""smoke""]] call A3A_GUI_fnc_commanderTab;"; x = 35 * GRID_W; y = 0 * GRID_H; w = 15 * GRID_W; @@ -925,7 +926,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_POINTSTRIKEBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_type_point; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""point""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""point""]] call A3A_GUI_fnc_commanderTab;"; x = 20 * GRID_W; y = 0 * GRID_H; w = 15 * GRID_W; @@ -941,7 +942,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_BARRAGEBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_type_barrage; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""barrage""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""barrage""]] call A3A_GUI_fnc_commanderTab;"; x = 35 * GRID_W; y = 0 * GRID_H; w = 15 * GRID_W; @@ -994,7 +995,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_ADDROUNDSBUTTON; text = "+"; - onButtonClick = "[""fireMissionSelectionChanged"",[""addround""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""addround""]] call A3A_GUI_fnc_commanderTab;"; x = 42 * GRID_W; y = 0 * GRID_H; w = 4 * GRID_W; @@ -1005,7 +1006,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_SUBROUNDSBUTTON; text = "-"; - onButtonClick = "[""fireMissionSelectionChanged"",[""subround""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""subround""]] call A3A_GUI_fnc_commanderTab;"; x = 46 * GRID_W; y = 0 * GRID_H; w = 4 * GRID_W; @@ -1055,7 +1056,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = -1; text = $STR_antistasi_dialogs_main_hc_fire_mission_set; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""setstart""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""setstart""]] call A3A_GUI_fnc_commanderTab;"; x = 42 * GRID_W; y = 0 * GRID_H; w = 8 * GRID_W; @@ -1105,7 +1106,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = -1; text = $STR_antistasi_dialogs_main_hc_fire_mission_set; sizeEx = GUI_TEXT_SIZE_SMALL; - onButtonClick = "[""fireMissionSelectionChanged"",[""setend""]] call A3A_fnc_commanderTab;"; + onButtonClick = "[""fireMissionSelectionChanged"",[""setend""]] call A3A_GUI_fnc_commanderTab;"; x = 42 * GRID_W; y = 0 * GRID_H; w = 8 * GRID_W; @@ -1118,7 +1119,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_FIREBUTTON; text = $STR_antistasi_dialogs_main_hc_fire_mission_fire_button; - onbuttonClick = "[""fireMissionButtonClicked""] call A3A_fnc_commanderTab"; + onbuttonClick = "[""fireMissionButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 17 * GRID_W; y = 56 * GRID_H; w = 20 * GRID_W; @@ -1181,7 +1182,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AIRSUPPORTBUTTON; text = $STR_antistasi_dialogs_main_air_support_button; - onButtonClick = "[""switchTab"", [""airsupport""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""airsupport""]] call A3A_GUI_fnc_mainDialog;"; x = 10 * GRID_W; y = 80 * GRID_H; w = 24 * GRID_W; @@ -1192,7 +1193,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_GARBAGECLEANBUTTON; text = $STR_antistasi_dialogs_main_garbage_clean_button; - onButtonclick = "[""showGarbageCleanOptions""] call A3A_fnc_commanderTab"; + onButtonclick = "[""showGarbageCleanOptions""] call A3A_GUI_fnc_commanderTab"; x = 36 * GRID_W; y = 80 * GRID_H; w = 24 * GRID_W; @@ -1213,7 +1214,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_garbage_clean_all; - onButtonClick = "[""garbageCleanMapButtonClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""garbageCleanMapButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 0 * GRID_W; y = 0 * GRID_H; w = 24 * GRID_W; @@ -1224,7 +1225,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_garbage_clean_hq; - onButtonClick = "[""garbageCleanHqButtonClicked""] call A3A_fnc_commanderTab"; + onButtonClick = "[""garbageCleanHqButtonClicked""] call A3A_GUI_fnc_commanderTab"; x = 26 * GRID_W; y = 0 * GRID_H; w = 24 * GRID_W; @@ -1268,7 +1269,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_PLAYERMANAGEMENTBUTTON; text = $STR_antistasi_dialogs_main_admin_player_management_button; - onButtonClick = "[""switchTab"", [""playermanagement""]] call A3A_fnc_mainDialog;"; + onButtonClick = "[""switchTab"", [""playermanagement""]] call A3A_GUI_fnc_mainDialog;"; x = 8 * GRID_W; y = 64 * GRID_H; w = 48 * GRID_W; @@ -1331,7 +1332,7 @@ class A3A_MainDialog : A3A_TabbedDialog y = 16 * GRID_H; w = 40 * GRID_W; h = 4 * GRID_H; - onSliderPosChanged = "[""civLimitSliderChanged""] spawn A3A_fnc_adminTab"; + onSliderPosChanged = "[""civLimitSliderChanged""] spawn A3A_GUI_fnc_adminTab"; }; class CivLimitEditBox : A3A_Edit @@ -1344,7 +1345,7 @@ class A3A_MainDialog : A3A_TabbedDialog y = 16 * GRID_H; w = 12 * GRID_W; h = 4 * GRID_H; - onChar = "[""civLimitEditBoxChanged""] spawn A3A_fnc_adminTab"; + onChar = "[""civLimitEditBoxChanged""] spawn A3A_GUI_fnc_adminTab"; }; class SpawnDistanceLabel : A3A_Text @@ -1365,7 +1366,7 @@ class A3A_MainDialog : A3A_TabbedDialog y = 22 * GRID_H; w = 40 * GRID_W; h = 4 * GRID_H; - onSliderPosChanged = "[""spawnDistanceSliderChanged""] spawn A3A_fnc_adminTab"; + onSliderPosChanged = "[""spawnDistanceSliderChanged""] spawn A3A_GUI_fnc_adminTab"; }; class SpawnDistanceEditBox : A3A_Edit @@ -1378,81 +1379,81 @@ class A3A_MainDialog : A3A_TabbedDialog y = 22 * GRID_H; w = 12 * GRID_W; h = 4 * GRID_H; - onChar = "[""spawnDistanceEditBoxChanged""] spawn A3A_fnc_adminTab"; - }; - - class AiLimiterLabel : A3A_Text - { - idc = -1; - text = $STR_antistasi_dialogs_main_admin_ai_limiter_label; - sizeEx = GUI_TEXT_SIZE_MEDIUM; - x = 74 * GRID_W; - y = 28 * GRID_H; - w = 24 * GRID_W; - h = 4 * GRID_H; - }; - - class AiLimiterSlider : A3A_Slider - { - idc = A3A_IDC_AILIMITERSLIDER; - x = 98 * GRID_W; - y = 28 * GRID_H; - w = 40 * GRID_W; - h = 4 * GRID_H; - onSliderPosChanged = "[""aiLimiterSliderChanged""] spawn A3A_fnc_adminTab"; - }; - - class AiLimiterEditBox : A3A_Edit - { - idc = A3A_IDC_AILIMITEREDITBOX; - style = ST_RIGHT; - text = "0"; - sizeEx = GUI_TEXT_SIZE_MEDIUM; - x = 140 * GRID_W; - y = 28 * GRID_H; - w = 12 * GRID_W; - h = 4 * GRID_H; - onChar = "[""aiLimiterEditBoxChanged""] spawn A3A_fnc_adminTab"; - }; - - class AiSectionWarningBackground : A3A_Background - { - idc = -1; - colorBackground[] = {0,0,0,0.6}; - x = 75 * GRID_W; - y = 37 * GRID_H; - w = 52 * GRID_W; - h = 10 * GRID_H; - }; - - class AiSectionWarningIcon : A3A_Picture - { - idc = -1; - text = A3A_Icon_Warning; - colorText[] = A3A_COLOR_ERROR; - x = 76 * GRID_W; - y = 38 * GRID_H; - w = 8 * GRID_W; - h = 8 * GRID_H; - }; - - class AiSectionWarning : A3A_TextMulti - { - idc = -1; - text = $STR_antistasi_dialogs_main_admin_ai_section_warning; - sizeEx = GUI_TEXT_SIZE_SMALL; - font = "PuristaLight"; - x = 85 * GRID_W; - y = 37 * GRID_H; - w = 42 * GRID_W; - h = 10 * GRID_H; - }; + onChar = "[""spawnDistanceEditBoxChanged""] spawn A3A_GUI_fnc_adminTab"; + }; + + // class AiLimiterLabel : A3A_Text + // { + // idc = -1; + // text = $STR_antistasi_dialogs_main_admin_ai_limiter_label; + // sizeEx = GUI_TEXT_SIZE_MEDIUM; + // x = 74 * GRID_W; + // y = 28 * GRID_H; + // w = 24 * GRID_W; + // h = 4 * GRID_H; + // }; + + // class AiLimiterSlider : A3A_Slider + // { + // idc = A3A_IDC_AILIMITERSLIDER; + // x = 98 * GRID_W; + // y = 28 * GRID_H; + // w = 40 * GRID_W; + // h = 4 * GRID_H; + // onSliderPosChanged = "[""aiLimiterSliderChanged""] spawn A3A_GUI_fnc_adminTab"; + // }; + + // class AiLimiterEditBox : A3A_Edit + // { + // idc = A3A_IDC_AILIMITEREDITBOX; + // style = ST_RIGHT; + // text = "0"; + // sizeEx = GUI_TEXT_SIZE_MEDIUM; + // x = 140 * GRID_W; + // y = 28 * GRID_H; + // w = 12 * GRID_W; + // h = 4 * GRID_H; + // onChar = "[""aiLimiterEditBoxChanged""] spawn A3A_GUI_fnc_adminTab"; + // }; + + // class AiSectionWarningBackground : A3A_Background + // { + // idc = -1; + // colorBackground[] = {0,0,0,0.6}; + // x = 75 * GRID_W; + // y = 37 * GRID_H; + // w = 52 * GRID_W; + // h = 10 * GRID_H; + // }; + + // class AiSectionWarningIcon : A3A_Picture + // { + // idc = -1; + // text = A3A_Icon_Warning; + // colorText[] = A3A_COLOR_ERROR; + // x = 76 * GRID_W; + // y = 38 * GRID_H; + // w = 8 * GRID_W; + // h = 8 * GRID_H; + // }; + + // class AiSectionWarning : A3A_TextMulti + // { + // idc = -1; + // text = $STR_antistasi_dialogs_main_admin_ai_section_warning; + // sizeEx = GUI_TEXT_SIZE_SMALL; + // font = "PuristaLight"; + // x = 85 * GRID_W; + // y = 37 * GRID_H; + // w = 42 * GRID_W; + // h = 10 * GRID_H; + // }; class CommitAiButton : A3A_Button { idc = A3A_IDC_COMMITAIBUTTON; text = $STR_antistasi_dialogs_main_admin_ai_commit_button; - onButtonClick = "[""confirmAILimit""] call A3A_fnc_adminTab;"; // TODO UI-update: Placeholder + onButtonClick = "[""confirmAILimit""] call A3A_GUI_fnc_adminTab;"; // TODO UI-update: Placeholder x = 132 * GRID_W; y = 36 * GRID_H; w = 20 * GRID_W; @@ -1481,7 +1482,8 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_petros_button; - onButtonClick = "petros setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpPetrosToAdmin""] call A3A_GUI_fnc_adminTab;"; + //tooltip = $STR_antistasi_dialogs_main_fast_travel_tooltip; x = 74 * GRID_W; y = 64 * GRID_H; w = 16 * GRID_H; @@ -1492,7 +1494,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_arsenal_box_button; - onButtonClick = "boxX setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpArsenalToAdmin""] call A3A_GUI_fnc_adminTab;"; x = 103 * GRID_W; y = 64 * GRID_H; w = 16 * GRID_H; @@ -1503,7 +1505,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_vehicle_box_button; - onButtonClick = "vehicleBox setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpVehicleToAdmin""] call A3A_GUI_fnc_adminTab;"; x = 132 * GRID_W; y = 64 * GRID_H; w = 16 * GRID_H; @@ -1514,7 +1516,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_flag_button; - onButtonClick = "flagX setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpFlagToAdmin""] call A3A_GUI_fnc_adminTab;"; x = 74 * GRID_W; y = 80 * GRID_H; w = 16 * GRID_H; @@ -1525,7 +1527,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_tent_button; - onButtonClick = "fireX setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpTentToAdmin""] call A3A_GUI_fnc_adminTab;"; x = 103 * GRID_W; y = 80 * GRID_H; w = 16 * GRID_H; @@ -1536,7 +1538,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; text = $STR_antistasi_dialogs_main_admin_tp_map_button; - onButtonClick = "mapX setPos (player modelToWorld [0,2,0]);"; + onButtonClick = "[""tpMapBoardToAdmin""] call A3A_GUI_fnc_adminTab;"; x = 132 * GRID_W; y = 80 * GRID_H; w = 16 * GRID_H; @@ -1553,7 +1555,7 @@ class A3A_MainDialog : A3A_TabbedDialog class FastTravelMap : A3A_MapControl { idc = A3A_IDC_FASTTRAVELMAP; - onMouseButtonClick = "[""mapClicked"", [[_this select 2, _this select 3]]] call A3A_fnc_fastTravelTab"; + onMouseButtonClick = "[""mapClicked"", [[_this select 2, _this select 3]]] call A3A_GUI_fnc_fastTravelTab"; x = CENTER_X(DIALOG_W) + 48 * GRID_W; y = CENTER_Y(DIALOG_H) + 8 * GRID_H; w = 104 * GRID_W; @@ -1627,7 +1629,7 @@ class A3A_MainDialog : A3A_TabbedDialog idc = A3A_IDC_FASTTRAVELCOMMITBUTTON; text = $STR_antistasi_dialogs_main_fast_travel; // tooltip = $STR_antistasi_dialogs_main_fast_travel_tooltip; - onButtonClick = "[""commitButtonClicked""] call A3A_fnc_fastTravelTab;"; + onButtonClick = "[""commitButtonClicked""] call A3A_GUI_fnc_fastTravelTab;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 8 * GRID_W; y = 80 * GRID_H; @@ -1679,7 +1681,7 @@ class A3A_MainDialog : A3A_TabbedDialog sizeEx = GUI_TEXT_SIZE_SMALL; text = $STR_antistasi_dialogs_main_ai_management_clear_button; tooltip = $STR_antistasi_dialogs_main_ai_management_clear_tooltip; - onButtonClick = "[""clearAIListboxSelection""] call A3A_fnc_aiManagementTab;"; + onButtonClick = "[""clearAIListboxSelection""] call A3A_GUI_fnc_aiManagementTab;"; x = 83 * GRID_W; y = 14 * GRID_H; w = 10 * GRID_W; @@ -1689,7 +1691,7 @@ class A3A_MainDialog : A3A_TabbedDialog class AIListBox : A3A_ListBoxMulti { idc = A3A_IDC_AILISTBOX; - onLBSelChanged = "[""aiListBoxSelectionChanged""] spawn A3A_fnc_aiManagementTab"; + onLBSelChanged = "[""aiListBoxSelectionChanged""] spawn A3A_GUI_fnc_aiManagementTab"; x = 15 * GRID_W; y = 18 * GRID_H; w = 78 * GRID_W; @@ -1710,7 +1712,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AICONTROLBUTTON; text = $STR_antistasi_dialogs_main_ai_management_temp_ai_control_button; - onButtonClick = "[""aiControlButtonClicked""] call A3A_fnc_aiManagementTab"; + onButtonClick = "[""aiControlButtonClicked""] call A3A_GUI_fnc_aiManagementTab"; x = 0 * GRID_W; y = 0 * GRID_H; w = 32 * GRID_W; @@ -1731,7 +1733,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AIDISMISSBUTTON; text = $STR_antistasi_dialogs_main_ai_management_dismiss_button; - onButtonClick = "[""dismissButtonClicked""] call A3A_fnc_aiManagementTab"; + onButtonClick = "[""dismissButtonClicked""] call A3A_GUI_fnc_aiManagementTab"; x = 0 * GRID_W; y = 20 * GRID_H; w = 32 * GRID_W; @@ -1752,7 +1754,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AIAUTOLOOTBUTTON; text = $STR_antistasi_dialogs_main_ai_management_auto_rearm_button; - onButtonClick = "[""autoLootButtonClicked""] call A3A_fnc_aiManagementTab"; + onButtonClick = "[""autoLootButtonClicked""] call A3A_GUI_fnc_aiManagementTab"; x = 0 * GRID_W; y = 40 * GRID_H; w = 32 * GRID_W; @@ -1773,7 +1775,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_AIAUTOHEALBUTTON; text = $STR_antistasi_dialogs_main_ai_management_auto_heal_button; - onButtonClick = "[""autoHealButtonClicked""] call A3A_fnc_aiManagementTab"; + onButtonClick = "[""autoHealButtonClicked""] call A3A_GUI_fnc_aiManagementTab"; x = 0 * GRID_W; y = 60 * GRID_H; w = 32 * GRID_W; @@ -1858,7 +1860,7 @@ class A3A_MainDialog : A3A_TabbedDialog y = 40 * GRID_H; w = 16 * GRID_W; h = 6 * GRID_H; - onChar = "[""moneyEditBoxChanged""] spawn A3A_fnc_donateTab"; + onChar = "[""moneyEditBoxChanged""] spawn A3A_GUI_fnc_donateTab"; }; class EuroLabel : A3A_Text @@ -1877,7 +1879,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; textureNoShortcut = A3A_ArrowEmpty_3L; - onButtonClick = "[""donationAdd"", [-1000]] spawn A3A_fnc_donateTab"; + onButtonClick = "[""donationAdd"", [-1000]] spawn A3A_GUI_fnc_donateTab"; x = 74 * GRID_W; y = 53 * GRID_H; w = 6 * GRID_W; @@ -1896,7 +1898,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; textureNoShortcut = A3A_ArrowEmpty_2L; - onButtonClick = "[""donationAdd"", [-100]] spawn A3A_fnc_donateTab"; + onButtonClick = "[""donationAdd"", [-100]] spawn A3A_GUI_fnc_donateTab"; x = 81 * GRID_W; y = 53 * GRID_H; w = 6 * GRID_W; @@ -1921,14 +1923,14 @@ class A3A_MainDialog : A3A_TabbedDialog y = 53 * GRID_H; w = 50 * GRID_W; h = 6 * GRID_H; - onSliderPosChanged = "[""moneySliderChanged""] spawn A3A_fnc_donateTab"; + onSliderPosChanged = "[""moneySliderChanged""] spawn A3A_GUI_fnc_donateTab"; }; class Add100Button : A3A_ShortcutButton { idc = -1; textureNoShortcut = A3A_ArrowEmpty_2R; - onButtonClick = "[""donationAdd"", [100]] spawn A3A_fnc_donateTab"; + onButtonClick = "[""donationAdd"", [100]] spawn A3A_GUI_fnc_donateTab"; x = 139 * GRID_W; y = 53 * GRID_H; w = 6 * GRID_W; @@ -1947,7 +1949,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = -1; textureNoShortcut = A3A_ArrowEmpty_3R; - onButtonClick = "[""donationAdd"", [1000]] spawn A3A_fnc_donateTab"; + onButtonClick = "[""donationAdd"", [1000]] spawn A3A_GUI_fnc_donateTab"; x = 146 * GRID_W; y = 53 * GRID_H; w = 6 * GRID_W; @@ -1966,7 +1968,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_DONATEPLAYERBUTTON; text = $STR_antistasi_dialogs_main_donate_player; - onButtonClick = "hint ""Placeholder\nWill use A3A_fnc_donateMoney when merged"""; // TODO UI-update: Replace placeholder when merging + onButtonClick = "[""donatePlayerConfirmed""] spawn A3A_GUI_fnc_donateTab"; x = 74 * GRID_W; y = 63 * GRID_H; w = 36 * GRID_W; @@ -1977,7 +1979,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_DONATEFACTIONBUTTON; text = $STR_antistasi_dialogs_main_donate_faction; - onButtonClick = "hint ""Placeholder\nWill use A3A_fnc_donateMoney when merged"""; // TODO UI-update: Replace placeholder when merging + onButtonClick = "[""donateFactionConfirmed""] spawn A3A_GUI_fnc_donateTab"; x = 116 * GRID_W; y = 63 * GRID_H; w = 36 * GRID_W; @@ -2178,7 +2180,7 @@ class A3A_MainDialog : A3A_TabbedDialog y = 12 * GRID_H; w = 106 * GRID_W; h = 82 * GRID_H; - onLBSelChanged = "[""playerLbSelectionChanged""] spawn A3A_fnc_playerManagementTab"; + onLBSelChanged = "[""playerLbSelectionChanged""] spawn A3A_GUI_fnc_playerManagementTab"; sizeEx = GUI_TEXT_SIZE_MEDIUM; rowHeight = 4 * GRID_H; @@ -2189,7 +2191,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_ADDMEMBERBUTTON; text = $STR_antistasi_dialogs_main_admin_add_member_button; - onButtonClick = "[""adminAddMember""] call A3A_fnc_playerManagementTab"; + onButtonClick = "[""adminAddMember""] call A3A_GUI_fnc_playerManagementTab"; show = false; x = 120 * GRID_W; y = 7 * GRID_H; @@ -2201,7 +2203,7 @@ class A3A_MainDialog : A3A_TabbedDialog { idc = A3A_IDC_REMOVEMEMBERBUTTON; text = $STR_antistasi_dialogs_main_admin_remove_member_button; - onButtonClick = "[""adminRemoveMember""] call A3A_fnc_playerManagementTab"; + onButtonClick = "[""adminRemoveMember""] call A3A_GUI_fnc_playerManagementTab"; show = false; x = 120 * GRID_W; y = 7 * GRID_H; diff --git a/A3A/addons/gui/dialogues/placerHintsRsc.hpp b/A3A/addons/gui/dialogues/placerHintsRsc.hpp index f9021442a9..707d3c30d0 100644 --- a/A3A/addons/gui/dialogues/placerHintsRsc.hpp +++ b/A3A/addons/gui/dialogues/placerHintsRsc.hpp @@ -10,7 +10,7 @@ class A3A_PlacerHints { fadeOut = 0; duration = 999999; enableSimulation = 1; - onLoad = "['onLoad', _this] spawn A3A_fnc_setUpPlacerHints"; + onLoad = "['onLoad', _this] spawn A3A_GUI_fnc_setUpPlacerHints"; class controls { class TestText: A3A_Text { idc = IDC_PLACERHINT_TEST_TEXT; diff --git a/A3A/addons/gui/dialogues/recruitDialog.hpp b/A3A/addons/gui/dialogues/recruitDialog.hpp index 9044a59f8a..5f0cffda92 100644 --- a/A3A/addons/gui/dialogues/recruitDialog.hpp +++ b/A3A/addons/gui/dialogues/recruitDialog.hpp @@ -1,7 +1,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idd = A3A_IDD_RECRUITDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_recruitDialog"; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_recruitDialog"; class Controls { @@ -49,7 +49,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITMILITIAMANBUTTON; text = $STR_antistasi_dialogs_recruit_units_militiaman; - onButtonClick = "[A3A_faction_reb get 'unitRifle'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitRifle'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 36 * GRID_W; y = 11 * GRID_H; w = 36 * GRID_W; @@ -83,7 +83,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITAUTORIFLEMANBUTTON; text = $STR_antistasi_dialogs_recruit_units_autorifleman; - onButtonClick = "[A3A_faction_reb get 'unitMG'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitMG'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 36 * GRID_W; y = 32 * GRID_H; w = 36 * GRID_W; @@ -117,7 +117,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITGRENADIERBUTTON; text = $STR_antistasi_dialogs_recruit_units_grenadier; - onButtonClick = "[A3A_faction_reb get 'unitGL'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitGL'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 36 * GRID_W; y = 53 * GRID_H; w = 36 * GRID_W; @@ -151,7 +151,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITANTITANKBUTTON; text = $STR_antistasi_dialogs_recruit_units_antitank; - onButtonClick = "[A3A_faction_reb get 'unitLAT'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitLAT'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 36 * GRID_W; y = 74 * GRID_H; w = 36 * GRID_W; @@ -185,7 +185,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITMEDICBUTTON; text = $STR_antistasi_dialogs_recruit_units_medic; - onButtonClick = "[A3A_faction_reb get 'unitMedic'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitMedic'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 88 * GRID_W; y = 11 * GRID_H; w = 36 * GRID_W; @@ -219,7 +219,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITMARKSMANBUTTON; text = $STR_antistasi_dialogs_recruit_units_marksman; - onButtonClick = "[A3A_faction_reb get 'unitSniper'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitSniper'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 88 * GRID_W; y = 32 * GRID_H; w = 36 * GRID_W; @@ -253,7 +253,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITENGINEERBUTTON; text = $STR_antistasi_dialogs_recruit_units_engineer; - onButtonClick = "[A3A_faction_reb get 'unitEng'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitEng'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 88 * GRID_W; y = 53 * GRID_H; w = 36 * GRID_W; @@ -287,7 +287,7 @@ class A3A_RecruitDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITBOMBSPECIALISTBUTTON; text = $STR_antistasi_dialogs_recruit_units_bomb_specialist; - onButtonClick = "[A3A_faction_reb get 'unitExp'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_fnc_recruitDialog;"; + onButtonClick = "[A3A_faction_reb get 'unitExp'] spawn A3A_fnc_reinfPlayer; [""onLoad""] spawn A3A_GUI_fnc_recruitDialog;"; x = 88 * GRID_W; y = 74 * GRID_H; w = 36 * GRID_W; diff --git a/A3A/addons/gui/dialogues/recruitSquadDialog.hpp b/A3A/addons/gui/dialogues/recruitSquadDialog.hpp index 7275bcb8eb..a958fd8404 100644 --- a/A3A/addons/gui/dialogues/recruitSquadDialog.hpp +++ b/A3A/addons/gui/dialogues/recruitSquadDialog.hpp @@ -1,7 +1,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idd = A3A_IDD_RECRUITSQUADDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_recruitSquadDialog"; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_recruitSquadDialog"; class Controls { @@ -49,7 +49,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITINFSQUADBUTTON; text = $STR_antistasi_dialogs_recruit_squad_inf_squad; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 36 * GRID_W; y = 11 * GRID_H; @@ -84,7 +84,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITINFTEAMBUTTON; text = $STR_antistasi_dialogs_recruit_squad_inf_team; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 36 * GRID_W; y = 32 * GRID_H; @@ -119,7 +119,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITMGTEAMBUTTON; text = $STR_antistasi_dialogs_recruit_squad_mg_team; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 36 * GRID_W; y = 53 * GRID_H; @@ -154,7 +154,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITATTEAMBUTTON; text = $STR_antistasi_dialogs_recruit_squad_at_team; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 36 * GRID_W; y = 74 * GRID_H; @@ -189,7 +189,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITMORTARTEAMBUTTON; text = $STR_antistasi_dialogs_recruit_squad_mortar_team; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 88 * GRID_W; y = 11 * GRID_H; @@ -225,7 +225,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITSNIPERTEAMBUTTON; text = $STR_antistasi_dialogs_recruit_squad_sniper_team; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 88 * GRID_W; y = 32 * GRID_H; @@ -260,7 +260,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITATCARBUTTON; text = $STR_antistasi_dialogs_recruit_squad_at_car; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 88 * GRID_W; y = 53 * GRID_H; @@ -295,7 +295,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog { idc = A3A_IDC_RECRUITAATRUCKBUTTON; text = $STR_antistasi_dialogs_recruit_squad_aa_truck; - onButtonClick = "[""buySquad"", [_this]] call A3A_fnc_recruitSquadDialog"; + onButtonClick = "[""buySquad"", [_this]] call A3A_GUI_fnc_recruitSquadDialog"; size = GUI_TEXT_SIZE_LARGE; x = 88 * GRID_W; y = 74 * GRID_H; @@ -318,7 +318,7 @@ class A3A_RecruitSquadDialog : A3A_DefaultDialog class IncludeVehicleCB : A3A_CheckBox { idc = A3A_IDC_SQUADINCLUDEVEHICLECHECKBOX; - onCheckedChanged = "[""update""] call A3A_fnc_recruitSquadDialog"; + onCheckedChanged = "[""update""] call A3A_GUI_fnc_recruitSquadDialog"; x = 96 * GRID_W; y = 90 * GRID_H; w = 6 * GRID_W; diff --git a/A3A/addons/gui/dialogues/requestMissionDialog.hpp b/A3A/addons/gui/dialogues/requestMissionDialog.hpp index 693f197c9c..7c66dbba8c 100644 --- a/A3A/addons/gui/dialogues/requestMissionDialog.hpp +++ b/A3A/addons/gui/dialogues/requestMissionDialog.hpp @@ -37,7 +37,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_conquest; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""CON""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""CON""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 7 * GRID_W; y = 34 * GRID_H; @@ -61,7 +61,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_destroy; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""DES""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""DES""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 45 * GRID_W; y = 34 * GRID_H; @@ -84,7 +84,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_assassination; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""AS""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""AS""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 83 * GRID_W; y = 34 * GRID_H; @@ -108,7 +108,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_convoy; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""CONVOY""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""CONVOY""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 121 * GRID_W; y = 34 * GRID_H; @@ -132,7 +132,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_rescue; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""RES""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""RES""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 26 * GRID_W; y = 76 * GRID_H; @@ -156,7 +156,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_logistics; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""LOG""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""LOG""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 64 * GRID_W; y = 76 * GRID_H; @@ -180,7 +180,7 @@ class A3A_RequestMissionDialog : A3A_DefaultDialog { idc = -1; text = $STR_antistasi_dialogs_mission_request_support; - onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""SUPP""]] call A3A_fnc_requestMissionDialog;"; + onButtonClick = "closeDialog 0; [""missionButtonClicked"", [""SUPP""]] call A3A_GUI_fnc_requestMissionDialog;"; sizeEx = GUI_TEXT_SIZE_LARGE; x = 102 * GRID_W; y = 76 * GRID_H; diff --git a/A3A/addons/gui/dialogues/setupDialog.hpp b/A3A/addons/gui/dialogues/setupDialog.hpp index 35adbccef4..16cef71b38 100644 --- a/A3A/addons/gui/dialogues/setupDialog.hpp +++ b/A3A/addons/gui/dialogues/setupDialog.hpp @@ -2,8 +2,8 @@ class A3A_SetupDialog : A3A_TabbedDialog { idd = A3A_IDD_SETUPDIALOG; - onLoad = "['onLoad'] spawn A3A_fnc_setupDialog"; - onUnload = "['onUnload'] call A3A_fnc_setupDialog"; + onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupDialog"; + onUnload = "['onUnload'] call A3A_GUI_fnc_setupDialog"; class Controls { @@ -31,7 +31,7 @@ class A3A_SetupDialog : A3A_TabbedDialog { idc = A3A_IDC_SETUP_LOADGAMETABBUTTON; text = $STR_antistasi_dialogs_setup_loadgame_tab_button; - onButtonClick = "['switchTab', ['loadgame']] call A3A_fnc_setupDialog;"; + onButtonClick = "['switchTab', ['loadgame']] call A3A_GUI_fnc_setupDialog;"; x = 0; y = 0; w = 30 * GRID_W; @@ -42,7 +42,7 @@ class A3A_SetupDialog : A3A_TabbedDialog { idc = A3A_IDC_SETUP_FACTIONTABBUTTON; text = $STR_antistasi_dialogs_setup_faction_tab_button; - onButtonClick = "['switchTab', ['factions']] call A3A_fnc_setupDialog;"; + onButtonClick = "['switchTab', ['factions']] call A3A_GUI_fnc_setupDialog;"; x = 30 * GRID_W; y = 0; w = 30 * GRID_W; @@ -53,7 +53,7 @@ class A3A_SetupDialog : A3A_TabbedDialog { idc = A3A_IDC_SETUP_PARAMSTABBUTTON; text = $STR_antistasi_dialogs_setup_params_tab_button; - onButtonClick = "['switchTab', ['params']] call A3A_fnc_setupDialog;"; + onButtonClick = "['switchTab', ['params']] call A3A_GUI_fnc_setupDialog;"; x = 60 * GRID_W; y = 0; w = 30 * GRID_W; @@ -70,7 +70,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class LoadgameTab : A3A_DefaultControlsGroup { idc = A3A_IDC_SETUP_LOADGAMETAB; - onLoad = "['onLoad'] spawn A3A_fnc_setupLoadgameTab"; + onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupLoadgameTab"; show = false; class Controls @@ -101,7 +101,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class SavedGamesTable : A3A_ControlsGroup // hopefully has scrollbars { idc = A3A_IDC_SETUP_SAVESLISTBOX; - onMouseButtonUp = "['saveListClick', _this] call A3A_fnc_setupLoadgameTab"; + onMouseButtonUp = "['saveListClick', _this] call A3A_GUI_fnc_setupLoadgameTab"; x = 4 * GRID_W; y = 12 * GRID_H; w = 118 * GRID_W; @@ -139,7 +139,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class StartGame: A3A_Button { idc = A3A_IDC_SETUP_STARTBUTTON; text = $STR_antistasi_dialogs_setup_start_game; - onButtonClick = "['startGame'] call A3A_fnc_setupLoadgameTab"; + onButtonClick = "['startGame'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 4 * GRID_H; w = 30 * GRID_W; @@ -147,7 +147,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class NewGameCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_NEWGAMECHECKBOX; - onCheckedChanged = "['newGameCheck'] call A3A_fnc_setupLoadgameTab"; + onCheckedChanged = "['newGameCheck'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 12 * GRID_H; w = 4 * GRID_W; @@ -163,7 +163,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class CopyGameCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_COPYGAMECHECKBOX; - onCheckedChanged = "['copyGameCheck'] call A3A_fnc_setupLoadgameTab"; + onCheckedChanged = "['copyGameCheck'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 18 * GRID_H; w = 4 * GRID_W; @@ -179,7 +179,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class OldParamsCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_OLDPARAMSCHECKBOX; - onCheckedChanged = "['oldParamsCheck'] call A3A_fnc_setupLoadgameTab"; + onCheckedChanged = "['oldParamsCheck'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 24 * GRID_H; w = 4 * GRID_W; @@ -195,7 +195,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class NewNamespaceCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_NAMESPACECHECKBOX; - onCheckedChanged = "['newNamespaceCheck'] call A3A_fnc_setupLoadgameTab"; + onCheckedChanged = "['newNamespaceCheck'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 30 * GRID_H; w = 4 * GRID_W; @@ -212,7 +212,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class SetHQPosButton: A3A_Button { idc = A3A_IDC_SETUP_HQPOSBUTTON; text = $STR_antistasi_dialogs_setup_set_hq_position; - onButtonClick = "['setHQPos'] call A3A_fnc_setupLoadgameTab"; + onButtonClick = "['setHQPos'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 36 * GRID_H; w = 30 * GRID_W; @@ -222,7 +222,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class DeleteButton: A3A_Button { idc = A3A_IDC_SETUP_DELETEBUTTON; text = $STR_antistasi_dialogs_setup_delete_game; - onButtonClick = "['deleteGame'] call A3A_fnc_setupLoadgameTab"; + onButtonClick = "['deleteGame'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 84 * GRID_H; w = 30 * GRID_W; @@ -231,7 +231,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class RenameButton: A3A_Button { idc = A3A_IDC_SETUP_RENAMEBUTTON; text = $STR_antistasi_dialogs_setup_rename_game; - onButtonClick = "['renameGame'] call A3A_fnc_setupLoadgameTab"; + onButtonClick = "['renameGame'] call A3A_GUI_fnc_setupLoadgameTab"; x = 126 * GRID_W; y = 91 * GRID_H; w = 30 * GRID_W; @@ -243,7 +243,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class FactionsTab : A3A_DefaultControlsGroup { idc = A3A_IDC_SETUP_FACTIONSTAB; - //onLoad = "['onLoad'] spawn A3A_fnc_setupFactionsTab"; + //onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupFactionsTab"; show = false; class Controls @@ -258,7 +258,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class RebelsListBox: A3A_Listbox_Small { idc = A3A_IDC_SETUP_REBELSLISTBOX; - onLBSelChanged = "['factionSelected', _this] call A3A_fnc_setupFactionsTab"; + onLBSelChanged = "['factionSelected', _this] call A3A_GUI_fnc_setupFactionsTab"; x = 4 * GRID_W; y = 8 * GRID_H; w = 34 * GRID_W; @@ -275,36 +275,13 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class CiviliansListBox: A3A_Listbox_Small { idc = A3A_IDC_SETUP_CIVILIANSLISTBOX; - onLBSelChanged = "['factionSelected', _this] call A3A_fnc_setupFactionsTab"; + onLBSelChanged = "['factionSelected', _this] call A3A_GUI_fnc_setupFactionsTab"; x = 4 * GRID_W; y = 34 * GRID_H; w = 34 * GRID_W; h = 20 * GRID_H; }; - class AddonVicsLabel: A3A_SectionLabelRight { - idc = -1; - text = $STR_antistasi_dialogs_setup_addonvics; - x = 4 * GRID_W; - y = 56 * GRID_H; - w = 34 * GRID_W; - h = 4 * GRID_H; - }; - class AddonVicsBackground: A3A_Background { - idc = -1; - x = 4 * GRID_W; - y = 60 * GRID_H; - w = 34 * GRID_W; - h = 36 * GRID_H; - }; - class AddonVicsBox: A3A_ControlsGroup { - idc = A3A_IDC_SETUP_ADDONVICSBOX; - x = 4 * GRID_W; - y = 60 * GRID_H; - w = 34 * GRID_W; - h = 36 * GRID_H; - }; - class OccupantsLabel: A3A_SectionLabelRight { idc = -1; text = $STR_antistasi_dialogs_setup_occupants; @@ -315,7 +292,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class OccupantsListBox: A3A_Listbox_Small { idc = A3A_IDC_SETUP_OCCUPANTSLISTBOX; - onLBSelChanged = "['factionSelected', _this] call A3A_fnc_setupFactionsTab"; + onLBSelChanged = "['factionSelected', _this] call A3A_GUI_fnc_setupFactionsTab"; x = 40 * GRID_W; y = 8 * GRID_H; w = 40 * GRID_W; @@ -332,7 +309,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class InvadersListBox: A3A_Listbox_Small { idc = A3A_IDC_SETUP_INVADERSLISTBOX; - onLBSelChanged = "['factionSelected', _this] call A3A_fnc_setupFactionsTab"; + onLBSelChanged = "['factionSelected', _this] call A3A_GUI_fnc_setupFactionsTab"; x = 82 * GRID_W; y = 8 * GRID_H; w = 40 * GRID_W; @@ -341,7 +318,7 @@ class A3A_SetupDialog : A3A_TabbedDialog class SwitchEnemyCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_SWITCHENEMYCHECK; - onCheckedChanged = "['fillFactions', [false]] call A3A_fnc_setupFactionsTab"; + onCheckedChanged = "['fillFactions', [false]] call A3A_GUI_fnc_setupFactionsTab"; x = 124 * GRID_W; y = 4 * GRID_H; w = 4 * GRID_W; @@ -357,7 +334,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class AnyEnemyCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_ANYENEMYCHECK; - onCheckedChanged = "['fillFactions', [false]] call A3A_fnc_setupFactionsTab"; + onCheckedChanged = "['fillFactions', [false]] call A3A_GUI_fnc_setupFactionsTab"; x = 124 * GRID_W; y = 10 * GRID_H; w = 4 * GRID_W; @@ -373,7 +350,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class IgnoreCamoCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_IGNORECAMOCHECK; - onCheckedChanged = "['fillFactions', [false]] call A3A_fnc_setupFactionsTab"; + onCheckedChanged = "['fillFactions', [false]] call A3A_GUI_fnc_setupFactionsTab"; x = 124 * GRID_W; y = 16 * GRID_H; w = 4 * GRID_W; @@ -389,7 +366,7 @@ class A3A_SetupDialog : A3A_TabbedDialog }; class ShowMissingCheck: A3A_Checkbox { idc = A3A_IDC_SETUP_SHOWMISSINGCHECK; - onCheckedChanged = "['fillFactions', [false]] call A3A_fnc_setupFactionsTab"; + onCheckedChanged = "['fillFactions', [false]] call A3A_GUI_fnc_setupFactionsTab"; x = 124 * GRID_W; y = 22 * GRID_H; w = 4 * GRID_W; @@ -426,13 +403,52 @@ class A3A_SetupDialog : A3A_TabbedDialog w = 32 * GRID_W; h = 62 * GRID_H; }; + class AddonVicsBox: A3A_ControlsGroup { + idc = A3A_IDC_SETUP_ADDONVICSBOX; + x = 124 * GRID_W; + y = 34 * GRID_H; + w = 32 * GRID_W; + h = 62 * GRID_H; + }; + class DLCToggle: A3A_Button { + idc = A3A_IDC_SETUP_DLCTOGGLE; + text = $STR_antistasi_dialogs_setup_toggleAddons_addons; + onButtonClick = "['switchAddons'] call A3A_GUI_fnc_setupFactionsTab;"; + x = 124 * GRID_W; + y = 92 * GRID_H; + w = 32 * GRID_W; + h = 4 * GRID_H; + }; + class InfoLabel: A3A_SectionLabelRight { + idc = A3A_IDC_SETUP_INFOLABEL; + text = $STR_antistasi_dialogs_setup_factionInfo; + x = 4 * GRID_W; + y = 56 * GRID_H; + w = 34 * GRID_W; + h = 4 * GRID_H; + }; + class InfoBackground: A3A_Background { + idc = -1; + x = 4 * GRID_W; + y = 60 * GRID_H; + w = 34 * GRID_W; + h = 36 * GRID_H; + }; + class InfoBox: A3A_TextMulti { + idc = A3A_IDC_SETUP_INFOBOX; + SizeEx = GUI_TEXT_SIZE_TINY; + x = 4 * GRID_W; + y = 60 * GRID_H; + w = 34 * GRID_W; + h = 32 * GRID_H; + }; }; }; class ParamsTab : A3A_DefaultControlsGroup { idc = A3A_IDC_SETUP_PARAMSTAB; - onLoad = "['onLoad'] spawn A3A_fnc_setupParamsTab"; + onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupParamsTab"; show = false; class Controls @@ -461,15 +477,15 @@ class A3A_SetupDialog : A3A_TabbedDialog class A3A_SetupHQPosDialog { idd = A3A_IDD_SETUPHQPOSDIALOG; - onLoad = "['onLoad'] spawn A3A_fnc_setupHQPosDialog"; - onUnload = "['onUnload'] call A3A_fnc_setupHQPosDialog"; + onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupHQPosDialog"; + onUnload = "['onUnload'] call A3A_GUI_fnc_setupHQPosDialog"; class ControlsBackground { class HQMap : A3A_MapControl { idc = -1; - onMouseButtonUp = "['mouseUp', _this] spawn A3A_fnc_setupHQPosDialog"; + onMouseButtonUp = "['mouseUp', _this] spawn A3A_GUI_fnc_setupHQPosDialog"; x = safeZoneX; y = safeZoneY; w = safeZoneW; @@ -499,8 +515,8 @@ class A3A_TextMultiCenter: A3A_Text class A3A_SetupConfirmDialog { idd = A3A_IDD_SETUPCONFIRMDIALOG; - onLoad = "['onLoad'] spawn A3A_fnc_setupConfirmDialog"; - //onUnload = "['onUnload'] call A3A_fnc_setupConfirmDialog"; // nothing to do on cancel? + onLoad = "['onLoad'] spawn A3A_GUI_fnc_setupConfirmDialog"; + //onUnload = "['onUnload'] call A3A_GUI_fnc_setupConfirmDialog"; // nothing to do on cancel? #define DIALOG_X CENTER_X(80) // Global x pos of dialog #define DIALOG_Y CENTER_Y(40) // Global y pos of dialog @@ -547,7 +563,7 @@ class A3A_SetupConfirmDialog { idc = A3A_IDC_SETUP_CONFIRMYES; text = $STR_antistasi_dialogs_setup_confirm_yes; - onButtonClick = "['confirm'] call A3A_fnc_setupConfirmDialog"; + onButtonClick = "['confirm'] call A3A_GUI_fnc_setupConfirmDialog"; x = DIALOG_X + 46 * GRID_W; y = DIALOG_Y + 28 * GRID_H; w = 30 * GRID_W; diff --git a/A3A/addons/gui/dialogues/teamLeaderBuilder.hpp b/A3A/addons/gui/dialogues/teamLeaderBuilder.hpp index 081215baf2..2b80a5fb56 100644 --- a/A3A/addons/gui/dialogues/teamLeaderBuilder.hpp +++ b/A3A/addons/gui/dialogues/teamLeaderBuilder.hpp @@ -11,7 +11,7 @@ class A3A_buttonSmallText : A3A_button class A3A_teamLeaderBuilder { idd = A3A_IDD_TEAMLEADERDIALOG; - onLoad = "[""onLoad""] spawn A3A_fnc_teamLeaderRTSPlacerDialog"; + onLoad = "[""onLoad""] spawn A3A_GUI_fnc_teamLeaderRTSPlacerDialog"; movingenable = true; class ControlsBackground diff --git a/A3A/addons/gui/functions/GUI/fn_adminTab.sqf b/A3A/addons/gui/functions/GUI/fn_adminTab.sqf index b6cc7a29f5..5c34b01c94 100644 --- a/A3A/addons/gui/functions/GUI/fn_adminTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_adminTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Admin tab of the Main dialog. Arguments: @@ -17,6 +17,9 @@ Dependencies: Example: ["update"] call A3A_fnc_adminTab; + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -28,6 +31,7 @@ FIX_LINE_NUMBERS() params[["_mode","onLoad"], ["_params",[]]]; // TODO UI-update: move these to some more sensible place: +// Copied from A3A\addons\core\functions\Dialogs\fn_HQGameOptions.sqf private _civLimitMin = 0; private _civLimitMax = 150; private _spawnDistanceMin = 600; @@ -56,12 +60,12 @@ switch (_mode) do _spawnDistanceSlider sliderSetPosition _spawnDistance; ctrlSetText [A3A_IDC_SPAWNDISTANCEEDITBOX, str _spawnDistance]; - _aiLimiterSlider = _display displayCtrl A3A_IDC_AILIMITERSLIDER; - _aiLimiterSlider sliderSetRange [_aiLimiterMin, _aiLimiterMax]; - _aiLimiterSlider sliderSetSpeed [10, 10]; - _aiLimiter = missionNamespace getVariable ["maxUnits",0]; - _aiLimiterSlider sliderSetPosition _aiLimiter; - ctrlSetText [A3A_IDC_AILIMITEREDITBOX, str _aiLimiter]; + // _aiLimiterSlider = _display displayCtrl A3A_IDC_AILIMITERSLIDER; + // _aiLimiterSlider sliderSetRange [_aiLimiterMin, _aiLimiterMax]; + // _aiLimiterSlider sliderSetSpeed [10, 10]; + // _aiLimiter = missionNamespace getVariable ["maxUnits",0]; + // _aiLimiterSlider sliderSetPosition _aiLimiter; + // ctrlSetText [A3A_IDC_AILIMITEREDITBOX, str _aiLimiter]; // Get Debug info // TODO UI-update: change this to get server values instead when merging @@ -187,18 +191,18 @@ switch (_mode) do _commitAiButton ctrlSetText localize "STR_antistasi_dialogs_main_admin_ai_confirm_button"; _commitAiButton ctrlAddEventHandler ["ButtonClick", { Trace("Confirmed AI Settings"); - hint "Oh no you broke the server :("; private _display = findDisplay A3A_IDD_MAINDIALOG; private _civLimitEditBox = _display displayCtrl A3A_IDC_CIVLIMITEDITBOX; private _globalCivilianMax = floor parseNumber ctrlText _civLimitEditBox; private _spawnDistanceEditBox = _display displayCtrl A3A_IDC_SPAWNDISTANCEEDITBOX; private _distanceSPWN = floor parseNumber ctrlText _spawnDistanceEditBox; - private _aiLimiterEditBox = _display displayCtrl A3A_IDC_AILIMITEREDITBOX; - private _maxUnits = floor parseNumber ctrlText _aiLimiterEditBox; + //private _aiLimiterEditBox = _display displayCtrl A3A_IDC_AILIMITEREDITBOX; + //private _maxUnits = floor parseNumber ctrlText _aiLimiterEditBox; // TODO UI-update: Change when merging. Something like this but with "set" instead of "increase"? - // [player,"maxUnits","increase"] remoteExecCall ["A3A_fnc_HQGameOptions",2]; + [player,"globalCivilianMax","set", _globalCivilianMax, true] remoteExecCall ["A3A_fnc_HQGameOptions",2]; + [player,"distanceSPWN","set", _distanceSPWN, true] remoteExecCall ["A3A_fnc_HQGameOptions",2]; // TODO UI-update: Placeholder routine, don't merge! Has no security checks whatsoever // Trace_3("Changing AI Settings - globalCivilianMax:%1, distanceSPWN:%2, maxUnits:%3", _globalCivilianMax, _distanceSPWN, _maxUnits); @@ -206,11 +210,59 @@ switch (_mode) do // missionNamespace setVariable ["distanceSPWN", _distanceSPWN]; // missionNamespace setVariable ["maxUnits", _maxUnits]; - - closeDialog 2; + // Don't Close. + //closeDialog 2; }]; }; + case ("tpPetrosToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + petros setPos (player modelToWorld [0,2,0]); + }; + + case ("tpArsenalToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + boxX setPos (player modelToWorld [0,2,0]); + }; + + case ("tpVehicleToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + vehicleBox setPos (player modelToWorld [0,2,0]); + }; + + case ("tpFlagToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + flagX setPos (player modelToWorld [0,2,0]); + }; + + case ("tpTentToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + fireX setPos (player modelToWorld [0,2,0]); + }; + + case ("tpMapBoardToAdmin"): { + private _posHQ = getMarkerPos "Synd_HQ"; + if (player distance2D _posHQ >= 50) exitWith { + [localize "STR_antistasi_dialogs_main_admin_tp_label", "You need to be within 50m of HQ to teleport assets."] call A3A_fnc_customHint; + }; + mapX setPos (player modelToWorld [0,2,0]); + }; + default { // Log error if attempting to call a mode that doesn't exist diff --git a/A3A/addons/gui/functions/GUI/fn_aiManagementTab.sqf b/A3A/addons/gui/functions/GUI/fn_aiManagementTab.sqf index 058868f407..63edc6bd54 100644 --- a/A3A/addons/gui/functions/GUI/fn_aiManagementTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_aiManagementTab.sqf @@ -1,22 +1,25 @@ /* -Maintainer: DoomMetal -Handles updating and controls on the AI Management tab of the Main dialog. +Maintainer: Caleb Serafin, DoomMetal + Handles updating and controls on the AI Management tab of the Main dialog. Arguments: - Mode -> Array of params for the mode when applicable. Params for specific modes are documented in the modes. + Mode + > Array of params for the mode when applicable. Params for specific modes are documented in the modes. Return Value: -Nothing + Nothing Scope: Clients, Local Arguments, Local Effect Environment: Scheduled for control changes / Unscheduled for update Public: No Dependencies: -None + None Example: -["update"] call A3A_fnc_aiManagementTab; + ["update"] call FUNC(aiManagementTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -37,7 +40,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_MAINDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["player"]] call A3A_fnc_mainDialog; + ["switchTab", ["player"]] call FUNC(mainDialog); }]; _backButton ctrlShow true; @@ -83,7 +86,7 @@ switch (_mode) do }; } forEach groupSelectedUnits player; - ["aiListBoxSelectionChanged"] call A3A_fnc_aiManagementTab; + ["aiListBoxSelectionChanged"] call FUNC(aiManagementTab); }; case ("clearAIListboxSelection"): @@ -97,7 +100,7 @@ switch (_mode) do }; // Update Selection - ["aiListBoxSelectionChanged"] spawn A3A_fnc_aiManagementTab; + ["aiListBoxSelectionChanged"] spawn FUNC(aiManagementTab); }; case ("aiListBoxSelectionChanged"): @@ -117,11 +120,11 @@ switch (_mode) do { _aiControlButton ctrlEnable true; _aiControlButton ctrlSetTooltip ""; - _aiControlIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _aiControlIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); } else { _aiControlButton ctrlEnable false; _aiControlButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_ai_management_no_ai_control_tooltip"; - _aiControlIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aiControlIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; // If none are selected, disable all the other buttons @@ -134,23 +137,23 @@ switch (_mode) do if (count _lbSelection > 0) then { _aiDismissButton ctrlEnable true; _aiDismissButton ctrlSetTooltip ""; - _aiDismissIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _aiDismissIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); _aiAutoLootButton ctrlEnable true; _aiAutoLootButton ctrlSetTooltip ""; - _aiAutoLootIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _aiAutoLootIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); _aiAutoHealButton ctrlEnable true; _aiAutoHealButton ctrlSetTooltip ""; - _aiAutoHealIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _aiAutoHealIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); } else { _aiDismissButton ctrlEnable false; _aiDismissButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_ai_management_select_ai_tooltip"; - _aiDismissIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aiDismissIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _aiAutoLootButton ctrlEnable false; _aiAutoLootButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_ai_management_select_ai_tooltip"; - _aiAutoLootIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aiAutoLootIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _aiAutoHealButton ctrlEnable false; _aiAutoHealButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_ai_management_select_ai_tooltip"; - _aiAutoHealIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aiAutoHealIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; }; diff --git a/A3A/addons/gui/functions/GUI/fn_airSupportTab.sqf b/A3A/addons/gui/functions/GUI/fn_airSupportTab.sqf index b24c137dd7..912380a18e 100644 --- a/A3A/addons/gui/functions/GUI/fn_airSupportTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_airSupportTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Air Support tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_airSupportTab; + ["update"] call FUNC(airSupportTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -37,7 +40,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_MAINDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["commander"]] call A3A_fnc_mainDialog; + ["switchTab", ["commander"]] call FUNC(mainDialog); }]; _backButton ctrlShow true; @@ -63,15 +66,15 @@ switch (_mode) do if (_airSupportPoints < 1) then { Trace("No air support points, disabling buttons"); - _heIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _heIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _heIcon ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; _heButton ctrlEnable false; _heButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; - _carpetIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _carpetIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _carpetIcon ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; _carpetButton ctrlEnable false; _carpetButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; - _napalmIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _napalmIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _napalmIcon ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; _napalmButton ctrlEnable false; _napalmButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_air_support_no_points_tooltip"; diff --git a/A3A/addons/gui/functions/GUI/fn_arsenalLimitsDialog.sqf b/A3A/addons/gui/functions/GUI/fn_arsenalLimitsDialog.sqf index 0f2bcf6058..49d038391a 100644 --- a/A3A/addons/gui/functions/GUI/fn_arsenalLimitsDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_arsenalLimitsDialog.sqf @@ -1,4 +1,5 @@ /* +Maintainer: John Jordan Handles the initialization and updating of the arsenal guest limits dialog. Arguments: @@ -8,28 +9,49 @@ Arguments: Returns: Nothing -Environment: +Environment: Should not be called by onLoad because findDisplay and ctrlParent do not work in that context. + */ #include "..\..\dialogues\ids.inc" +#include "..\..\dialogues\defines.hpp" #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() params ["_mode", "_params"]; -private _fnc_defaultLimit = { [A3A_guestItemLimit, 3*A3A_guestItemLimit] select (_this == 26) }; +private _fnc_defaultLimit = { jna_minItemMember select _this;}; private _display = findDisplay A3A_IDD_ARSENALLIMITSDIALOG; private _listBox = _display displayCtrl A3A_IDC_ARSLIMLISTBOX; + switch (_mode) do { + case ("init"): + { + if (!isServer) then { + // Go fetch a fresh copy of the arsenal data + jna_datalist = nil; + [clientOwner, "jna_datalist"] remoteExecCall ["publicVariableClient", 2]; + private _timeout = time + 10; + waitUntil { sleep 0.1; !isNil "jna_datalist" or time > _timeout }; + }; + if (isNil "jna_datalist") exitWith { closeDialog 0 }; + + if !(player call A3A_fnc_isMember) then { + [localize "STR_antistasi_arsenal_limits_dialog_hint_title", localize "STR_antistasi_arsenal_limits_dialog_guest_warning"] call A3A_fnc_customHint; + (_display displayctrl A3A_IDC_ARSLIMRESETBUTTON) ctrlEnable false; + }; + ["typeSelect", [A3A_IDC_ARSLIMTYPESBASE]] call A3A_GUI_fnc_arsenalLimitsDialog; + }; + case ("typeSelect"): { - private _typeIndex = if (isNil "_params") then { 0 } else { (_params#0) - A3A_IDC_ARSLIMTYPESBASE }; + private _typeIndex = (_params#0) - A3A_IDC_ARSLIMTYPESBASE; _display setVariable ["typeIndex", _typeIndex]; - private _defaultLimit = _typeIndex call _fnc_defaultLimit; + private _defLimit = _typeIndex call _fnc_defaultLimit; private _cfgCat = switch (_typeIndex) do { case 5: { configFile / "cfgVehicles" }; @@ -37,22 +59,46 @@ switch (_mode) do default { configFile / "cfgWeapons" }; }; - lnbClear _listBox; + { ctrlDelete _x } forEach allControls _listBox; { _x params ["_class", "_count"]; - if (_count == -1) then { continue }; private _itemName = getText (_cfgCat / _class / "displayName"); - private _limit = A3A_arsenalLimits getOrDefault [_class, _defaultLimit]; + private _limit = A3A_arsenalLimits getOrDefault [_class, [_defLimit]] select 0; if (_typeIndex == 26) then { private _capacity = 1 max getNumber (_cfgCat / _class / "count"); _count = round (_count / _capacity); }; - private _rowIndex = _listBox lnbAddRow [_itemName, str _count, str _limit]; - _listBox lnbSetValue [[_rowIndex, 2], _limit]; - _listBox lnbSetData [[_rowIndex, 0], _class]; // store original classname for updating - } forEach (jna_datalist#_typeIndex); - - // color-invert the selected button, restore the others + private _index = _forEachIndex; + + private _nameCtrl = _display ctrlCreate ["A3A_Text", -1, _listBox]; + _nameCtrl ctrlSetPosition [0, _index*GRID_H*4, 54*GRID_W, 4*GRID_H]; + _nameCtrl ctrlCommit 0; + _nameCtrl ctrlSetText _itemName; + + private _numCtrl = _display ctrlCreate ["A3A_TextRight", -1, _listBox]; + _numCtrl ctrlSetPosition [54*GRID_W, _index*GRID_H*4, 6*GRID_W, 4*GRID_H]; + _numCtrl ctrlCommit 0; + _numCtrl ctrlSetText str _count; + + private _valCtrl = _display ctrlCreate ["A3A_TextRight", -1, _listBox]; + _valCtrl ctrlSetPosition [75*GRID_W, _index*GRID_H*4, 6*GRID_W, 4*GRID_H]; + _valCtrl ctrlCommit 0; + _valCtrl ctrlSetText str _limit; + _valCtrl setVariable ["A3A_class", _class]; + + { + _x params ["_text", "_adjust", "_xpos"]; + private _button = _display ctrlCreate ["A3A_Button", -1, _listBox]; + _button ctrlSetPosition [_xpos*GRID_W, _index*4*GRID_H, 4*GRID_W, 4*GRID_H]; + _button ctrlCommit 0; + _button ctrlSetText _text; + _button setVariable ["A3A_params", [_valCtrl, _adjust]]; + _button ctrlAddEventHandler ["ButtonClick", { ["listButton", _this] call A3A_GUI_fnc_arsenalLimitsDialog }]; + } forEach [["R", "R", 66], ["-", -5, 70], ["+", 5, 82], ["U", "U", 86]]; + + } forEach (jna_datalist#_typeIndex select {_x#1>0}); // only show non-unlocked items + + // color-invert the selected button, restore the others { private _ctrl = _display displayctrl (A3A_IDC_ARSLIMTYPESBASE + _x); _ctrl ctrlEnable ([true, false] select (_x == _typeIndex)); @@ -61,32 +107,43 @@ switch (_mode) do case ("listButton"): { - if (isNil {_display getVariable "stepSize"}) exitWith {}; - private _stepSize = _display getVariable "stepSize"; - private _curRow = lnbCurSelRow _listBox; - private _class = _listBox lnbData [_curRow, 0]; - - private _curVal = _listBox lnbValue [_curRow, 2]; - private _newVal = 0 max (_curVal + _stepSize*(_params#0)); - _listBox lnbSetText [[_curRow, 2], str _newVal]; - _listBox lnbSetValue [[_curRow, 2], _newVal]; - A3A_arsenalLimits set [_class, _newVal]; + private _ctrl = _params#0; + _ctrl getVariable "A3A_params" params ["_valCtrl", "_adjust"]; + + private _defLimit = (_display getVariable "typeIndex") call _fnc_defaultLimit; + private _class = _valCtrl getVariable "A3A_class"; + A3A_arsenalLimits getOrDefault [_class, [_defLimit, _defLimit]] params ["_curVal", "_memberVal"]; + + private _newVal = call { + if (_adjust isEqualTo "R") exitWith { _defLimit }; + if (_adjust isEqualTo "U") exitWith { [minWeaps, 100] select (minWeaps < 0) }; + (_curVal + _adjust) max 0 min 100; + }; + // If we're not a member, then cap to member limit. + if !(player call A3A_fnc_isMember) then { + _newVal = _newVal max _memberVal; + } else { + _memberVal = _newVal; + }; + + _valCtrl ctrlSetText str _newVal; + if (_newVal == _defaultLimit) exitWith { A3A_arsenalLimits deleteAt _class }; + A3A_arsenalLimits set [_class, [_newVal, _memberVal]]; }; case ("resetButton"): { if (isNil {_display getVariable "typeIndex"}) exitWith {}; - private _defaultLimit = (_display getVariable "typeIndex") call _fnc_defaultLimit; + private _typeIndex = _display getVariable "typeIndex"; - private _rowCount = lnbSize _listBox select 0; - for "_row" from 0 to (_rowCount-1) do { - _listBox lnbSetText [[_row, 2], str _defaultLimit]; - _listBox lnbSetValue [[_row, 2], _defaultLimit]; - A3A_arsenalLimits deleteAt (_listBox lnbData [_row, 0]); - }; + { + A3A_arsenalLimits deleteAt (_x#0); + } forEach (jna_datalist#_typeIndex); + + ["typeSelect", [_typeIndex + A3A_IDC_ARSLIMTYPESBASE]] call A3A_GUI_fnc_arsenalLimitsDialog; // refresh the display }; - case ("stepButton"): +/* case ("stepButton"): { private _stepSize = _display getVariable ["stepSize", 1]; private _newstepSize = [1, 5] select (_stepSize == 1); @@ -94,4 +151,5 @@ switch (_mode) do private _newText = localize "STR_antistasi_arsenal_limits_dialog_step" + " ±" + str _newStepSize; ctrlSetText [A3A_IDC_ARSLIMSTEPBUTTON, _newText]; }; +*/ }; diff --git a/A3A/addons/gui/functions/GUI/fn_buyVehicleDialog.sqf b/A3A/addons/gui/functions/GUI/fn_buyVehicleDialog.sqf index c9d88c878f..3b08b7f243 100644 --- a/A3A/addons/gui/functions/GUI/fn_buyVehicleDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_buyVehicleDialog.sqf @@ -1,19 +1,26 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles the initialization and updating of the Buy Vehicle dialog. This function should only be called from BuyVehicle onLoad and control activation EHs. + Arguments: Mode, only possible value for this dialog is "onLoad" > Array of params for the mode when applicable. Params for specific modes are documented in the modes. + Return Value: Nothing + Scope: Clients, Local Arguments, Local Effect Environment: Scheduled for onLoad mode / Unscheduled for everything else unless specified Public: No Dependencies: None + Example: - ["onLoad"] spawn A3A_fnc_buyVehicleDialog; // initialization + ["onLoad"] spawn A3A_GUI_fnc_buyVehicleDialog; // initialization + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -98,10 +105,10 @@ switch (_mode) do (A3A_faction_reb get 'staticAT') + (A3A_faction_reb get 'staticAA'); - ["vehicles", [A3A_IDC_BUYCIVVEHICLEMAIN, A3A_IDC_CIVVEHICLESGROUP, _civilianVehicles]] call A3A_fnc_buyVehicleTabs; - ["vehicles", [A3A_IDC_BUYREBVEHICLEMAIN, A3A_IDC_REBVEHICLESGROUP, _militaryVehicles]] call A3A_fnc_buyVehicleTabs; - ["vehicles", [A3A_IDC_BUYSTATICMAIN, A3A_IDC_STATICSGROUP, _statics]] call A3A_fnc_buyVehicleTabs; - ["other"] call A3A_fnc_buyVehicleTabs; + ["vehicles", [A3A_IDC_BUYCIVVEHICLEMAIN, A3A_IDC_CIVVEHICLESGROUP, _civilianVehicles]] call A3A_GUI_fnc_buyVehicleTabs; + ["vehicles", [A3A_IDC_BUYREBVEHICLEMAIN, A3A_IDC_REBVEHICLESGROUP, _militaryVehicles]] call A3A_GUI_fnc_buyVehicleTabs; + ["vehicles", [A3A_IDC_BUYSTATICMAIN, A3A_IDC_STATICSGROUP, _statics]] call A3A_GUI_fnc_buyVehicleTabs; + ["other"] call A3A_GUI_fnc_buyVehicleTabs; // show the vehicle tab so that user don't freak out private _display = findDisplay A3A_IDD_BUYVEHICLEDIALOG; @@ -115,4 +122,4 @@ switch (_mode) do // Log error if attempting to call a mode that doesn't exist Error_1("BuyVehicleDialog mode does not exist: %1", _mode); }; -}; \ No newline at end of file +}; diff --git a/A3A/addons/gui/functions/GUI/fn_buyVehicleTabs.sqf b/A3A/addons/gui/functions/GUI/fn_buyVehicleTabs.sqf index 6b71fa935c..e41bacadb3 100644 --- a/A3A/addons/gui/functions/GUI/fn_buyVehicleTabs.sqf +++ b/A3A/addons/gui/functions/GUI/fn_buyVehicleTabs.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal, killerswin2 +Maintainer: Caleb Serafin, DoomMetal, killerswin2 Handles the initialization and updating of the Buy item dialog. This function should only be called from Buyvehicle onLoad and control activation EHs. @@ -17,7 +17,10 @@ Dependencies: None Example: - ["logistics"] call A3A_fnc_buyVehicleTab; + ["logistics"] call A3A_GUI_fnc_buyVehicleTab; + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -60,7 +63,7 @@ if (_tab isEqualTo "vehicles") then private _configClass = configFile >> "CfgVehicles" >> _className; if (!isClass _configClass) then { continue }; - private _crewCount = [_className] call A3A_fnc_getVehicleCrewCount; + private _crewCount = [_className] call A3A_GUI_fnc_getVehicleCrewCount; _crewCount params ["_driver", "_coPilot", "_commander", "_gunners", "_passengers", "_passengersFFV"]; private _displayName = getText (_configClass >> "displayName"); diff --git a/A3A/addons/gui/functions/GUI/fn_commanderTab.sqf b/A3A/addons/gui/functions/GUI/fn_commanderTab.sqf index 80bc46d2ed..ed196b3854 100644 --- a/A3A/addons/gui/functions/GUI/fn_commanderTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_commanderTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Commander tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -88,10 +91,10 @@ switch (_mode) do if !(_selectedGroup isEqualTo grpNull) then { // If a group is selected show the single group view - ["updateSingleGroupView"] call A3A_fnc_commanderTab; + ["updateSingleGroupView"] call FUNC(commanderTab); } else { // If no group is selected show the multiple groups view - ["updateMultipleGroupsView"] call A3A_fnc_commanderTab; + ["updateMultipleGroupsView"] call FUNC(commanderTab); }; }; @@ -106,7 +109,7 @@ switch (_mode) do private _fireMissionButton = _display displayCtrl A3A_IDC_HCFIREMISSIONBUTTON; _fireMissionButton ctrlShow false; - private _groupInfo = [_selectedGroup] call A3A_fnc_getGroupInfo; + private _groupInfo = [_selectedGroup] call FUNC(getGroupInfo); _groupInfo params [ "_group", "_groupID", @@ -138,8 +141,8 @@ switch (_mode) do _groupNameText ctrlSetText _groupID; private _groupFastTravelButton = _display displayCtrl A3A_IDC_HCFASTTRAVELBUTTON; - private _canFastTravel = [_group] call A3A_fnc_canFastTravel; - if (_canFastTravel # 0) then { + [player, _group] call A3A_fnc_canFastTravel params ["_isFastTravelAllowed","_fastTravelBlockers"]; + if (_isFastTravelAllowed) then { _groupFastTravelButton ctrlEnable true; // ShortcutButtons doesn't change texture color when disabled so we have to use fade _groupFastTravelButton ctrlSetFade 0; @@ -150,7 +153,7 @@ switch (_mode) do // ShortcutButtons doesn't change texture color when disabled so we have to use fade _groupFastTravelButton ctrlSetFade 0.5; _groupFastTravelButton ctrlCommit 0; - _groupFastTravelButton ctrlSetTooltip (_canFastTravel # 1); + _groupFastTravelButton ctrlSetTooltip (_fastTravelBlockers joinString ", "); }; private _groupCountText = _display displayCtrl A3A_IDC_HCGROUPCOUNT; @@ -318,7 +321,7 @@ switch (_mode) do private _display = findDisplay A3A_IDD_MAINDIALOG; private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; _commanderMap setVariable ["selectedGroup", _control getVariable "groupToSelect"]; - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }]; _groupNameLabel ctrlSetPosition [0, 0, 54 * GRID_W, 6 * GRID_H]; _groupNameLabel ctrlSetBackgroundColor [0,0,0,1]; @@ -686,7 +689,7 @@ switch (_mode) do private _fireMissionControlsGroup = _display displayCtrl A3A_IDC_FIREMISSONCONTROLSGROUP; _fireMissionControlsGroup setVariable ["startPos", _clickedWorldPosition]; _commanderMap setVariable ["selectFireMissionPos", false]; - ["updateFireMissionView"] call A3A_fnc_commanderTab; + ["updateFireMissionView"] call FUNC(commanderTab); Trace_1("Set fire mission startPos: %1", _clickedWorldPosition); }; @@ -697,7 +700,7 @@ switch (_mode) do private _fireMissionControlsGroup = _display displayCtrl A3A_IDC_FIREMISSONCONTROLSGROUP; _fireMissionControlsGroup setVariable ["endPos", _clickedWorldPosition]; _commanderMap setVariable ["selectFireMissionEndPos", false]; - ["updateFireMissionView"] call A3A_fnc_commanderTab; + ["updateFireMissionView"] call FUNC(commanderTab); Trace_1("Set fire mission endPos: %1", _clickedWorldPosition); }; @@ -720,13 +723,13 @@ switch (_mode) do if (_distance > _maxDistance) exitWith { Debug("Distance too large, deselecting group"); _commanderMap setVariable ["selectedGroup", grpNull]; - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }; _commanderMap setVariable ["selectedGroup", _selectedGroup]; // Update single group view - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }; case ("groupNameLabelClicked"): @@ -735,7 +738,7 @@ switch (_mode) do private _display = findDisplay A3A_IDD_MAINDIALOG; private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; _commanderMap setVariable ["selectedGroup", grpNull]; - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }; case ("groupRemoteControlButtonClicked"): @@ -743,8 +746,10 @@ switch (_mode) do private _display = findDisplay A3A_IDD_MAINDIALOG; private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; private _group = _commanderMap getVariable ["selectedGroup", grpNull]; - closeDialog 1; - [_group] spawn A3A_fnc_controlHCsquad; + if (_group isNotEqualTo grpNull) then { + closeDialog 1; + [[_group]] spawn A3A_fnc_controlHCSquad; + } }; case ("groupDismissButtonClicked"): @@ -757,7 +762,7 @@ switch (_mode) do [[_group]] spawn A3A_fnc_dismissSquad; // TODO UI-update: might need a slight delay here, tab gets updated before squad has been completely dismissed // leaving it visible in the list even though it should be gone - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }; case ("groupFastTravelButtonClicked"): @@ -766,8 +771,8 @@ switch (_mode) do private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; private _fastTravelMap = _display displayCtrl A3A_IDC_FASTTRAVELMAP; private _selectedGroup = _commanderMap getVariable "selectedGroup"; - ["setHcMode", [true, _selectedGroup]] call A3A_fnc_fastTravelTab; - ["switchTab", ["fasttravel"]] call A3A_fnc_mainDialog; + ["setHcMode", [true, _selectedGroup]] call FUNC(fastTravelTab); + ["switchTab", ["fasttravel"]] call FUNC(mainDialog); }; case ("fireMissionSelectionChanged"): @@ -874,7 +879,7 @@ switch (_mode) do }; // Update fire mission view to show changes - ["updateFireMissionView"] call A3A_fnc_commanderTab; + ["updateFireMissionView"] call FUNC(commanderTab); }; case ("fireMissionButtonClicked"): diff --git a/A3A/addons/gui/functions/GUI/fn_configColorToArray.sqf b/A3A/addons/gui/functions/GUI/fn_configColorToArray.sqf index 90fde022e9..933a7b0574 100644 --- a/A3A/addons/gui/functions/GUI/fn_configColorToArray.sqf +++ b/A3A/addons/gui/functions/GUI/fn_configColorToArray.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Converts colors defined in mission config to arrays usable in sqf. From this: {1,0,0,1} @@ -21,8 +21,11 @@ Dependencies: None Example: - [A3A_COLOR_BLACK] call A3A_fnc_configColorToArray; // [0,0,0,1] - [{0,0,0,1}] call A3A_fnc_configColorToArray; // [0,0,0,1] + [A3A_COLOR_BLACK] call FUNC(configColorToArray); // [0,0,0,1] + [{0,0,0,1}] call FUNC(configColorToArray); // [0,0,0,1] + +License: APL-ND + */ private _configColor = _this select 0; diff --git a/A3A/addons/gui/functions/GUI/fn_constructTab.sqf b/A3A/addons/gui/functions/GUI/fn_constructTab.sqf index fb202b6119..c95a77789c 100644 --- a/A3A/addons/gui/functions/GUI/fn_constructTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_constructTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Construct tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_constructTab; + ["update"] call FUNC(constructTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -37,7 +40,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_MAINDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["player"]] call A3A_fnc_mainDialog; + ["switchTab", ["player"]] call FUNC(mainDialog); }]; _backButton ctrlShow true; diff --git a/A3A/addons/gui/functions/GUI/fn_donateTab.sqf b/A3A/addons/gui/functions/GUI/fn_donateTab.sqf index 26efa670f8..f3cc7f35de 100644 --- a/A3A/addons/gui/functions/GUI/fn_donateTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_donateTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Donate tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_donateTab; + ["update"] call FUNC(donateTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -37,7 +40,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_MAINDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["player"]] call A3A_fnc_mainDialog; + ["switchTab", ["player"]] call FUNC(mainDialog); }]; _backButton ctrlShow true; @@ -47,25 +50,20 @@ switch (_mode) do _moneySlider sliderSetRange [0,_money]; _moneySlider sliderSetSpeed [10, 10]; _moneySlider sliderSetPosition 0; - private _target = cursorTarget; private _moneyText = _display displayCtrl A3A_IDC_DONATIONMONEYTEXT; _moneyText ctrlSetText format ["%1 €", _money]; - private _playerList = _display displayCtrl A3A_IDC_DONATEPLAYERLIST; - { - if !(_x == player) then - { - _playerList lbAdd name _x; - if !(_target == objNull) then - { - if (_target == _x) then - { - _playerList lbSetCurSel _forEachIndex; - }; - }; - }; - } forEach fakePlayers; + private _playerListCtrl = _display displayCtrl A3A_IDC_DONATEPLAYERLIST; + private _players = allPlayers - entities "HeadlessClient_F"; + A3A_GUI_donateTab_sortedPlayers = _players select { _x isNotEqualTo player } apply {[toLower name _x,_x]}; + A3A_GUI_donateTab_sortedPlayers sort true; + A3A_GUI_donateTab_sortedPlayers = A3A_GUI_donateTab_sortedPlayers apply {_x#1}; + lbClear _playerListCtrl; + { _playerListCtrl lbAdd name _x; } forEach A3A_GUI_donateTab_sortedPlayers; + + private _cursorObjectIndex = A3A_GUI_donateTab_sortedPlayers find cursorObject; + if (_cursorObjectIndex >= 0) then {_playerListCtrl lbSetCurSel _cursorObjectIndex}; }; // Donation Menu @@ -106,6 +104,33 @@ switch (_mode) do _moneySlider sliderSetPosition _newValue; }; + case ("donatePlayerConfirmed"): + { + private _display = findDisplay A3A_IDD_MAINDIALOG; + private _moneyEditBox = _display displayCtrl A3A_IDC_MONEYEDITBOX; + private _moneyEditBoxValue = floor parseNumber ctrlText _moneyEditBox; + + private _playerListCtrl = _display displayCtrl A3A_IDC_DONATEPLAYERLIST; + private _donateToIndex = lbCurSel _playerListCtrl; + if (_donateToIndex == -1) exitWith {}; + private _donateTo = A3A_GUI_donateTab_sortedPlayers #_donateToIndex; + + [player, _donateTo, _moneyEditBoxValue] call FUNCMAIN(sendMoney); + // Reset + _moneyEditBox ctrlSetText "0"; + }; + + case ("donateFactionConfirmed"): + { + private _display = findDisplay A3A_IDD_MAINDIALOG; + private _moneyEditBox = _display displayCtrl A3A_IDC_MONEYEDITBOX; + private _moneyEditBoxValue = floor parseNumber ctrlText _moneyEditBox; + + [player, "faction", _moneyEditBoxValue] call FUNCMAIN(sendMoney); + // Reset + _moneyEditBox ctrlSetText "0"; + }; + default { // Log error if attempting to call a mode that doesn't exist diff --git a/A3A/addons/gui/functions/GUI/fn_fastTravelTab.sqf b/A3A/addons/gui/functions/GUI/fn_fastTravelTab.sqf index ec6bebd5d5..38ab7ed32b 100644 --- a/A3A/addons/gui/functions/GUI/fn_fastTravelTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_fastTravelTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Fast Travel tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_fastTravelTab; + ["update"] call FUNC(fastTravelTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -27,6 +30,12 @@ FIX_LINE_NUMBERS() params[["_mode","update"], ["_params",[]]]; +// For now, we will use the old fastTravel until map selection is integrated. +// closeDialog 1; +// [] call A3A_fnc_fastTravelRadio; +// if (true) exitWith {}; + + switch (_mode) do { case ("update"): @@ -40,11 +49,11 @@ switch (_mode) do _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; if (_hcMode) then { _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["commander"]] call A3A_fnc_mainDialog; + ["switchTab", ["commander"]] call FUNC(mainDialog); }]; } else { _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["player"]] call A3A_fnc_mainDialog; + ["switchTab", ["player"]] call FUNC(mainDialog); }]; }; _backButton ctrlShow true; @@ -70,21 +79,24 @@ switch (_mode) do private _infoText = ""; // Player/Group name + location name - private _locationName = [_selectedMarker] call A3A_fnc_getLocationMarkerName; + private _locationName = "Outpost";//[_selectedMarker] call A3A_fnc_getLocationMarkerName; // ToDo define // Check if location is valid for fast travel - private _canFastTravelToLocation = nil; + private _canFastTravelTuple = []; if (_hcMode) then { private _hcGroup = _fastTravelMap getVariable "hcGroup"; - _canFastTravelToLocation = [_hcGroup, _selectedMarker] call A3A_fnc_canFastTravelToLocation; + _canFastTravelTuple = [player, _hcGroup, markerPos _selectedMarker] call A3A_fnc_canFastTravel; } else { - _canFastTravelToLocation = [player, _selectedMarker] call A3A_fnc_canFastTravelToLocation; + _canFastTravelTuple = [player, player, markerPos _selectedMarker] call A3A_fnc_canFastTravel; }; - if !(_canFastTravelToLocation # 0) exitWith { - // Not a valid location for fast travel + _canFastTravelTuple params ["_isFastTravelAllowed","_fastTravelBlockers"]; + Trace_1("_canFastTravelTuple: %1", _canFastTravelTuple); + if !(_isFastTravelAllowed) exitWith { + // Not a valid location for fast travel + Trace_1("_infoText: %1", '"'+_infoText+'"'); // Disable commit button and show what's wrong in info text - _infoText = _canFastTravelToLocation # 1; + _infoText = _fastTravelBlockers joinString ", "; _fastTravelCommitButton ctrlEnable false; _fastTravelSelectText ctrlShow false; _fastTravelInfoText ctrlShow true; @@ -95,7 +107,7 @@ switch (_mode) do _fastTravelMap ctrlMapAnimAdd [0.2, ctrlMapScale _fastTravelMap, _position]; ctrlMapAnimCommit _fastTravelMap; }; - + Trace_1("_infoText: %1", '"'+_infoText+'"'); if (_hcMode) then { // If we're in high command mode private _hcGroup = _fastTravelMap getVariable "hcGroup"; @@ -105,13 +117,15 @@ switch (_mode) do // If we're not in high command mode _infoText = _infoText + localize "STR_antistasi_dialogs_main_fast_travel_you_will_travel_to" + ":
" + _locationName + "

"; }; - + Trace_1("_infoText: %1", '"'+_infoText+'"'); // Time - // TODO UI-update: Add case for calculating time for HC groups when in hc mode - private _fastTravelTime = [player, _selectedMarker] call A3A_fnc_getFastTravelTime; - private _timeString = [_fastTravelTime] call A3A_fnc_formatTime; + // TODO UI-update: Add case for calculating time for HC groups when in hc modelToWorld + [player, [vehicle player], markerPos _selectedMarker] call FUNCMAIN(calculateFastTravelCost) params ["_fastTravelCost","_fastTravelTime"]; + private _timeString = [[_fastTravelTime] call FUNCMAIN(secondsToTimeSpan),0,0,false,2] call FUNCMAIN(timeSpan_format); + Trace_1("_infoText: %1", '"'+_infoText+'"'); _infoText = _infoText + localize "STR_antistasi_dialogs_main_fast_travel_time" + " " + _timeString + ".

"; + Trace_1("_infoText: %1", '"'+_infoText+'"'); // Vehicle if (!_hcMode && vehicle player != player) then { _infoText = _infoText + localize "STR_antistasi_dialogs_main_fast_travel_vehicle"; @@ -125,6 +139,7 @@ switch (_mode) do // Show info text _fastTravelInfoText ctrlShow true; // Update info text + Trace_1("_infoText: %1", '"'+_infoText+'"'); _fastTravelInfoText ctrlSetStructuredText parseText _infoText; // Pan to location private _position = (_fastTravelMap getVariable "selectMarkerData") # 0; @@ -171,15 +186,15 @@ switch (_mode) do if (_distance > _maxDistance) exitWith { Debug("Distance too large, deselecting"); - ["clearSelectedLocation"] call A3A_fnc_fastTravelTab; - ["update"] call A3A_fnc_fastTravelTab; + ["clearSelectedLocation"] call FUNC(fastTravelTab); + ["update"] call FUNC(fastTravelTab); }; _fastTravelMap setVariable ["selectedMarker", _selectedMarker]; private _position = getMarkerPos _selectedMarker; _fastTravelMap setVariable ["selectMarkerData", [_position]]; - ["update"] call A3A_fnc_fastTravelTab; + ["update"] call FUNC(fastTravelTab); }; case ("clearSelectedLocation"): @@ -209,10 +224,10 @@ switch (_mode) do if (_hcMode) then { private _hcGroup = _fastTravelMap getVariable ["hcGroup", grpNull]; closeDialog 1; - [_hcGroup, _marker] spawn A3A_fnc_fastTravel; + [] spawn FUNCMAIN(fastTravelRadio); } else { closeDialog 1; - [player, _marker] spawn A3A_fnc_fastTravel; + [] spawn FUNCMAIN(fastTravelRadio); }; }; diff --git a/A3A/addons/gui/functions/GUI/fn_fireMissionEH.sqf b/A3A/addons/gui/functions/GUI/fn_fireMissionEH.sqf index d629de834b..b89543ae23 100644 --- a/A3A/addons/gui/functions/GUI/fn_fireMissionEH.sqf +++ b/A3A/addons/gui/functions/GUI/fn_fireMissionEH.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Event Handler for drawing fire mission markers to the commander map Arguments: @@ -15,10 +15,15 @@ Dependencies: Main Dialog must be open Example: - _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_fireMissionEH"]; + _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_fireMissionEH"]; + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() private _display = findDisplay A3A_IDD_MAINDIALOG; private _commanderMap = _display displayCtrl A3A_IDC_COMMANDERMAP; diff --git a/A3A/addons/gui/functions/GUI/fn_getGroupInfo.sqf b/A3A/addons/gui/functions/GUI/fn_getGroupInfo.sqf index 2fba8b0de3..bed8402e67 100644 --- a/A3A/addons/gui/functions/GUI/fn_getGroupInfo.sqf +++ b/A3A/addons/gui/functions/GUI/fn_getGroupInfo.sqf @@ -1,5 +1,12 @@ // TODO UI-update: update header +/* +Maintainer: Caleb Serafin, DoomMetal + +License: APL-ND + +*/ + // Returns info about a group // Group name, position, alive/combat ready counts, vehicle status etc. // Mostly rewritten stuff from REINF/fn_vehStats.sqf @@ -71,7 +78,7 @@ if (!(isNull(_group getVariable ["mortarsX",objNull])) or ({_x call A3A_fnc_type }; // Get group vehicle -private _groupVehicle = [_group] call A3A_fnc_getGroupVehicle; +private _groupVehicle = [_group] call FUNC(getGroupVehicle); // Get group icon private _groupIconId = _group getVariable "BIS_MARTA_ICON_TYPE"; diff --git a/A3A/addons/gui/functions/GUI/fn_getGroupVehicle.sqf b/A3A/addons/gui/functions/GUI/fn_getGroupVehicle.sqf index d894bab5b4..c9415d0175 100644 --- a/A3A/addons/gui/functions/GUI/fn_getGroupVehicle.sqf +++ b/A3A/addons/gui/functions/GUI/fn_getGroupVehicle.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Gets a high command groups assigned vehicle Arguments: @@ -15,7 +15,10 @@ Dependencies: None Example: - [_someGroup] call A3A_fnc_getGroupVehicle; // Returns the group vehicle if it has one, objNull if not + [_someGroup] call FUNC(getGroupVehicle); // Returns the group vehicle if it has one, objNull if not + +License: APL-ND + */ // This function was part of A3A_fnc_vehStats diff --git a/A3A/addons/gui/functions/GUI/fn_getVehicleCrewCount.sqf b/A3A/addons/gui/functions/GUI/fn_getVehicleCrewCount.sqf index 7091d45b37..efdba30966 100644 --- a/A3A/addons/gui/functions/GUI/fn_getVehicleCrewCount.sqf +++ b/A3A/addons/gui/functions/GUI/fn_getVehicleCrewCount.sqf @@ -1,17 +1,22 @@ /* +Maintainer: Caleb Serafin, DoomMetal + Returns an array with numbers of vehicle positions - Params: - 0 : String - classname of vehicle - - Returns - Array : - 0 - driver - 1 - copilot - 2 - commander - 3 - gunners - 4 - passengers (includes FFV seats) - 5 - FFV seats +Params: + 0 : String - classname of vehicle + +Returns + Array : + 0 - driver + 1 - copilot + 2 - commander + 3 - gunners + 4 - passengers (includes FFV seats) + 5 - FFV seats + +License: APL-ND + */ // TODO UI-update: Update header diff --git a/A3A/addons/gui/functions/GUI/fn_hqDialog.sqf b/A3A/addons/gui/functions/GUI/fn_hqDialog.sqf index 0b9c39c986..f2a98145e9 100644 --- a/A3A/addons/gui/functions/GUI/fn_hqDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_hqDialog.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles the initialization and updating of the HQ Dialog This function should only be called from HqDialog onLoad and control activation EHs. @@ -17,8 +17,11 @@ Dependencies: None Example: - ["onLoad"] spawn A3A_fnc_hqDialog; // initialization - ["switchTab", ["garrison"]] call A3A_fnc_hqDialog; // switching to the garrison tab + ["onLoad"] spawn FUNC(hqDialog); // initialization + ["switchTab", ["garrison"]] call FUNC(hqDialog); // switching to the garrison tab + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -44,7 +47,7 @@ switch (_mode) do setGroupIconsSelectable false; // Show main tab content - ["switchTab", ["main"]] call A3A_fnc_hqDialog; + ["switchTab", ["main"]] call FUNC(hqDialog); // Move HQ button // TODO UI-update: Move to updateMainTab? @@ -52,16 +55,16 @@ switch (_mode) do private _moveHqIcon = _display displayCtrl A3A_IDC_MOVEHQICON; private _moveHqButton = _display displayCtrl A3A_IDC_MOVEHQBUTTON; - private _canMoveHQ = [] call A3A_fnc_canMoveHQ; + private _canMoveHQ = [] call FUNCMAIN(canMoveHQ); if (_canMoveHQ # 0) then { _moveHqButton ctrlEnable true; _moveHqButton ctrlSetTooltip ""; - _moveHqIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _moveHqIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); _moveHqIcon ctrlSetTooltip ""; } else { _moveHqButton ctrlEnable false; _moveHqButton ctrlSetTooltip _canMoveHQ # 1; - _moveHqIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _moveHqIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _moveHqIcon ctrlSetTooltip _canMoveHQ # 1; }; @@ -77,13 +80,13 @@ switch (_mode) do _restSlider sliderSetRange [0,24]; _restSlider sliderSetSpeed [1,1]; _restSlider sliderSetPosition 0; - ["restSliderChanged"] spawn A3A_fnc_hqDialog; + ["restSliderChanged"] spawn FUNC(hqDialog); // Garrison tab map drawing EHs // Select marker - _garrisonMap ctrlAddEventHandler ["Draw", "_this call A3A_fnc_mapDrawSelectEH"]; + _garrisonMap ctrlAddEventHandler ["Draw", "_this call A3A_GUI_fnc_mapDrawSelectEH"]; // Outposts - _garrisonMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawOutpostsEH"]; + _garrisonMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawOutpostsEH"]; Debug("HqDialog onLoad complete."); }; @@ -163,17 +166,17 @@ switch (_mode) do { case ("main"): { - ["updateMainTab"] call A3A_fnc_hqDialog; + ["updateMainTab"] call FUNC(hqDialog); }; case ("garrison"): { - ["updateGarrisonTab"] call A3A_fnc_hqDialog; + ["updateGarrisonTab"] call FUNC(hqDialog); }; case ("minefields"): { - ["updateMinefieldsTab"] call A3A_fnc_hqDialog; + ["updateMinefieldsTab"] call FUNC(hqDialog); }; }; }; @@ -194,15 +197,17 @@ switch (_mode) do private _invadersFlag = _display displayCtrl A3A_IDC_INVFLAGPICTURE; private _invadersAggroText = _display displayCtrl A3A_IDC_INVAGGROTEXT; _warLevelText ctrlSetText str tierWar; - _occupantsFlag ctrlSetText NATOFlagTexture; - _occupantsAggroText ctrlSetText ([aggressionLevelOccupants] call A3A_fnc_getAggroLevelString); + _occupantsFlag ctrlSetText (A3A_faction_occ get "flagTexture"); + _occupantsAggroText ctrlSetText ([aggressionLevelOccupants] call FUNCMAIN(getAggroLevelString)); _aggressionStr = localize "STR_antistasi_dialogs_generic_aggression"; - _occupantsFlag ctrlSetToolTip (nameOccupants + " " + _aggressionStr); - _occupantsAggroText ctrlSetTooltip (nameOccupants + " " + _aggressionStr); - _invadersFlag ctrlSetText CSATFlagTexture; - _invadersAggroText ctrlSetText ([aggressionLevelInvaders] call A3A_fnc_getAggroLevelString); - _invadersFlag ctrlSetToolTip (nameInvaders + " " + _aggressionStr); - _invadersAggroText ctrlSetTooltip (nameInvaders + " " + _aggressionStr); + private _nameOccupants = A3A_faction_occ get "name"; + _occupantsFlag ctrlSetToolTip (_nameOccupants + " " + _aggressionStr); + _occupantsAggroText ctrlSetTooltip (_nameOccupants + " " + _aggressionStr); + _invadersFlag ctrlSetText (A3A_faction_inv get "flagTexture"); + _invadersAggroText ctrlSetText ([aggressionLevelInvaders] call FUNCMAIN(getAggroLevelString)); + private _nameInvaders = A3A_faction_inv get "name"; + _invadersFlag ctrlSetToolTip (_nameInvaders + " " + _aggressionStr); + _invadersAggroText ctrlSetTooltip (_nameInvaders + " " + _aggressionStr); // Get location data private _controlledCities = {sidesX getVariable [_x, sideUnknown] == teamPlayer} count citiesX; @@ -315,7 +320,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_HQDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["main"]] call A3A_fnc_hqDialog; + ["switchTab", ["main"]] call FUNC(hqDialog); }]; _backButton ctrlShow true; @@ -331,12 +336,12 @@ switch (_mode) do { Trace("No marker selected, selecting HQ"); _hqMapPos = _garrisonMap ctrlMapWorldToScreen (getMarkerPos "Synd_HQ"); - ["garrisonMapClicked", [_hqMapPos]] call A3A_fnc_hqDialog; + ["garrisonMapClicked", [_hqMapPos]] call FUNC(hqDialog); }; // Get the data from the marker private _position = getMarkerPos _selectedMarker; - private _garrisonName = [_selectedMarker] call A3A_fnc_getLocationMarkerName; + private _garrisonName = "Outpost";//[_selectedMarker] call A3A_fnc_getLocationMarkerName; // ToDo define private _garrison = garrison getVariable [_selectedMarker, []]; // Get garrison counts @@ -438,7 +443,7 @@ switch (_mode) do _autoriflemanPrice = server getVariable (SDKMG # 0); _grenadierPrice = server getVariable (SDKGL # 0); _medicPrice = server getVariable (SDKMedic # 0); - _mortarPrice = (server getVariable staticCrewTeamPlayer) + ([SDKMortar] call A3A_fnc_vehiclePrice); + _mortarPrice = (server getVariable staticCrewTeamPlayer) + ([SDKMortar] call FUNCMAIN(vehiclePrice)); _marksmanPrice = server getVariable (SDKSniper # 0); _atPrice = server getVariable (SDKATman # 0); @@ -508,7 +513,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_HQDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["main"]] call A3A_fnc_hqDialog; + ["switchTab", ["main"]] call FUNC(hqDialog); }]; _backButton ctrlShow true; }; @@ -517,11 +522,11 @@ switch (_mode) do { private _restSlider = _display displayCtrl A3A_IDC_RESTSLIDER; private _restText = _display displayCtrl A3A_IDC_RESTTEXT; - private _time = sliderPosition _restSlider; - private _restTimeString = [_time, "HM", true] call A3A_fnc_formatTime; - private _postRestTime = daytime + _time; - if (_postRestTime > 24) then {_postRestTime = _postRestTime - 24}; - private _postRestTimeString = [_postRestTime, "HH:MM"] call BIS_fnc_timeToString; + private _timeHours = sliderPosition _restSlider; + private _restTimeString = [_timeHours * 60 * 60,1,1,false,2,false,true] call FUNCMAIN(timeSpan_format); + + private _postRestTime = (daytime + _timeHours) * 60 * 60; + private _postRestTimeString = [_postRestTime,2,2,false,[1,3],true,false] call FUNCMAIN(timeSpan_format); private _message = format [localize "STR_antistasi_dialogs_hq_rest_text" + "
" + localize "STR_antistasi_dialogs_hq_wakeup_text", _restTimeString, _postRestTimeString]; _restText ctrlSetStructuredText parseText _message; }; @@ -550,8 +555,8 @@ switch (_mode) do { private _factionMoneyEditBox = _display displayCtrl A3A_IDC_FACTIONMONEYEDITBOX; private _factionMoneyEditBoxValue = floor parseNumber ctrlText _factionMoneyEditBox; - [_factionMoneyEditBoxValue] call A3A_fnc_theBossSteal; - ["updateMainTab"] call A3A_fnc_hqDialog; + [_factionMoneyEditBoxValue] call FUNCMAIN(theBossSteal); + ["updateMainTab"] call FUNC(hqDialog); }; case ("garrisonMapClicked"): @@ -577,7 +582,7 @@ switch (_mode) do private _position = getMarkerPos _selectedMarker; _garrisonMap setVariable ["selectMarkerData", [_position]]; - ["updateGarrisonTab"] call A3A_fnc_hqDialog; + ["updateGarrisonTab"] call FUNC(hqDialog); }; // Updating the garrison numbers @@ -614,11 +619,11 @@ switch (_mode) do }; }; - [_unitType, _selectedMarker] spawn A3A_fnc_garrisonAdd; + [_unitType, _selectedMarker] spawn FUNCMAIN(garrisonAdd); sleep 1; // TODO UI-update: bad hack to make it correctly update the UI with the new number - ["updateGarrisonTab"] call A3A_fnc_hqDialog; + ["updateGarrisonTab"] call FUNC(hqDialog); }; case ("garrisonRemove"): @@ -654,12 +659,12 @@ switch (_mode) do }; }; - Debug_2("Calling A3A_fnc_garrisonRemove with [%1,%2]", _unitType, _selectedMarker); - [_unitType, _selectedMarker] spawn A3A_fnc_garrisonRemove; + Debug_2("Calling FUNCMAIN(garrisonRemove) with [%1,%2]", _unitType, _selectedMarker); + [_unitType, _selectedMarker] spawn FUNCMAIN(garrisonRemove); sleep 1; // TODO UI-update: bad hack to make it correctly update the UI with the new number - ["updateGarrisonTab"] call A3A_fnc_hqDialog; + ["updateGarrisonTab"] call FUNC(hqDialog); }; case ("dismissGarrison"): @@ -667,11 +672,11 @@ switch (_mode) do Trace("Dismissing garrison"); private _selectedMarker = _garrisonMap getVariable ["selectedMarker", ""]; - [_selectedMarker] spawn A3A_fnc_dismissGarrison; + [_selectedMarker] spawn FUNCMAIN(dismissGarrison); sleep 1; // Same stupd hack as before, need to fix this - ["updateGarrisonTab"] call A3A_fnc_hqDialog; + ["updateGarrisonTab"] call FUNC(hqDialog); }; case ("skipTime"): @@ -681,19 +686,19 @@ switch (_mode) do private _titleStr = localize "STR_A3A_fn_GUI_hqDialog_title"; // TODO UI-update: Move all these checks to update and disable button etc - if (player!= theBoss) exitWith [_titleStr, localize "STR_A3A_fn_GUI_hqDialog_notBoss"] call A3A_fnc_customHint; + if (player!= theBoss) exitWith [_titleStr, localize "STR_A3A_fn_GUI_hqDialog_notBoss"] call FUNCMAIN(customHint); _enemiesNear = false; { if ((side _x == Occupants) or (side _x == Invaders)) then { - if ([500,1,_x,teamPlayer] call A3A_fnc_distanceUnits) then {_presente = true}; + if ([500,1,_x,teamPlayer] call FUNCMAIN(distanceUnits)) then {_presente = true}; }; } forEach allUnits; - if (_enemiesNear) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_enemiesNear"] call A3A_fnc_customHint;}; - if ("rebelAttack" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_rebelAttack"] call A3A_fnc_customHint;}; - if ("invaderPunish" in A3A_activeTasks) exitWith {[_titleStr, format [localize "STR_A3A_fn_GUI_hqDialog_invaderPunish", FactionGet(inv,"name")]] call A3A_fnc_customHint;}; - if ("DEF_HQ" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_DEF_HQ"] call A3A_fnc_customHint;}; + if (_enemiesNear) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_enemiesNear"] call FUNCMAIN(customHint);}; + if ("rebelAttack" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_rebelAttack"] call FUNCMAIN(customHint);}; + if ("invaderPunish" in A3A_activeTasks) exitWith {[_titleStr, format [localize "STR_A3A_fn_GUI_hqDialog_invaderPunish", FactionGet(inv,"name")]] call FUNCMAIN(customHint);}; + if ("DEF_HQ" in A3A_activeTasks) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_DEF_HQ"] call FUNCMAIN(customHint);}; _playersNotAtHq = false; _posHQ = getMarkerPos respawnTeamPlayer; @@ -701,9 +706,9 @@ switch (_mode) do if ((_x distance _posHQ > 100) and (side _x == teamPlayer)) then {_checkX = true}; } forEach (allPlayers - (entities "HeadlessClient_F")); - if (_playersNotAtHq) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_playersNotAtHQ"] call A3A_fnc_customHint;}; + if (_playersNotAtHq) exitWith {[_titleStr, localize "STR_A3A_fn_GUI_hqDialog_playersNotAtHQ"] call FUNCMAIN(customHint);}; - [_time] remoteExec ["A3A_fnc_resourceCheckSkipTime", 0]; + [_time] remoteExec ["FUNCMAIN(resourceCheckSkipTime)", 0]; closeDialog 1; }; @@ -711,7 +716,7 @@ switch (_mode) do case ("buildWatchpost"): { closeDialog 1; - ["create"] spawn A3A_fnc_outpostDialog; + ["create"] spawn FUNCMAIN(outpostDialog); }; case ("removeWatchpost"): diff --git a/A3A/addons/gui/functions/GUI/fn_mainDialog.sqf b/A3A/addons/gui/functions/GUI/fn_mainDialog.sqf index 823e3b19be..cf3c2d22c9 100644 --- a/A3A/addons/gui/functions/GUI/fn_mainDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_mainDialog.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles the initialization and tab switching on the Main Dialog (aka the Y-Menu). This function should only be called from MainDialog onLoad and control activation EHs. @@ -17,8 +17,11 @@ Dependencies: None Example: - ["onLoad"] spawn A3A_fnc_mainDialog; // initialization - ["switchTab", ["player"]] call A3A_fnc_mainDialog; // switching to the player tab + ["onLoad"] spawn FUNC(mainDialog); // initialization + ["switchTab", ["player"]] call FUNC(mainDialog); // switching to the player tab + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -27,7 +30,10 @@ Example: #include "..\..\script_component.hpp" FIX_LINE_NUMBERS() -params[["_mode","onLoad"], ["_params",[]]]; +params[ + ["_mode","onLoad"], + ["_params", []] +]; // Get display private _display = findDisplay A3A_IDD_MAINDIALOG; @@ -39,13 +45,13 @@ switch (_mode) do Debug("MainDialog onLoad starting..."); // Disable/hide unavailable tab buttons - if (player != theBoss) then { + if (player isNotEqualTo theBoss) then { private _commanderTabButton = _display displayCtrl A3A_IDC_COMMANDERTABBUTTON; _commanderTabButton ctrlEnable false; _commanderTabButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_commander_tab_disabled_tooltip"; }; - if !((isServer && hasInterface) || admin owner player > 0) then { + if !([] call FUNCMAIN(isLocalAdmin)) then { private _adminTabButton = _display displayCtrl A3A_IDC_ADMINTABBUTTON; _adminTabButton ctrlEnable false; _adminTabButton ctrlshow false; @@ -57,7 +63,7 @@ switch (_mode) do setGroupIconsSelectable false; // Show player tab content - ["switchTab", ["player"]] call A3A_fnc_mainDialog; + ["switchTab", ["player"]] call FUNC(mainDialog); // Cache group info in map control Debug("Caching group info"); @@ -67,7 +73,7 @@ switch (_mode) do if (player == theBoss) then { { - private _groupData = [_x] call A3A_fnc_getGroupInfo; + private _groupData = [_x] call FUNC(getGroupInfo); _hcGroupData pushBack _groupData; } forEach hcallGroups player; }; @@ -85,19 +91,19 @@ switch (_mode) do // Commander map Draw EHs // Fire mission markers - private _fireMissionEH = _commanderMap ctrlAddEventHandler ["Draw","call A3A_fnc_fireMissionEH"]; + private _fireMissionEH = _commanderMap ctrlAddEventHandler ["Draw","call A3A_GUI_fnc_fireMissionEH"]; Debug_1("Adding Fire Mission Draw EH to commander map: %1", _fireMissionEH); // Select marker - private _commanderHcSelectEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawSelectEH"]; + private _commanderHcSelectEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawSelectEH"]; Debug_1("Adding HC group selection Draw EH to commander map: %1", _commanderHcSelectEH); // High command groups - private _commanderHcGroupsEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawHcGroupsEH"]; + private _commanderHcGroupsEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawHcGroupsEH"]; Debug_1("Adding HC group marker Draw EH to commander map: %1", _commanderHcGroupsEH); // Outposts - private _commanderOutpostsEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawOutpostsEH"]; + private _commanderOutpostsEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawOutpostsEH"]; Debug_1("Adding outposts Draw EH to commander map: %1", _commanderOutpostsEH); // User Markers - private _commanderUserMarkersEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawUserMarkersEH"]; + private _commanderUserMarkersEH = _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawUserMarkersEH"]; Debug_1("Adding user markers Draw EH to commander map: %1", _commanderUserMarkersEH); @@ -106,10 +112,10 @@ switch (_mode) do // Fast Travel map Draw EHs private _fastTravelMap = _display displayCtrl A3A_IDC_FASTTRAVELMAP; // Select marker - private _fastTravelSelectEH = _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawSelectEH"]; + private _fastTravelSelectEH = _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawSelectEH"]; Debug_1("Adding destination select marker Draw EH to Fast Travel map: %1", _fastTravelSelectEH); // Outposts - private _fastTravelOutpostsEH = _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawOutpostsEH"]; + private _fastTravelOutpostsEH = _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawOutpostsEH"]; Debug_1("Adding outposts Draw EH to Fast Travel map: %1", _fastTravelOutpostsEH); @@ -121,7 +127,7 @@ switch (_mode) do _display = findDisplay 7000; _commanderMap = _display displayCtrl 7201; _mapScale = ctrlMapScale _commanderMap; - diag_log(format ["MAP SCALE: %1", _mapScale]); + //diag_log(format ["MAP SCALE: %1", _mapScale]); sleep 1; }; }; @@ -170,7 +176,7 @@ switch (_mode) do case ("admin"): { - if ((isServer && hasInterface) || admin owner player > 0) then { + if ([] call FUNCMAIN(isLocalAdmin)) then { _selectedTabIDC = A3A_IDC_ADMINTAB; }; }; @@ -249,52 +255,59 @@ switch (_mode) do { case ("player"): { - ["update"] call A3A_fnc_playerTab; + ["update"] call FUNC(playerTab); }; case ("commander"): { - ["update"] call A3A_fnc_commanderTab; + ["update"] call FUNC(commanderTab); }; case ("admin"): { - ["update"] call A3A_fnc_adminTab; + ["update"] call FUNC(adminTab); }; case ("fasttravel"): { - ["clearSelectedLocation"] call A3A_fnc_fastTravelTab; - ["update"] call A3A_fnc_fastTravelTab; + ["clearSelectedLocation"] call FUNC(fastTravelTab); + ["update"] call FUNC(fastTravelTab); }; case ("construct"): { - ["update"] call A3A_fnc_constructTab; + ["update"] call FUNC(constructTab); }; case ("aimanagement"): { - ["update"] call A3A_fnc_aiManagementTab; + ["update"] call FUNC(aiManagementTab); }; case ("donate"): { - ["update"] call A3A_fnc_donateTab; + ["update"] call FUNC(donateTab); }; case ("airsupport"): { - ["update"] call A3A_fnc_airSupportTab; + ["update"] call FUNC(airSupportTab); }; case ("playermanagement"): { - ["update"] call A3A_fnc_playerManagementTab; + ["update"] call FUNC(playerManagementTab); }; }; }; + case ("uiEvent_hideTopBarCheckBox_checked"): + { + _params params [["_isCheckedNum", 0, [0]]]; + private _isChecked = _isCheckedNum isEqualTo 1; + ["BATTLE_MENU_CHECKBOX", _isChecked] call FUNCMAIN(disableInfoBar); + }; + default { // Log error if attempting to call a mode that doesn't exist Error_1("Main Dialog mode does not exist: %1", _mode); diff --git a/A3A/addons/gui/functions/GUI/fn_mapDrawHcGroupsEH.sqf b/A3A/addons/gui/functions/GUI/fn_mapDrawHcGroupsEH.sqf index e7c57fdcba..7cceb8d292 100644 --- a/A3A/addons/gui/functions/GUI/fn_mapDrawHcGroupsEH.sqf +++ b/A3A/addons/gui/functions/GUI/fn_mapDrawHcGroupsEH.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Event Handler for drawing High Command group markers to the maps Arguments: @@ -15,8 +15,13 @@ Dependencies: Map must be open Example: - _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawHcGroupsEH"]; + _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawHcGroupsEH"]; + +License: APL-ND + */ +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() params ["_map"]; @@ -24,15 +29,15 @@ params ["_map"]; private _oldHcGroupData = _map getVariable "hcGroupData"; private _hcGroupData = []; { - private _groupData = [_x] call A3A_fnc_getGroupInfo; + private _groupData = [_x] call FUNC(getGroupInfo); _hcGroupData pushBack _groupData; } forEach hcallGroups player; // TODO UI-update: Replace with commander? _map setVariable ["hcGroupData", _hcGroupData]; -// TODO UI-update: Move to A3A_fnc_commanderTab +// TODO UI-update: Move to FUNC(commanderTab) // Update commander tab when data changes /* if !(_oldHcGroupData isEqualTo _hcGroupData) then { -["update"] call A3A_fnc_commanderTab; +["update"] call FUNC(commanderTab); }; */ { diff --git a/A3A/addons/gui/functions/GUI/fn_mapDrawOutpostsEH.sqf b/A3A/addons/gui/functions/GUI/fn_mapDrawOutpostsEH.sqf index 875095cf0e..0909d4d811 100644 --- a/A3A/addons/gui/functions/GUI/fn_mapDrawOutpostsEH.sqf +++ b/A3A/addons/gui/functions/GUI/fn_mapDrawOutpostsEH.sqf @@ -1,29 +1,34 @@ /* - Maintainer: DoomMetal - Draws map markers to map controls - - Arguments: - None - - Return Value: - None - - Scope: Internal - Environment: Unscheduled - Public: No - Dependencies: - airportsX - resourcesX - factories - outposts - seaports - citiesX - - Example: - _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawOutpostsEH"]; +Maintainer: Caleb Serafin, DoomMetal + Draws map markers to map controls + +Arguments: + None + +Return Value: + None + +Scope: Internal +Environment: Unscheduled +Public: No +Dependencies: + airportsX + resourcesX + factories + outposts + seaports + citiesX + +Example: + _fastTravelMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawOutpostsEH"]; + +License: APL-ND + */ #include "..\..\dialogues\textures.inc" +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() params ["_map"]; @@ -42,8 +47,8 @@ private _markerSize = ((_maxMarkerSize + (_minMarkerSize - _maxMarkerSize) * ((_ private _outpostIconData = []; { private _marker = _x; - private _type = _marker call A3A_fnc_getLocationMarkerType; - private _name = [_marker] call A3A_fnc_getLocationMarkerName; + private _type = "outpost";//_marker call A3A_fnc_getLocationMarkerType; // ToDo define + private _name = "Outpost";//[_marker] call A3A_fnc_getLocationMarkerName; // ToDo define private _pos = getMarkerPos _marker; private _side = sidesX getVariable [_marker,sideUnknown]; private _color = [1,1,1,1]; @@ -72,44 +77,43 @@ private _outpostIconData = []; }; private _fadedColor = [_color # 0, _color # 1, _color # 2, _alpha]; - - private _icon = A3A_missionRootPath + A3A_Icon_Map_Blank; + private _icon = A3A_Icon_Map_Blank; if (_mapScale < _fadeEnd) then { _icon = switch (_type) do { case ("hq"): { - A3A_missionRootPath + A3A_Icon_Map_HQ; + A3A_Icon_Map_HQ; }; case ("city"): { - A3A_missionRootPath + A3A_Icon_Map_City; + A3A_Icon_Map_City; }; case ("factory"): { - A3A_missionRootPath + A3A_Icon_Map_Factory; + A3A_Icon_Map_Factory; }; case ("resource"): { - A3A_missionRootPath + A3A_Icon_Map_Resource; + A3A_Icon_Map_Resource; }; case ("seaport"): { - A3A_missionRootPath + A3A_Icon_Map_Seaport; + A3A_Icon_Map_Seaport; }; case ("airport"): { - A3A_missionRootPath + A3A_Icon_Map_Airport; + A3A_Icon_Map_Airport; }; case ("outpost"): { - A3A_missionRootPath + A3A_Icon_Map_Outpost; + A3A_Icon_Map_Outpost; }; case ("watchpost"): { - A3A_missionRootPath + A3A_Icon_Map_Watchpost; + A3A_Icon_Map_Watchpost; }; case ("roadblock"): { - A3A_missionRootPath + A3A_Icon_Map_Roadblock; + A3A_Icon_Map_Roadblock; }; default { diff --git a/A3A/addons/gui/functions/GUI/fn_mapDrawSelectEH.sqf b/A3A/addons/gui/functions/GUI/fn_mapDrawSelectEH.sqf index 4de56d777c..5ef72a86b2 100644 --- a/A3A/addons/gui/functions/GUI/fn_mapDrawSelectEH.sqf +++ b/A3A/addons/gui/functions/GUI/fn_mapDrawSelectEH.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Event Handler for drawing select markers to maps. Draws a pulsing selection marker on the position specified in @@ -19,11 +19,16 @@ Dependencies: Dialog with map must be open Example: - _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_fnc_mapDrawSelectEH"]; + _commanderMap ctrlAddEventHandler ["Draw","_this call A3A_GUI_fnc_mapDrawSelectEH"]; + +License: APL-ND + */ #include "..\..\dialogues\defines.hpp" #include "..\..\dialogues\textures.inc" +#include "..\..\script_component.hpp" +FIX_LINE_NUMBERS() params ["_map"]; @@ -62,7 +67,7 @@ if (_dir == 0) then }; _map setVariable ["selectMarkerData", [_position, _radius, _dir]]; -private _color = [A3A_COLOR_SELECT_MARKER] call A3A_fnc_configColorToArray; +private _color = [A3A_COLOR_SELECT_MARKER] call FUNC(configColorToArray); _map drawIcon [ A3A_Select_Marker, diff --git a/A3A/addons/gui/functions/GUI/fn_mapDrawUserMarkersEH.sqf b/A3A/addons/gui/functions/GUI/fn_mapDrawUserMarkersEH.sqf index 3ae473d1b7..29c702411b 100644 --- a/A3A/addons/gui/functions/GUI/fn_mapDrawUserMarkersEH.sqf +++ b/A3A/addons/gui/functions/GUI/fn_mapDrawUserMarkersEH.sqf @@ -1,22 +1,25 @@ /* - Maintainer: doomMetal - Draws user markers to map controls - Used for cases where we want only user created markers, not editor placed ones +Maintainer: Caleb Serafin, DoomMetal + Draws user markers to map controls + Used for cases where we want only user created markers, not editor placed ones - Arguments: - None - - Return Value: - None +Arguments: + None - Scope: internal - Environment: Unscheduled - Public: No - Dependencies: +Return Value: None - Example: - _commanderMap ctrlAddEventHandler ["Draw", "_this call A3A_fnc_mapDrawUserMarkersEH"]; +Scope: internal +Environment: Unscheduled +Public: No +Dependencies: +None + +Example: + _commanderMap ctrlAddEventHandler ["Draw", "_this call A3A_GUI_fnc_mapDrawUserMarkersEH"]; + +License: APL-ND + */ #include "..\..\dialogues\textures.inc" diff --git a/A3A/addons/gui/functions/GUI/fn_playerManagementTab.sqf b/A3A/addons/gui/functions/GUI/fn_playerManagementTab.sqf index 73cfe9bb7e..e7979ba1e3 100644 --- a/A3A/addons/gui/functions/GUI/fn_playerManagementTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_playerManagementTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Player Management tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] call A3A_fnc_playerManagementTab; + ["update"] call FUNC(playerManagementTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -37,7 +40,7 @@ switch (_mode) do private _backButton = _display displayCtrl A3A_IDC_MAINDIALOGBACKBUTTON; _backButton ctrlRemoveAllEventHandlers "MouseButtonClick"; _backButton ctrlAddEventHandler ["MouseButtonClick", { - ["switchTab", ["admin"]] call A3A_fnc_mainDialog; + ["switchTab", ["admin"]] call FUNC(mainDialog); }]; _backButton ctrlShow true; @@ -58,7 +61,7 @@ switch (_mode) do } forEach allPlayers; _listBox lnbSetCurSelRow 0; - ["playerLbSelectionChanged"] spawn A3A_fnc_playerManagementTab; + ["playerLbSelectionChanged"] spawn FUNC(playerManagementTab); }; // Player Management @@ -95,7 +98,7 @@ switch (_mode) do private _index = lbCurSel _listBox; _listBox lnbSetColor [[_index,0], [0.2,0.6,0.2,1]]; // fakePlayers select _index setVariable ["isMember", true]; // TODO UI-update: use A3A_fnc_memberAdd - ["playerLbSelectionChanged"] spawn A3A_fnc_playerManagementTab; + ["playerLbSelectionChanged"] spawn FUNC(playerManagementTab); }; case ("adminRemoveMember"): @@ -105,7 +108,7 @@ switch (_mode) do private _index = lbCurSel _listBox; _listBox lnbSetColor [[_index,0], [0.7,0.7,0.7,1]]; // fakePlayers select _index setVariable ["isMember", false]; // TODO UI-update: use A3A_fnc_memberAdd - ["playerLbSelectionChanged"] spawn A3A_fnc_playerManagementTab; + ["playerLbSelectionChanged"] spawn FUNC(playerManagementTab); }; default diff --git a/A3A/addons/gui/functions/GUI/fn_playerTab.sqf b/A3A/addons/gui/functions/GUI/fn_playerTab.sqf index 47f9b9e868..616ada07c6 100644 --- a/A3A/addons/gui/functions/GUI/fn_playerTab.sqf +++ b/A3A/addons/gui/functions/GUI/fn_playerTab.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles updating and controls on the Player tab of the Main dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["update"] spawn A3A_fnc_playerTab; + ["update"] spawn FUNC(playerTab); + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -39,65 +42,83 @@ switch (_mode) do // Undercover private _undercoverButton = _display displayCtrl A3A_IDC_UNDERCOVERBUTTON; private _undercoverIcon = _display displayCtrl A3A_IDC_UNDERCOVERICON; - private _canGoUndercover = [] call A3A_fnc_canGoUndercover; - private _isUndercover = captive player; + ([] call A3A_fnc_canGoUndercover) params ["_canUndercover", "_reasonNotEnum", "_shortReasonNot", "_longReasonNot"]; + private _isUndercover = _reasonNotEnum == 2; // Already undercover if (_isUndercover) then { - _undercoverButton ctrlEnable true; - _undercoverButton ctrlSetTooltip ""; - _undercoverButton ctrlSetText "Go Overt"; + // TEMPORARILY DISABLED Due to undercover system not allowing going to "not undercover" without reporting the player for 30 minutes. + // _undercoverButton ctrlEnable true; + // _undercoverButton ctrlSetTooltip ""; + // _undercoverButton ctrlSetText "Go Overt"; + // _undercoverButton ctrlRemoveAllEventHandlers "MouseButtonClick"; + // _undercoverButton ctrlAddEventHandler ["MouseButtonClick", {player setCaptive false; ["update"] spawn FUNC(playerTab)}]; + // _undercoverIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); + // _undercoverIcon ctrlSetTooltip ""; + // STAND IN CODE + _undercoverButton ctrlEnable false; + _undercoverButton ctrlSetTooltip "Already Undercover"; + _undercoverButton ctrlSetText "Go Undercover"; _undercoverButton ctrlRemoveAllEventHandlers "MouseButtonClick"; - _undercoverButton ctrlAddEventHandler ["MouseButtonClick", {player setCaptive false; ["update"] spawn A3A_fnc_playerTab}]; - _undercoverIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); - _undercoverIcon ctrlSetTooltip ""; + _undercoverButton ctrlAddEventHandler ["MouseButtonClick", {[] spawn { + [] spawn A3A_fnc_goUndercover; + sleep 2; // https://github.com/official-antistasi-community/A3-Antistasi/pull/3229#issuecomment-2110708172 + ["update"] spawn FUNC(playerTab); + }}]; + _undercoverIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); + _undercoverIcon ctrlSetTooltip "Already Undercover"; } else { - if (_canGoUndercover # 0) then { + if (_canUndercover) then { _undercoverButton ctrlEnable true; - _undercoverButton ctrlSetTooltip ""; + _undercoverButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_undercover"; _undercoverButton ctrlSetText localize "STR_antistasi_dialogs_main_undercover"; _undercoverButton ctrlRemoveAllEventHandlers "MouseButtonClick"; - _undercoverButton ctrlAddEventHandler ["MouseButtonClick", {[] spawn A3A_fnc_goUndercover; ["update"] spawn A3A_fnc_playerTab}]; - _undercoverIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); - _undercoverIcon ctrlSetTooltip ""; + _undercoverButton ctrlAddEventHandler ["MouseButtonClick", {[] spawn { + [] spawn A3A_fnc_goUndercover; + sleep 2; // https://github.com/official-antistasi-community/A3-Antistasi/pull/3229#issuecomment-2110708172 + ["update"] spawn FUNC(playerTab) + }}]; + _undercoverIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); + _undercoverIcon ctrlSetTooltip localize "STR_antistasi_dialogs_main_undercover"; } else { _undercoverButton ctrlEnable false; - _undercoverButton ctrlSetTooltip (_canGoUndercover # 1); + _undercoverButton ctrlSetTooltip (_shortReasonNot); _undercoverButton ctrlSetText localize "STR_antistasi_dialogs_main_undercover"; - _undercoverIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); - _undercoverIcon ctrlSetTooltip (_canGoUndercover # 1); + _undercoverButton ctrlRemoveAllEventHandlers "MouseButtonClick"; + _undercoverIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); + _undercoverIcon ctrlSetTooltip (_shortReasonNot); }; }; // Fast travel private _fastTravelButton = _display displayCtrl A3A_IDC_FASTTRAVELBUTTON; private _fastTravelIcon = _display displayCtrl A3A_IDC_FASTTRAVELICON; - private _canFastTravel = [player] call A3A_fnc_canFastTravel; - if (_canFastTravel # 0) then { + [player, player] call A3A_fnc_canFastTravel params ["_isFastTravelAllowed","_fastTravelBlockers"]; + if (_isFastTravelAllowed) then { _fastTravelButton ctrlEnable true; _fastTravelButton ctrlSetTooltip localize "STR_antistasi_dialogs_main_fast_travel_tooltip"; - _fastTravelIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _fastTravelIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); _fastTravelIcon ctrlSetTooltip localize "STR_antistasi_dialogs_main_fast_travel_tooltip"; } else { _fastTravelButton ctrlEnable false; - _fastTravelButton ctrlSetTooltip (_canFastTravel # 1); - _fastTravelIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); - _fastTravelIcon ctrlSetTooltip (_canFastTravel # 1); + _fastTravelButton ctrlSetTooltip (_fastTravelBlockers joinString ", "); + _fastTravelIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); + _fastTravelIcon ctrlSetTooltip (_fastTravelBlockers joinString ", "); }; // Construct private _constructButton = _display displayCtrl A3A_IDC_CONSTRUCTBUTTON; private _constructIcon = _display displayCtrl A3A_IDC_CONSTRUCTICON; - private _canBuild = [] call A3A_fnc_canBuild; + private _canBuild = [false,"Walk here"];// [] call A3A_fnc_canBuild; // ToDo define. if (_canBuild # 0) then { _constructButton ctrlEnable true; _constructButton ctrlSetTooltip ""; - _constructIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _constructIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); _constructIcon ctrlSetTooltip ""; } else { _constructButton ctrlEnable false; _constructButton ctrlSetTooltip (_canBuild # 1); - _constructIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _constructIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); _constructIcon ctrlSetTooltip (_canBuild # 1); }; @@ -131,11 +152,11 @@ switch (_mode) do if (_canManageAi) then { _aiManagementButton ctrlEnable true; _aiManagementButton ctrlSetTooltip ""; - _aiManagementIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call A3A_fnc_configColorToArray); + _aiManagementIcon ctrlSetTextColor ([A3A_COLOR_WHITE] call FUNC(configColorToArray)); } else { _aiManagementButton ctrlEnable false; _aiManagementButton ctrlSetTooltip _aiManagementTooltipText; - _aiManagementIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aiManagementIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; @@ -158,7 +179,7 @@ switch (_mode) do _playerRankPicture ctrlSetText ([player, "texture"] call BIS_fnc_rankParams); private _time = time; // TODO UI-update: get time at session start, not mission start, aka after you've loaded in, and on respawns etc... - _aliveText ctrlSetText format [[_time] call A3A_fnc_formatTime]; + _aliveText ctrlSetText format [[_time,1,1,false,2,false,true] call A3A_fnc_timeSpan_format]; // TODO UI-update: Make function for getting num of completed missions private _missions = 0; @@ -176,10 +197,10 @@ switch (_mode) do // Player is commander // Update icon _commanderPicture ctrlSetText A3A_Icon_PlayerCommander; - _commanderPicture ctrlSetTextColor ([A3A_COLOR_COMMANDER] call A3A_fnc_configColorToArray); + _commanderPicture ctrlSetTextColor ([A3A_COLOR_COMMANDER] call FUNC(configColorToArray)); // Update text _commanderText ctrlSetText localize "STR_antistasi_dialogs_main_commander_text_commander"; - _commanderText ctrlSetTextColor ([A3A_COLOR_COMMANDER] call A3A_fnc_configColorToArray); + _commanderText ctrlSetTextColor ([A3A_COLOR_COMMANDER] call FUNC(configColorToArray)); // Update button _commanderButton ctrlSetText localize "STR_antistasi_dialogs_main_commander_button_resign"; } else { @@ -187,20 +208,20 @@ switch (_mode) do // Player is eligible for commander // Update icon _commanderPicture ctrlSetText A3A_Icon_PlayerEligible; - _commanderPicture ctrlSetTextColor ([A3A_COLOR_ELIGIBLE] call A3A_fnc_configColorToArray); + _commanderPicture ctrlSetTextColor ([A3A_COLOR_ELIGIBLE] call FUNC(configColorToArray)); // Update text _commanderText ctrlSetText localize "STR_antistasi_dialogs_main_commander_text_eligible"; - _commanderText ctrlSetTextColor ([A3A_COLOR_ELIGIBLE] call A3A_fnc_configColorToArray); + _commanderText ctrlSetTextColor ([A3A_COLOR_ELIGIBLE] call FUNC(configColorToArray)); // Update button _commanderButton ctrlSetText localize "STR_antistasi_dialogs_main_commander_button_set_ineligible"; } else { // Player is not eligible for commander // Update icon _commanderPicture ctrlSetText A3A_Icon_PlayerIneligible; - _commanderPicture ctrlSetTextColor ([A3A_COLOR_INELIGIBLE] call A3A_fnc_configColorToArray); + _commanderPicture ctrlSetTextColor ([A3A_COLOR_INELIGIBLE] call FUNC(configColorToArray)); // Update text _commanderText ctrlSetText localize "STR_antistasi_dialogs_main_commander_text_ineligible"; - _commanderText ctrlSetTextColor ([A3A_COLOR_INELIGIBLE] call A3A_fnc_configColorToArray); + _commanderText ctrlSetTextColor ([A3A_COLOR_INELIGIBLE] call FUNC(configColorToArray)); // Update button _commanderButton ctrlSetText localize "STR_antistasi_dialogs_main_commander_button_set_eligible"; }; diff --git a/A3A/addons/gui/functions/GUI/fn_recruitDialog.sqf b/A3A/addons/gui/functions/GUI/fn_recruitDialog.sqf index cec4196de9..d2e472c0af 100644 --- a/A3A/addons/gui/functions/GUI/fn_recruitDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_recruitDialog.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles the initialization and updating of the Recruit Units dialog. This function should only be called from RecruitDialog onLoad and control activation EHs. @@ -17,7 +17,10 @@ Dependencies: None Example: - ["onLoad"] spawn A3A_fnc_recruitDialog; // initialization + ["onLoad"] spawn FUNC(recruitDialog); // initialization + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -87,42 +90,42 @@ switch (_mode) do if (_money < _militiamanPrice || _hr < 1) then { _militiamanButton ctrlEnable false; _militiamanButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _militiamanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _militiamanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _autoriflemanPrice || _hr < 1) then { _autoriflemanButton ctrlEnable false; _autoriflemanButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _autoriflemanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _autoriflemanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _grenadierPrice || _hr < 1) then { _grenadierButton ctrlEnable false; _grenadierButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _grenadierIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _grenadierIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _antitankPrice || _hr < 1) then { _antitankButton ctrlEnable false; _antitankButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _antitankIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _antitankIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _medicPrice || _hr < 1) then { _medicButton ctrlEnable false; _medicButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _medicIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _medicIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _marksmanPrice || _hr < 1) then { _marksmanButton ctrlEnable false; _marksmanButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _marksmanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _marksmanIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _engineerPrice || _hr < 1) then { _engineerButton ctrlEnable false; _engineerButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _engineerIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _engineerIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _bombSpecialistPrice || _hr < 1) then { _bombSpecialistButton ctrlEnable false; _bombSpecialistButton ctrlSetTooltip "You do not have enough money or HR for this unit type"; // TODO UI-update: stringtable - _bombSpecialistIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _bombSpecialistIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; Debug("RecruitDialog onLoad complete."); diff --git a/A3A/addons/gui/functions/GUI/fn_recruitSquadDialog.sqf b/A3A/addons/gui/functions/GUI/fn_recruitSquadDialog.sqf index 9842924efc..797563cbd7 100644 --- a/A3A/addons/gui/functions/GUI/fn_recruitSquadDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_recruitSquadDialog.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles the initialization and updating of the Recruit Squad dialog. This function should only be called from RecruitSquadDialog onLoad and control activation EHs. @@ -17,8 +17,11 @@ Dependencies: None Example: - ["onLoad"] spawn A3A_fnc_recruitDialog; // initialization - ["update"] spawn A3A_fnc_recruitDialog; // update + ["onLoad"] spawn FUNC(recruitDialog); // initialization + ["update"] spawn FUNC(recruitDialog); // update + +License: APL-ND + */ #include "..\..\dialogues\ids.inc" @@ -38,7 +41,7 @@ switch (_mode) do vehQuery = nil; // Separated because initial "onLoad" needs scheduled env while other updates needs unscheduled - ["update"] call A3A_fnc_recruitSquadDialog; + ["update"] call FUNC(recruitSquadDialog); Debug("RecruitSquadDialog onLoad complete."); }; @@ -159,48 +162,48 @@ switch (_mode) do if (_money < _infSquadMoney || _hr < _infSquadHr) then { _infSquadButton ctrlEnable false; _infSquadButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _infSquadIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _infSquadIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; // TODO UI-update: reenable this when eng squad button is back in /* if (_money < _engSquadMoney || _hr < _engSquadHr) then { _engSquadButton ctrlEnable false; _engSquadButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _engSquadIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _engSquadIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; */ if (_money < _infTeamMoney || _hr < _infTeamHr) then { _infTeamButton ctrlEnable false; _infTeamButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _infTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _infTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _mgTeamMoney || _hr < _mgTeamHr) then { _mgTeamButton ctrlEnable false; _mgTeamButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _mgTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _mgTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _atTeamMoney || _hr < _atTeamHr) then { _atTeamButton ctrlEnable false; _atTeamButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _atTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _atTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _mortarTeamMoney || _hr < _mortarTeamHr) then { _mortarTeamButton ctrlEnable false; _mortarTeamButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _mortarTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _mortarTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _sniperTeamMoney || _hr < _sniperTeamHr) then { _sniperTeamButton ctrlEnable false; _sniperTeamButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _sniperTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _sniperTeamIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _atCarMoney || _hr < _atCarHr) then { _atCarButton ctrlEnable false; _atCarButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _atCarIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _atCarIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; if (_money < _aaTruckMoney || _hr < _aaTruckHr) then { _aaTruckButton ctrlEnable false; _aaTruckButton ctrlSetTooltip "You do not have enough money or HR for this group type"; // TODO UI-update: stringtable - _aaTruckIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call A3A_fnc_configColorToArray); + _aaTruckIcon ctrlSetTextColor ([A3A_COLOR_BUTTON_BACKGROUND_DISABLED] call FUNC(configColorToArray)); }; }; diff --git a/A3A/addons/gui/functions/GUI/fn_requestMissionDialog.sqf b/A3A/addons/gui/functions/GUI/fn_requestMissionDialog.sqf index e2ad307f7a..23ae246879 100644 --- a/A3A/addons/gui/functions/GUI/fn_requestMissionDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_requestMissionDialog.sqf @@ -1,5 +1,5 @@ /* -Maintainer: DoomMetal +Maintainer: Caleb Serafin, DoomMetal Handles controls on the Request Mission dialog. Arguments: @@ -16,7 +16,10 @@ Dependencies: None Example: - ["missionButtonClicked", ["CON"]] call A3A_fnc_requestMissionDialog; + ["missionButtonClicked", ["CON"]] call FUNC(requestMissionDialog); + +License: APL-ND + */ #include "..\..\script_component.hpp" diff --git a/A3A/addons/gui/functions/GUI/fn_setUpPlacerHints.sqf b/A3A/addons/gui/functions/GUI/fn_setUpPlacerHints.sqf index 026ee58295..7abe568b4e 100644 --- a/A3A/addons/gui/functions/GUI/fn_setUpPlacerHints.sqf +++ b/A3A/addons/gui/functions/GUI/fn_setUpPlacerHints.sqf @@ -1,16 +1,23 @@ /* -Author: [Killerswin2] - creates the controls for the dialog. Picture and Button are created. Data Saved to buttons. +Maintainer: Caleb Serafin, Killerswin2 + Creates the controls for the dialog. Picture and Button are created. Data Saved to buttons. + Arguments: -1. string for initilizer + string for initilizer + Return Value: -NONE + + NONE Scope: Client Environment: scheduled -Public: -no +Public: No + Example: -["onLoad"] spawn A3A_fnc_teamLeaderRTSPlacerDialog + ["onLoad"] spawn A3A_GUI_fnc_teamLeaderRTSPlacerDialog + +License: APL-ND + As of 1st July 2024 Ellis Nielsen, the owner of the code, has transfered the ownership to Calep Serafin. + */ diff --git a/A3A/addons/gui/functions/GUI/fn_teamLeaderRTSPlacerDialog.sqf b/A3A/addons/gui/functions/GUI/fn_teamLeaderRTSPlacerDialog.sqf index 299ae4ee9e..818b5e12bd 100644 --- a/A3A/addons/gui/functions/GUI/fn_teamLeaderRTSPlacerDialog.sqf +++ b/A3A/addons/gui/functions/GUI/fn_teamLeaderRTSPlacerDialog.sqf @@ -1,16 +1,22 @@ /* -Author: [Killerswin2, Hakon (Stole his bb code)] - creates the controls for the dialog. Picture and Button are created. Data Saved to buttons. +Maintainer: Caleb Serafin, Killerswin2, Hakon + Creates the controls for the dialog. Picture and Button are created. Data Saved to buttons. + Arguments: -1. string for initilizer + string for initilizer + Return Value: -NONE + NONE + Scope: Client Environment: scheduled -Public: -no +Public: No Example: -["onLoad"] spawn A3A_fnc_teamLeaderRTSPlacerDialog + ["onLoad"] spawn A3A_GUI_fnc_teamLeaderRTSPlacerDialog + +License: APL-ND + As of 1st July 2024 Ellis Nielsen, the owner of the code, has transfered the ownership to Calep Serafin. + */ @@ -45,7 +51,7 @@ switch (_mode) do _moneyCtrl ctrlSetText format ["%1 €", A3A_building_EHDB # AVAILABLE_MONEY]; private _buildableObjects = A3A_buildableObjects; - + private _boxWidth = round ((ctrlPosition _buildControlsGroup # 2) / GRID_W); private _itemsPerRow = floor ((_boxWidth - 6) / 36); // minimum 32 + 4 grids per tile private _itemWidth = floor ((_boxWidth - 6 - 4*_itemsPerRow) / _itemsPerRow); @@ -62,13 +68,13 @@ switch (_mode) do private _displayName = getText (_configClass >> "displayName"); private _editorPreview = getText (_configClass >> "editorPreview"); private _model = getText (_configClass >> "model"); - + private _hasVehiclePreview = fileExists _editorPreview; if (!_hasVehiclePreview) then { _editorPreview = A3A_PlaceHolder_NoVehiclePreview; }; - + private _itemXpos = (4 + (4 + _itemWidth) * (_forEachIndex % _itemsPerRow)) * GRID_W; private _itemYpos = (floor (_forEachIndex / _itemsPerRow)) * (34 * GRID_H); @@ -83,7 +89,7 @@ switch (_mode) do _previewPicture ctrlSetPosition [0, 0, _itemWidth * GRID_W, 24 * GRID_H]; _previewPicture ctrlSetText _editorPreview; _previewPicture ctrlCommit 0; - + private _button = _display ctrlCreate ["A3A_ButtonSmallText", A3A_IDC_TEAMLEADERBUILDBUTTON, _itemControlsGroup]; _button ctrlSetPosition [0, 24 * GRID_H, _itemWidth * GRID_W, 6 * GRID_H]; _button ctrlSetText _displayName; @@ -135,7 +141,7 @@ switch (_mode) do _buildTime ctrlSetPosition[1 * GRID_W, 19 * GRID_H, 4 * GRID_W, 4 * GRID_H]; _buildTime ctrlSetText A3A_Icon_Construct; _buildTime ctrlCommit 0; - + // show stuff _itemControlsGroup ctrlSetFade 0; _itemControlsGroup ctrlCommit 0.1; @@ -157,7 +163,7 @@ switch (_mode) do } else { A3A_cam camCommand "manual on"; }; - + }]; // _txt = _display ctrlCreate[ "A3A_StructuredText", -1]; diff --git a/A3A/addons/gui/functions/SetupGUI/fn_setupDialog.sqf b/A3A/addons/gui/functions/SetupGUI/fn_setupDialog.sqf index e09cfff685..1178046aa2 100644 --- a/A3A/addons/gui/functions/SetupGUI/fn_setupDialog.sqf +++ b/A3A/addons/gui/functions/SetupGUI/fn_setupDialog.sqf @@ -54,9 +54,9 @@ switch (_mode) do case ("onLoad"): { if (isNil "A3A_setup_saveData") exitWith { Error("onLoad somehow called without save data") }; - ["fillFactions", [true]] call A3A_fnc_setupFactionsTab; - ["setSaveData"] call A3A_fnc_setupLoadgameTab; - ["switchTab", ["loadgame"]] call A3A_fnc_setupDialog; + ["fillFactions", [true]] call A3A_GUI_fnc_setupFactionsTab; + ["setSaveData"] call A3A_GUI_fnc_setupLoadgameTab; + ["switchTab", ["loadgame"]] call A3A_GUI_fnc_setupDialog; }; case ("onUnload"): @@ -93,9 +93,9 @@ switch (_mode) do switch (_selectedTab) do { - case ("loadgame"): { ["update"] call A3A_fnc_setupLoadgameTab }; - case ("factions"): { ["update"] call A3A_fnc_setupFactionsTab }; - case ("params"): { ["update"] call A3A_fnc_setupParamsTab }; + case ("loadgame"): { ["update"] call A3A_GUI_fnc_setupLoadgameTab }; + case ("factions"): { ["update"] call A3A_GUI_fnc_setupFactionsTab }; + case ("params"): { ["update"] call A3A_GUI_fnc_setupParamsTab }; }; }; @@ -116,6 +116,7 @@ switch (_mode) do ,["tem_anizay", "Anizay"] ,["cup_chernarus_A3", "Cherno 2020"] ,["SPE_Normandy", "Normandy"] + ,["SPE_Mortain", "Mortain"] ]; { private _realMap = _x get "map"; @@ -136,7 +137,7 @@ switch (_mode) do if (!isNull _display) exitWith { Error("Server sent data while dialog is open? Curious"); - ["onLoad"] spawn A3A_fnc_setupDialog; // Should rebuild dialog with new data. Hopefully. + ["onLoad"] spawn A3A_GUI_fnc_setupDialog; // Should rebuild dialog with new data. Hopefully. }; if (isNull findDisplay 46 or !isNull findDisplay 49 or dialog) then { diff --git a/A3A/addons/gui/functions/SetupGUI/fn_setupFactionsTab.sqf b/A3A/addons/gui/functions/SetupGUI/fn_setupFactionsTab.sqf index 8b1c22891c..d95fdb2229 100644 --- a/A3A/addons/gui/functions/SetupGUI/fn_setupFactionsTab.sqf +++ b/A3A/addons/gui/functions/SetupGUI/fn_setupFactionsTab.sqf @@ -1,5 +1,5 @@ /* -Function: A3A_fnc_setupFactionsTab +Function: A3A_GUI_fnc_setupFactionsTab Handles the initialization and tab switching on the setup dialog. This function should only be called from setupDialog onLoad and control activation EHs. Author: John Jordan (jaj22) @@ -34,6 +34,8 @@ Debug_1("setupFactionsTab called with mode %1", _mode); private _display = findDisplay A3A_IDD_SETUPDIALOG; private _worldName = toLower worldName; +private _addonTable = _display displayCtrl A3A_IDC_SETUP_ADDONVICSBOX; +private _dlcTable = _display displayCtrl A3A_IDC_SETUP_DLCBOX; if (isNil "A3A_setup_loadedPatches") exitWith { Error("No patch data. Load order fuckup?") }; @@ -74,7 +76,6 @@ if (isNil {_display getVariable "validFactions"}) then _display setVariable ["validFactions", _factions]; // Fill the addon vics - private _addonTable = _display displayCtrl A3A_IDC_SETUP_ADDONVICSBOX; private _checkCtrls = []; { private _textCtrl = _display ctrlCreate ["A3A_Text_Small", -1, _addonTable]; @@ -97,7 +98,6 @@ if (isNil {_display getVariable "validFactions"}) then // Fill the DLC // Fetch these automatically but remove DLC without equipment and vehicles //private _loadedDLC = getLoadedModsInfo select {_x#3 and !(_x#1 in ["A3","curator","argo","tacops"])}; - private _dlcTable = _display displayCtrl A3A_IDC_SETUP_DLCBOX; _checkCtrls = []; { private _textCtrl = _display ctrlCreate ["A3A_Text_Small", -1, _dlcTable]; @@ -117,19 +117,84 @@ if (isNil {_display getVariable "validFactions"}) then switch (_mode) do { - case ("update"): {}; // Don't hide anything here, nothing to do + case ("update"): { + _addonTable ctrlShow false; + private _buttonCtrl = _display displayCtrl A3A_IDC_SETUP_DLCTOGGLE; + _buttonCtrl ctrlSetText localize "STR_antistasi_dialogs_setup_toggleAddons_addons"; + }; + case ("switchAddons"): + { + private _buttonCtrl = _display displayCtrl A3A_IDC_SETUP_DLCTOGGLE; + private _buttonStatus = ctrlShown _dlcTable; + _buttonCtrl ctrlSetText localize (["STR_antistasi_dialogs_setup_toggleAddons_DLC","STR_antistasi_dialogs_setup_toggleAddons_addons"] select !_buttonStatus); + _dlcTable ctrlShow !_buttonStatus; + _addonTable ctrlShow _buttonStatus; + }; case ("factionSelected"): { _params params ["_listbox", "_rowIndex"]; if (_rowIndex == -1) exitWith {}; - if (_listbox lbData _rowIndex != "") then { - _listBox setVariable ["lastSel", _rowIndex]; + _listBox setVariable ["lastSel", _rowIndex]; + private _faction = _listbox lbData lbCurSel _listbox; + private _infoBox = _display displayCtrl A3A_IDC_SETUP_INFOBOX; + private _infoLabel = _display displayCtrl A3A_IDC_SETUP_INFOLABEL; + private _path = (configFile >> "A3A" >> "Templates" >> _faction); + private _shortName = if !(isNull (_path/"shortName")) then + { + getText(_path/"shortName"); } else { - _listbox lbSetCurSel (_listbox getVariable ["lastSel", 0]); + "Faction"; // DO NOT LOCALIZE -- This is a debug string that should only show up when a template author hasn't put a short name in. + }; + + _infoLabel ctrlSetText format [localize "STR_antistasi_dialogs_setup_infoPanel_header",_shortName]; + private _requiredAddons = getArray(_path/"requiredAddons") + getArray(_path/"forceDLC") - ["ws","vn","gm","spe"]; // CDLCs are listed twice for forced DLC and dependency + private _prettyAddonHM = createHashMapFromArray [ // TODO: Do we want to trim down the dependencies list? CUP Vehicles has dependencies on CUP Units and CUP Vehicles + ["Weapons_1_F_lxWS", "Western Sahara CDLC"] + ,["vn_weapons", "S.O.G Prairie Fire CDLC"] + ,["rhsgref_main", "RHSGREF"] + ,["rhssaf_main", "RHSSAF"] + ,["UK3CB_Factions_Vehicles_SUV", "3CB Factions"] + ,["UK3CB_BAF_Weapons", "3CB BAF Weapons"] + ,["UK3CB_BAF_Vehicles", "3CB BAF Vehicles"] + ,["UK3CB_BAF_Units_Common", "3CB BAF Units"] + ,["UK3CB_BAF_Equipment", "3CB BAF Equipment"] + ,["CUP_Creatures_People_Civil_Russia", "CUP Units"] + ,["CUP_BaseConfigs", "CUP Weapons"] + ,["CUP_AirVehicles_Core", "CUP Vehicles"] + ,["uns_weap_w", "Unsung"] + ,["gm_weapons_items", "Global Mobilization CDLC"] + ,["bwa3_common", "BWMod"] + ,["ww2_spe_assets_c_characters_germans_c", "Spearhead 1944 CDLC"] + ,["IFA3_Core", "IFA3 AIO"] + ,["Swedish_Forces_Pack","Swedish Forces Pack"] + ]; + + private _prettyAddons = _requiredAddons apply + { + if (!isNull(configFile >> "CfgMods" >> _x >> "nameShort")) then + { + getText(configFile >> "CfgMods" >> _x >> "nameShort"); + } else { + _prettyAddonHM getOrDefault [_x,_x]; + }; }; - }; + _prettyAddons = if (count _prettyAddons == 0) then { + format [localize "STR_antistasi_dialogs_setup_prettyAddons","None"]; + } else { + format [localize "STR_antistasi_dialogs_setup_prettyAddons",_prettyAddons joinString ", "]; + }; + + private _lore = if !(isNull(_path/"lore")) then + { + getText(_path/"lore"); + } else { + "The template author has not added a description to this template."; // TODO: Do we localize a debug string? + }; + private _fullString = [_prettyAddons,endl,endl,_lore] joinString ""; + _infoBox ctrlSetText _fullString; + }; case ("fillFactions"): { _params params ["_isSaveChange"]; @@ -143,10 +208,10 @@ switch (_mode) do lbClear _listBox; { private _index = _listBox lbAdd getText(_x/"name"); + _listBox lbSetData [_index, configName _x]; if (_x call _fnc_factionLoaded) then { _listBox lbSetPicture [_index, getText(_x/"flagTexture")]; _listBox lbSetPictureRight [_index, getText(_x/"logo")]; - _listBox lbSetData [_index, configName _x]; if (_selected == configName _x) then { _listBox lbSetCurSel (lbSize _listBox - 1) }; } else { _listBox lbSetPicture [_index, "a3\data_f\flags\flag_white_dmg_co.paa"]; diff --git a/A3A/addons/gui/functions/SetupGUI/fn_setupHQPosDialog.sqf b/A3A/addons/gui/functions/SetupGUI/fn_setupHQPosDialog.sqf index 5071eb6b90..8a72b030e0 100644 --- a/A3A/addons/gui/functions/SetupGUI/fn_setupHQPosDialog.sqf +++ b/A3A/addons/gui/functions/SetupGUI/fn_setupHQPosDialog.sqf @@ -1,5 +1,5 @@ /* -function: A3A_fnc_setupHQPosDialog +function: A3A_GUI_fnc_setupHQPosDialog Handles the initialization and tab switching on the setup dialog. This function should only be called from setupDialog onLoad and control activation EHs. diff --git a/A3A/addons/gui/functions/SetupGUI/fn_setupLoadgameTab.sqf b/A3A/addons/gui/functions/SetupGUI/fn_setupLoadgameTab.sqf index bc915eef06..10e7d9ab3a 100644 --- a/A3A/addons/gui/functions/SetupGUI/fn_setupLoadgameTab.sqf +++ b/A3A/addons/gui/functions/SetupGUI/fn_setupLoadgameTab.sqf @@ -34,6 +34,10 @@ private _oldParamsCtrl = _display displayCtrl A3A_IDC_SETUP_OLDPARAMSCHECKBOX; private _saveBoxColumns = [["gameID", "ID", 0, 9], ["mapStr", "Map", 9, 25], ["name", "Name", 25, 45], ["verStr", "Version", 70, 12], ["timeStr", "Time", 82, 15], ["fileStr", "File", 97, 9]]; +private _fnc_factionLoaded = { + getArray (A3A_SETUP_CONFIGFILE/"A3A"/"Templates"/_this/"requiredAddons") findIf { !(_x in A3A_setup_loadedPatches) } == -1 +}; + switch (_mode) do { case ("onLoad"): @@ -62,11 +66,14 @@ switch (_mode) do }; private _sameMap = (worldName == _saveData get "map"); private _newGame = cbChecked _newGameCtrl; + private _factionData = ["getFactions"] call A3A_GUI_fnc_setupFactionsTab; + private _usableFactions = _factionData#0 findIf {!(_x call _fnc_factionLoaded)}; // Update the controls according to selections _copyGameCtrl ctrlEnable (_sameMap and _newGame); if (!_sameMap and cbChecked _copyGameCtrl) exitWith { _copyGameCtrl cbSetChecked false }; // will re-call update - _startCtrl ctrlEnable (_sameMap or _newGame); + _startCtrl ctrlEnable ((_sameMap or _newGame) and (_usableFactions isEqualTo -1)); + if (_usableFactions != -1) then {_startCtrl ctrlSetTooltip (localize "STR_A3A_fn_GUI_setupLoadgameTab_badFactions");} else {_startCtrl ctrlSetTooltip "";}; _copyGameCtrl ctrlShow _newGame; _oldParamsCtrl ctrlShow _newGame; (_display displayCtrl A3A_IDC_SETUP_NAMESPACECHECKBOX) ctrlshow _newGame; @@ -81,7 +88,7 @@ switch (_mode) do if ((cbChecked _newGameCtrl and !cbChecked _copyGameCtrl) or !_sameMap) then { _factions = [[], [], []] }; if (_factions isNotEqualTo (_display getVariable "savedFactions")) then { _display setVariable ["savedFactions", _factions]; - ["fillFactions", [true]] call A3A_fnc_setupFactionsTab; + ["fillFactions", [true]] call A3A_GUI_fnc_setupFactionsTab; }; // If it's not a new game or load params or copy game is checked, load params @@ -90,7 +97,7 @@ switch (_mode) do if ((_sameMap and !cbChecked _newGameCtrl) or cbChecked _copyGameCtrl or cbChecked _oldParamsCtrl) then { if (count _params > 0 and _params isNotEqualTo (_display getVariable "savedParams")) then { _display setVariable ["savedParams", _params]; - ["fillParams"] call A3A_fnc_setupParamsTab; + ["fillParams"] call A3A_GUI_fnc_setupParamsTab; }; }; }; @@ -112,7 +119,7 @@ switch (_mode) do if (_varname == "name") then { _listboxCtrl setVariable ["nameCtrls", _ctrls] }; } forEach _saveBoxColumns; - ["selectSave", [-1]] call A3A_fnc_setupLoadgameTab; + ["selectSave", [-1]] call A3A_GUI_fnc_setupLoadgameTab; }; case ("saveListClick"): @@ -122,8 +129,8 @@ switch (_mode) do if (_mpos#0 > (ctrlPosition _listBoxCtrl # 2) - 2*GRID_W) exitWith {}; // ignore scroll-bar region private _rowIndex = floor (_mpos#1 / (4*GRID_H)); if (_rowIndex >= count A3A_setup_saveData) exitWith {}; // ignore clicks below saves - if (_rowIndex == _listboxCtrl getVariable "rowIndex") exitWith {}; // ignore if already selected - ["selectSave", [_rowIndex]] call A3A_fnc_setupLoadgameTab; + if (_rowIndex == _listboxCtrl getVariable "rowIndex") exitWith {}; // ignore if already selected + ["selectSave", [_rowIndex]] call A3A_GUI_fnc_setupLoadgameTab; }; case ("selectSave"): @@ -137,7 +144,7 @@ switch (_mode) do _selectBar ctrlCommit 0; _listBoxCtrl setVariable ["rowIndex", _rowIndex]; - ["update"] call A3A_fnc_setupLoadgameTab; + ["update"] call A3A_GUI_fnc_setupLoadgameTab; }; case ("startGame"): @@ -169,7 +176,7 @@ switch (_mode) do _saveData set ["useNewNamespace", cbChecked (_display displayCtrl A3A_IDC_SETUP_NAMESPACECHECKBOX)]; // Factions tab: [factions, addonvics, DLC] - private _factionData = ["getFactions"] call A3A_fnc_setupFactionsTab; + private _factionData = ["getFactions"] call A3A_GUI_fnc_setupFactionsTab; _saveData set ["factions", _factionData#0]; _saveData set ["addonVics", _factionData#1]; _saveData set ["DLC", _factionData#2]; @@ -179,11 +186,11 @@ switch (_mode) do _confirmText = _confirmText + endl + format [localize "STR_A3A_fn_GUI_setupLoadgameTab_occInv", _occName, _invName]; // Params tab: Array of [name, value] - private _paramsData = ["getParams"] call A3A_fnc_setupParamsTab; + private _paramsData = ["getParams"] call A3A_GUI_fnc_setupParamsTab; _saveData set ["params", _paramsData]; // Set data & function for confirmation, then open confirmation box - _display setVariable ["confirmData", [_confirmText, A3A_fnc_setupLoadgameTab, "startGameConfirm"]]; + _display setVariable ["confirmData", [_confirmText, A3A_GUI_fnc_setupLoadgameTab, "startGameConfirm"]]; _display setVariable ["newSaveData", _saveData]; diag_log format ["Prepared save data: %1", _saveData]; createDialog "A3A_SetupConfirmDialog"; @@ -194,26 +201,26 @@ switch (_mode) do // Send the start request to the server and close dialog (_display getVariable "newSaveData") remoteExec ["A3A_fnc_startGame", 2]; - ["serverClose"] call A3A_fnc_setupDialog; // make sure the confirm dialog is closed first + ["serverClose"] call A3A_GUI_fnc_setupDialog; // make sure the confirm dialog is closed first }; case ("newGameCheck"): { // if (!cbChecked _newGameCtrl && cbChecked _copyGameCtrl) exitWith { _copyGameCtrl cbSetChecked false }; - ["update"] call A3A_fnc_setupLoadgameTab; + ["update"] call A3A_GUI_fnc_setupLoadgameTab; }; case ("copyGameCheck"): { // exitWith so that we don't infinite loop if (cbChecked _copyGameCtrl && cbChecked _oldParamsCtrl) exitWith { _oldParamsCtrl cbSetChecked false }; - ["update"] call A3A_fnc_setupLoadgameTab; + ["update"] call A3A_GUI_fnc_setupLoadgameTab; }; case ("oldParamsCheck"): { if (cbChecked _copyGameCtrl && cbChecked _oldParamsCtrl) exitWith { _copyGameCtrl cbSetChecked false }; - ["update"] call A3A_fnc_setupLoadgameTab; + ["update"] call A3A_GUI_fnc_setupLoadgameTab; }; case ("oldNamespaceCheck"): @@ -233,7 +240,7 @@ switch (_mode) do private _saveData = A3A_setup_saveData select _index; private _str = format [localize "STR_A3A_fn_GUI_setupLoadgameTab_delete", _saveData get "gameID", _saveData get "mapStr"]; - _display setVariable ["confirmData", [_str, A3A_fnc_setupLoadgameTab, "deleteGameConfirmed"]]; + _display setVariable ["confirmData", [_str, A3A_GUI_fnc_setupLoadgameTab, "deleteGameConfirmed"]]; createDialog "A3A_SetupConfirmDialog"; }; @@ -243,7 +250,7 @@ switch (_mode) do private _saveData = A3A_setup_saveData select _index; [_saveData get "serverID", _saveData get "gameID", _saveData get "map"] remoteExecCall ["A3A_fnc_deleteSave", 2]; A3A_setup_saveData deleteAt _index; - ["setSaveData"] call A3A_fnc_setupLoadgameTab; + ["setSaveData"] call A3A_GUI_fnc_setupLoadgameTab; }; case ("renameGame"): diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal.sqf index 8b2d25c4af..cc6155afbc 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal.sqf @@ -131,7 +131,7 @@ _arrayContains = { private _minItemsMember = { params ["_index", "_item"]; // Arsenal tab index, item classname private _min = jna_minItemMember select _index; - _min = A3A_arsenalLimits getOrDefault [_item, _min]; + _min = A3A_arsenalLimits getOrDefault [_item, [_min]] select 0; if (_index == IDC_RSCDISPLAYARSENAL_TAB_CARGOMAG || _index == IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL) then { _min = _min * getNumber (configfile >> "CfgMagazines" >> _item >> "count"); }; @@ -1343,7 +1343,7 @@ switch _mode do { case (ctrlenabled (_display displayctrl (IDC_RSCDISPLAYARSENAL_LIST + IDC_RSCDISPLAYARSENAL_TAB_HANDGUN))): {handgunweapon player}; default {""}; }; - _compatibleItems = _weapon call bis_fnc_compatibleItems; + _compatibleItems = compatibleItems _weapon; if not (({_x == _item} count _compatibleItems > 0) || _item isequalto "")exitwith{ _ctrlList lbSetColor [_lbAdd, [1,1,1,0.25]]; }; @@ -1966,7 +1966,7 @@ switch _mode do { }; //prevent selecting grey items, needs to be this complicated because bis_fnc_compatibleItems returns some crap resolts like optic_aco instead of Optic_Aco - _compatibleItems = _weapon call bis_fnc_compatibleItems; + _compatibleItems = compatibleItems _weapon; if not (({_x == _item} count _compatibleItems > 0) || _item isequalto "")exitwith{ ['TabSelectRight',[_display,_index]] call jn_fnc_arsenal; }; diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_handleAction.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_handleAction.sqf index af8188fa42..f87dd4251c 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_handleAction.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_handleAction.sqf @@ -47,7 +47,7 @@ _attachmentsContainers = [[],[],[]]; if!(isNil "_weaponAtt")then{ { - _atts = [_x select 1,_x select 2,_x select 3,_x select 5]; + _atts = [_x select 1,_x select 2,_x select 3,_x select 6]; _atts = _atts - [""]; _attachments = _attachments + _atts; } forEach _weaponAtt; diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_init.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_init.sqf index 92a89e54ef..26f491a040 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_init.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_init.sqf @@ -47,8 +47,13 @@ IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL 26 jna_minItemMember = [-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]; //jna_minItemMember = [24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,memberOnlyMagLimit,24,24,24,24,memberOnlyMagLimit]; jna_minItemMember = jna_minItemMember apply { A3A_guestItemLimit }; -jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAG, A3A_guestItemLimit*3]; -jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL, A3A_guestItemLimit*3]; +jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAG, minWeaps]; +jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL, minWeaps]; + +if (minWeaps == -1) then { + jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAG, A3A_guestItemLimit*3]; + jna_minItemMember set [IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL, A3A_guestItemLimit*3]; +}; //server if(isServer)then{ @@ -71,7 +76,7 @@ if(hasInterface)then{ true, false, "", - "alive _target && {_target distance _this < 5}" + "alive _target && {_target distance _this < 5} && _this == _this getVariable ['owner',objNull]" ]; diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_itemType.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_itemType.sqf index 038b1b853f..eeb52b94f7 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_itemType.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_itemType.sqf @@ -182,6 +182,7 @@ private _itemCategory = switch true do { default { // haaaaack if (_item isKindOf ["SPE_MUZZLE_FAKEMAG", configFile >> "CfgMagazines"]) exitWith {"Junk"}; + if (_item isKindOf ["LIB_MUZZLE_FAKEMAG", configFile >> "CfgMagazines"]) exitWith {"Junk"}; "Magazine"; }; }; diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_loadInventory.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_loadInventory.sqf index 433691097b..2839307923 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_loadInventory.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_arsenal_loadInventory.sqf @@ -164,7 +164,7 @@ _itemCounts =+ _availableItems; _item = _x select 0; _amount = (_x select 1); if (_amount != -1 && !_isMember) then { - _itemMin = A3A_arsenalLimits getOrDefault [_item, _arrayMin]; + _itemMin = A3A_arsenalLimits getOrDefault [_item, [_arrayMin]] select 0; if (_isMagArray) then { _itemMin = _itemMin * getNumber (configfile >> "CfgMagazines" >> _item >> "count") }; _subArray set [_foreachindex, [_item, (_amount - _itemMin) max 0]]; }; diff --git a/A3A/addons/jeroen_arsenal/JNA/fn_vehicleArsenal.sqf b/A3A/addons/jeroen_arsenal/JNA/fn_vehicleArsenal.sqf index d6f807f4d2..792128f07b 100644 --- a/A3A/addons/jeroen_arsenal/JNA/fn_vehicleArsenal.sqf +++ b/A3A/addons/jeroen_arsenal/JNA/fn_vehicleArsenal.sqf @@ -118,7 +118,7 @@ disableserialization; private _minItemsMember = { params ["_index", "_item"]; // Arsenal tab index, item classname private _min = jna_minItemMember select _index; - _min = A3A_arsenalLimits getOrDefault [_item, _min]; + _min = A3A_arsenalLimits getOrDefault [_item, [_min]] select 0; if (_index == IDC_RSCDISPLAYARSENAL_TAB_CARGOMAG || _index == IDC_RSCDISPLAYARSENAL_TAB_CARGOMAGALL) then { _min = _min * getNumber (configfile >> "CfgMagazines" >> _item >> "count"); }; diff --git a/A3A/addons/jeroen_arsenal/Stringtable.xml b/A3A/addons/jeroen_arsenal/Stringtable.xml index c82cd6c178..4625ecaba1 100644 --- a/A3A/addons/jeroen_arsenal/Stringtable.xml +++ b/A3A/addons/jeroen_arsenal/Stringtable.xml @@ -229,10 +229,12 @@ These items were not in the Arsenal: 다음 아이템은 무기고에 없습니다: + Этих предметов не было в Арсенале: These items were not in the Arsenal, so the originals have been kept: 다음 아이템들은 무기고에 없었기 때문에, 원본들이 보관되었습니다: + Этих предметов не было в Арсенале, поэтому были сохранены оригиналы: We are low on this item, only members may use it diff --git a/A3A/addons/logistics/Cargo/3CBFactions.hpp b/A3A/addons/logistics/Cargo/3CBFactions.hpp index 46e5dd8429..b4766a0dfd 100644 --- a/A3A/addons/logistics/Cargo/3CBFactions.hpp +++ b/A3A/addons/logistics/Cargo/3CBFactions.hpp @@ -15,3 +15,10 @@ class UK3CB_Factions_addons_UK3CB_Factions_Static_UK3CB_Factions_Static_M240_UK3 recoil = 50; isWeapon = 1; }; +class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_motorbikes_uk3cb_m1030_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0.01,-0.3,1.6}; + rotation[] = {0.06,0.1,0}; + size = 2; + recoil = 0; +}; diff --git a/A3A/addons/logistics/Cargo/IFA.hpp b/A3A/addons/logistics/Cargo/IFA.hpp new file mode 100644 index 0000000000..c097fd0eab --- /dev/null +++ b/A3A/addons/logistics/Cargo/IFA.hpp @@ -0,0 +1,120 @@ +//Mortars +class WW2_Assets_m_Weapons_Mortars_m_WW2_M2_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,1}; + rotation[] = {0,0,0}; + size = 2; + recoil = 2500; + isWeapon = 1; +}; +class WW2_Assets_m_Weapons_Mortars_m_IF_Bm37_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,1}; + rotation[] = {0,0,0}; + size = 3; + recoil = 3500; + isWeapon = 1; +}; +class WW2_Assets_m_Weapons_Mortars_m_IF_GrWr34_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,1}; + rotation[] = {0,0,0}; + size = 3; + recoil = 3500; + isWeapon = 1; +}; +//Crates & Misc +class WW2_Assets_m_Weapons_Ammoboxes_m_WW2_Cle_Container_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {90,0,0}; + size = 2; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_GER_Weapons_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 1; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_SU_Ammo_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 1; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_Ammobox_Lone_Big_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0.21}; + rotation[] = {0,0,0}; + size = 1; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_SU_Weapons_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 1; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_GER_Weapons_Big_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0.5,0}; + rotation[] = {0,0,0}; + size = 2; + recoil = 0; +}; +class WW2_Assets_m_Weapons_Ammoboxes_m_IF_SU_Weapons_Big_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0.3,0,0}; + rotation[] = {0,0,0}; + size = 2; + recoil = 0; +}; + + +class WW2_Assets_m_Vehicles_StaticWeapons_m_IF_Searchlight_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 2; + recoil = 0; + isWeapon = 1; +}; +//MGs +class WW2_Assets_m_Vehicles_StaticWeapons_m_WW2_MG34_lafette_high_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0.35,0}; + rotation[] = {0,0,0}; + size = 2; + recoil = 1000; + isWeapon = 1; +}; +class WW2_Assets_m_Vehicles_StaticWeapons_m_IF_MG42_Lafette_High_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0.35,0}; + rotation[] = {0,0,0}; + size = 2; + recoil = 1000; + isWeapon = 1; +}; + +//AA guns +class WW2_Assets_m_Vehicles_StaticWeapons_m_IF_FlaK_38_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 3; + recoil = 1500; + isWeapon = 1; +}; +class WW2_Assets_m_Vehicles_StaticWeapons_m_IF_Flakvierling_38_p3d : TRIPLES(ADDON,Cargo,Base) +{ + offset[] = {0,0,0}; + rotation[] = {0,0,0}; + size = 3; + recoil = 1000; + isWeapon = 1; +}; diff --git a/A3A/addons/logistics/CfgLogistics.hpp b/A3A/addons/logistics/CfgLogistics.hpp index 8845e94a0c..c32b2ad0cc 100644 --- a/A3A/addons/logistics/CfgLogistics.hpp +++ b/A3A/addons/logistics/CfgLogistics.hpp @@ -11,7 +11,9 @@ class DOUBLES(ADDON,Nodes) #include "Nodes\CUP.hpp" #include "Nodes\D3S.hpp" #include "Nodes\GM.hpp" + #include "Nodes\IFA.hpp" #include "Nodes\RDS.hpp" + #include "Nodes\RF.hpp" #include "Nodes\RHS.hpp" #include "Nodes\RNT.hpp" #include "Nodes\SPE.hpp" @@ -19,6 +21,7 @@ class DOUBLES(ADDON,Nodes) #include "Nodes\Vanilla.hpp" #include "Nodes\VN.hpp" #include "Nodes\WS.hpp" + #include "Nodes\SFP.hpp" }; @@ -39,6 +42,7 @@ class DOUBLES(ADDON,Cargo) #include "Cargo\BWA3.hpp" #include "Cargo\CUP.hpp" #include "Cargo\GM.hpp" + #include "Cargo\IFA.hpp" #include "Cargo\RHS.hpp" #include "Cargo\SPE.hpp" #include "Cargo\UNS.hpp" diff --git a/A3A/addons/logistics/Nodes/3CBFactions.hpp b/A3A/addons/logistics/Nodes/3CBFactions.hpp index 058277cb2a..396e19156c 100644 --- a/A3A/addons/logistics/Nodes/3CBFactions.hpp +++ b/A3A/addons/logistics/Nodes/3CBFactions.hpp @@ -32,6 +32,24 @@ class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehic }; }; +class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_hilux_uk3cb_hilux_civilian_closed_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {-0.05,-0.5,-0.634}; + seats[] = {5}; + }; + class Node2 + { + offset[] = {-0.05,-1.6,-0.634}; + seats[] = {3,4,6}; + }; + }; +}; + class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_hilux_uk3cb_hilux_p3d : TRIPLES(ADDON,Nodes,Base) { class Nodes @@ -719,3 +737,114 @@ class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehic }; }; }; + +class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_scud_uk3cb_maz_543_open_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,0.2,-0.35}; + seats[] = {0,1}; + }; + class Node2 + { + offset[] = {0,-0.6,-0.35}; + seats[] = {2,3}; + }; + class Node3 + { + offset[] = {0,-1.4,-0.35}; + seats[] = {4,5}; + }; + class Node4 + { + offset[] = {0,-2.2,-0.35}; + seats[] = {6,7}; + }; + class Node5 + { + offset[] = {0,-3,-0.35}; + seats[] = {8,9}; + }; + class Node6 + { + offset[] = {0,-3.8,-0.35}; + seats[] = {10,11}; + }; + }; +}; +class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_scud_uk3cb_maz_543_closed_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,0.2,-0.35}; + seats[] = {0,1}; + }; + class Node2 + { + offset[] = {0,-0.6,-0.35}; + seats[] = {2,3}; + }; + class Node3 + { + offset[] = {0,-1.4,-0.35}; + seats[] = {4,5}; + }; + class Node4 + { + offset[] = {0,-2.2,-0.35}; + seats[] = {6,7}; + }; + class Node5 + { + offset[] = {0,-3,-0.35}; + seats[] = {8,9}; + }; + class Node6 + { + offset[] = {0,-3.8,-0.35}; + seats[] = {10,11}; + }; + }; +}; +class UK3CB_Factions_addons_UK3CB_Factions_Vehicles_wheeled_UK3CB_Factions_Vehicles_scud_uk3cb_maz_543_Recovery_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,2.6,-3.25}; + }; + class Node2 + { + offset[] = {0,1.8,-3.25}; + }; + class Node3 + { + offset[] = {0,1,-3.25}; + }; + class Node4 + { + offset[] = {0,0.2,-3.25}; + }; + class Node5 + { + offset[] = {0,-0.6,-3.25}; + }; + class Node6 + { + offset[] = {0,-1.4,-3.25}; + }; + class Node7 + { + offset[] = {0,-2.2,-3.25}; + }; + class Node8 + { + offset[] = {0,-3,-3.25}; + }; + }; +}; diff --git a/A3A/addons/logistics/Nodes/IFA.hpp b/A3A/addons/logistics/Nodes/IFA.hpp new file mode 100644 index 0000000000..9b319e14cb --- /dev/null +++ b/A3A/addons/logistics/Nodes/IFA.hpp @@ -0,0 +1,163 @@ +class WW2_Assets_m_Vehicles_Cars_m_IF_Willys_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {-0.325,-0.9,-0.35}; + seats[] = {1, 2}; + }; + }; +}; + +//If the cargo nodes were moved towards the front a little bit seat 8 & 9 on the Opel Blitz could be unblocked +class WW2_Assets_m_Vehicles_Trucks_m_IF_Opelblitz_Tent_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-0.4,-0.05}; + seats[] = {1, 2, 7, 10, 11}; + }; + class Node2 + { + offset[] = {0,-1.2,-0.05}; + seats[] = {5,6}; + }; + class Node3 + { + offset[] = {0,-2,-0.05}; + seats[] = {3,4,8,9}; + }; + }; +}; + +class WW2_Assets_m_Vehicles_Trucks_m_IF_Opelblitz_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-0.4,-0.05}; + seats[] = {1,2,7,10,11}; + }; + class Node2 + { + offset[] = {0,-1.2,-0.05}; + seats[] = {5,6}; + }; + class Node3 + { + offset[] = {0,-2,-0.05}; + seats[] = {3,4,8,9}; + }; + }; +}; + +//Nodes seem offcentre, check if AAF basic weapons is offcentre before fixing +class WW2_Assets_m_Vehicles_WheeledAPC_m_IF_SdKfz_7_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-0.5,-0.75}; + seats[] = {2,3,4,5,9}; + }; + class Node2 + { + offset[] = {0,-1.3,-0.75}; + seats[] = {10}; + }; + class Node3 + { + offset[] = {0,-2.1,-0.75}; + seats[] = {6}; + }; + class Node4 + { + offset[] = {0,-2.9,-0.75}; + seats[] = {7,8}; + }; + }; +}; + +class WW2_Assets_m_Vehicles_Trucks_m_IF_Us6_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-0.4,0.2}; + seats[] = {1,10}; + }; + class Node2 + { + offset[] = {0,-1.2,0.2}; + seats[] = {2,5,6,7}; + }; + class Node3 + { + offset[] = {0,-2,0.2}; + seats[] = {3,4}; + }; + class Node4 + { + offset[] = {0,-2.8,0.2}; + seats[] = {8,9}; + }; + }; +}; + +class WW2_Assets_m_Vehicles_Trucks_m_IF_Gmc353Truck_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-0.4,-0.6}; + seats[] = {1,10}; + }; + class Node2 + { + offset[] = {0,-1.2,-0.6}; + seats[] = {2,7}; + }; + class Node3 + { + offset[] = {0,-2,-0.6}; + seats[] = {3,4,5,6}; + }; + class Node4 + { + offset[] = {0,-2.8,-0.6}; + seats[] = {8,9}; + }; + }; +}; + +class WW2_Assets_m_Vehicles_Trucks_m_IF_Zis5v_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-0.15,-0.4}; + seats[] = {1,2,3,5,10,11}; + }; + class Node2 + { + offset[] = {0,-0.95,-0.4}; + seats[] = {4,6,7}; + }; + class Node3 + { + offset[] = {0,-1.75,-0.4}; + seats[] = {8,9,12}; + }; + }; +}; diff --git a/A3A/addons/logistics/Nodes/RF.hpp b/A3A/addons/logistics/Nodes/RF.hpp new file mode 100644 index 0000000000..23089cfd13 --- /dev/null +++ b/A3A/addons/logistics/Nodes/RF.hpp @@ -0,0 +1,56 @@ +// RF.hpp - Vehicle Logistic Nodes + +//Default open pickup +class lxRF_vehicles_rf_pickup_01_pickup_01_unarmed_rf_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.5,-1}; + seats[] = {5,6}; + }; + class Node2 + { + offset[] = {0,-2.3,-1}; + seats[] = {3,4}; + }; + }; +}; +class lxRF_vehicles_rf_pickup_01_pickup_01_mmg_rf_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.5,-1.1}; + seats[] = {5,6}; + }; + class Node2 + { + offset[] = {0,-2.3,-1.1}; + seats[] = {3,4}; + }; + }; +}; +class lxRF_vehicles_rf_pickup_01_pickup_01_service_rf_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.5,-1}; + seats[] = {5,6}; + }; + class Node2 + { + offset[] = {0,-2.3,-1}; + seats[] = {3,4}; + }; + }; +}; + +class a3a_civ_Pickup_fuel_rf : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes {}; +}; \ No newline at end of file diff --git a/A3A/addons/logistics/Nodes/SFP.hpp b/A3A/addons/logistics/Nodes/SFP.hpp new file mode 100644 index 0000000000..e4f0c1341c --- /dev/null +++ b/A3A/addons/logistics/Nodes/SFP.hpp @@ -0,0 +1,163 @@ +class sfp_tgb_sfp_tgb13_ksp58 : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-0.95,-1.15}; + }; + class Node2 + { + offset[] = {0,-1.75,-1.15}; + }; + }; +}; +class sfp_tgb20 : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-0.1,1.05}; + seats[] = {1,2,3,4}; + }; + class Node2 + { + offset[] = {0,-0.9,1.05}; + seats[] = {5,6}; + }; + class Node3 + { + offset[] = {0,-1.7,1.05}; + seats[] = {7,8,9,10}; + }; + class Node4 + { + offset[] = {0,-2.5,1.05}; + seats[] = {11,12}; + }; + class Node5 + { + offset[] = {0,-3.3,1.05}; + seats[] = {13,14,15,16}; + }; + }; +}; +class sfp_tgb_sfp_tgb1112_p3d : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.25,1.15}; + }; + }; +}; + +class sfp_tgb_sfp_tgb11 : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.25,1.15}; + }; + }; +}; +class sfp_tgb_sfp_tgb1111_sog_ksp58 : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {-0.1,-1.15,-0.35}; + }; + }; +}; +class sfp_tgb40_sfp_tgb40_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 1; + class Nodes + { + class Node1 + { + offset[] = {0,-0.1,1.4}; + }; + class Node2 + { + offset[] = {0,-0.9,1.4}; + }; + class Node3 + { + offset[] = {0,-1.7,1.4}; + }; + class Node4 + { + offset[] = {0,-2.5,1.4}; + }; + class Node5 + { + offset[] = {0,-3.3,1.4}; + }; + }; +}; +class sfp_tgb40_sfp_tgb30_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 1; + class Nodes + { + class Node1 + { + offset[] = {0,0.35,1.4}; + }; + class Node2 + { + offset[] = {0,-0.45,1.4}; + }; + class Node3 + { + offset[] = {0,-1.25,1.4}; + }; + class Node4 + { + offset[] = {0,-2.05,1.4}; + }; + class Node5 + { + offset[] = {0,-2.85,1.4}; + }; + }; +}; +class sfp_strb90_sfp_strb90h_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-3.9,-1.15}; + }; + class Node2 + { + offset[] = {0,-4.7,-1.15}; + }; + class Node3 + { + offset[] = {0,-5.5,-1.15}; + }; + }; +}; +class sfp_gruppbat_sfp_gbat_p3d : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,-2.7,-0.81}; + seats[] = {1,2,5,6}; + }; + }; +}; diff --git a/A3A/addons/logistics/Nodes/SPE.hpp b/A3A/addons/logistics/Nodes/SPE.hpp index d127351659..e89d39930d 100644 --- a/A3A/addons/logistics/Nodes/SPE.hpp +++ b/A3A/addons/logistics/Nodes/SPE.hpp @@ -70,4 +70,72 @@ class SPE_US_M3_Halftrack : TRIPLES(ADDON,Nodes,Base) }; }; }; -class SPE_FR_M3_Halftrack : SPE_US_M3_Halftrack {}; \ No newline at end of file +class SPE_FR_M3_Halftrack : SPE_US_M3_Halftrack {}; + +class SPE_CCKW_353 : TRIPLES(ADDON,Nodes,Base) +{ + canLoadWeapon = 0; + class Nodes + { + class Node1 + { + offset[] = {0,0.3,-0.7}; + seats[] = {3,4}; + }; + class Node2 + { + offset[] = {0,-0.5,-0.7}; + seats[] = {5,6,7,8}; + }; + class Node3 + { + offset[] = {0,-1.3,-0.7}; + seats[] = {9,10}; + }; + class Node4 + { + offset[] = {0,-2.1,-0.7}; + seats[] = {0,1}; + }; + }; +}; +class SPE_CCKW_353_M2 : SPE_CCKW_353 {}; +class SPE_CCKW_353_Open : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,0.3,-0.7}; + seats[] = {3,4}; + }; + class Node2 + { + offset[] = {0,-0.5,-0.7}; + seats[] = {5,6,7,8}; + }; + class Node3 + { + offset[] = {0,-1.3,-0.7}; + seats[] = {9,10}; + }; + class Node4 + { + offset[] = {0,-2.1,-0.7}; + seats[] = {0,1}; + }; + }; +}; + +class SPE_US_G503_MB : TRIPLES(ADDON,Nodes,Base) +{ + class Nodes + { + class Node1 + { + offset[] = {0,-1.07,-0.6}; + }; + }; +}; +class SPE_US_G503_MB_Armoured : SPE_US_G503_MB {}; +class SPE_US_G503_MB_Open : SPE_US_G503_MB {}; \ No newline at end of file diff --git a/A3A/addons/logistics/Private/fn_addAction.sqf b/A3A/addons/logistics/Private/fn_addAction.sqf index b41c9f8408..bdfea02207 100644 --- a/A3A/addons/logistics/Private/fn_addAction.sqf +++ b/A3A/addons/logistics/Private/fn_addAction.sqf @@ -6,6 +6,8 @@ Arguments: 0. Object to add action to 1. Which action to add ("load"/"unload") + 2. JIP key + 3. Whether loading should break undercover Return Value: @@ -17,7 +19,7 @@ Example: [_object , _action] remoteExec ["A3A_Logistics_fnc_addAction", 0, _object]; */ -params [["_object", objNull, [objNull]], "_action", ["_jipKey", "", [""]]]; +params [["_object", objNull, [objNull]], "_action", ["_jipKey", "", [""]], ["_breakUC",false]]; if (isNull _object) exitWith { remoteExec ["", _jipKey]; //clear custom JIP }; @@ -32,10 +34,11 @@ switch (_action) do { [ _loadText, { - params ["_target"]; + params ["_target","_caller","_actionID","_breakUC"]; [_target] remoteExecCall ["A3A_Logistics_fnc_tryLoad",2]; + if (_breakUC) then {_caller setCaptive false}; }, - nil, + _breakUC, -5, true, true, diff --git a/A3A/addons/logistics/Public/fn_addLoadAction.sqf b/A3A/addons/logistics/Public/fn_addLoadAction.sqf index 6853a9f59a..bfa58eeeb6 100644 --- a/A3A/addons/logistics/Public/fn_addLoadAction.sqf +++ b/A3A/addons/logistics/Public/fn_addLoadAction.sqf @@ -6,6 +6,7 @@ Arguments: 0. Cargo that you want to be able to load in a vehicle 1. "load" or "unload" action (optional - should not really be used) + 2. Whether loading the object should break undercover Return Value: @@ -19,7 +20,7 @@ */ #include "..\script_component.hpp" FIX_LINE_NUMBERS() -params [["_object", objNull, [objNull]], ["_action", "load"]]; +params [["_object", objNull, [objNull]], ["_action", "load"],["_breakUC",false]]; if (isNull _object) exitWith { Error("No object passed, aborting"); @@ -34,5 +35,5 @@ if (!alive _object) exitWith { if (([_object] call A3A_Logistics_fnc_getCargoNodeType) isEqualTo -1) exitWith {nil}; private _jipKey = "A3A_Logistics_" + _action + ((str _object splitString ":") joinString ""); -[_object, _action, _jipKey] remoteExec ["A3A_Logistics_fnc_addAction", 0, _jipKey]; +[_object, _action, _jipKey,_breakUC] remoteExec ["A3A_Logistics_fnc_addAction", 0, _jipKey]; nil diff --git a/A3A/addons/logistics/Stringtable.xml b/A3A/addons/logistics/Stringtable.xml index f2996a52a2..6574b71ffa 100644 --- a/A3A/addons/logistics/Stringtable.xml +++ b/A3A/addons/logistics/Stringtable.xml @@ -9,6 +9,7 @@ Cargar 1% al vehículo más cercano. Charger %1 dans le véhicule le plus proche. %1을(를) 가장 가까운 차량에 적재하십시오. + Загрузить %1 в ближайшее транспортное средство. Załaduj %1 do najbliższego pojazdu Naložit %1 do nejbližšího vozidla. Carregar %1 no veículo mais próximo. @@ -174,6 +175,7 @@ <t color='#00fff3'>"%1" está siendo cargado en "%2" No queda más espacio.</t> <t color='#00fff3'>"%1" est chargé sur "%2" Il n'y a plus de place.</t> <t color='#00fff3'>"%1"이(가) "%2"에 적재되었습니다. 더 이상 공간이 없습니다.</t> + <t color='#00fff3'>"%1" загружен в "%2". Места больше нет.</t> <t color='#00fff3'>"%1" je nakládáno do "%2" Už nezbylo žádné další místo.</t> <t color='#00fff3'>"%1" foi carregado em "%2". Não há mais espaço.</t> <t color='#00fff3'>"%1" , "%2"'ye yüklendi. Boş yer kalmadı.</t> diff --git a/A3A/addons/maps/Antistasi_Enoch.Enoch/mission.sqm b/A3A/addons/maps/Antistasi_Enoch.Enoch/mission.sqm index a768271865..471a71a38d 100755 --- a/A3A/addons/maps/Antistasi_Enoch.Enoch/mission.sqm +++ b/A3A/addons/maps/Antistasi_Enoch.Enoch/mission.sqm @@ -5,10 +5,10 @@ class EditorData angleGridStep=0.2617994; scaleGridStep=1; autoGroupingDist=10; - toggles=1158; + toggles=5; class ItemIDProvider { - nextID=3479; + nextID=3493; }; class MarkerIDProvider { @@ -16,14 +16,14 @@ class EditorData }; class LayerIndexProvider { - nextID=1058; + nextID=1119; }; class Camera { - pos[]={9406.5244,120.33217,10331.065}; - dir[]={0.51215935,-0.66579658,0.54262179}; - up[]={0.45701101,0.74612516,0.48419213}; - aside[]={0.7272355,3.5575067e-007,-0.68640989}; + pos[]={2284.8403,198.22035,4572.582}; + dir[]={-0.79018265,-0.54500431,0.28042859}; + up[]={-0.51364845,0.83840865,0.18228939}; + aside[]={0.33446297,-2.469169e-007,0.94243824}; }; }; binarizationWanted=0; @@ -16396,7 +16396,7 @@ class Mission colorName="ColorGreen"; a=10.347; b=10.253; - angle=203.96695; + angle=203.96693; id=3411; atlOffset=0.011585236; }; @@ -16513,7 +16513,7 @@ class Mission colorName="ColorGreen"; a=3; b=5; - angle=233.07697; + angle=233.07693; id=3213; atlOffset=0.00040435791; }; @@ -16602,7 +16602,7 @@ class Mission colorName="ColorGreen"; a=3; b=5; - angle=233.07697; + angle=233.07693; id=3472; }; class Item8 @@ -17941,7 +17941,7 @@ class Mission colorName="ColorGreen"; a=10; b=10; - angle=0.14999996; + angle=0.14999995; id=3456; }; }; @@ -17995,7 +17995,7 @@ class Mission colorName="ColorGreen"; a=10; b=10; - angle=38.85099; + angle=38.850986; id=3457; }; }; @@ -18336,7 +18336,6 @@ class Mission { dataType="Layer"; name="HQ Assets"; - state=2; class Entities { items=22; @@ -18352,8 +18351,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9158.7734,92.015739,9383.5518}; - angles[]={0.097291566,2.1016905,0.0015822123}; + position[]={2232.2107,106.12542,4606.124}; + angles[]={6.2751918,2.6028883,6.278389}; }; side="Independent"; flags=6; @@ -18363,6 +18362,7 @@ class Mission }; id=95; type="I_G_officer_F"; + atlOffset=-7.6293945e-006; class CustomAttributes { class Attribute0 @@ -18412,7 +18412,7 @@ class Mission { }; id=94; - atlOffset=-252.33; + atlOffset=-7.6293945e-006; }; class Item1 { @@ -18426,7 +18426,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9171.3555,92.094833,9382.5215}; + position[]={2242.75,106.26704,4599.1748}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=7; @@ -18443,6 +18444,7 @@ class Mission }; id=3246; type="I_G_Soldier_TL_F"; + atlOffset=7.6293945e-006; class CustomAttributes { class Attribute0 @@ -18479,7 +18481,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9176.1504,92.312378,9379.8184}; + position[]={2245.6563,106.51252,4594.5005}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18499,7 +18502,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9176.2891,92.073639,9382.0537}; + position[]={2246.8521,106.47458,4596.394}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18519,7 +18523,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9176.2314,91.873001,9384.3877}; + position[]={2247.9229,106.46042,4598.4688}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18533,13 +18538,15 @@ class Mission }; id=3249; type="I_G_Soldier_TL_F"; + atlOffset=7.6293945e-006; }; class Item4 { dataType="Object"; class PositionInfo { - position[]={9176.0684,91.67321,9386.7012}; + position[]={2248.8916,106.46486,4600.5757}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18559,7 +18566,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9176.0273,91.410439,9389.1553}; + position[]={2250.0347,106.62812,4602.748}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18579,7 +18587,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9175.8418,91.156654,9391.4717}; + position[]={2250.9851,106.76759,4604.8687}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18599,7 +18608,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9175.6348,90.947227,9393.3662}; + position[]={2251.7139,107.06818,4606.6294}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18619,7 +18629,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9178.5098,92.260376,9379.9424}; + position[]={2247.7852,106.59503,4593.4756}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18639,7 +18650,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9178.5088,92.014923,9382.2813}; + position[]={2248.908,106.57349,4595.5269}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18653,13 +18665,15 @@ class Mission }; id=3255; type="I_G_Soldier_F"; + atlOffset=0.010917664; }; class Item10 { dataType="Object"; class PositionInfo { - position[]={9178.4023,91.805168,9384.6553}; + position[]={2249.9553,106.55334,4597.6602}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18673,13 +18687,15 @@ class Mission }; id=3256; type="I_G_Soldier_F"; + atlOffset=7.6293945e-006; }; class Item11 { dataType="Object"; class PositionInfo { - position[]={9178.3438,91.588837,9386.8545}; + position[]={2250.9607,106.5381,4599.6172}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18699,7 +18715,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9178.1406,91.332603,9389.2764}; + position[]={2251.9463,106.6685,4601.8384}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18719,7 +18736,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9177.9531,91.063789,9391.6084}; + position[]={2252.9023,106.85681,4603.9736}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18739,7 +18757,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9180.6182,92.219109,9379.9775}; + position[]={2249.6511,106.6626,4592.4932}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18753,13 +18772,15 @@ class Mission }; id=3260; type="I_G_Soldier_AR_F"; + atlOffset=0.0023422241; }; class Item15 { dataType="Object"; class PositionInfo { - position[]={9180.7803,91.954857,9382.418}; + position[]={2250.9658,106.63785,4594.5557}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18773,13 +18794,15 @@ class Mission }; id=3261; type="I_G_Soldier_AR_F"; + atlOffset=0.0040664673; }; class Item16 { dataType="Object"; class PositionInfo { - position[]={9180.3799,91.727417,9384.833}; + position[]={2251.7751,106.58981,4596.8657}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18799,7 +18822,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9180.3564,91.514984,9386.9814}; + position[]={2252.7869,106.6074,4598.7612}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18819,7 +18843,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9180.1563,91.267021,9389.2236}; + position[]={2253.6887,106.6967,4600.8237}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18839,7 +18864,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9180.0693,90.952515,9391.6826}; + position[]={2254.7939,106.97257,4603.022}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18859,7 +18885,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.707,92.144218,9380.0576}; + position[]={2251.5215,106.70265,4591.5596}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18879,7 +18906,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.5771,91.891663,9382.376}; + position[]={2252.5215,106.66866,4593.6553}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18899,7 +18927,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.4531,91.624367,9385.1201}; + position[]={2253.7312,106.62526,4596.1216}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18919,7 +18948,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.2793,91.42144,9387.1279}; + position[]={2254.5437,106.67439,4597.9658}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18939,7 +18969,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.21,91.147659,9389.3135}; + position[]={2255.533,106.73895,4599.916}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18959,7 +18990,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9182.1045,90.830986,9391.8037}; + position[]={2256.637,107.07894,4602.1504}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18979,7 +19011,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9184.2344,92.073662,9380.1357}; + position[]={2252.8984,106.72971,4590.894}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -18999,7 +19032,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9184.0586,91.828537,9382.415}; + position[]={2253.8396,106.6954,4592.9775}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19019,7 +19053,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9184.0166,91.536491,9385.2861}; + position[]={2255.1821,106.67452,4595.5156}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19039,7 +19074,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9183.9287,91.330528,9387.0928}; + position[]={2255.9731,106.72691,4597.1426}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19059,7 +19095,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9183.7451,91.041245,9389.4521}; + position[]={2256.9458,106.77863,4599.2998}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19079,7 +19116,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9183.7559,90.717262,9391.8633}; + position[]={2258.1138,107.11755,4601.4092}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19099,7 +19137,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9186.0361,91.981636,9380.2998}; + position[]={2254.5574,106.76064,4590.1724}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19119,7 +19158,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9186.0596,91.730019,9382.6006}; + position[]={2255.6836,106.72972,4592.1787}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19139,7 +19179,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9185.8174,91.420578,9385.3906}; + position[]={2256.8118,106.72457,4594.7422}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19159,7 +19200,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9185.5625,91.207741,9387.3389}; + position[]={2257.5242,106.76104,4596.5732}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19179,7 +19221,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9185.3672,90.931892,9389.5752}; + position[]={2258.4275,106.8563,4598.6284}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19193,13 +19236,15 @@ class Mission }; id=3282; type="I_G_engineer_F"; + atlOffset=-7.6293945e-006; }; class Item37 { dataType="Object"; class PositionInfo { - position[]={9185.2627,90.574638,9392.0439}; + position[]={2259.5222,107.17275,4600.8438}; + angles[]={0,0.50122213,-0}; }; side="Independent"; flags=5; @@ -19219,7 +19264,7 @@ class Mission { }; id=3245; - atlOffset=-252.33; + atlOffset=7.6293945e-006; class CustomAttributes { class Attribute0 @@ -19243,17 +19288,17 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9170.6484,92.658257,9393.127}; - angles[]={0.078239501,0,6.2751846}; + position[]={2247.2139,107.60995,4608.8315}; + angles[]={6.1621795,0.50176567,0.075058199}; }; side="Empty"; + flags=4; class Attributes { name="vehicleBox"; }; id=80; type="Land_CargoBox_V1_F"; - atlOffset=0.77799988; class CustomAttributes { class Attribute0 @@ -19290,8 +19335,8 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9166.041,95.633934,9388.5234}; - angles[]={0.07824026,0,6.2767911}; + position[]={2240.9971,110.25641,4606.9858}; + angles[]={6.2065363,0.50118816,0.035185181}; }; side="Empty"; flags=4; @@ -19324,17 +19369,17 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9158.7314,93.255745,9385.8682}; - angles[]={0.086186528,0,6.2783766}; + position[]={2233.2756,107.05712,4608.1685}; + angles[]={6.2575908,0.50122696,6.278389}; }; side="Empty"; + flags=4; class Attributes { name="boxX"; }; id=89; type="IG_supplyCrate_F"; - atlOffset=0.55953217; class CustomAttributes { class Attribute0 @@ -19371,17 +19416,17 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9151.75,92.619247,9389.625}; - angles[]={0.076648585,1.0016968,0.022394964}; + position[]={2228.9932,106.98397,4614.8188}; + angles[]={6.184309,1.5029196,0.068691261}; }; side="Empty"; + flags=4; class Attributes { name="fireX"; }; id=172; type="Land_TentDome_F"; - atlOffset=0.56700897; class CustomAttributes { class Attribute0 @@ -19405,17 +19450,17 @@ class Mission dataType="Object"; class PositionInfo { - position[]={9153.4092,92.713264,9394.6992}; - angles[]={0,4.7678938,0}; + position[]={2232.8823,108.09789,4618.4751}; + angles[]={6.0597782,5.2691154,0.17266273}; }; side="Empty"; + flags=4; class Attributes { name="mapX"; }; id=173; type="Land_MapBoard_Enoch_F"; - atlOffset=0.50979614; class CustomAttributes { class Attribute0 @@ -19439,8 +19484,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9162.2002,92.697037,9375.5313}; - angles[]={0.079829417,0,0.0015822123}; + position[]={2231.386,106.13985,4597.4375}; + angles[]={0.019199125,0.50122494,0.004796607}; }; name="garrison"; id=82; @@ -19451,8 +19496,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9169.459,93.256874,9369.6113}; - angles[]={0.09253493,0,0.0095994528}; + position[]={2234.9075,106.38619,4588.7578}; + angles[]={0.022397626,0.50124735,0.017598685}; }; name="killZones"; id=91; @@ -19463,8 +19508,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9170.6563,93.362411,9368.5352}; - angles[]={0.065506957,0,0.0095994528}; + position[]={2235.4404,106.42709,4587.2388}; + angles[]={0.012798273,0.50122744,0.017598685}; }; name="pathfinding"; id=2910; @@ -19475,8 +19520,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9160.626,92.581543,9376.9434}; - angles[]={0.079829417,0,0.0015822123}; + position[]={2230.6841,106.11176,4599.4321}; + angles[]={0.019199125,0.50122494,6.2639866}; }; name="server"; id=81; @@ -19487,8 +19532,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9168.5479,93.172577,9370.4434}; - angles[]={0.09253493,0,0.0015822123}; + position[]={2234.5083,106.35303,4589.9253}; + angles[]={0.022397626,0.50124735,0.017598685}; }; name="sidesX"; id=90; @@ -19499,8 +19544,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9163.9873,92.82486,9374.1113}; - angles[]={0.09253493,0,0.0015822123}; + position[]={2232.271,106.18449,4595.3335}; + angles[]={0.019199125,0.50124454,0.004796607}; }; name="spawner"; id=83; @@ -19511,8 +19556,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9167.2783,93.054352,9371.6953}; - angles[]={0.09253493,0,0.0015822123}; + position[]={2233.9963,106.29769,4591.6333}; + angles[]={0.035185181,0.50124735,0.004796607}; }; name="timer"; id=88; @@ -19523,8 +19568,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9187.7148,92.60041,9374.4893}; - angles[]={0.098877132,0,6.2352209}; + position[]={2253.2617,106.83756,4584.2637}; + angles[]={0.011198638,0.50153464,0.0095994528}; }; id=163; type="ModuleCurator_F"; @@ -19590,8 +19635,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9156.3936,92.979988,9374.2441}; - angles[]={0.11469462,0,6.2336254}; + position[]={2225.6753,106.21108,4599.0986}; + angles[]={0.004796607,0.50122613,6.278389}; }; name="hc"; isPlayable=1; @@ -19603,8 +19648,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9158.3857,93.018303,9373.1035}; - angles[]={0.090948731,0,6.2575908}; + position[]={2226.8743,106.21473,4597.1411}; + angles[]={0.004796607,0.50122303,6.278389}; }; name="hc_1"; isPlayable=1; @@ -19616,8 +19661,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9160.2324,93.061684,9372.1094}; - angles[]={0.090948731,0,6.2575908}; + position[]={2228.0161,106.2177,4595.3818}; + angles[]={0.004796607,0.50122041,6.278389}; }; name="hc_2"; isPlayable=1; @@ -19629,8 +19674,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9152.4307,92.464172,9378.6953}; - angles[]={0.17886755,0,6.2224603}; + position[]={2224.3386,106.23566,4604.9067}; + angles[]={6.278389,0.50122613,6.2799835}; }; name="HC_commanderX"; id=820; @@ -19641,8 +19686,8 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9156.0645,92.487389,9378.8271}; - angles[]={0.10679185,0,0.012798273}; + position[]={2227.5886,106.17602,4603.2759}; + angles[]={6.278389,0.50122613,6.2639866}; }; id=821; type="HighCommandSubordinate"; @@ -19650,7 +19695,7 @@ class Mission class Item20 { dataType="Marker"; - position[]={9163.25,78.625,9388.625}; + position[]={2222.0332,0,4610.2031}; name="Synd_HQ"; markerType="RECTANGLE"; type="rectangle"; @@ -19658,12 +19703,12 @@ class Mission a=50; b=50; id=78; - atlOffset=-13.042038; + atlOffset=-106.27954; }; class Item21 { dataType="Marker"; - position[]={9164.208,2.7037606e+012,9385.8047}; + position[]={2222.5,2.7037606e+012,4610.375}; name="respawn_guerrila"; text="Your Headquarters"; type="hd_flag"; @@ -19764,7 +19809,7 @@ class Mission name="Roadblocks"; class Entities { - items=49; + items=63; class Item0 { dataType="Marker"; @@ -20351,9 +20396,169 @@ class Mission b=50; id=3470; }; + class Item49 + { + dataType="Marker"; + position[]={5519.5,112.375,8768.625}; + name="control_49"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3479; + atlOffset=-25.250992; + }; + class Item50 + { + dataType="Marker"; + position[]={11662.875,125.12097,12063.625}; + name="control_50"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3480; + }; + class Item51 + { + dataType="Marker"; + position[]={644.75,277.33005,12158.375}; + name="control_51"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3481; + }; + class Item52 + { + dataType="Marker"; + position[]={575.75,413.875,1126.125}; + name="control_52"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3482; + atlOffset=-26.94101; + }; + class Item53 + { + dataType="Marker"; + position[]={3016.5,277.51199,1145}; + name="control_53"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3483; + }; + class Item54 + { + dataType="Marker"; + position[]={1514.25,273.314,2383.25}; + name="control_54"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3484; + }; + class Item55 + { + dataType="Marker"; + position[]={440.375,83.87722,6384.5}; + name="control_55"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3485; + }; + class Item56 + { + dataType="Marker"; + position[]={12261.625,92,9278.625}; + name="control_56"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3486; + atlOffset=1.3993454; + }; + class Item57 + { + dataType="Marker"; + position[]={4831.4351,177.72823,852.12555}; + name="control_57"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + angle=205.81602; + id=3487; + }; + class Item58 + { + dataType="Marker"; + position[]={11890.732,143.18001,6576.0293}; + name="control_58"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3488; + atlOffset=-0.00032043457; + }; + class Item59 + { + dataType="Marker"; + position[]={9652,139.18239,4971.25}; + name="control_59"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3489; + }; + class Item60 + { + dataType="Marker"; + position[]={6269.75,288.66641,2414}; + name="control_60"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3490; + }; + class Item61 + { + dataType="Marker"; + position[]={7980.1743,204.19284,2168.9094}; + name="control_61"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + id=3491; + }; + class Item62 + { + dataType="Marker"; + position[]={2409.5,212.754,11513.25}; + name="control_62"; + markerType="RECTANGLE"; + type="rectangle"; + a=50; + b=50; + angle=214.40379; + id=3492; + }; }; id=3188; - atlOffset=-107.45663; + atlOffset=89.160583; }; }; id=3207; @@ -21037,4 +21242,4 @@ class Mission }; }; }; -}; \ No newline at end of file +}; diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/PIC.jpg b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/PIC.jpg new file mode 100644 index 0000000000..2af5bab2c9 Binary files /dev/null and b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/PIC.jpg differ diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/whiteboard.paa b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/whiteboard.paa new file mode 100644 index 0000000000..62802d8eaf Binary files /dev/null and b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/Pictures/Mission/whiteboard.paa differ diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/cba_settings.sqf b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/cba_settings.sqf new file mode 100644 index 0000000000..1d06e32420 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/cba_settings.sqf @@ -0,0 +1 @@ +#include "\x\A3A\Addons\core\Includes\cba_settings.sqf" diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/description.ext b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/description.ext new file mode 100644 index 0000000000..bfd5ac3e52 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/description.ext @@ -0,0 +1,41 @@ +#include "..\missionDescription\master.hpp" + +OnLoadName = $STR_antistasi_mission_info_SPE_Mortain_mapname_short_text; +OnLoadMission = $STR_antistasi_mission_info_SPE_Mortain_blurb_text; +briefingName = $STR_antistasi_mission_info_SPE_Mortain_mapname_text; +overviewText = $STR_antistasi_mission_info_SPE_Mortain_description_text; +loadScreen = "Pictures\Mission\pic.jpg"; // NB, this will resolve from root +overviewPicture = "Pictures\Mission\pic.jpg"; // NB, this will resolve from root + +class CfgNotifications +{ + #include "..\missionDescription\CfgNotificationsContents.hpp" +}; + +class CfgDebriefing { + #include "..\missionDescription\CfgDebriefingContents.hpp" + class End1 + { + title = "V I C T O R Y"; + subtitle = "Mortain is Ours!"; + description = "The population of Mortain loves you!
The SDK brave soldiers have proven their valour, and Petros, Mortains new Prime Minister, could at last to have a nice holiday. A deserved rest in a Greek island with drinks and fine food."; + picture = "n_inf"; + pictureColor[] = {0.0,0.5,0.0,1}; + }; + class petrosDead + { + title = "Petros is Dead"; + subtitle = "Petros is Dead"; + description = "Congratulations!: Petros is Dead. Now with Syndikat without a leader, you may think about joining them, and free the Mortain."; + picture = "b_unknown"; + pictureColor[] = {0.5,0.0,0.0,1}; + }; + class destroyedSites + { + title = "The Mortain is Destroyed"; + subtitle = "The Mortain got Destroyed by the Invaders"; + description = "One third of the population in Mortain has been murdered by the Invaders.
Mortain no longer exists, nobody wants to live here."; + picture = "b_unknown"; + pictureColor[] = {0.5,0.0,0.0,1}; + }; +}; diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initPlayerLocal.sqf b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initPlayerLocal.sqf new file mode 100644 index 0000000000..8c79a66d7b --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initPlayerLocal.sqf @@ -0,0 +1 @@ +_this call A3A_fnc_initClient; \ No newline at end of file diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initServer.sqf b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initServer.sqf new file mode 100644 index 0000000000..bc311d07b9 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/initServer.sqf @@ -0,0 +1 @@ +call A3A_fnc_initServer; diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mapInfo.hpp b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mapInfo.hpp new file mode 100644 index 0000000000..466dd75768 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mapInfo.hpp @@ -0,0 +1,29 @@ +class SPE_Mortain { + population[] = { + {"Vil_Romagny",477},{"Vil_Neufbourg",562},{"Vil_Mortain",878},{"Vil_Barthelemy",305},{"Vil_Bellefontaine",453},{"Vil_Tournerie",253},{"Vil_Les_Liards",219},{"Vil_La_Vieille_Vente",78},{"Vil_La_Deliniere",209},{"Vil_La_Bagotiere",299},{"Vil_La_Baffardiere",188},{"Vil_La_Menardiere",241},{"Vil_lagranderoche",91},{"Vil_belleeau",103},{"Vil_Les_Aulnays",255},{"Vil_LaGalpichere",191},{"Vil_LeClosMonnier",223},{"Vil_Le_Tertre",321},{"Loc_La_Morinais",385},{"Vil_Calvaire",469},{"Vil_LePillon",179},{"Vil_LaRiffaudiere",110},{"Vil_Saint_Hilaire",544},{"Vil_LaGesberdiere",464},{"Vil_La_Fieffe_de_Brousse_Pave",172},{"Vil_Le_Chene_des_Maires",260},{"Vil_Brousse_Pave",224} + }; + disabledTowns[] = { + "Vil_La_Bougonniere","Vil_longueveille","Vil_Abbeye_Blanche","Vil_La_Giffardiere","Vil_Ruandelle" + }; + antennas[] = { + {3952.95,5297.37,0.00991821},{5179.92,3040.97,0.0291138},{4223.79,7540.87,0.0480347},{542.119,4122.41,0.0940552},{7802.82,6414.54,0.131439} + }; + antennasBlacklistIndex[] = {}; + banks[] = {}; //no suitable/defined buildings + garrison[] = { + {},{"airport_6","outpost_8","outpost_9","outpost_15","factory_3","resource_5","resource_6","resource_10","control_5","control_10","control_19","control_20","control_21","control_25","control_28","control_30"}, + {},{"control_5","control_10","control_19","control_20","control_21","control_25","control_28","control_30"} + }; + fuelStationTypes[] = { + "Land_FuelStation_Feed_F","Land_fs_feed_F","Land_FuelStation_01_pump_malevil_F","Land_FuelStation_01_pump_F","Land_FuelStation_02_pump_F","Land_FuelStation_03_pump_F","SPE_Fuel_Barrel_German_01","SPE_Fuel_Barrel_US_01" + }; + climate = "arid"; + buildObjects[] = { + // Pillbox bunkers + {"Land_PillboxBunker_01_hex_F", 200}, {"Land_PillboxBunker_01_rectangle_F", 300}, + // SPE sandbag walls + {"Land_SPE_Sandbag_Long", 15}, {"Land_SPE_Sandbag_Short", 10}, {"Land_SPE_Sandbag_Nest", 15}, {"Land_SPE_Sandbag_Curve", 20}, + // Some extra stuff from vanilla + {"Land_Barricade_01_4m_F", 30}, {"Land_GuardBox_01_brown_F", 80}, {"Land_Tyres_F", 10} + }; +}; diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mission.sqm b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mission.sqm new file mode 100644 index 0000000000..a5ece72f51 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/mission.sqm @@ -0,0 +1,43957 @@ +version=54; +class EditorData +{ + moveGridStep=1; + angleGridStep=0.2617994; + scaleGridStep=1; + autoGroupingDist=10; + toggles=1025; + class ItemIDProvider + { + nextID=2326; + }; + class MarkerIDProvider + { + nextID=1; + }; + class LayerIndexProvider + { + nextID=866; + }; + class Camera + { + pos[]={6788.0767,414.48041,7503.6963}; + dir[]={0.012287639,-0.59082907,0.80676359}; + up[]={0.0089972997,0.80676401,0.5908075}; + aside[]={0.99992353,4.0014197e-007,-0.01522763}; + }; +}; +binarizationWanted=0; +sourceName="Antistasi_Mortain"; +addons[]= +{ + "A3_Structures_F_Ind_FuelStation", + "WW2_SPE_Structures_c", + "WW2_SPE_Structures_c_SimpleObjects_c", + "WW2_SPE_Core_c_EditorPreviews_c", + "WW2_SPE_Assets_c_Vehicles_SimpleObjects_c", + "A3_Modules_F", + "A3_Ui_F", + "WW2_SPE_Core_c_UI_Gui_c", + "WW2_SPE_Assets_c_Vehicles_Planes_c_FW190F8", + "WW2_SPE_Assets_c_Vehicles_Icons_c", + "A3_Structures_F_Enoch_Military_Radar", + "A3_Structures_F_Exp_Walls_Polewalls", + "A3_Structures_F_Ind_Transmitter_Tower", + "A3_Structures_F_Mil_Helipads", + "A3_Characters_F", + "A3_Weapons_F", + "WW2_SPE_Assets_c_Weapons_InfantryWeapons_c", + "A3_Structures_F_Exp_Military_Flags", + "A3_Weapons_F_Ammoboxes", + "A3_Props_F_Enoch_Military_Camps", + "A3_Structures_F_EPC_Civ_InfoBoards", + "A3_Modules_F_Curator_Curator", + "A3_Modules_F_Hc", + "WW2_SPE_Structures2_c" +}; +class AddonsMetaData +{ + class List + { + items=20; + class Item0 + { + className="A3_Structures_F_Ind"; + name="Arma 3 - Industrial Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item1 + { + className="WW2_SPE_Structures_c"; + name="WW2_SPE_Structures_c"; + }; + class Item2 + { + className="WW2_SPE_Structures_c_SimpleObjects_c"; + name="WW2_SPE_Structures_c_SimpleObjects_c"; + }; + class Item3 + { + className="WW2_SPE_Core_c_EditorPreviews_c"; + name="WW2_SPE_Core_c_EditorPreviews_c"; + }; + class Item4 + { + className="WW2_SPE_Assets_c_Vehicles_SimpleObjects_c"; + name="WW2_SPE_Assets_c_Vehicles_SimpleObjects_c"; + }; + class Item5 + { + className="A3_Modules_F"; + name="Arma 3 Alpha - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item6 + { + className="A3_Ui_F"; + name="Arma 3 - User Interface"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item7 + { + className="WW2_SPE_Core_c_UI_Gui_c"; + name="WW2_SPE_Core_c_UI_Gui_c"; + }; + class Item8 + { + className="WW2_SPE_Assets_c_Vehicles_Planes_c_FW190F8"; + name="WW2_SPE_Assets_c_Vehicles_Planes_c_FW190F8"; + }; + class Item9 + { + className="WW2_SPE_Assets_c_Vehicles_Icons_c"; + name="WW2_SPE_Assets_c_Vehicles_Icons_c"; + }; + class Item10 + { + className="A3_Structures_F_Enoch_Military"; + name="Arma 3 Contact Platform - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item11 + { + className="A3_Structures_F_Exp"; + name="Arma 3 Apex - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item12 + { + className="A3_Structures_F_Mil"; + name="Arma 3 - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item13 + { + className="A3_Characters_F"; + name="Arma 3 Alpha - Characters and Clothing"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item14 + { + className="A3_Weapons_F"; + name="Arma 3 Alpha - Weapons and Accessories"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item15 + { + className="WW2_SPE_Assets_c_Weapons_InfantryWeapons_c"; + name="WW2_SPE_Assets_c_Weapons_InfantryWeapons_c"; + }; + class Item16 + { + className="A3_Props_F_Enoch"; + name="Arma 3 Contact Platform - Decorative and Mission Objects"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item17 + { + className="A3_Structures_F_EPC"; + name="Arma 3 Win Episode - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item18 + { + className="A3_Modules_F_Curator"; + name="Arma 3 Zeus Update - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item19 + { + className="WW2_SPE_Structures2_c"; + name="WW2_SPE_Structures2_c"; + }; + }; +}; +dlcs[]= +{ + "SPE", + "Enoch", + "Expansion", + "Contact" +}; +randomSeed=1517823; +class CustomAttributes +{ + class Category0 + { + name="Scenario"; + class Attribute0 + { + property="SPE_All_Obj_FX"; + expression="false"; + class Value + { + class data + { + singleType="BOOL"; + value=1; + }; + }; + }; + nAttributes=1; + }; +}; +class Mission +{ + class Intel + { + briefingName=$STR_antistasi_mission_info_SPE_Mortain_mapname_text; + resistanceWest=0; + timeOfChanges=1800.0002; + startWeather=0.30000001; + startWind=0.1; + startWaves=0.1; + forecastWeather=0; + forecastWind=0.1; + forecastWaves=0.1; + forecastLightnings=0.1; + year=1944; + month=8; + day=7; + hour=6; + minute=0; + startFogDecay=0.014; + forecastFogDecay=0.014; + }; + class Entities + { + items=7; + class Item0 + { + dataType="Layer"; + name="Fuelstation"; + state=2; + class Entities + { + items=7; + class Item0 + { + dataType="Layer"; + name="FuelStation"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={4525.4922,223.05991,3305.6421}; + angles[]={0,4.8856406,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2187; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={4521.3042,222.31,3306.6482}; + angles[]={0,1.7292238,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2188; + type="Land_SPE_House_Small_04"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={4525.4307,222.31,3301.8037}; + angles[]={0,1.7454165,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2189; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={4527.2065,222.31,3311.2539}; + angles[]={0,4.8985167,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2190; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4526.4268,222.30359,3307.3782}; + angles[]={0,4.8856406,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2191; + type="Land_SPE_Dugout_Decal_01"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4526.1255,223.05928,3309.5525}; + angles[]={0,1.7082139,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2192; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={4523.6147,222.75012,3304.7839}; + angles[]={0,4.8864059,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2193; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={4523.6895,222.75012,3305.6628}; + angles[]={0,4.8864059,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2194; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={4523.8994,222.75012,3306.5742}; + angles[]={0,4.8842959,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2195; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={4524.2412,222.75012,3305.1077}; + angles[]={0,4.8864059,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2196; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={4524.396,222.75012,3305.8262}; + angles[]={0,4.8824611,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2197; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4524.1772,222.75012,3308.3469}; + angles[]={0,4.8872824,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2198; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={4524.4033,222.75012,3309.3467}; + angles[]={0,4.8872824,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2199; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={4524.7368,222.75012,3307.2922}; + angles[]={0,4.8824611,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2200; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={4525.4966,222.75012,3307.4885}; + angles[]={0,4.8824611,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2201; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={4525.2588,222.75012,3308.7063}; + angles[]={0,4.8853402,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2202; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={4524.0122,222.31,3306.6328}; + angles[]={0,4.8856406,0}; + }; + areaSize[]={10.482788,0,10.424072}; + flags=1; + id=2203; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2186; + }; + class Item1 + { + dataType="Layer"; + name="FuelStation_1"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.8215,297.91928,6469.6372}; + angles[]={0,4.2589679,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2206; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={3627.8396,296.89047,6467.9966}; + angles[]={0,1.1025513,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2207; + type="Land_SPE_House_Small_04"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.0227,297.40265,6466.4922}; + angles[]={0,1.118744,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2208; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.9194,296.95761,6475.1885}; + angles[]={0,4.2718439,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2209; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.5605,297.12097,6471.5918}; + angles[]={0,4.2589679,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2210; + type="Land_SPE_Dugout_Decal_01"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.041,297.73145,6473.1763}; + angles[]={0,1.0815413,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2211; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.8042,297.53888,6467.8418}; + angles[]={0.014998405,4.2607346,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2212; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.3491,297.48734,6468.5967}; + angles[]={0.0099949092,4.2596798,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2213; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.9849,297.44431,6469.4585}; + angles[]={0.0099949092,4.2595587,0.079832405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2214; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.1216,297.56195,6468.4712}; + angles[]={0.0099949092,4.2603464,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2215; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.8259,297.52713,6469.1436}; + angles[]={0.0099949092,4.2592115,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2216; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.1707,297.35605,6471.0571}; + angles[]={0.0050033992,4.2590389,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2217; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3628.7671,297.31299,6471.9995}; + angles[]={0.0050033992,4.2586699,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2218; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.2422,297.45926,6470.5308}; + angles[]={0.0050152978,4.2592115,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2219; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.7422,297.50125,6471.1353}; + angles[]={0.0050152978,4.2592115,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2220; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.8357,297.41461,6471.9824}; + angles[]={0.0050033992,4.2587228,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2221; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={3630.0417,297.00824,6469.5723}; + angles[]={0.0099949092,4.2589679,0.094717279}; + }; + areaSize[]={10.482788,0,10.424072}; + flags=1; + id=2222; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2205; + atlOffset=0.00085449219; + }; + class Item2 + { + dataType="Layer"; + name="FuelStation_2"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2879.676,161.53304,1990.4692}; + angles[]={0,6.1547546,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2225; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2879.3931,160.86479,1994.767}; + angles[]={0,2.9983361,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2226; + type="Land_SPE_House_Small_04"; + atlOffset=-0.19998169; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2875.9929,160.59079,1989.3876}; + angles[]={0,3.0145309,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2227; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2885.5439,160.95605,1990.4994}; + angles[]={0,6.1676311,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2228; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2881.6118,160.81483,1990.0925}; + angles[]={0,6.1547546,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2229; + type="Land_SPE_Dugout_Decal_01"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2883.5984,161.69484,1991.0265}; + angles[]={0,2.9773283,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2230; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2878.2993,161.28954,1992.0067}; + angles[]={6.2182741,6.1550422,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2231; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2879.1602,161.32771,1992.1968}; + angles[]={6.2182741,6.155076,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2232; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2880.093,161.36206,1992.267}; + angles[]={6.2133002,6.1550903,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2233; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2878.7944,161.26929,1991.505}; + angles[]={6.2133002,6.1550422,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2234; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=-1.5258789e-005; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2879.5261,161.29581,1991.5704}; + angles[]={6.2133002,6.1550422,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2235; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=-1.5258789e-005; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2881.8677,161.44052,1992.5282}; + angles[]={6.2182741,6.1551018,0.029997652}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2236; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2882.8899,161.47644,1992.6095}; + angles[]={6.2182741,6.1551018,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2237; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2881.0271,161.35211,1991.6807}; + angles[]={6.2083287,6.1550903,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2238; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2881.4404,161.31656,1991.0137}; + angles[]={6.2083287,6.1551957,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2239; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2882.5327,161.39627,1991.6023}; + angles[]={6.2083287,6.1551523,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2240; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={2882.0798,160.99403,1992.3325}; + angles[]={6.2182741,6.1547465,0.029989703}; + }; + areaSize[]={15.641441,0,10.512042}; + areaIsRectangle=1; + flags=1; + id=2241; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2224; + atlOffset=-0.0027313232; + }; + class Item3 + { + dataType="Layer"; + name="FuelStation_3"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2867.8159,277.11423,4318.9297}; + angles[]={0,1.448101,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2244; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2872.115,276.36688,4319.188}; + angles[]={0,4.5748744,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2245; + type="Land_SPE_House_Small_04"; + atlOffset=-0.20001221; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2866.7554,276.12994,4322.6187}; + angles[]={0,4.5910625,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2246; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2867.8123,276.66663,4313.0615}; + angles[]={0,1.4609773,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2247; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2867.428,276.44156,4316.9961}; + angles[]={0,1.448101,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2248; + type="Land_SPE_Dugout_Decal_01"; + atlOffset=-3.0517578e-005; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2868.3506,277.34219,4315.0039}; + angles[]={0,4.5538602,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2249; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.3611,276.81332,4320.2974}; + angles[]={0.049961641,1.4448229,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2250; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.5461,276.86563,4319.4355}; + angles[]={0.049946126,1.4442163,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2251; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=-3.0517578e-005; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.6111,276.91553,4318.5024}; + angles[]={0.049946126,1.4456426,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2252; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=-3.0517578e-005; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2868.8567,276.81268,4319.8052}; + angles[]={0.049946126,1.4448229,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2253; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=-3.0517578e-005; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2868.918,276.85236,4319.0732}; + angles[]={0.049961641,1.4442163,0.049946126}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2254; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.8621,277.01694,4316.7261}; + angles[]={0.049961641,1.4456428,0.049946126}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2255; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.9375,277.07333,4315.7031}; + angles[]={0.054953203,1.4456426,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2256; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2869.0193,276.93256,4317.5718}; + angles[]={0.049961641,1.4456426,0.049946126}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2257; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2868.3501,276.91953,4317.1621}; + angles[]={0.049946126,1.4453648,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2258; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2868.9324,277.00342,4316.0664}; + angles[]={0.049946126,1.4456428,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2259; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={2869.646,276.53278,4317.3911}; + angles[]={0.049961641,1.4480997,0.049946126}; + }; + areaSize[]={15.831408,0,10.424}; + areaIsRectangle=1; + flags=1; + id=2260; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2243; + atlOffset=6.1035156e-005; + }; + class Item4 + { + dataType="Layer"; + name="FuelStation_4"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={7356.0708,175.80272,627.76587}; + angles[]={0,0.55924231,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2263; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={7358.5796,175.04077,631.26666}; + angles[]={0,3.6860113,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2264; + type="Land_SPE_House_Small_04"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={7352.5381,175.06561,629.26794}; + angles[]={0,3.702204,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2265; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={7360.6245,175.06624,624.06464}; + angles[]={0,0.57211858,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2266; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={7357.3271,175.06303,626.24628}; + angles[]={0,0.55924231,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2267; + type="Land_SPE_Dugout_Decal_01"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={7359.4551,175.80556,625.70703}; + angles[]={0,3.6650014,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2268; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={7355.9829,175.49013,629.82806}; + angles[]={0,0.55921835,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2269; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={7356.7686,175.49013,629.42822}; + angles[]={0,0.55928743,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2270; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={7357.5342,175.49013,628.89044}; + angles[]={0,0.55928743,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2271; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={7356.0469,175.49013,629.1261}; + angles[]={0,0.55924785,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2272; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={7356.6538,175.49013,628.71204}; + angles[]={0,0.55931258,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2273; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={7359.0718,175.49013,627.96558}; + angles[]={0,0.55925643,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2274; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={7359.9131,175.49013,627.3797}; + angles[]={0,0.55924928,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2275; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={7357.8838,175.49091,627.8443}; + angles[]={0.0049795164,0.55923951,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2276; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={7357.7798,175.4948,627.06677}; + angles[]={0.0049795164,0.55923951,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2277; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={7358.9976,175.491,626.82825}; + angles[]={0.0049914722,0.55925643,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2278; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={7359.2603,175.05,628.07794}; + angles[]={0,0.55923837,0}; + }; + areaSize[]={14.683163,0,10.096}; + areaIsRectangle=1; + flags=1; + id=2279; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2262; + atlOffset=0.00085449219; + }; + class Item5 + { + dataType="Layer"; + name="FuelStation_5"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={6419.0723,269.8945,4318.3174}; + angles[]={0,3.11538,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2282; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={6418.916,268.90637,4314.0132}; + angles[]={0,6.2421489,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2283; + type="Land_SPE_House_Small_04"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6422.8467,269.38223,4319.0176}; + angles[]={0,6.2583418,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2284; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={6413.2319,268.48203,4318.8857}; + angles[]={0,3.1282563,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2285; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={6417.1855,268.96863,4318.8896}; + angles[]={0,3.11538,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2286; + type="Land_SPE_Dugout_Decal_01"; + atlOffset=3.0517578e-005; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6415.1143,269.52609,4318.1631}; + angles[]={0,6.221139,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2287; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6420.2856,269.55542,4316.647}; + angles[]={6.2132926,3.1156068,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2288; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={6419.4092,269.49768,4316.5459}; + angles[]={6.2282476,3.1156449,0.054938007}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2289; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6418.4741,269.4476,4316.5713}; + angles[]={6.2282476,3.1156449,0.054938007}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2290; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6419.8442,269.57303,4317.1968}; + angles[]={6.2132926,3.11536,0.069893055}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2291; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6419.1094,269.52228,4317.2065}; + angles[]={6.2132926,3.1152627,0.069893055}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2292; + type="Land_SPE_Fuel_Barrel_German"; + atlOffset=3.0517578e-005; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6416.6816,269.32748,4316.4927}; + angles[]={6.2631836,3.1156693,0.054952115}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2293; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6415.6567,269.26126,4316.5161}; + angles[]={6.2631836,3.1146705,0.084803045}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2294; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6417.6045,269.42328,4317.25}; + angles[]={6.2282486,3.1152627,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2295; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6417.2617,269.43124,4317.9556}; + angles[]={6.2282486,3.1153414,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2296; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6416.1152,269.3161,4317.4814}; + angles[]={6.2631836,3.1152921,0.054952115}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2297; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={6419.0273,269.12766,4317.0908}; + angles[]={6.2132926,3.1153779,0.069893055}; + }; + areaSize[]={15.26146,0,8.5187712}; + areaIsRectangle=1; + flags=1; + id=2298; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.059387207; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2281; + atlOffset=0.017669678; + }; + class Item6 + { + dataType="Layer"; + name="FuelStation_6"; + class Entities + { + items=17; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2042.3176,219.56905,7338.5869}; + angles[]={0,1.096715,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2301; + type="Land_FuelStation_Feed_F"; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2046.2649,218.86359,7340.3096}; + angles[]={0,4.223484,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2302; + type="Land_SPE_House_Small_04"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2040.0521,218.75104,7341.6855}; + angles[]={0,4.2396765,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2303; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.3341,218.90758,7333.0762}; + angles[]={0,1.1095912,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2304; + type="Land_SPE_Dugout_Decal_03"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2042.619,218.84972,7336.6377}; + angles[]={0,1.096715,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=2305; + type="Land_SPE_Dugout_Decal_01"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.1709,219.63905,7335.085}; + angles[]={0,4.2024741,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2306; + type="Land_FuelStation_Feed_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.2977,219.25652,7340.4028}; + angles[]={0.014998405,1.0973281,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2307; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.7682,219.27946,7339.6572}; + angles[]={0.014998405,1.0969636,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2308; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.1503,219.29881,7338.8037}; + angles[]={0.014998405,1.0965129,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2309; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2042.9934,219.25845,7339.7671}; + angles[]={0.014998405,1.0965027,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2310; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.303,219.27618,7339.1006}; + angles[]={0.014998405,1.0965027,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2311; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.9974,219.319,7337.2222}; + angles[]={0.0049914722,1.0964994,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2312; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2045.4202,219.32579,7336.2881}; + angles[]={0.0050033992,1.096615,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2313; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.9152,219.30937,7337.7261}; + angles[]={0.0050033992,1.0967377,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2314; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.4276,219.30025,7337.1113}; + angles[]={0.0050033992,1.096715,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2315; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.3516,219.32047,7336.2827}; + angles[]={0.0050033992,1.096715,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2316; + type="Land_SPE_Fuel_Barrel_German"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={2044.3688,218.86949,7338.1563}; + angles[]={0.014998405,1.0967126,0.0050033992}; + }; + areaSize[]={12.365829,0,10.424}; + areaIsRectangle=1; + flags=1; + id=2317; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2300; + atlOffset=-0.0027313232; + }; + }; + id=2204; + atlOffset=-47.387299; + }; + class Item1 + { + dataType="Layer"; + name="airports"; + state=2; + class Entities + { + items=6; + class Item0 + { + dataType="Layer"; + name="airport_1"; + class Entities + { + items=98; + class Item0 + { + dataType="Marker"; + position[]={419.16214,195.06583,4039.6792}; + name="airp_1_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=379; + }; + class Item1 + { + dataType="Marker"; + position[]={523.31,196.38451,4094.4678}; + name="airp_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=195.45294; + id=382; + }; + class Item2 + { + dataType="Marker"; + position[]={647.93835,195.60544,4056.792}; + name="airport_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=308.72116; + b=98.176781; + id=383; + atlOffset=-2.3106079; + }; + class Item3 + { + dataType="Marker"; + position[]={418.55997,193.80556,4109.1738}; + name="spawnPoint_1"; + type="hd_start"; + id=384; + }; + class Item4 + { + dataType="Marker"; + position[]={659.14673,196.01598,4111.3657}; + name="airp_1_plane"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=90.517654; + id=385; + }; + class Item5 + { + dataType="Marker"; + position[]={631.11932,196.4144,4110.3745}; + name="airp_1_plane_1"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=90.543343; + id=746; + }; + class Item6 + { + dataType="Marker"; + position[]={602.65198,196.71349,4110.5684}; + name="airp_1_plane_2"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=90.177818; + id=747; + }; + class Item7 + { + dataType="Marker"; + position[]={572.27539,196.89604,4109.8135}; + name="airp_1_plane_3"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=89.317467; + id=748; + }; + class Item8 + { + dataType="Marker"; + position[]={524.08545,196.02066,4109.7441}; + name="airp_1_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=126.35674; + id=892; + }; + class Item9 + { + dataType="Marker"; + position[]={469.94882,195.69624,4051.3535}; + name="airp_1_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=10.396377; + id=893; + }; + class Item10 + { + dataType="Marker"; + position[]={587.43805,197.75984,4027.4692}; + name="airp_1_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=902; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={931.99274,201.97592,3986.3286}; + angles[]={0.029989703,2.7117319,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=646; + type="Land_SPE_BarbedWire_04"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={945.4826,202.78477,3988.1033}; + angles[]={0.054945603,6.209743,0.41030809}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=788; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={872.77789,199.04228,4104.665}; + angles[]={0.049960449,2.2562892,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=886; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={880.71661,199.0235,4104.5688}; + angles[]={0.049961641,3.8097513,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=890; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={355.75363,191.0575,4148.8721}; + angles[]={0.079832405,1.8086694,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=712; + type="Land_SPE_Element_c"; + atlOffset=1.5258789e-005; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={346.26361,191.1187,4142.146}; + angles[]={0,2.3341298,6.2782059}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=785; + type="Land_SPE_Element_c"; + atlOffset=1.5258789e-005; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={932.55621,200.15266,4013.3408}; + angles[]={0.034988083,5.8682361,0.21177252}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=786; + type="Land_SPE_Element_c"; + atlOffset=1.5258789e-005; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={942.67627,200.49474,4033.406}; + angles[]={0.084795304,0.19673558,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=787; + type="Land_SPE_Element_c"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={897.32446,198.98874,4111.5938}; + angles[]={0.054945603,0.87529737,0.1046123}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=710; + type="SPE_FW190F8_MRWreck"; + atlOffset=0.0034637451; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={432.19724,195.72112,4016.3076}; + angles[]={6.2681909,2.1286082,0.009988944}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=711; + type="SPE_FW190F8_MRWreck"; + atlOffset=0.0055847168; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={929.69714,202.16183,3998.0276}; + angles[]={0.064911485,5.9421368,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=656; + type="Land_SPE_Guardbox"; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={945.25818,202.0264,3979.1763}; + angles[]={6.2033539,4.8739858,0.27300769}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=866; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={937.00079,201.55173,3968.6965}; + angles[]={0.054944519,4.8739858,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=867; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={912.88892,200.4935,4217.7095}; + angles[]={0.16352737,4.8739858,0.21655147}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=868; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={908.94916,200.41905,4214.832}; + angles[]={0.17809334,4.8739858,0.21655147}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=869; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={901.33014,199.73398,4224.8252}; + angles[]={6.278182,4.8739858,0.044974733}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=870; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={936.41492,201.07419,3882.7048}; + angles[]={0.21655147,4.526351,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=871; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={945.82172,201.28416,3881.2783}; + angles[]={0.22132003,4.8739858,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=872; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={943.01337,201.12354,3892.5903}; + angles[]={6.0148177,5.4486046,0.089761689}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=873; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={952.94995,201.5397,3891.113}; + angles[]={6.134294,2.1504548,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=874; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={543.65289,197.06912,4123.7051}; + angles[]={0,1.5707964,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=718; + type="Land_Radar_01_airshaft_F"; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={516.73633,201.63005,4038.1567}; + angles[]={0,4.6966376,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=660; + type="Land_Radar_01_HQ_F"; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={478.02963,195.49878,4113.2144}; + angles[]={0,0.15248697,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=833; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={478.87042,195.49115,4115.5708}; + angles[]={0,0.15248697,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=834; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={478.31134,195.46858,4115.6113}; + angles[]={0,0.15248697,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=835; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={478.5867,195.51869,4113.1729}; + angles[]={0,0.15248697,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=836; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={480.60538,195.70148,4107.2466}; + angles[]={0,5.8554473,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=837; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={480.11658,195.68109,4106.9751}; + angles[]={0,5.8554544,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=838; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={479.52765,195.61052,4109.4067}; + angles[]={0,5.8554544,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=839; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={479.03723,195.59392,4109.1343}; + angles[]={0,5.8554544,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=840; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={503.72278,196.02315,4010.7725}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=844; + type="Land_PoleWall_01_pole_F"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={501.41348,195.96834,4011.7358}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=845; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={501.34344,195.95792,4011.1797}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=846; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={503.79324,196.03357,4011.3267}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=847; + type="Land_PoleWall_01_pole_F"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={509.81772,196.24989,4013.031}; + angles[]={0,4.3372407,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=848; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={510.06296,196.24971,4012.5286}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=849; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={507.60349,196.1674,4012.0684}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=850; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={507.85019,196.16597,4011.5647}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=851; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={562.66473,195.81839,4129.7349}; + angles[]={0,2.0009391,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=855; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={564.70093,195.99376,4128.2808}; + angles[]={0,2.0009391,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=856; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={564.89331,195.94661,4128.8076}; + angles[]={0,2.0009391,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=857; + type="Land_PoleWall_01_pole_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={562.47241,195.86435,4129.2104}; + angles[]={0,2.0009391,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=858; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={556.21948,195.74049,4128.8936}; + angles[]={0,1.4207141,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=859; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={556.09271,195.68555,4129.4385}; + angles[]={0,1.4207213,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=860; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={558.59271,195.75761,4129.3379}; + angles[]={0,1.4207213,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=861; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={558.4646,195.70432,4129.8838}; + angles[]={0,1.4207213,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=862; + type="Land_PoleWall_01_pole_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={696.74329,198.45828,4006.1948}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=875; + type="Land_PoleWall_01_pole_F"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={694.43402,198.43425,4007.1582}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=876; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={694.36401,198.43356,4006.6021}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=877; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={696.81378,198.46175,4006.749}; + angles[]={0,4.9174657,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=878; + type="Land_PoleWall_01_pole_F"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={702.83826,198.55246,4008.4534}; + angles[]={0,4.3372407,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=879; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={703.0835,198.55565,4007.9509}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=880; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={700.62402,198.51416,4007.4907}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=881; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={700.87073,198.51357,4006.9871}; + angles[]={0,4.3372478,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=882; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={928.77893,201.79002,3991.8286}; + angles[]={0.054944519,1.4007171,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=701; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={874.27393,199.07393,4103.729}; + angles[]={0.049961641,3.8095396,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=887; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={880.18866,199.08986,4103.0376}; + angles[]={0.049953286,2.257093,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=889; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={880.42932,199.29382,4098.8428}; + angles[]={0.044966776,3.8095396,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=891; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={420.59143,195.55766,4043.3057}; + angles[]={0,5.0476227,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=898; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={416.71948,195.5071,4042.9131}; + angles[]={6.278194,0.94108993,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=899; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={417.61609,195.48853,4036.115}; + angles[]={6.278182,1.9047168,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=900; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={421.48755,195.53918,4036.5122}; + angles[]={6.278182,4.0811691,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=901; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={588.86731,198.2206,4031.0957}; + angles[]={0.0049914722,5.0476227,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=903; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={584.99536,198.19672,4030.7031}; + angles[]={0,0.94108993,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=904; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={585.89197,198.21173,4023.905}; + angles[]={0.0049914722,1.9047168,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=905; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={589.76343,198.24905,4024.3022}; + angles[]={0.0049914722,4.0811691,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=906; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={932.37152,201.65437,3992.3379}; + angles[]={0.059925474,2.8725381,0.01999305}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=713; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={478.00336,195.73808,4110.9287}; + angles[]={0.010000871,4.438664,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=843; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={506.00366,196.30673,4010.6262}; + angles[]={6.268187,2.9211726,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=854; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={560.47406,195.92802,4130.3867}; + angles[]={0.099666774,0.0031165364,0.020004973}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=865; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={699.02417,198.70284,4006.0486}; + angles[]={6.278194,2.9211726,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=885; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={877.50067,198.93105,4105.5239}; + angles[]={0.049953286,0.65535605,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=888; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={541.54352,214.8399,4124.2246}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=719; + type="Land_TTowerBig_1_F"; + atlOffset=1.5258789e-005; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={478.42825,195.70963,4114.2837}; + angles[]={0,3.2529809,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=841; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={479.86371,195.86195,4108.0879}; + angles[]={0,2.6727631,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=842; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={502.6756,196.209,4011.2266}; + angles[]={0,1.734774,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=852; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={508.93854,196.42349,4012.3345}; + angles[]={0,1.1545563,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=853; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={563.58429,196.1114,4129.0591}; + angles[]={0,5.1014333,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=863; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={557.23206,195.9303,4129.377}; + angles[]={0,4.5212154,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=864; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Object"; + class PositionInfo + { + position[]={695.69617,198.65901,4006.6489}; + angles[]={0,1.734774,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=883; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item91 + { + dataType="Object"; + class PositionInfo + { + position[]={701.95911,198.74728,4007.7568}; + angles[]={0,1.1545563,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=884; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item92 + { + dataType="Logic"; + class PositionInfo + { + position[]={519.23547,197.30968,4050.2791}; + }; + areaSize[]={10.883514,0,5.375}; + areaIsRectangle=1; + flags=1; + id=720; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.13597107; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item93 + { + dataType="Marker"; + position[]={453.6398,195.56248,4051.2153}; + name="airp_1_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=10.396377; + id=918; + }; + class Item94 + { + dataType="Marker"; + position[]={437.79871,195.39697,4050.6841}; + name="airp_1_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=10.396377; + id=919; + }; + class Item95 + { + dataType="Object"; + class PositionInfo + { + position[]={556.30701,197.38765,4026.6079}; + angles[]={6.278194,0,0.014998405}; + }; + side="Empty"; + class Attributes + { + }; + id=915; + type="Land_HelipadEmpty_F"; + }; + class Item96 + { + dataType="Object"; + class PositionInfo + { + position[]={619.11932,197.92,4026.8477}; + angles[]={6.278194,0,0.014998405}; + }; + side="Empty"; + class Attributes + { + }; + id=916; + type="Land_HelipadEmpty_F"; + }; + class Item97 + { + dataType="Object"; + class PositionInfo + { + position[]={723.0321,198.71927,4029.2432}; + angles[]={6.278194,0,0.014998405}; + }; + side="Empty"; + class Attributes + { + }; + id=917; + type="Land_HelipadEmpty_F"; + }; + }; + id=330; + atlOffset=0.0014648438; + }; + class Item1 + { + dataType="Layer"; + name="airport_2"; + class Entities + { + items=63; + class Item0 + { + dataType="Marker"; + position[]={4180.2891,223.27652,3963.335}; + name="airp_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=203.75656; + id=388; + }; + class Item1 + { + dataType="Marker"; + position[]={4198.3428,225.74899,4043.092}; + name="airport_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=108.659; + b=79.302002; + angle=25.867271; + id=389; + atlOffset=-0.064117432; + }; + class Item2 + { + dataType="Marker"; + position[]={4175.1216,222.9575,3955.7437}; + name="spawnPoint_2"; + type="hd_start"; + id=390; + }; + class Item3 + { + dataType="Marker"; + position[]={4174.6455,224.80806,4033.0107}; + name="airp_2_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=391; + }; + class Item4 + { + dataType="Marker"; + position[]={4251.2036,228.86,4005.7834}; + name="airp_2_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=920; + }; + class Item5 + { + dataType="Marker"; + position[]={4195.6064,225.8,4000.1665}; + name="airp_2_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=187.12627; + id=922; + }; + class Item6 + { + dataType="Marker"; + position[]={4196.521,225.79306,4017.3862}; + name="airp_2_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=209.82312; + id=923; + }; + class Item7 + { + dataType="Marker"; + position[]={4276.9653,228.11601,4016.6338}; + name="airp_2_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=55.86285; + id=924; + }; + class Item8 + { + dataType="Marker"; + position[]={4256.5737,228.10001,4020.1382}; + name="airp_2_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=95.644196; + id=1008; + }; + class Item9 + { + dataType="Marker"; + position[]={4270.0996,228.10001,3999.1797}; + name="airp_2_vehicle_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=51.746475; + id=1009; + }; + class Item10 + { + dataType="Marker"; + position[]={4187.2441,225.69331,4050.1201}; + name="airp_2_vehicle_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=188.00298; + id=1010; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4201.3745,226.75447,4116.46}; + angles[]={6.2731905,1.1019987,0.024986627}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=987; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={4193.353,226.57198,4117.2627}; + angles[]={6.2731905,2.6554077,0.024986627}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=988; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={4209.7246,226.59279,4130.8013}; + angles[]={0.039979152,1.895623,0.054944519}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=989; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={4324.395,233.40773,4046.7334}; + angles[]={5.9689493,5.024291,0.12435512}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1006; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={4310.8799,232.39694,4033.8489}; + angles[]={0.32774219,4.7689505,0.24026266}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1007; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={4198.1948,228.05943,4112.4551}; + angles[]={6.278182,2.7297878,0.024996169}; + }; + side="Empty"; + class Attributes + { + createAsSimpleObject=1; + }; + id=990; + type="Land_SPE_Guardbox"; + atlOffset=0.6398468; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={4223.3403,227.36761,4114.541}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=962; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={4221.0977,227.23653,4115.6504}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=963; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={4220.9922,227.23401,4115.0996}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=964; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={4223.4463,227.37123,4115.0894}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=965; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={4209.3574,226.68747,4098.0073}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=966; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={4209.667,226.68217,4097.5415}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=967; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={4207.2905,226.5778,4096.7583}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=968; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={4207.6021,226.57471,4096.2915}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=969; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={4219.3618,227.14798,4115.3164}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=972; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={4217.1191,227.0424,4116.4258}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=973; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={4217.0137,227.03552,4115.875}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=974; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={4219.4678,227.15327,4115.8647}; + angles[]={0,4.9816656,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=975; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={4273.2188,229.73849,4057.813}; + angles[]={0,2.868722,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=977; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={4273.4258,229.67616,4055.3196}; + angles[]={0,2.868722,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=978; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={4273.9517,229.60477,4055.5134}; + angles[]={0,2.868722,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=979; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={4272.6943,229.78256,4057.6208}; + angles[]={0,2.868722,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=980; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={4274.8018,229.51717,4052.4844}; + angles[]={0,2.8780918,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=982; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={4274.9854,229.51991,4049.989}; + angles[]={0,2.8780918,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=983; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={4275.5132,229.52881,4050.178}; + angles[]={0,2.8780918,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=984; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={4274.2754,229.58069,4052.2971}; + angles[]={0,2.8780918,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=985; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={4204.1646,226.43513,4095.5486}; + angles[]={0,4.4086876,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=996; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={4204.373,226.41853,4095.0295}; + angles[]={0,4.4086876,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=997; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={4201.8872,226.35374,4094.7461}; + angles[]={0,4.4086876,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=998; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={4202.0972,226.33972,4094.2256}; + angles[]={0,4.4086876,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=999; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={4173.7192,225.78864,4099.4297}; + angles[]={0,1.7650218,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1001; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={4173.7842,225.79337,4099.9854}; + angles[]={0,1.7650218,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1002; + type="Land_PoleWall_01_pole_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={4176.104,225.84772,4099.0474}; + angles[]={0,1.7650218,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1003; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={4176.168,225.8521,4099.6045}; + angles[]={0,1.7650218,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1004; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={4175.6313,225.1441,3975.2515}; + angles[]={6.105092,4.4742751,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=934; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={4193.5913,225.77879,3974.115}; + angles[]={6.2182741,1.1325737,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=935; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={4193.0449,225.20999,3968.2244}; + angles[]={6.1489944,5.8620338,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=936; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={4199.8101,226.69287,4115.6831}; + angles[]={6.2731848,2.6551845,0.029995665}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=991; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={4193.8994,226.5593,4115.9521}; + angles[]={6.2731848,1.1027673,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=992; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={4194.5415,226.52528,4109.1714}; + angles[]={0,4.2547913,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=993; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={4197.9707,226.61484,4110.7578}; + angles[]={6.278182,4.2547741,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=994; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={4179.2344,225.27812,3975.9014}; + angles[]={6.1294107,2.8725381,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=939; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={4191.1748,225.42174,3971.6741}; + angles[]={6.19839,4.2617888,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=940; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={4197.2583,226.61212,4117.9824}; + angles[]={6.2681789,5.7841911,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=995; + type="Land_SPE_Sandbag_Nest"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={4222.3247,227.51451,4115.061}; + angles[]={0,1.7989742,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=970; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={4208.5781,226.84367,4097.1997}; + angles[]={0,1.0212033,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=971; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={4218.3462,227.30763,4115.8364}; + angles[]={0,1.7989742,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=976; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={4273.2974,229.90872,4056.6748}; + angles[]={0,5.9692159,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=981; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={4274.8696,229.77393,4051.3455}; + angles[]={0,5.9785857,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=986; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={4203.2373,226.5979,4094.9163}; + angles[]={0,1.2259963,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1000; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={4174.8359,226.02892,4099.5425}; + angles[]={0,4.8655157,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1005; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Logic"; + class PositionInfo + { + position[]={4183.2329,224.32779,3970.7827}; + angles[]={6.2232599,0,0.024996169}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=921; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=338; + atlOffset=-0.35786438; + }; + class Item2 + { + dataType="Layer"; + name="airport_3"; + class Entities + { + items=86; + class Item0 + { + dataType="Marker"; + position[]={1463.1959,122.33348,977.56879}; + name="airp_3_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=17.151976; + b=5; + angle=256.48557; + id=395; + atlOffset=-0.63376617; + }; + class Item1 + { + dataType="Marker"; + position[]={1443.0432,122.65024,962.6568}; + name="airport_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=102.934; + b=101.526; + angle=349.62659; + id=396; + atlOffset=1.2938766; + }; + class Item2 + { + dataType="Marker"; + position[]={1437.2277,121.59135,991.6123}; + name="spawnPoint_3"; + type="hd_start"; + id=397; + atlOffset=0.00050354004; + }; + class Item3 + { + dataType="Marker"; + position[]={1403.4194,120.39378,986.68512}; + name="airp_3_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=398; + atlOffset=1.5258789e-005; + }; + class Item4 + { + dataType="Marker"; + position[]={1437.4562,123.23821,1012.1019}; + name="airp_3_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=4.8189025; + b=5; + angle=78.389221; + id=1206; + atlOffset=-7.6293945e-006; + }; + class Item5 + { + dataType="Marker"; + position[]={1427.5863,123.6505,1026.3818}; + name="airp_3_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=4.8189025; + b=5; + angle=92.319519; + id=1208; + }; + class Item6 + { + dataType="Marker"; + position[]={1445.2465,121.69518,973.7627}; + name="airp_3_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=4.8189025; + b=5; + angle=77.41214; + id=1236; + atlOffset=7.6293945e-006; + }; + class Item7 + { + dataType="Marker"; + position[]={1417.5865,116.35854,915.82056}; + name="airp_3_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=1280; + atlOffset=7.6293945e-006; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1429.886,120.27773,873.82526}; + angles[]={6.2631865,6.0937796,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1269; + type="Land_SPE_Netting_02"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1419.6265,119.25688,873.6084}; + angles[]={0.0049914722,6.1951184,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1270; + type="Land_SPE_Netting_02"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1405.155,118.22398,870.60394}; + angles[]={0.069885373,0.13300116,0.1095605}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1271; + type="Land_SPE_Netting_02"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1374.0573,116.9731,889.73181}; + angles[]={6.2731848,4.257391,6.2232561}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1272; + type="Land_SPE_Netting_02"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1349.4055,119.69933,1015.6196}; + angles[]={6.2033577,2.5209379,0.099667378}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1273; + type="Land_SPE_Netting_02"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1443.8254,124.58804,1045.8922}; + angles[]={6.2531977,0,0.049956869}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1212; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1441.9608,124.64095,1051.0902}; + angles[]={6.2531958,0,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1213; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1493.9818,127.37297,1039.0105}; + angles[]={6.278194,0,0.11449444}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1214; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1480.5854,126.80584,1040.373}; + angles[]={6.2531958,0,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1215; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1475.3633,126.75228,1043.8186}; + angles[]={6.2531958,0,0.034986377}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1216; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1464.8322,126.1917,1042.976}; + angles[]={6.2531919,0,0.074860819}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1217; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1454.4117,125.46702,1048.6652}; + angles[]={6.2531958,0,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1218; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1451.5477,125.25432,1049.7583}; + angles[]={6.2531919,0,0.084799528}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1219; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1449.2245,125.14513,1052.5719}; + angles[]={6.2531958,0,0.07983166}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1220; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1423.5353,124.22903,1040.9963}; + angles[]={0.024991399,0,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1221; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1413.5975,124.13467,1039.0188}; + angles[]={0.015002378,0,0.024993783}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1222; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1404.4432,123.592,1038.5233}; + angles[]={0.18293318,0,0.064906895}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1223; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1384.2634,122.25845,1030.2878}; + angles[]={0.010000871,0,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1224; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1373.9736,121.41546,1022.0796}; + angles[]={6.19839,0,0.049958061}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1225; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1349.7485,119.29829,1021.2068}; + angles[]={6.248199,0,0.13419099}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1226; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1340.4111,118.04393,1019.8459}; + angles[]={6.2631893,0,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1227; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1468.7106,121.64146,881.50726}; + angles[]={6.2631865,0,0.029993678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1228; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1463.1572,121.408,879.30121}; + angles[]={6.2382174,0,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1229; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1456.9597,120.99097,882.82819}; + angles[]={0.049958061,0,0.064907812}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1230; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1446.7765,120.39528,881.52374}; + angles[]={0.099666774,0,0.099670969}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1231; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1440.9364,120.22535,876.73291}; + angles[]={0.044972081,0,0.1046163}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1232; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1426.0365,118.96532,878.12225}; + angles[]={0.14889148,0,0.099666774}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1233; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1406.9363,117.2818,874.66608}; + angles[]={0.11942752,0,0.12927616}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1234; + type="Land_SPE_HedgeHog"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1423.3108,121.14446,962.57965}; + angles[]={0,4.5807714,6.2332287}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1199; + type="Land_SPE_maintenanceCrane"; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1387.7924,122.93672,1003.8405}; + angles[]={6.2581916,0,0.054941263}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1196; + type="Land_SPE_Tent_01"; + atlOffset=0.0029449463; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1417.2908,121.40974,954.09039}; + angles[]={6.1391888,0,0.059929453}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1197; + type="Land_SPE_Tent_01"; + atlOffset=-7.6293945e-006; + }; + class Item39 + { + dataType="Logic"; + class PositionInfo + { + position[]={1463.4987,123.05708,978.2467}; + angles[]={6.2132993,4.4765177,0.13909525}; + }; + areaSize[]={16.928453,0,7.3594303}; + areaIsRectangle=1; + flags=1; + id=1205; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item40 + { + dataType="Logic"; + class PositionInfo + { + position[]={1436.4617,123.46382,1017.8542}; + angles[]={6.2132993,4.4765177,0.13909525}; + }; + areaSize[]={11.180687,0,4.1208277}; + areaIsRectangle=1; + flags=1; + id=1207; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.051948547; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item41 + { + dataType="Logic"; + class PositionInfo + { + position[]={1438.8409,125.28233,977.46698}; + angles[]={0,4.4765248,0}; + }; + areaSize[]={12.325,0,10.57}; + areaIsRectangle=1; + flags=1; + id=1235; + type="ModuleHideTerrainObjects_F"; + atlOffset=4.0230103; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=3; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1427.1772,126.31537,990.3399}; + angles[]={0,6.1048861,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1275; + type="Land_Radar_01_HQ_F"; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1468.5425,122.07696,884.30609}; + angles[]={0.044970755,4.5929337,0.034984674}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1241; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1451.97,121.03832,883.61743}; + angles[]={0.12927616,4.5929337,0.10461573}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1242; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={1433.8782,119.99063,879.05164}; + angles[]={0.13418743,4.6024108,0.074860819}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1243; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={1415.4578,118.52409,876.2301}; + angles[]={0.089758366,4.5929337,0.10461573}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1244; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={1396.4836,116.69812,872.05127}; + angles[]={0.044968102,4.3324404,0.079832405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1245; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={1383.0006,116.26876,876.3703}; + angles[]={0.034986377,2.1359413,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1246; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={1370.6261,116.57294,900.93677}; + angles[]={0.029989703,5.871655,6.2182784}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1247; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={1364.21,117.11597,914.71161}; + angles[]={0.039980642,5.7550945,6.1539092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1248; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={1346.0548,115.99706,931.6156}; + angles[]={6.2631893,5.9753256,0.054944519}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1249; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={1343.0104,118.66547,1016.1395}; + angles[]={6.2631893,3.8709388,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1250; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={1356.9298,120.5278,1019.4066}; + angles[]={6.134294,4.5929337,0.069889642}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1251; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={1381.4302,122.41005,1025.3939}; + angles[]={6.1539092,3.9512534,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1252; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={1393.6324,123.01604,1026.9752}; + angles[]={6.1050959,4.5929337,0.084795304}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1253; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={1455.5763,125.92458,1045.0323}; + angles[]={6.2531958,2.0295484,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1254; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={1469.1102,126.84254,1040.3245}; + angles[]={6.2531939,4.5929337,0.054944519}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1255; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={1485.0225,127.26721,1036.6637}; + angles[]={6.2531958,4.8337212,0.024991399}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1256; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={1496.3975,128.0163,1031.5754}; + angles[]={6.2382174,5.5297918,0.13418743}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1257; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={1499.4136,128.04759,1022.631}; + angles[]={6.2631865,6.0681367,0.16352773}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1258; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={1516.5356,127.21124,981.25958}; + angles[]={6.1686912,6.1359181,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1259; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={1514.0712,127.64583,992.43713}; + angles[]={0.024993783,2.495121,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1260; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={1508.8065,128.13165,1003.7338}; + angles[]={6.134294,6.1184587,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1261; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={1485.0237,124.21013,944.44452}; + angles[]={6.1884718,2.8437181,0.25436646}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1262; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={1493.7437,124.91611,928.96161}; + angles[]={6.2432094,2.8081586,0.24497873}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1263; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={1499.9734,125.52587,911.06781}; + angles[]={0.010006829,3.0394213,0.19258296}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1264; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={1503.3635,125.03553,893.96387}; + angles[]={0.07983166,3.173027,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1265; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={1497.9325,123.7289,883.98596}; + angles[]={6.1391888,4.5929337,0.15865518}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1266; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={1403.4014,122.0922,993.2337}; + angles[]={6.0382066,4.5929337,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1276; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={1403.8374,121.58406,982.03802}; + angles[]={0.094716646,4.5929337,0.024991399}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1277; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={1409.4358,122.02435,987.7348}; + angles[]={6.2332273,0.070623554,0.21654786}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1278; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={1398.1292,121.66203,987.08997}; + angles[]={6.2332287,6.1767669,6.1736255}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1279; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={1416.5144,118.52396,922.65948}; + angles[]={6.1934271,4.5929337,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1281; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={1417.9834,118.26118,909.73529}; + angles[]={0.074860819,4.5929337,0.024993783}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1282; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={1424.26,118.82596,916.6264}; + angles[]={6.2332273,0.070623554,0.16352773}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1283; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={1410.6725,118.14854,917.2168}; + angles[]={6.2581916,6.1767669,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1284; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={1427.2578,124.39718,1033.6711}; + angles[]={6.22824,0.23303458,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1200; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={1503.9772,128.52206,1019.3284}; + angles[]={6.278194,1.0051401,0.07983166}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1201; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={1509.0924,126.42385,960.38}; + angles[]={6.2182775,2.4852731,0.074860021}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1202; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={1405.2754,119.30025,949.79468}; + angles[]={6.2133002,3.7167695,0.044970755}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1203; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={1396.8469,123.77256,1033.218}; + angles[]={6.1245303,5.7326336,0.094712868}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1204; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={1464.4935,122.04955,949.25305}; + angles[]={6.2631893,3.0603366,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1209; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={1452.4235,121.78384,949.90729}; + angles[]={6.2631865,2.4878953,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1210; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={1444.4659,124.83848,1038.7767}; + angles[]={6.2531939,6.0330105,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1211; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={1462.7634,122.20458,882.16132}; + angles[]={0.049958061,3.0783329,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1268; + type="Land_SPE_Netting_02"; + }; + }; + id=346; + atlOffset=1.0173798; + }; + class Item3 + { + dataType="Layer"; + name="airport_4"; + class Entities + { + items=20; + class Item0 + { + dataType="Marker"; + position[]={5102.1108,308.85199,2579.8271}; + name="airport_4"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorEAST"; + a=97.778; + b=170.55605; + id=403; + atlOffset=0.49465942; + }; + class Item1 + { + dataType="Marker"; + position[]={5120.7441,310.08038,2560.0112}; + name="spawnPoint_4"; + type="hd_start"; + id=404; + atlOffset=0.00048828125; + }; + class Item2 + { + dataType="Marker"; + position[]={5092.4072,305.91003,2508.9797}; + name="airp_4_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + id=1018; + atlOffset=3.0517578e-005; + }; + class Item3 + { + dataType="Marker"; + position[]={5124.668,307.28003,2662.3215}; + name="airp_4_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + id=1019; + atlOffset=3.0517578e-005; + }; + class Item4 + { + dataType="Marker"; + position[]={5122.5161,308.87112,2491.3018}; + name="airp_4_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=334.47586; + id=1020; + }; + class Item5 + { + dataType="Marker"; + position[]={5113.0581,308.10855,2486.396}; + name="airp_4_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=334.3678; + id=1021; + + }; + class Item6 + { + dataType="Marker"; + position[]={5089.2319,306.75201,2483.1746}; + name="airp_4_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=8.2509308; + id=1022; + }; + class Item7 + { + dataType="Marker"; + position[]={5116.2344,308.06021,2603.4702}; + name="airp_4_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=264.45648; + id=1024; + }; + class Item8 + { + dataType="Marker"; + position[]={5110.3013,307.61334,2662.7334}; + name="airp_4_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=270.07217; + id=1026; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={5116.3345,308.07013,2603.4417}; + angles[]={0.014998405,4.6104298,0.094716646}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1025; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={5110.3984,307.61493,2662.6951}; + angles[]={6.2731905,4.7083945,0.019999012}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1027; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={5120.2207,309.5025,2738.9463}; + angles[]={0.0050033992,0.7778632,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1011; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={5130.394,309.08392,2692.8833}; + angles[]={6.2382174,1.231956,6.1245265}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1012; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={5153.5596,308.57968,2592.9463}; + angles[]={0.019783247,1.3853396,6.1486826}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1013; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={5143.0059,309.80396,2513.0632}; + angles[]={0.034974448,1.3217608,6.100256}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1014; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={5076.8687,305.67258,2488.5947}; + angles[]={0.014998405,5.8620005,0.11942402}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1015; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={5078.8809,304.43579,2570.8813}; + angles[]={0.029989703,5.1745901,0.2069986}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1016; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={5124.8657,309.71838,2502.0012}; + angles[]={6.1835108,6.1526055,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1017; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={5089.1802,306.75339,2483.084}; + angles[]={0.034993853,0.13995159,0.034993853}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1023; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Logic"; + class PositionInfo + { + position[]={5111.4766,308.42929,2478.9048}; + }; + areaSize[]={3.7929688,0,12.4198}; + flags=1; + id=2324; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.1885376; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=354; + atlOffset=0.051727295; + }; + class Item4 + { + dataType="Layer"; + name="airport_5"; + class Entities + { + items=92; + class Item0 + { + dataType="Marker"; + position[]={4140.856,266.07999,7532.8584}; + name="airp_5_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=96.581024; + id=409; + }; + class Item1 + { + dataType="Marker"; + position[]={4175.2808,270.9068,7519.0933}; + name="airport_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=154.80121; + b=117.77638; + id=410; + atlOffset=-3.0517578e-005; + }; + class Item2 + { + dataType="Marker"; + position[]={4165.0752,266.48535,7532.8975}; + name="spawnPoint_5"; + type="hd_start"; + id=411; + }; + class Item3 + { + dataType="Marker"; + position[]={4054.5522,265.31409,7501.439}; + name="airp_5_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=412; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4226.9614,275.75482,7541.208}; + angles[]={0,1.5707964,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=911; + type="Land_Radar_01_airshaft_F"; + atlOffset=6.1035156e-005; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4224.8521,293.62033,7541.7275}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=912; + type="Land_TTowerBig_1_F"; + }; + class Item6 + { + dataType="Marker"; + position[]={4197.3301,275.48999,7493.1343}; + name="airp_5_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=10.580712; + b=5; + angle=28.969177; + id=1074; + }; + class Item7 + { + dataType="Marker"; + position[]={4233.6226,276.62549,7483.208}; + name="airp_5_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=286.8663; + id=1078; + atlOffset=3.0517578e-005; + }; + class Item8 + { + dataType="Marker"; + position[]={4160.4824,265.68439,7555.4751}; + name="airp_5_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=1190; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={4179.812,264.50647,7623.7295}; + angles[]={6.2182751,5.1334143,0.084803045}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1178; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={4140.9224,266.07999,7532.9497}; + angles[]={0,1.67295,0}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1073; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={4197.7666,275.46121,7494.2227}; + angles[]={0.0050033992,1.9934878,6.278182}; + }; + areaSize[]={9.3589916,0,10.851587}; + areaIsRectangle=1; + flags=1; + id=1075; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.026550293; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item12 + { + dataType="Logic"; + class PositionInfo + { + position[]={4233.541,276.6217,7483.1299}; + angles[]={0.029989703,4.9940567,0.074856833}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1079; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={4299.4326,279.81964,7442.2451}; + angles[]={6.2382174,4.1361341,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1080; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={4296.9302,279.31689,7434.7104}; + angles[]={6.2332239,5.6897001,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1081; + type="Land_SPE_BarbedWire_04"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={4315.7896,281.62305,7448.2515}; + angles[]={6.2282476,4.1547394,0.12435465}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1082; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={4323.8511,281.88608,7448.3184}; + angles[]={6.2282486,5.692234,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1083; + type="Land_SPE_BarbedWire_04"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={4289.9878,279.02548,7436.0117}; + angles[]={6.2382188,4.1361341,0.044966776}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1132; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={4293.4575,279.04718,7432.9761}; + angles[]={6.2332239,3.0233922,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1133; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={4143.1245,272.84912,7426.1294}; + angles[]={0.034988083,5.0028944,0.024986627}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1134; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={4135.7593,272.76871,7423.1655}; + angles[]={0.034988083,0.27359235,0.024986627}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1135; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={4132.2622,272.45999,7429.3027}; + angles[]={0.039971694,5.0031052,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1142; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={4132.1904,272.63507,7424.6929}; + angles[]={0.034989785,3.89047,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1143; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={4117.0317,260.69315,7603.3809}; + angles[]={0.064911485,6.0426474,0.074856833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1184; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={4112.354,260.43192,7602.3804}; + angles[]={0.069878548,6.0397501,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1185; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={4114.3096,261.43817,7589.7993}; + angles[]={0.069893055,3.6389153,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1186; + type="Land_SPE_BarbedWire_04"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={4110.1763,261.00369,7592.4321}; + angles[]={0.074856833,3.6494026,0.059940398}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1187; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={4106.9775,260.68118,7594.2417}; + angles[]={0.074872769,3.6560419,0.054938007}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1188; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={4324.9067,281.26093,7445.7524}; + angles[]={6.2282486,0.4437058,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1084; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={4285.1016,278.52066,7439.9243}; + angles[]={6.2382174,0.41438708,0.039973188}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1085; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={4217.0093,273.05005,7560.5498}; + angles[]={0.18292925,1.4135059,0.18776457}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1189; + type="Land_SPE_Element_c"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={4292.7056,279.99918,7437.4292}; + angles[]={6.2332239,4.2074943,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1086; + type="Land_SPE_Guardbox"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={4318.5195,282.77148,7452.5757}; + angles[]={6.268187,5.7637429,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1087; + type="Land_SPE_Guardbox"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={4135.1011,273.62762,7428.146}; + angles[]={0.039971694,5.0765338,0.025003321}; + }; + side="Empty"; + class Attributes + { + createAsSimpleObject=1; + }; + id=1136; + type="Land_SPE_Guardbox"; + atlOffset=0.27349854; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={4088.0327,266.07382,7539.8828}; + angles[]={0,1.1007115,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1144; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={4090.437,266.39816,7540.5742}; + angles[]={0,1.1007115,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1145; + type="Land_PoleWall_01_pole_F"; + atlOffset=0.13806152; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={4090.1443,266.26382,7541.0522}; + angles[]={0,1.1007115,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1146; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={4088.3245,266.05942,7539.4063}; + angles[]={0,1.1007115,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1147; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={4043.2522,265.02832,7509.8584}; + angles[]={0,0.88002616,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1155; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={4045.447,265.064,7511.0596}; + angles[]={0,0.88002616,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1156; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={4045.0566,265.0195,7511.4614}; + angles[]={0,0.88002616,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1157; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={4043.6409,265.07309,7509.457}; + angles[]={0,0.88002616,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1158; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={4041.207,265.15308,7503.6885}; + angles[]={0,0.29980117,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1159; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={4040.6614,265.16864,7503.8115}; + angles[]={0,0.29980832,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1160; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={4041.8384,265.17957,7506.019}; + angles[]={0,0.29980832,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1161; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={4041.291,265.13541,7506.1411}; + angles[]={0,0.29980832,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1162; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={4171.1016,264.42941,7606.5518}; + angles[]={0,4.7841125,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1166; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={4168.6851,264.19675,7607.1992}; + angles[]={0,4.7841125,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1167; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={4168.6895,264.23352,7606.6387}; + angles[]={0,4.7841125,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1168; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={4171.0977,264.38998,7607.1104}; + angles[]={0,4.7841125,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1169; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={4176.8423,264.69943,7609.6006}; + angles[]={0,4.2038875,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1170; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={4177.1519,264.75833,7609.1348}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1171; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={4174.7759,264.61124,7608.3516}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1172; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={4175.0874,264.67035,7607.8853}; + angles[]={0,4.2038946,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1173; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={4108.5195,260.53461,7596.1338}; + angles[]={0.069893055,5.2859983,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1179; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={4110.2236,260.3736,7599.9106}; + angles[]={0.069878548,4.4926887,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1180; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={4115.9595,260.68387,7600.9443}; + angles[]={0.069877692,4.627305,0.069893055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1182; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={4114.9414,261.22427,7592.0718}; + angles[]={0.069893055,5.2136302,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1183; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={4298.0864,279.66702,7441.104}; + angles[]={6.2382174,5.6892838,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1109; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={4292.0977,279.43405,7443.1855}; + angles[]={6.2432137,1.0058752,0.049946126}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1110; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={4291.5659,279.09955,7436.3853}; + angles[]={6.2382026,5.7678432,0.044982687}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1111; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={4295.6318,279.27539,7435.6782}; + angles[]={6.2332239,4.137042,0.054953203}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1112; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={4317.2617,281.74921,7449.1934}; + angles[]={6.2033539,5.7053938,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1113; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={4323.1665,281.95438,7449.5625}; + angles[]={6.2282486,4.1377745,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1114; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={4321.7974,282.11267,7456.2349}; + angles[]={6.2232599,1.0050313,0.064895861}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1115; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={4318.5591,281.97723,7454.2871}; + angles[]={0.069877692,1.0060564,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1116; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={4056.3179,265.79218,7504.2183}; + angles[]={0.029989703,5.0476227,0.084803045}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1117; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={4052.4458,265.51947,7503.8257}; + angles[]={0.049961641,0.94108993,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1118; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={4052.8008,265.79654,7498.3901}; + angles[]={0.074856833,1.9047168,0.1046123}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1119; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={4056.6724,266.10062,7498.7871}; + angles[]={0.069877692,4.0811691,0.1095605}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1120; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={4141.3838,272.78171,7426.418}; + angles[]={0.034974448,0.27298939,0.025003321}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1137; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={4139.0986,272.50137,7432.3325}; + angles[]={0.039971694,1.8726355,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1138; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={4133.5679,272.5173,7428.3403}; + angles[]={0.039971694,0.35158288,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1139; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={4135.6577,272.6958,7424.7817}; + angles[]={0.034974448,5.0039673,0.025003321}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1140; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={4162.248,266.31454,7558.2544}; + angles[]={6.1835108,5.0476227,0.069893055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1191; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={4158.376,266.26852,7557.8618}; + angles[]={6.2282333,0.94108993,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1192; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={4158.7314,266.1868,7552.4263}; + angles[]={0.034972742,1.9047168,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1193; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={4162.6025,266.224,7552.8232}; + angles[]={0.034972742,4.0811691,0.034988083}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1194; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={4298.8169,279.50308,7437.4849}; + angles[]={6.2382174,2.5352476,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1121; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={4320.0464,281.68182,7447.1826}; + angles[]={6.2282486,2.5353465,6.2731786}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1122; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={4139.0952,272.77899,7423.5205}; + angles[]={0.029989703,3.4021726,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1141; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={4085.7905,265.93451,7538.7544}; + angles[]={0.014998405,5.2809572,0.14888383}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1152; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={4041.7126,265.20819,7508.1689}; + angles[]={0.11942402,5.1692705,0.13419813}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1163; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={4182.5938,265.01672,7623.2549}; + angles[]={6.2631836,0.21232384,6.2232599}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1174; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={4106.6709,260.28152,7598.6128}; + angles[]={0.074856833,5.0323429,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1181; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={4089.134,266.09753,7540.1831}; + angles[]={0,4.2011995,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1153; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=-0.29998779; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={4044.2607,265.27518,7510.3926}; + angles[]={0,3.9805202,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1164; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={4041.2124,265.34705,7504.8105}; + angles[]={0,3.4003026,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1165; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={4170.0034,264.53021,7606.8623}; + angles[]={0,1.601421,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1175; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={4176.0635,264.90021,7608.793}; + angles[]={0,1.0212033,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1176; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Logic"; + class PositionInfo + { + position[]={4227.2798,275.66803,7497}; + }; + areaSize[]={6.4941406,0,8.6408691}; + flags=1; + id=2323; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.12402344; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item91 + { + dataType="Logic"; + class PositionInfo + { + position[]={4214.041,275.39163,7505.957}; + angles[]={0.099675752,0,6.1343088}; + }; + areaSize[]={9.0510254,0,9.9414063}; + areaIsRectangle=1; + flags=1; + id=2322; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.14117432; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=362; + atlOffset=-0.56848145; + }; + class Item5 + { + dataType="Layer"; + name="airport_6"; + class Entities + { + items=43; + class Item0 + { + dataType="Marker"; + position[]={7714.3433,288.03586,6364.0029}; + name="airp_6_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=209.5211; + id=423; + atlOffset=2.6858521; + }; + class Item1 + { + dataType="Marker"; + position[]={7779.603,290.64993,6447.6094}; + name="airport_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=73.351654; + b=122.10732; + angle=21.673447; + id=424; + atlOffset=-3.0517578e-005; + }; + class Item2 + { + dataType="Marker"; + position[]={7772.0835,285.55835,6379.939}; + name="spawnPoint_6"; + type="hd_start"; + id=425; + atlOffset=0.00048828125; + }; + class Item3 + { + dataType="Marker"; + position[]={7745.7217,285.37,6375.0981}; + name="airp_6_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=426; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={7805.8818,287.89844,6411.375}; + angles[]={0,2.0508587,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=909; + type="Land_Radar_01_airshaft_F"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={7804.251,306.01898,6412.8101}; + angles[]={0,0.4800624,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=910; + type="Land_TTowerBig_1_F"; + }; + class Item6 + { + dataType="Marker"; + position[]={7709.8213,290.11029,6412.3008}; + name="airp_6_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=290.93286; + id=1029; + atlOffset=2.6858215; + }; + class Item7 + { + dataType="Marker"; + position[]={7721.1069,295.82944,6442.3423}; + name="airp_6_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=17.031616; + id=1031; + atlOffset=2.6858521; + }; + class Item8 + { + dataType="Marker"; + position[]={7789.8511,291.36307,6424.0972}; + name="airp_6_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=354.51385; + id=1033; + atlOffset=2.6858521; + }; + class Item9 + { + dataType="Marker"; + position[]={7829.1772,292.78586,6479.7207}; + name="airp_6_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=307.60437; + id=1035; + atlOffset=2.6858521; + }; + class Item10 + { + dataType="Marker"; + position[]={7760.2207,290.71808,6473.2173}; + name="airp_6_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=1044; + }; + class Item11 + { + dataType="Marker"; + position[]={7727.1812,288.03177,6373.269}; + name="airp_6_vehicle_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=210.20341; + id=1069; + atlOffset=2.6858521; + }; + class Item12 + { + dataType="Marker"; + position[]={7718.3794,288.51871,6397.9937}; + name="airp_6_vehicle_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=304.82361; + id=1071; + atlOffset=2.7371826; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={7788.126,290.12,6499.6367}; + angles[]={0,0.081460595,0}; + }; + side="Empty"; + class Attributes + { + }; + id=1039; + type="Land_HelipadEmpty_F"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={7736.8452,286.47797,6389.2266}; + }; + side="Empty"; + class Attributes + { + }; + id=1041; + type="Land_HelipadEmpty_F"; + atlOffset=0.96237183; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={7688.5938,285.82687,6401.6191}; + angles[]={6.2332392,3.2463951,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1050; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={7690.6504,286.16696,6405.4492}; + angles[]={6.1934156,1.0072256,0.010006829}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1051; + type="Land_SPE_Sandbag_Short"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={7801.5215,288.5043,6430.5693}; + angles[]={6.2033539,5.0473108,6.223259}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1053; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={7801.8926,288.13867,6426.5806}; + angles[]={6.1934166,3.4837689,6.2232599}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1054; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={7697.9556,285.35724,6361.2725}; + angles[]={0.0099949092,1.6632763,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1056; + type="Land_SPE_Sandbag_Short"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={7696.6377,285.32471,6365.0557}; + angles[]={0.0049795164,0.099747539,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1057; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={7787.4561,290.13272,6539.4443}; + angles[]={0,1.8516372,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1059; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={7786.8696,290.16269,6543.4072}; + angles[]={6.278182,0.28809476,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1060; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={7818.5894,290.16266,6559.1196}; + angles[]={6.278182,5.0473108,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1062; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={7821.269,290.14368,6556.1802}; + angles[]={0,3.2433589,6.2782059}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1063; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={7816.4956,290.17642,6559.7778}; + angles[]={6.278182,5.0473108,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1065; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item26 + { + dataType="Logic"; + class PositionInfo + { + position[]={7714.5029,285.35016,6363.9668}; + angles[]={0.0049795164,3.6567926,0}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1028; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item27 + { + dataType="Logic"; + class PositionInfo + { + position[]={7710.019,287.465,6412.4995}; + angles[]={6.0954213,5.0776925,0.0050152978}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1030; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item28 + { + dataType="Logic"; + class PositionInfo + { + position[]={7720.9434,293.15509,6442.3428}; + angles[]={6.1637464,0.29722947,6.2133079}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1032; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item29 + { + dataType="Logic"; + class PositionInfo + { + position[]={7789.1729,288.76822,6424.6895}; + angles[]={6.1983833,6.1874409,6.2232599}; + }; + areaSize[]={5.3300924,0,5}; + areaIsRectangle=1; + flags=1; + id=1034; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item30 + { + dataType="Logic"; + class PositionInfo + { + position[]={7829.1191,290.10001,6479.5679}; + angles[]={0,5.3686967,0}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1036; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item31 + { + dataType="Logic"; + class PositionInfo + { + position[]={7785.9453,290.12,6499.8853}; + angles[]={0,3.6274357,0}; + }; + areaSize[]={10.797195,0,13.510096}; + flags=1; + id=1040; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item32 + { + dataType="Logic"; + class PositionInfo + { + position[]={7735.6411,285.4523,6386.938}; + angles[]={6.268187,3.545619,0.0050033992}; + }; + areaSize[]={7,0,9.5585699}; + flags=1; + id=1042; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item33 + { + dataType="Logic"; + class PositionInfo + { + position[]={7745.6792,285.37,6375.1577}; + angles[]={0,3.545619,0}; + }; + areaSize[]={3,0,3}; + flags=1; + id=1043; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item34 + { + dataType="Logic"; + class PositionInfo + { + position[]={7760.1782,290.71725,6473.2769}; + angles[]={0,3.545619,0}; + }; + areaSize[]={3,0,3}; + flags=1; + id=1045; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item35 + { + dataType="Logic"; + class PositionInfo + { + position[]={7818.9854,290.14496,6555.0835}; + angles[]={0,4.8665667,0}; + }; + areaSize[]={8.3816586,0,3.0170829}; + areaIsRectangle=1; + flags=1; + id=1064; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.00045776367; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={7821.3628,290.64212,6561.3188}; + angles[]={6.278182,0.36480758,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1067; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={7782.7051,290.65109,6543.8154}; + angles[]={6.278182,2.7464881,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + }; + id=1068; + type="Land_SPE_BarbedWire_04"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={7688.624,286.41769,6404.0464}; + angles[]={6.1934156,5.0289397,0.010006829}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1049; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={7803.3901,288.64166,6428.6426}; + angles[]={6.1934309,1.8391143,6.223259}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1052; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={7695.6792,285.76028,6362.6943}; + angles[]={0.010006829,4.7382784,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1055; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={7785.4858,290.56616,6541.2671}; + angles[]={6.278194,4.9266291,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1058; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={7820.856,290.57028,6558.6104}; + angles[]={6.278182,0.43817711,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1061; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=370; + atlOffset=-0.82507324; + }; + }; + id=329; + atlOffset=1.0198975; + }; + class Item2 + { + dataType="Layer"; + name="Antistasi assets"; + state=2; + class Entities + { + items=6; + class Item0 + { + dataType="Layer"; + name="HQ assets"; + class Entities + { + items=23; + class Item0 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={6728.8809,288.83569,2485.196}; + angles[]={0,2.2023785,0}; + }; + side="Independent"; + flags=7; + class Attributes + { + name="petros"; + class Inventory + { + }; + }; + id=477; + type="I_G_officer_F"; + class CustomAttributes + { + class Attribute0 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute1 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=2; + }; + }; + }; + class Attributes + { + }; + id=476; + }; + class Item1 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=38; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={6729.2422,289.42712,2471.9426}; + }; + side="Independent"; + flags=3; + class Attributes + { + name="commanderX"; + description="Default Commander"; + isPlayer=1; + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=479; + type="I_G_Soldier_TL_F"; + atlOffset=0.57568359; + class CustomAttributes + { + class Attribute0 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + singleType="STRING"; + value="Male04GRE"; + }; + }; + }; + class Attribute1 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=2; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={6734.0371,288.84143,2469.2395}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=480; + type="I_G_Soldier_TL_F"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6733.1104,288.84222,2470.21}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=481; + type="I_G_Soldier_TL_F"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={6731.228,288.84717,2471.1982}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=482; + type="I_G_Soldier_TL_F"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={6731.0747,288.85144,2472.7817}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=483; + type="I_G_Soldier_TL_F"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6731.7783,288.85144,2474.1062}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=484; + type="I_G_Soldier_TL_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6731.0557,288.85144,2474.7214}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=485; + type="I_G_Soldier_F"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={6730.6133,288.84836,2477.6121}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=486; + type="I_G_Soldier_F"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6736.3965,288.83951,2469.3625}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=487; + type="I_G_Soldier_F"; + atlOffset=6.1035156e-005; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6735.3301,288.84143,2470.4375}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=488; + type="I_G_Soldier_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6733.3989,288.84448,2471.4658}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=489; + type="I_G_Soldier_F"; + atlOffset=3.0517578e-005; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6733.3501,288.84473,2472.9341}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=490; + type="I_G_Soldier_F"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6733.8916,288.84143,2474.2283}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=491; + type="I_G_Soldier_F"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6733.167,288.84155,2474.8582}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=492; + type="I_G_Soldier_F"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6738.5049,288.82895,2469.3987}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=493; + type="I_G_Soldier_AR_F"; + atlOffset=6.1035156e-005; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6737.6016,288.8334,2470.5742}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=494; + type="I_G_Soldier_AR_F"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={6735.3765,288.84146,2471.6436}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=495; + type="I_G_Soldier_AR_F"; + atlOffset=3.0517578e-005; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={6735.3628,288.84146,2473.062}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=496; + type="I_G_Soldier_AR_F"; + atlOffset=3.0517578e-005; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={6735.9072,288.84143,2474.1746}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=497; + type="I_G_Soldier_AR_F"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={6735.2832,288.84143,2474.9324}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=498; + type="I_G_Soldier_AR_F"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={6740.5938,288.82553,2469.4778}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=499; + type="I_G_Soldier_GL_F"; + atlOffset=3.0517578e-005; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={6739.3984,288.83142,2470.5313}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=500; + type="I_G_Soldier_GL_F"; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={6737.4497,288.83417,2471.9307}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=501; + type="I_G_Soldier_GL_F"; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={6737.2856,288.83499,2473.2085}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=502; + type="I_G_Soldier_GL_F"; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={6737.9609,288.8316,2474.2644}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=503; + type="I_G_Soldier_GL_F"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={6737.3184,288.83484,2475.0535}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=504; + type="I_G_Soldier_GL_F"; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={6742.1211,288.81021,2469.5559}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=505; + type="I_G_medic_F"; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={6740.8799,288.82263,2470.5703}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=506; + type="I_G_medic_F"; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={6739.0132,288.83145,2472.0977}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=507; + type="I_G_medic_F"; + atlOffset=3.0517578e-005; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={6738.9351,288.83142,2473.1733}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=508; + type="I_G_medic_F"; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={6739.4961,288.83148,2474.4041}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=509; + type="I_G_medic_F"; + atlOffset=6.1035156e-005; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={6738.9697,288.83127,2475.114}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=510; + type="I_G_medic_F"; + atlOffset=3.0517578e-005; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={6743.9229,288.80017,2469.7209}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=511; + type="I_G_engineer_F"; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={6742.8809,288.80704,2470.7559}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=512; + type="I_G_engineer_F"; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={6740.814,288.82327,2472.2021}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=513; + type="I_G_engineer_F"; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={6740.5688,288.82574,2473.4185}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=514; + type="I_G_engineer_F"; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={6741.1182,288.81787,2474.5261}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=515; + type="I_G_engineer_F"; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={6740.4766,288.82047,2475.2937}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=516; + type="I_G_engineer_F"; + }; + }; + class Attributes + { + }; + id=478; + atlOffset=0.57568359; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6718.8359,292.71625,2495.5442}; + }; + side="Empty"; + flags=5; + class Attributes + { + name="flagX"; + }; + id=517; + type="Flag_Syndikat_F"; + atlOffset=-3.0517578e-005; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={6719.5195,289.71692,2486.884}; + angles[]={0.0049795164,0,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="boxX"; + }; + id=518; + type="IG_supplyCrate_F"; + atlOffset=-0.0010986328; + class CustomAttributes + { + class Attribute0 + { + property="ammoBox"; + expression="[_this,_value] call bis_fnc_initAmmoBox;"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={6715.6611,289.43933,2489.6868}; + angles[]={6.278194,0,6.258182}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="fireX"; + }; + id=519; + type="Land_TentSolar_01_olive_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6719.4521,289.57471,2491.5588}; + angles[]={0.014998405,0,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="vehicleBox"; + }; + id=520; + type="Box_East_AmmoVeh_F"; + atlOffset=-0.00012207031; + class CustomAttributes + { + class Attribute0 + { + property="ammoBox"; + expression="[_this,_value] call bis_fnc_initAmmoBox;"; + class Value + { + class data + { + singleType="STRING"; + value="[[[[],[]],[[],[]],[[],[]],[[],[]]],false]"; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6712.8936,289.94006,2493.5188}; + angles[]={6.278194,5.6506429,6.2431989}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="mapX"; + }; + id=521; + type="MapBoard_seismic_F"; + atlOffset=-0.0014648438; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={6704.1152,289.29053,2475.9814}; + angles[]={5.7916288,0,5.5195098}; + }; + name="garrison"; + id=522; + type="Logic"; + atlOffset=-3.0517578e-005; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={6711.374,288.94196,2470.0615}; + angles[]={0.039971694,0,6.2282486}; + }; + name="killZones"; + id=523; + type="Logic"; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={6712.0918,288.93799,2469.0693}; + angles[]={0.034989785,0,6.2332239}; + }; + name="pathfinding"; + id=524; + type="Logic"; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={6707.7773,289.05978,2473.2295}; + angles[]={0.029989703,0,6.2083135}; + }; + name="roadsX"; + id=525; + type="Logic"; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={6702.541,289.41769,2477.3936}; + angles[]={0.63920277,0,5.7548728}; + }; + name="server"; + id=526; + type="Logic"; + }; + class Item12 + { + dataType="Logic"; + class PositionInfo + { + position[]={6710.4629,288.9588,2470.8936}; + angles[]={0.039971694,0,6.2282486}; + }; + name="sidesX"; + id=527; + type="Logic"; + }; + class Item13 + { + dataType="Logic"; + class PositionInfo + { + position[]={6705.9023,289.16708,2474.5605}; + angles[]={0.020001993,0,6.1983981}; + }; + name="spawner"; + id=528; + type="Logic"; + atlOffset=-3.0517578e-005; + }; + class Item14 + { + dataType="Logic"; + class PositionInfo + { + position[]={6709.1934,288.9921,2472.1455}; + angles[]={0.029989703,0,6.2133079}; + }; + name="timer"; + id=529; + type="Logic"; + }; + class Item15 + { + dataType="Logic"; + class PositionInfo + { + position[]={6715.272,288.85092,2484.7354}; + angles[]={0,0,6.2681909}; + }; + name="hc"; + isPlayable=1; + id=530; + type="HeadlessClient_F"; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={6716.3003,288.84006,2483.751}; + }; + name="hc_1"; + isPlayable=1; + id=531; + type="HeadlessClient_F"; + atlOffset=6.1035156e-005; + }; + class Item17 + { + dataType="Logic"; + class PositionInfo + { + position[]={6717.2456,288.84003,2482.9287}; + }; + name="hc_2"; + isPlayable=1; + id=532; + type="HeadlessClient_F"; + atlOffset=3.0517578e-005; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={6708.9014,289.09235,2489.1619}; + angles[]={6.2681909,0,6.2332249}; + }; + id=533; + type="ModuleCurator_F"; + class CustomAttributes + { + class Attribute0 + { + property="ModuleCurator_F_Owner"; + expression="_this setVariable ['Owner',_value,true];"; + class Value + { + class data + { + singleType="STRING"; + value="#adminLogged"; + }; + }; + }; + class Attribute1 + { + property="ModuleCurator_F_Forced"; + expression="_this setVariable ['Forced',_value,true];"; + class Value + { + class data + { + singleType="SCALAR"; + value=0; + }; + }; + }; + class Attribute2 + { + property="ModuleCurator_F_Name"; + expression="_this setVariable ['Name',_value,true];"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute3 + { + property="ModuleCurator_F_Addons"; + expression="_this setVariable ['Addons',_value,true];"; + class Value + { + class data + { + singleType="SCALAR"; + value=3; + }; + }; + }; + nAttributes=4; + }; + }; + class Item19 + { + dataType="Logic"; + class PositionInfo + { + position[]={6709.7896,289.00098,2486.8623}; + angles[]={6.2581987,0,6.2382188}; + }; + name="HC_commanderX"; + id=534; + type="HighCommand"; + atlOffset=-3.0517578e-005; + }; + class Item20 + { + dataType="Logic"; + class PositionInfo + { + position[]={6713.1899,288.90158,2486.7686}; + angles[]={6.2631836,0,6.2631836}; + }; + id=535; + type="HighCommandSubordinate"; + }; + class Item21 + { + dataType="Marker"; + position[]={6717.6655,288.80594,2492.5811}; + name="Synd_HQ"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorPink"; + a=50; + b=50; + id=536; + atlOffset=3.0517578e-005; + }; + class Item22 + { + dataType="Marker"; + position[]={6717.8638,2.7037606e+012,2493.1997}; + name="respawn_guerrila"; + text="Your Headquarters"; + type="hd_flag"; + colorName="ColorGUER"; + id=537; + atlOffset=2.7037606e+012; + }; + }; + id=1; + atlOffset=1.3518803e+012; + }; + class Item1 + { + dataType="Layer"; + name="seaSpawnAttack"; + state=2; + class Entities + { + items=17; + class Item0 + { + dataType="Marker"; + position[]={-330.49338,196.5766,5137.2227}; + name="seaAttackSpawn"; + type="mil_ambush"; + angle=28.695; + id=67; + atlOffset=3.4275208; + }; + class Item1 + { + dataType="Marker"; + position[]={-330.98926,262.94601,6742.1855}; + name="seaAttackSpawn_1"; + type="mil_ambush"; + angle=28.695; + id=538; + atlOffset=3.4275208; + }; + class Item2 + { + dataType="Marker"; + position[]={-330.98926,173.04349,8107.519}; + name="seaAttackSpawn_2"; + type="mil_ambush"; + angle=28.695; + id=539; + atlOffset=3.4275208; + }; + class Item3 + { + dataType="Marker"; + position[]={1489.4551,179.55437,8500.5693}; + name="seaAttackSpawn_3"; + type="mil_ambush"; + angle=28.695; + id=540; + atlOffset=3.4275208; + }; + class Item4 + { + dataType="Marker"; + position[]={2978.9092,252.94383,8428.166}; + name="seaAttackSpawn_4"; + type="mil_ambush"; + angle=28.695; + id=541; + atlOffset=3.4275208; + }; + class Item5 + { + dataType="Marker"; + position[]={4716.606,249.05174,8479.8828}; + name="seaAttackSpawn_5"; + type="mil_ambush"; + angle=28.695; + id=542; + atlOffset=3.4275208; + }; + class Item6 + { + dataType="Marker"; + position[]={6454.3027,302.14987,8490.2266}; + name="seaAttackSpawn_6"; + type="mil_ambush"; + angle=28.695; + id=543; + atlOffset=3.4275208; + }; + class Item7 + { + dataType="Marker"; + position[]={8450.5859,280.55682,8479.8828}; + name="seaAttackSpawn_7"; + type="mil_ambush"; + angle=28.695; + id=544; + atlOffset=3.4275208; + }; + class Item8 + { + dataType="Marker"; + position[]={8554.0195,266.32922,6028.4883}; + name="seaAttackSpawn_8"; + type="mil_ambush"; + angle=28.695; + id=545; + atlOffset=3.4275208; + }; + class Item9 + { + dataType="Marker"; + position[]={8595.3945,300.27231,4435.5996}; + name="seaAttackSpawn_9"; + type="mil_ambush"; + angle=28.695; + id=546; + atlOffset=3.4275208; + }; + class Item10 + { + dataType="Marker"; + position[]={8471.2715,303.52179,2822.0234}; + name="seaAttackSpawn_10"; + type="mil_ambush"; + angle=28.695; + id=547; + atlOffset=3.4275208; + }; + class Item11 + { + dataType="Marker"; + position[]={8543.6777,218.49384,1373.9419}; + name="seaAttackSpawn_11"; + type="mil_ambush"; + angle=28.695; + id=548; + atlOffset=3.4275208; + }; + class Item12 + { + dataType="Marker"; + position[]={8016.1631,142.70099,-84.482422}; + name="seaAttackSpawn_12"; + type="mil_ambush"; + angle=28.695; + id=549; + atlOffset=3.4275208; + }; + class Item13 + { + dataType="Marker"; + position[]={4499.3965,100.53369,-260.32129}; + name="seaAttackSpawn_13"; + type="mil_ambush"; + angle=28.695; + id=550; + atlOffset=3.4275208; + }; + class Item14 + { + dataType="Marker"; + position[]={1427.396,109.37988,-270.66406}; + name="seaAttackSpawn_14"; + type="mil_ambush"; + angle=28.695; + id=551; + atlOffset=3.4275208; + }; + class Item15 + { + dataType="Marker"; + position[]={-403.3916,124.73386,401.6582}; + name="seaAttackSpawn_15"; + type="mil_ambush"; + angle=28.695; + id=552; + atlOffset=3.4275208; + }; + class Item16 + { + dataType="Marker"; + position[]={-393.04834,217.21269,2946.1436}; + name="seaAttackSpawn_16"; + type="mil_ambush"; + angle=28.695; + id=553; + atlOffset=3.4275208; + }; + }; + id=66; + atlOffset=36.161804; + }; + class Item2 + { + dataType="Layer"; + name="controls"; + class Entities + { + items=64; + class Item0 + { + dataType="Marker"; + position[]={3043.6482,238.17003,4882.3462}; + name="control"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=69; + }; + class Item1 + { + dataType="Marker"; + position[]={1272.3702,99.588142,384.2933}; + name="control_1"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2113; + }; + class Item2 + { + dataType="Marker"; + position[]={2183.6724,114.38215,871.26276}; + name="control_2"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2116; + }; + class Item3 + { + dataType="Marker"; + position[]={4122.2749,140.99922,1890.2871}; + name="control_3"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=189.27982; + id=2118; + }; + class Item4 + { + dataType="Marker"; + position[]={5765.2554,126.55769,780.58948}; + name="control_4"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=279.9173; + id=2120; + }; + class Item5 + { + dataType="Marker"; + position[]={6090.9858,183.05061,1327.1113}; + name="control_5"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=239.88968; + id=2122; + atlOffset=-1.5258789e-005; + }; + class Item6 + { + dataType="Marker"; + position[]={4842.437,283.52994,3948.5845}; + name="control_6"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=141.37418; + id=2124; + }; + class Item7 + { + dataType="Marker"; + position[]={3567.3389,177.49216,2340.4021}; + name="control_7"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=149.91714; + id=2126; + }; + class Item8 + { + dataType="Marker"; + position[]={1911.9059,147.10291,1991.9633}; + name="control_8"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2128; + }; + class Item9 + { + dataType="Marker"; + position[]={5391.3765,254.22685,4516.1338}; + name="control_9"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=225.89606; + id=2130; + atlOffset=-1.5258789e-005; + }; + class Item10 + { + dataType="Marker"; + position[]={7294.1504,292.97226,4392.249}; + name="control_10"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=206.0385; + id=2132; + }; + class Item11 + { + dataType="Marker"; + position[]={1022.0308,218.45862,4542.1694}; + name="control_11"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=124.24186; + id=2134; + }; + class Item12 + { + dataType="Marker"; + position[]={516.04633,192.62468,3573.6145}; + name="control_12"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=299.33173; + id=2136; + }; + class Item13 + { + dataType="Marker"; + position[]={1136.4902,201.19289,3654.6672}; + name="control_13"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=81.949852; + id=2138; + }; + class Item14 + { + dataType="Marker"; + position[]={4084.3015,245.91995,4503.5386}; + name="control_14"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=143.76999; + id=2140; + }; + class Item15 + { + dataType="Marker"; + position[]={5451.4658,304.48111,2920.4319}; + name="control_15"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=211.83839; + id=2142; + atlOffset=-3.0517578e-005; + }; + class Item16 + { + dataType="Marker"; + position[]={4514.4507,224.89537,2359.7773}; + name="control_16"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + angle=102.64864; + id=2144; + }; + class Item17 + { + dataType="Marker"; + position[]={4195.624,253.32001,6999.605}; + name="control_17"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2147; + }; + class Item18 + { + dataType="Marker"; + position[]={3423.958,244.20697,7793.0464}; + name="control_18"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2149; + }; + class Item19 + { + dataType="Marker"; + position[]={7389.4419,280.90924,6873.5566}; + name="control_19"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2151; + }; + class Item20 + { + dataType="Marker"; + position[]={7003.2153,284.96127,6479.5508}; + name="control_20"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2153; + }; + class Item21 + { + dataType="Marker"; + position[]={7361.7344,281.01401,6083.104}; + name="control_21"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2155; + }; + class Item22 + { + dataType="Marker"; + position[]={1576.3357,196.66591,7204.8311}; + name="control_22"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2157; + }; + class Item23 + { + dataType="Marker"; + position[]={1186.3271,278.33594,6001.79}; + name="control_23"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2159; + }; + class Item24 + { + dataType="Marker"; + position[]={3915.3843,281.29395,5738.2949}; + name="control_24"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2161; + }; + class Item25 + { + dataType="Marker"; + position[]={6648.0518,256.69357,5290.252}; + name="control_25"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2163; + }; + class Item26 + { + dataType="Marker"; + position[]={2854.3091,275.49246,4322.1934}; + name="control_26"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2165; + }; + class Item27 + { + dataType="Marker"; + position[]={2733.2202,258.02701,3175.1414}; + name="control_27"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2167; + }; + class Item28 + { + dataType="Marker"; + position[]={5639.209,280.98401,6620.1411}; + name="control_28"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2169; + }; + class Item29 + { + dataType="Marker"; + position[]={2532.2969,286.24072,6779.7783}; + name="control_29"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2171; + }; + class Item30 + { + dataType="Marker"; + position[]={6565.9966,273.27975,3719.2554}; + name="control_30"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2172; + }; + class Item31 + { + dataType="Marker"; + position[]={4895.4063,116.82419,942.80615}; + name="control_31"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2174; + }; + class Item32 + { + dataType="Marker"; + position[]={2434.439,261.29959,5674.3828}; + name="control_32"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2175; + }; + class Item33 + { + dataType="Marker"; + position[]={5649.8076,257.27655,5492.3315}; + name="control_33"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2176; + }; + class Item34 + { + dataType="Marker"; + position[]={5779.5869,314.89972,2551.627}; + name="control_34"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2177; + }; + class Item35 + { + dataType="Marker"; + position[]={5795.0635,245.00238,5285.7144}; + name="control_35"; + markerType="RECTANGLE"; + type="rectangle"; + a=5; + b=5; + id=2178; + }; + class Item36 + { + dataType="Logic"; + class PositionInfo + { + position[]={1272.4862,99.58757,384.81711}; + angles[]={0,5.7593422,6.2782059}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2115; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item37 + { + dataType="Logic"; + class PositionInfo + { + position[]={2183.7881,114.39725,871.78656}; + angles[]={0,5.7593422,0}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2117; + type="ModuleHideTerrainObjects_F"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item38 + { + dataType="Logic"; + class PositionInfo + { + position[]={4122.0757,140.96973,1889.7888}; + angles[]={6.2531958,2.7797139,0.07983166}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2119; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item39 + { + dataType="Logic"; + class PositionInfo + { + position[]={5764.7593,126.57435,780.79419}; + angles[]={6.2382174,4.3616371,6.2681832}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2121; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item40 + { + dataType="Logic"; + class PositionInfo + { + position[]={6090.4741,183.05237,1326.949}; + angles[]={6.278194,3.6630228,6.278182}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2123; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item41 + { + dataType="Logic"; + class PositionInfo + { + position[]={4842.6733,283.51419,3948.1025}; + angles[]={6.2432122,1.9436018,0.015002378}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2125; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item42 + { + dataType="Logic"; + class PositionInfo + { + position[]={3567.501,177.47868,2339.8904}; + angles[]={6.2481956,2.0927045,0.014998405}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2127; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item43 + { + dataType="Logic"; + class PositionInfo + { + position[]={1912.0219,147.09215,1992.4872}; + angles[]={0.014998405,5.7593422,6.2581892}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2129; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item44 + { + dataType="Logic"; + class PositionInfo + { + position[]={5387.9883,254.21913,4516.687}; + angles[]={0.0050033992,3.418788,0.020001993}; + }; + areaSize[]={8.0481453,0,12}; + areaIsRectangle=1; + flags=1; + id=2131; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.052856445; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item45 + { + dataType="Logic"; + class PositionInfo + { + position[]={7293.5503,292.97,4391.811}; + angles[]={0,3.0722079,0}; + }; + areaSize[]={6.9553943,0,12}; + areaIsRectangle=1; + flags=1; + id=2133; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item46 + { + dataType="Logic"; + class PositionInfo + { + position[]={1022.3241,218.46504,4540.7769}; + angles[]={6.2432051,1.6445867,0.059933435}; + }; + areaSize[]={8.8335218,0,12}; + areaIsRectangle=1; + flags=1; + id=2135; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.044509888; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item47 + { + dataType="Logic"; + class PositionInfo + { + position[]={515.64636,192.62782,3573.9722}; + angles[]={6.268187,4.7004828,0.0050033992}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2137; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item48 + { + dataType="Logic"; + class PositionInfo + { + position[]={1137.1438,201.12727,3654.4746}; + angles[]={0.094717279,0.90645176,6.1539059}; + }; + areaSize[]={8.3256636,0,12}; + areaIsRectangle=1; + flags=1; + id=2139; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.0010528564; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item49 + { + dataType="Logic"; + class PositionInfo + { + position[]={4085.8191,245.89757,4506.0049}; + angles[]={6.2332249,1.9854177,0.010000871}; + }; + areaSize[]={14.396976,0,12}; + areaIsRectangle=1; + flags=1; + id=2141; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.18832397; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item50 + { + dataType="Logic"; + class PositionInfo + { + position[]={5450.7749,304.46429,2920.0581}; + angles[]={0.0050033992,3.173435,0.049961641}; + }; + areaSize[]={7.9063535,0,12}; + areaIsRectangle=1; + flags=1; + id=2143; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.015838623; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item51 + { + dataType="Logic"; + class PositionInfo + { + position[]={4521.1294,225.09622,2364.1423}; + angles[]={0,5.9114413,0}; + }; + areaSize[]={5,0,7.1513333}; + flags=1; + id=2146; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.011245728; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item52 + { + dataType="Logic"; + class PositionInfo + { + position[]={4196.4502,253.32001,7000.3208}; + angles[]={0,6.0188441,0}; + }; + areaSize[]={10.37575,0,12}; + areaIsRectangle=1; + flags=1; + id=2148; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.002243042; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item53 + { + dataType="Logic"; + class PositionInfo + { + position[]={3423.6616,244.16974,7790.4771}; + angles[]={0,4.8448806,0}; + }; + areaSize[]={11.146948,0,12}; + areaIsRectangle=1; + flags=1; + id=2150; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.21856689; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item54 + { + dataType="Logic"; + class PositionInfo + { + position[]={7391.7886,280.89728,6873.1543}; + angles[]={0,0.39327908,0}; + }; + areaSize[]={10.129868,0,12}; + areaIsRectangle=1; + flags=1; + id=2152; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.18798828; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item55 + { + dataType="Logic"; + class PositionInfo + { + position[]={7007.2881,284.96005,6479.4727}; + angles[]={0,0.15090227,0}; + }; + areaSize[]={9.0018101,0,12}; + areaIsRectangle=1; + flags=1; + id=2154; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.10488892; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item56 + { + dataType="Logic"; + class PositionInfo + { + position[]={7361.8799,281.03876,6083.5767}; + angles[]={0,1.0451832,0}; + }; + areaSize[]={10.642615,0,12}; + areaIsRectangle=1; + flags=1; + id=2156; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.00018310547; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item57 + { + dataType="Logic"; + class PositionInfo + { + position[]={1576.4517,196.66678,7205.3545}; + angles[]={0,0.04921627,0}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2158; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item58 + { + dataType="Logic"; + class PositionInfo + { + position[]={1188.9325,278.33508,6001.6826}; + angles[]={0,0.24830675,0}; + }; + areaSize[]={10.511495,0,12}; + areaIsRectangle=1; + flags=1; + id=2160; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.045135498; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item59 + { + dataType="Logic"; + class PositionInfo + { + position[]={3915.5005,281.28931,5738.8184}; + angles[]={0,4.3256588,0}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2162; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item60 + { + dataType="Logic"; + class PositionInfo + { + position[]={6648.168,256.70111,5290.7754}; + angles[]={0,5.7593422,0}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2164; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item61 + { + dataType="Logic"; + class PositionInfo + { + position[]={2854.5715,275.46481,4321.7417}; + angles[]={0,4.5629869,0}; + }; + areaSize[]={7.9828954,0,12}; + areaIsRectangle=1; + flags=1; + id=2166; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.055114746; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item62 + { + dataType="Logic"; + class PositionInfo + { + position[]={2733.1299,258.02844,3175.6714}; + angles[]={0,0.029659748,0}; + }; + areaSize[]={8.5302639,0,12}; + areaIsRectangle=1; + flags=1; + id=2168; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.0072631836; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item63 + { + dataType="Logic"; + class PositionInfo + { + position[]={5639.3252,280.9968,6620.6646}; + angles[]={0,0.88433886,0}; + }; + areaSize[]={5,0,12}; + areaIsRectangle=1; + flags=1; + id=2170; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=68; + atlOffset=1.4402771; + }; + class Item3 + { + dataType="Marker"; + position[]={8223.6875,308.17786,3074.6943}; + name="CSAT_carrier"; + type="flag_CSAT"; + id=70; + atlOffset=5.9841614; + }; + class Item4 + { + dataType="Marker"; + position[]={-11.480358,190.40454,5162.3115}; + name="NATO_carrier"; + type="flag_UN"; + id=71; + }; + class Item5 + { + dataType="Layer"; + name="detectPlayer"; + class Entities + { + items=1; + class Item0 + { + dataType="Marker"; + position[]={787.54211,202.62973,4055.7988}; + name="detectPlayer"; + markerType="RECTANGLE"; + type="rectangle"; + a=113.51956; + b=87.018066; + id=73; + atlOffset=3.044281; + }; + }; + id=72; + atlOffset=3.044281; + }; + }; + id=0; + atlOffset=4.2246259e+010; + }; + class Item3 + { + dataType="Layer"; + name="factories"; + state=2; + class Entities + { + items=4; + class Item0 + { + dataType="Layer"; + name="factory_1"; + class Entities + { + items=12; + class Item0 + { + dataType="Marker"; + position[]={4797.7192,120.84179,1096.4268}; + name="fact_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=139.14987; + id=429; + atlOffset=0.64398193; + }; + class Item1 + { + dataType="Marker"; + position[]={4802.8667,119.975,1115.099}; + name="factory_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBrown"; + a=138.4427; + b=71.695671; + angle=12.219986; + id=430; + atlOffset=-0.18500519; + }; + class Item2 + { + dataType="Marker"; + position[]={4700.7837,120.37119,1142.937}; + name="fact_1_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=148.74677; + id=641; + atlOffset=0.60462189; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={4931.3408,122.82614,1096.9465}; + angles[]={6.2182775,0.22114806,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1346; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4903.7007,120.02214,1033.2174}; + angles[]={6.2581892,3.2558877,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1347; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4745.9023,119.54472,1103.0753}; + angles[]={6.19839,3.6813679,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1348; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={4673.4297,120.06255,1132.8765}; + angles[]={0.019996032,4.6310163,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1349; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={4704.6182,121.75765,1201.1239}; + angles[]={0.019996032,5.8383784,6.2232561}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1351; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={4825.7837,122.63695,1170.8207}; + angles[]={6.22824,0.038376823,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1353; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={4674.9575,119.60595,1130.7292}; + angles[]={6.2481956,2.3774049,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1350; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={4703.0293,121.67354,1199.1953}; + angles[]={0.16352737,3.8066325,6.1391883}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1352; + type="Land_SPE_Sandbag_Short"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4828,122.19662,1169.4436}; + angles[]={6.2232561,5.2020116,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1354; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=77; + atlOffset=0.53688049; + }; + class Item1 + { + dataType="Layer"; + name="factory_2"; + class Entities + { + items=63; + class Item0 + { + dataType="Marker"; + position[]={561.21802,263.9942,6630.7036}; + name="fact_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=182.84389; + id=432; + atlOffset=0.60525513; + }; + class Item1 + { + dataType="Marker"; + position[]={510.88409,267.16211,6586.2588}; + name="factory_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBrown"; + a=95.316391; + b=89.112083; + angle=330.80106; + id=433; + atlOffset=0.3734436; + }; + class Item2 + { + dataType="Marker"; + position[]={527.10962,264.64343,6637.9429}; + name="fact_2_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=109.05211; + id=1345; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={487.40198,267.34854,6548.896}; + angles[]={0.025003321,0,6.2481976}; + }; + areaSize[]={2.9372406,0,2.2307129}; + flags=1; + id=1288; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={519.47614,266.88071,6551.085}; + angles[]={0,5.0888643,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1290; + type="Land_PoleWall_01_pole_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={519.31238,266.89157,6550.5503}; + angles[]={0,5.088872,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1291; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={517.20093,266.99042,6551.8931}; + angles[]={0,5.088872,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1292; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={517.03717,267.00131,6551.3569}; + angles[]={0,5.088872,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1293; + type="Land_PoleWall_01_pole_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={528.1377,266.42551,6555.5024}; + angles[]={0,0.4268434,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1295; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={527.61182,266.45084,6555.6934}; + angles[]={0,0.42685053,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1296; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={529.05988,266.35953,6557.7339}; + angles[]={0,0.42685053,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1297; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={528.53235,266.38406,6557.9243}; + angles[]={0,0.42685053,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1298; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={486.09225,267.9079,6555.3071}; + angles[]={6.139185,0.43167558,6.1391997}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1300; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={485.5676,268.0101,6555.5}; + angles[]={6.1440897,0.43168274,6.1343012}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1301; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={487.02518,268.04062,6557.5337}; + angles[]={6.1686978,0.43168274,6.1835103}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1302; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={486.49832,268.14212,6557.7271}; + angles[]={6.1686978,0.43168274,6.1835103}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1303; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={535.36389,264.57648,6649.1309}; + angles[]={0,4.7833819,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1305; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={535.36841,264.57358,6648.5718}; + angles[]={0,4.7833891,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1306; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={532.95105,264.7319,6649.2178}; + angles[]={0,4.7833891,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1307; + type="Land_PoleWall_01_pole_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={532.95605,264.73364,6648.6567}; + angles[]={0,4.7833891,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1308; + type="Land_PoleWall_01_pole_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={510.81161,264.8526,6654.4961}; + angles[]={0,4.7170625,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1310; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={510.85291,264.88116,6653.938}; + angles[]={0,4.7170696,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1311; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={508.39828,264.8187,6654.4229}; + angles[]={0,4.7170696,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1312; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={508.44073,264.84363,6653.8638}; + angles[]={0,4.7170696,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1313; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={442.76047,265.49597,6639.7051}; + angles[]={0,3.3467734,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1315; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={443.31509,265.52243,6639.6348}; + angles[]={0,3.3467805,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1316; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={442.35147,265.72589,6637.3252}; + angles[]={0,3.3467805,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1317; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={442.90829,265.74216,6637.2554}; + angles[]={0,3.3467805,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1318; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={432.26959,267.12695,6611.5532}; + angles[]={0,3.5374141,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1320; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={432.80081,267.20163,6611.3794}; + angles[]={0,3.5374212,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1321; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={431.41708,267.41415,6609.2944}; + angles[]={0,3.5374212,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1322; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={431.95053,267.53168,6609.1201}; + angles[]={0,3.5374212,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1323; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={457.31955,268.39862,6583.5371}; + angles[]={0,5.4392405,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1325; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={456.98172,268.42151,6583.0913}; + angles[]={0,5.4392476,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1326; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={455.46033,268.35678,6585.0776}; + angles[]={0,5.4392476,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1327; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={455.12256,268.38034,6584.6299}; + angles[]={0,5.4392476,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1328; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={451.9689,268.28339,6587.4849}; + angles[]={0,5.243938,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1330; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={451.72446,268.30841,6586.9824}; + angles[]={0,5.2439451,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1331; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={449.84607,268.25204,6588.6353}; + angles[]={0,5.2439451,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1332; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={449.60117,268.27603,6588.1304}; + angles[]={0,5.2439451,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1333; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={446.33878,268.15268,6591.0493}; + angles[]={0,5.4181371,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1335; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={446.01044,268.17307,6590.5962}; + angles[]={0,5.4181442,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1336; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={444.44745,268.0824,6592.5498}; + angles[]={0,5.4181442,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1337; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={444.1192,268.10513,6592.0952}; + angles[]={0,5.4181442,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1338; + type="Land_PoleWall_01_pole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={440.00937,267.83401,6597.0161}; + angles[]={0,5.6001759,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1340; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={439.6044,267.85324,6596.6299}; + angles[]={0,5.600183,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1341; + type="Land_PoleWall_01_pole_F"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={438.42099,267.72195,6598.8345}; + angles[]={0,5.600183,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1342; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={438.01584,267.74323,6598.4468}; + angles[]={0,5.600183,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1343; + type="Land_PoleWall_01_pole_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={559.57178,263.80786,6648.5757}; + angles[]={0.014998405,0.10061212,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1285; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={447.50995,265.44061,6648.5293}; + angles[]={0.079832405,5.2479901,0.069893911}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1286; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={495.03741,267.30096,6556.6177}; + angles[]={6.268187,3.941869,6.2681713}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1287; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={561.94275,263.83984,6599.4834}; + angles[]={6.1934309,1.472422,6.1391845}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1289; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={518.35828,267.14651,6551.1763}; + angles[]={0,1.9061803,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1294; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={528.2851,266.6199,6556.6147}; + angles[]={0,3.5273447,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1299; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={486.2453,268.23914,6556.418}; + angles[]={6.2132926,3.532177,6.1391997}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1304; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={534.27032,264.87732,6648.8818}; + angles[]={0,1.6006976,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1309; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={509.73669,265.07498,6654.1748}; + angles[]={0,1.5343781,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1314; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={442.86084,265.82715,6638.5879}; + angles[]={0,0.16408904,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1319; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={432.15646,267.50516,6610.4375}; + angles[]={0,0.35472977,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1324; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={456.3006,268.6055,6584.0068}; + angles[]={0,2.256556,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1329; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={450.87863,268.49286,6587.748}; + angles[]={0,2.0612538,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1334; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={445.31015,268.34299,6591.4971}; + angles[]={0,2.2354527,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1339; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={439.0788,268.00534,6597.6426}; + angles[]={0,2.4174917,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1344; + type="Land_SPE_Wood_TrenchLogWall_01_4m_v2"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=81; + atlOffset=-0.041778564; + }; + class Item2 + { + dataType="Layer"; + name="factory_3"; + class Entities + { + items=48; + class Item0 + { + dataType="Marker"; + position[]={6509.1289,268.94974,6039.8667}; + name="fact_3_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=333.71036; + id=435; + }; + class Item1 + { + dataType="Marker"; + position[]={6489.6968,266.36432,5991.3716}; + name="factory_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBrown"; + a=96.184349; + b=75.493118; + angle=339.04108; + id=436; + atlOffset=0.0077514648; + }; + class Item2 + { + dataType="Marker"; + position[]={6543.1016,267.49179,6036.8105}; + name="fact_3_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=345.19986; + id=1425; + }; + class Item3 + { + dataType="Marker"; + position[]={6472.1348,268.48969,6014.0381}; + name="fact_3_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=62.77766; + id=1427; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={6535.938,269.48572,6072.2075}; + angles[]={6.2731905,0,6.2332249}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1396; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.0016479492; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6548.6675,268.67563,6065.5977}; + angles[]={0.014998405,4.6087961,6.1934304}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1397; + type="Land_SPE_BarbedWire_02"; + atlOffset=3.0517578e-005; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6510.1724,266.70975,5988.9512}; + angles[]={6.2631865,6.0429826,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1386; + type="Land_SPE_Guardbox"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={6508.29,265.13867,5979.4326}; + angles[]={6.2282486,0,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1384; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6512.2437,265.05865,5980.1084}; + angles[]={6.2282333,0,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1385; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6426.7979,271.237,6019.0952}; + angles[]={6.2531958,0,6.2132926}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1399; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6422.9102,271.2554,6015.4307}; + angles[]={6.1686831,0,6.2182751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1400; + type="Land_SPE_HedgeHog"; + atlOffset=6.1035156e-005; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6421.0415,271.32855,6032.1455}; + angles[]={6.2132916,0,6.2432122}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1401; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6413.1274,271.61407,6024.769}; + angles[]={0.044968102,0,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1402; + type="Land_SPE_HedgeHog"; + atlOffset=-6.1035156e-005; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6405.0522,271.68301,6027.4854}; + angles[]={6.2531819,0,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1403; + type="Land_SPE_HedgeHog"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6436.4341,270.86148,6038.71}; + angles[]={6.09061,0,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1404; + type="Land_SPE_HedgeHog"; + atlOffset=-6.1035156e-005; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6449.4683,270.14609,6039.1279}; + angles[]={6.2481956,0,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1405; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={6459.4243,270.31384,6045.8403}; + angles[]={6.1637616,0,6.2431989}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1406; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={6472.625,270.12683,6047.1665}; + angles[]={6.1785579,0,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1407; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={6514.7144,264.26996,5971.0073}; + angles[]={6.1983824,0,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1408; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={6503.9434,263.9465,5960.5034}; + angles[]={6.1983824,0,6.2182751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1409; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={6506.6514,262.95407,5950.333}; + angles[]={6.2033539,0,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1410; + type="Land_SPE_HedgeHog"; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={6430.1411,269.90579,6011.1484}; + angles[]={6.0335016,0,6.2332225}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1411; + type="Land_SPE_HedgeHog"; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={6437.2544,268.49466,5996.3354}; + angles[]={6.2132926,0,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1412; + type="Land_SPE_HedgeHog"; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={6441.0537,267.84763,5988.0566}; + angles[]={6.2132916,0,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1413; + type="Land_SPE_HedgeHog"; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={6463.8418,266.60928,5973.1479}; + angles[]={6.2382174,0,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1414; + type="Land_SPE_HedgeHog"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={6446.1196,266.60126,5972.7153}; + angles[]={6.2083135,0,6.2632012}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1415; + type="Land_SPE_HedgeHog"; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={6540.9663,268.46506,6076.4863}; + angles[]={0.0050152978,0,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1416; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={6534.6108,268.92068,6079.0439}; + angles[]={6.2731905,0,6.2182741}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1417; + type="Land_SPE_HedgeHog"; + atlOffset=-6.1035156e-005; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={6556.2505,267.1077,6069.7437}; + angles[]={0.020001993,0,6.1736255}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1418; + type="Land_SPE_HedgeHog"; + atlOffset=0.00012207031; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={6555.6201,267.28168,6062.21}; + angles[]={0.009988944,0,6.1686831}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1419; + type="Land_SPE_HedgeHog"; + atlOffset=9.1552734e-005; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={6571.4907,262.40161,5987.7876}; + angles[]={6.1934309,4.9282417,6.2033539}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1420; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={6574.104,262.40491,5990.2793}; + angles[]={6.1983981,5.5071363,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1421; + type="Land_SPE_HedgeHog"; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={6576.1553,262.5463,5994.27}; + angles[]={6.2083287,5.5130415,6.1934156}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1422; + type="Land_SPE_HedgeHog"; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={6579.1641,262.63452,5999.6821}; + angles[]={6.2232599,2.2610402,6.183526}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1423; + type="Land_SPE_HedgeHog"; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={6567.5576,262.2702,5983.1499}; + angles[]={6.1884689,0,6.2133069}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1424; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={6506.3862,265.7933,5984.2856}; + angles[]={6.2581797,5.3839417,6.258194}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1383; + type="Land_SPE_Sandbag_Curve"; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={6546.1948,268.65622,6062.1021}; + angles[]={0.020001993,6.0960364,6.1934309}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1389; + type="Land_SPE_Sandbag_Curve"; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={6534.9141,269.20926,6069.3413}; + angles[]={0,4.6487036,6.2431989}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1393; + type="Land_SPE_Sandbag_Curve"; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={6541.1982,268.9122,6066.9814}; + angles[]={0.014998405,5.3311324,6.2282486}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1391; + type="Land_SPE_Sandbag_Long"; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={6538.5708,268.65146,6068.9961}; + angles[]={0,5.3012691,6.2332249}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1392; + type="Land_SPE_Sandbag_Short"; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={6543.8789,268.38,6065.2319}; + angles[]={0.015014294,2.1120665,6.2132926}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1394; + type="Land_SPE_Sandbag_Short"; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={6434.541,270.64401,6020.4063}; + angles[]={0,0,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1381; + type="Land_SPE_Tarp_Side"; + }; + class Item42 + { + dataType="Logic"; + class PositionInfo + { + position[]={6476.9385,268.03387,6015.4985}; + angles[]={0,5.7563324,0}; + }; + areaSize[]={5,0,14.251825}; + flags=1; + id=1426; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.46166992; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={6509.5952,265.65424,5982.1714}; + angles[]={6.2431989,2.8725381,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1378; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={6431.0366,271.3743,6020.9248}; + angles[]={0,4.5322714,6.2033539}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1379; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={6530.9771,269.35693,6068.1948}; + angles[]={6.2631836,5.7261701,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1387; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={6546.0898,268.70859,6057.9727}; + angles[]={6.278194,1.7984734,6.1884689}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1388; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={6506.0503,265.82022,5982.4497}; + angles[]={6.2481956,4.1355047,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1398; + type="Land_SPE_BarbedWire_04"; + atlOffset=0.00045776367; + }; + }; + id=85; + atlOffset=-0.41372681; + }; + class Item3 + { + dataType="Layer"; + name="factory_4"; + class Entities + { + items=23; + class Item0 + { + dataType="Marker"; + position[]={4842.3994,250.258,5162.124}; + name="factory_4"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorBrown"; + a=103.52052; + b=119.0678; + angle=324.10867; + id=475; + }; + class Item1 + { + dataType="Marker"; + position[]={4828.6953,250.79448,5203.6807}; + name="fact_4_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=327.17239; + id=1376; + atlOffset=0.60447693; + }; + class Item2 + { + dataType="Marker"; + position[]={4834.9683,250.79556,5190.8164}; + name="fact_4_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=329.49048; + id=1377; + atlOffset=0.60447693; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={4822.2393,250.19,5207.0532}; + angles[]={0,5.8585739,0}; + }; + areaSize[]={7.4102163,0,3.3219428}; + flags=1; + id=1375; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.0035400391; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4800.1641,254.33188,5208.5469}; + angles[]={0.054945603,3.7971954,5.9825821}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1359; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4798.7124,254.8942,5207.769}; + angles[]={0.069885373,4.4742751,5.9917259}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1357; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={4774.1772,253.81735,5142.8804}; + angles[]={6.2182822,4.3309565,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1355; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={4785.3579,256.82401,5209.8301}; + angles[]={6.258182,5.6356268,6.1884689}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1356; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={4900.1738,250.63219,5239.5835}; + angles[]={6.2731848,1.0523483,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1361; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={4921.1304,249.06178,5157.0474}; + angles[]={6.228241,2.4791379,6.1835189}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1362; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={4862.7495,250.85063,5113.7217}; + angles[]={0,4.1675892,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1365; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4875.54,250.85063,5121.5166}; + angles[]={0,1.0181829,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1366; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={4787.3647,256.18677,5209.04}; + angles[]={6.2481956,2.1594989,6.188468}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1358; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={4918.9409,248.83994,5156.6924}; + angles[]={6.2332239,4.3358021,6.1934304}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1363; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={4920.3306,248.8894,5160.729}; + angles[]={6.2432051,5.1932964,6.1934304}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1364; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={4867.2549,250.43341,5109.5122}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1368; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={4872.5249,250.43341,5112.6084}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1369; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={4877.7402,250.43341,5115.8462}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1370; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={4866.6631,250.43341,5114.1089}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1371; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={4868.562,250.43341,5115.3027}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1372; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={4871.8604,250.43341,5117.4185}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1373; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={4873.6992,250.43341,5118.5488}; + angles[]={0,4.1711855,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1374; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + class Attribute1 + { + property="hideObject"; + expression="if !(is3DEN) then {_this hideobjectglobal _value;};"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={4784.6821,256.79352,5205.7441}; + angles[]={6.2681909,0.42619967,6.1686831}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1360; + type="Land_SPE_Sandbag_Curve"; + }; + }; + id=89; + atlOffset=2.4587555; + }; + }; + id=76; + atlOffset=-8.8042297; + }; + class Item4 + { + dataType="Layer"; + name="outposts"; + class Entities + { + items=15; + class Item0 + { + dataType="Layer"; + name="outpost_2"; + class Entities + { + items=65; + class Item0 + { + dataType="Marker"; + position[]={3535.1162,243.9008,4200.147}; + name="outp_2_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=447; + }; + class Item1 + { + dataType="Marker"; + position[]={3557.095,244.356,4226.7651}; + name="outpost_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=114.005; + b=80; + angle=317.965; + id=450; + atlOffset=1.0258636; + }; + class Item2 + { + dataType="Marker"; + position[]={3540.1272,243.36865,4191.1323}; + name="outp_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=142.45743; + id=1980; + atlOffset=0.0004119873; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={3540.176,243.36507,4191.0996}; + angles[]={6.2531958,2.4852259,6.2382174}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1981; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Marker"; + position[]={3560.0742,242.76736,4197.1006}; + name="outp_2_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=144.47066; + id=1982; + atlOffset=0.19906616; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={3560.1218,242.82268,4197.0664}; + angles[]={6.2631927,2.5204301,6.2332239}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1983; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.25743103; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Marker"; + position[]={3567.8435,242.72899,4231.0864}; + name="outp_2_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=98.95948; + id=1984; + atlOffset=1.5258789e-005; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={3567.5544,242.75482,4231.2461}; + angles[]={6.2481956,1.7253978,6.2133002}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1985; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item8 + { + dataType="Marker"; + position[]={3542.853,244.39644,4228.8491}; + name="outp_2_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=87.349205; + id=1986; + atlOffset=0.00039672852; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={3542.9077,244.39211,4228.8706}; + angles[]={0.0050152978,1.5229369,6.2132993}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1987; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Marker"; + position[]={3581.4063,241.3004,4212.2935}; + name="outp_2_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=281.15067; + id=1988; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={3581.689,241.27579,4212.123}; + angles[]={6.2631836,4.9053001,6.2083287}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1989; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3476.6362,245.02548,4275.9551}; + angles[]={0.059926469,5.7131348,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1971; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3489.4768,245.2238,4283.0552}; + angles[]={0.10462029,5.7131348,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1972; + type="Land_SPE_BarbedWire_04"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3501.623,244.81567,4289.3281}; + angles[]={0.10955995,5.8108301,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1973; + type="Land_SPE_BarbedWire_04"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3511.8218,244.40494,4293.3496}; + angles[]={0.08976236,5.8108301,6.2781701}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1974; + type="Land_SPE_BarbedWire_04"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3521.7986,244.02481,4298.0313}; + angles[]={0.054944519,5.8108301,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1975; + type="Land_SPE_BarbedWire_04"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3532.3274,243.73305,4302.2627}; + angles[]={0.034989785,5.9614167,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1976; + type="Land_SPE_BarbedWire_04"; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3542.5149,243.44272,4306.5029}; + angles[]={0.029997652,5.7506719,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1977; + type="Land_SPE_BarbedWire_04"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3552.5586,243.09734,4310.7856}; + angles[]={0.039979152,5.9668455,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1978; + type="Land_SPE_BarbedWire_04"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3563.9133,242.54124,4314.9463}; + angles[]={0.049961641,5.958395,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1979; + type="Land_SPE_BarbedWire_04"; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.9229,239.36252,4304.4131}; + angles[]={0.020001993,1.7452821,6.2083216}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1953; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={3622.509,239.57121,4308.2285}; + angles[]={0.024996169,0.4415102,6.2182741}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1954; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={3619.5874,239.66588,4311.2959}; + angles[]={0.02999169,6.1073542,6.2232533}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1955; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={3598.2107,240.1456,4328.5771}; + angles[]={0.044968102,1.5493195,6.2432122}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1956; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3599.7502,239.87434,4334.7896}; + angles[]={6.268187,0.34328538,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1957; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={3581.9165,241.01566,4322.8594}; + angles[]={0.054944519,5.3821239,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1958; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={3482.2561,244.73119,4279.2407}; + angles[]={0.084803045,4.3922839,0.064903215}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1959; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3506.9507,244.13028,4291.3657}; + angles[]={0.094709083,4.9670744,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1960; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3516.2568,243.72955,4295.5889}; + angles[]={0.074864805,3.8432591,6.2781701}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1961; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={3525.8132,243.42671,4299.9033}; + angles[]={0.049960449,1.7452821,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1962; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={3537.551,243.12483,4304.063}; + angles[]={0.029989703,5.8137565,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1963; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={3546.9773,242.81729,4308.9351}; + angles[]={0.029989703,0.53792977,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1964; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={3557.0403,242.43221,4312.0308}; + angles[]={0.044966776,0.57281768,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1965; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={3494.6799,244.55797,4286.4263}; + angles[]={0.11449496,3.220823,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1966; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={3467.9038,243.83173,4271.1763}; + angles[]={0.029989703,1.0150739,0.13419099}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1967; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={3449.468,240.66379,4260.7432}; + angles[]={6.2631927,0.38751075,0.18775691}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1968; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={3569.1563,241.77492,4316.8921}; + angles[]={0.049954481,6.0786042,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1969; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={3506.4954,245.81279,4231.0059}; + angles[]={0.014901142,2.2861543,0.040017951}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1927; + type="Land_HelipadEmpty_F"; + atlOffset=-1.5258789e-005; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={3535.6594,245.26237,4258.5938}; + angles[]={0,2.2861543,0}; + }; + side="Empty"; + class Attributes + { + }; + id=1928; + type="Land_HelipadEmpty_F"; + atlOffset=1.5258789e-005; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={3559.0637,243.78949,4279.6655}; + angles[]={0.049954481,2.2861543,6.2482042}; + }; + side="Empty"; + class Attributes + { + }; + id=1929; + type="Land_HelipadEmpty_F"; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={3537.5479,243.37401,4174.9248}; + angles[]={6.2481976,5.3807244,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1938; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={3613.697,239.04337,4208.2983}; + angles[]={6.2382188,2.199285,6.2083206}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1930; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={3647.2832,238.90247,4279.5938}; + angles[]={6.1588302,1.2808172,6.163754}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1931; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={3541.3542,243.20552,4173.02}; + angles[]={6.2481976,2.625699,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1936; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={3533.4868,243.57364,4176.5254}; + angles[]={6.2432065,4.1241522,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1937; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={3507.8337,245.81415,4220.4126}; + angles[]={6.2482042,5.5779958,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1947; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={3538.561,245.47926,4246.0093}; + angles[]={6.2731848,5.5779958,6.233232}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1948; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={3625.9939,239.92719,4300.5239}; + angles[]={0.020001993,5.5559397,6.2133002}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1950; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={3645.8884,238.22908,4276.1934}; + angles[]={6.1934304,0.81969625,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1932; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={3645.1296,238.96863,4282.0459}; + angles[]={6.228241,5.2160244,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1933; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={3614.8586,238.67831,4211.1714}; + angles[]={6.2382107,2.9942641,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1934; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={3611.3101,238.72275,4206.4668}; + angles[]={6.2382188,1.5087719,6.2083206}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1935; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={3542.8096,242.82983,4175.606}; + angles[]={6.2531958,0.4937253,6.2482023}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1939; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={3544.0845,242.84079,4177.4434}; + angles[]={6.2531958,0.95766062,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1940; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={3533.3508,243.26947,4179.25}; + angles[]={6.2432065,6.1964912,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1941; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={3533.9619,243.34621,4181.853}; + angles[]={6.2481976,0.41376883,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1942; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={3511.8447,245.31656,4220.3838}; + angles[]={6.2482042,5.0781159,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1943; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={3542.656,244.84987,4245.729}; + angles[]={6.268187,5.0781159,6.228241}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1944; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={3538.3909,244.99207,4241.6636}; + angles[]={6.2581892,6.0253778,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1945; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={3507.4463,245.26859,4216.3726}; + angles[]={6.2482042,5.959816,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1946; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={3625.4009,239.60269,4297.7622}; + angles[]={0.01999305,3.2182891,6.2033529}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1951; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={3625.033,239.67943,4295.3965}; + angles[]={0.020001993,3.3143313,6.2033529}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1952; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Logic"; + class PositionInfo + { + position[]={3625.8367,239.55168,4298.7017}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1949; + type="ModuleHideTerrainObjects_F"; + atlOffset=-4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={3460.9028,243.32428,4265.9575}; + angles[]={6.278182,5.7131348,0.16352737}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1970; + type="Land_SPE_BarbedWire_04"; + }; + }; + id=118; + atlOffset=-3.1065063; + }; + class Item1 + { + dataType="Layer"; + name="outpost_3"; + class Entities + { + items=25; + class Item0 + { + dataType="Marker"; + position[]={5117.5654,316.34354,3084.7642}; + name="outp_3_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=554; + }; + class Item1 + { + dataType="Marker"; + position[]={5137.0039,316.37411,3094.6301}; + name="outp_3_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=21.35519; + b=5; + angle=265.70752; + id=556; + atlOffset=-0.63470459; + }; + class Item2 + { + dataType="Marker"; + position[]={5135.3901,319.46149,3054.9648}; + name="outpost_3"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorGUER"; + a=103.27671; + b=180.66194; + angle=355.20401; + id=557; + atlOffset=2.6105652; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={5183.0933,315.43875,3040.4426}; + angles[]={0,1.5707964,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=907; + type="Land_Radar_01_airshaft_F"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={5180.9839,333.46082,3040.9622}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=908; + type="Land_TTowerBig_1_F"; + }; + class Item5 + { + dataType="Marker"; + position[]={5149.1987,315.93106,3024.084}; + name="outp_3_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=269.11627; + id=2034; + }; + class Item6 + { + dataType="Marker"; + position[]={5119.6626,314.37057,2967.1821}; + name="outp_3_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=2042; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={5113.0054,318.38773,3087.0415}; + angles[]={6.1245418,3.5532691,6.1637464}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2029; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={5118.3423,318.49146,3079.1794}; + angles[]={0.024989013,4.5950942,6.1934309}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2030; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={5119.5107,318.06454,3090.2437}; + angles[]={0.025003321,4.9364901,6.1835108}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2031; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={5175.6987,314.71509,3032.4585}; + angles[]={0.0099949092,4.5950942,0.039971694}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2043; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={5182.6421,314.49106,3034.7095}; + angles[]={6.278182,4.2172194,6.183526}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2044; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={5191.085,313.61688,3037.5771}; + angles[]={6.268187,3.0795698,6.183526}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2045; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={5190.3799,313.76495,3044.3638}; + angles[]={6.2731786,2.7564559,6.2033687}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2046; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={5184.1475,314.42627,3048.6406}; + angles[]={0,4.7370734,6.1785579}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2047; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={5178.0317,314.75314,3048.5713}; + angles[]={6.2631865,4.6919618,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2048; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={5138.4341,312.16931,2903.0918}; + angles[]={6.1342869,1.9278401,6.2332392}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2035; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={5106.8257,312.01041,2918.9102}; + angles[]={6.2033539,4.2171001,0.16838855}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2036; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={5086.4194,320.80286,3173.6748}; + angles[]={6.2083287,0.53904861,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2037; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={5107.0034,317.48572,3134.4585}; + angles[]={6.2531958,1.3226979,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2038; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={5130.3135,317.47003,3052.1104}; + angles[]={0.0049914722,1.2569965,6.1983981}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2039; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={5138.3027,315.79715,2965.9268}; + angles[]={0.014998405,1.7077113,6.2133069}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2040; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={5117.7788,311.97275,2905.0798}; + angles[]={6.1736255,3.6085885,0.059941396}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2041; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Logic"; + class PositionInfo + { + position[]={5137.4878,316.99677,3094.458}; + angles[]={0.025003321,6.1738014,0.0099949092}; + }; + areaSize[]={5,0,21.725807}; + areaIsRectangle=1; + flags=1; + id=2032; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.025848389; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item24 + { + dataType="Logic"; + class PositionInfo + { + position[]={5149.041,315.94925,3024.1074}; + angles[]={6.2481976,0,6.1736255}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=2033; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=123; + atlOffset=-1.1253967; + }; + class Item2 + { + dataType="Layer"; + name="outpost_4"; + class Entities + { + items=174; + class Item0 + { + dataType="Marker"; + position[]={3619.8276,134.35419,1603.9438}; + name="outp_4_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=12.885468; + b=5; + angle=241.05707; + id=559; + atlOffset=0.073608398; + }; + class Item1 + { + dataType="Marker"; + position[]={3624.8613,134.27173,1588.6924}; + name="outpost_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=102.69428; + b=44.715759; + angle=330.94629; + id=560; + atlOffset=0.019500732; + }; + class Item2 + { + dataType="Marker"; + position[]={3646.4985,133.72812,1621.231}; + name="outp_4_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=561; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={3620.1812,134.35274,1603.9795}; + angles[]={6.278194,4.2072411,6.278182}; + }; + areaSize[]={12.908094,0,5}; + areaIsRectangle=1; + flags=1; + id=1435; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.073745728; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Marker"; + position[]={3575.2971,134.6916,1588.8595}; + name="outp_4_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=17.711285; + b=5; + angle=147.52995; + id=1798; + atlOffset=0.19184875; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={3575.2056,134.69443,1589.1885}; + angles[]={6.278182,2.5748749,6.268187}; + }; + areaSize[]={17.693342,0,5}; + areaIsRectangle=1; + flags=1; + id=1799; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.19447327; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Marker"; + position[]={3617.4941,134.41423,1576.0829}; + name="outp_4_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=115.32433; + id=1805; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3530.8718,135.9128,1579.3859}; + angles[]={6.2033615,3.1365538,6.2332249}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1638; + type="Land_SPE_BarbedWire_04"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3536.5813,136.82414,1590.2343}; + angles[]={6.2133002,4.1629987,6.2182822}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1639; + type="Land_SPE_BarbedWire_04"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3543.0925,134.40727,1564.448}; + angles[]={6.2631927,4.4170952,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1744; + type="Land_SPE_BarbedWire_03"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={3546.0791,134.35043,1554.4708}; + angles[]={0,4.4170952,0.01499443}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1745; + type="Land_SPE_BarbedWire_03"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={3549.9902,134.46899,1543.0244}; + angles[]={0,4.4170952,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1746; + type="Land_SPE_BarbedWire_03"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3555.8965,134.64667,1533.2576}; + angles[]={0,3.8759754,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1747; + type="Land_SPE_BarbedWire_03"; + atlOffset=1.5258789e-005; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3566.9495,134.89761,1527.879}; + angles[]={6.278182,3.3339183,0.01999305}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1748; + type="Land_SPE_BarbedWire_03"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3578.8433,135.13396,1529.1133}; + angles[]={0.044968102,2.7776349,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1749; + type="Land_SPE_BarbedWire_03"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3590.5664,135.18163,1534.3628}; + angles[]={0.020001993,2.7343898,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1750; + type="Land_SPE_BarbedWire_03"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3635.2849,134.17354,1554.0635}; + angles[]={0,2.7343898,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1751; + type="Land_SPE_BarbedWire_03"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3621.8708,134.4908,1548.2035}; + angles[]={0.0050033992,2.7343898,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1752; + type="Land_SPE_BarbedWire_03"; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3605.8074,134.91957,1540.9797}; + angles[]={0.024998553,2.7343898,6.2581868}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1753; + type="Land_SPE_BarbedWire_03"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3667.1826,133.64558,1575.6697}; + angles[]={0,1.9598225,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1754; + type="Land_SPE_BarbedWire_03"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3658.5046,133.88525,1564.8755}; + angles[]={0.044968102,2.6153717,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1755; + type="Land_SPE_BarbedWire_03"; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.5325,134.29163,1669.6732}; + angles[]={6.1588302,0,6.178565}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1682; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.039108276; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={3632.0964,134.5925,1664.6344}; + angles[]={6.198391,2.8220952,6.1785731}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1683; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.039108276; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={3497.5547,137.40623,1565.1788}; + angles[]={6.1391926,1.3139147,6.1147971}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1684; + type="Land_SPE_BarbedWire_02"; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={3503.5605,136.10265,1552.5822}; + angles[]={6.2332311,1.0777808,6.1835108}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1685; + type="Land_SPE_BarbedWire_02"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3508.032,137.3219,1573.1666}; + angles[]={6.1588302,2.6152058,6.173625}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1686; + type="Land_SPE_BarbedWire_02"; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={3521.043,136.894,1578.8186}; + angles[]={6.139185,2.7164304,6.1835189}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1687; + type="Land_SPE_BarbedWire_02"; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={3502.2874,138.74113,1605.7491}; + angles[]={0.039973188,2.8220952,0.039980642}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1698; + type="Land_SPE_BarbedWire_02"; + atlOffset=1.5258789e-005; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3528.929,138.11581,1620.047}; + angles[]={0.020001993,5.7148423,0.039980642}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1701; + type="Land_SPE_BarbedWire_02"; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3544.7422,138.09291,1629.287}; + angles[]={6.2581964,5.2483702,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1702; + type="Land_SPE_BarbedWire_02"; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={3508.761,135.60629,1523.1666}; + angles[]={6.19839,4.1649451,0.11449496}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1703; + type="Land_SPE_BarbedWire_02"; + atlOffset=1.5258789e-005; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={3530.0295,135.68645,1497.6934}; + angles[]={6.2631807,4.1677141,0.099666774}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1704; + type="Land_SPE_BarbedWire_02"; + atlOffset=1.5258789e-005; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={3656.5786,133.78018,1573.7786}; + angles[]={6.278194,1.9019071,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1715; + type="Land_SPE_Dugout_6m45_sandbags"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={3665.9932,133.44785,1604.1599}; + angles[]={0.014998405,1.0678587,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1717; + type="Land_SPE_Dugout_6m45_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={3574.0979,135.00099,1537.9705}; + angles[]={0,2.7921228,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1737; + type="Land_SPE_Dugout_6m45_sandbags"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={3567.2219,134.91444,1540.9951}; + angles[]={0,3.6843672,0.01999305}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1738; + type="Land_SPE_Dugout_6m45_sandbags"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={3556.8455,134.86766,1583.9515}; + angles[]={6.2581868,4.7693591,6.2581868}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1778; + type="Land_SPE_Dugout_6m45_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={3655.7561,132.67177,1639.3711}; + angles[]={0.034988083,6.1137395,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1779; + type="Land_SPE_Dugout_6m45_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={3662.6047,133.67255,1591.8656}; + angles[]={0.0050033992,1.8905898,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1712; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={3660.7454,133.74136,1586.244}; + angles[]={0,1.8905965,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1713; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={3658.8271,133.77132,1580.3984}; + angles[]={6.278182,1.8905615,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1714; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={3664.4712,133.57137,1597.4496}; + angles[]={0.010000871,1.8906108,6.25319}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1716; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={3644.6272,133.95746,1567.9868}; + angles[]={0,2.742363,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1721; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.1721,134.05496,1565.6846}; + angles[]={6.278182,2.7424607,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1722; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.5095,134.1698,1563.2793}; + angles[]={0,2.7424419,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1723; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={3650.0588,133.87041,1570.2587}; + angles[]={6.278182,2.7423823,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1724; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={3613.3403,134.61475,1554.3514}; + angles[]={0.0050033992,2.742363,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1725; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={3607.8853,134.75204,1552.0492}; + angles[]={0.0050033992,2.7424607,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1726; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={3602.2227,134.88733,1549.6439}; + angles[]={0.0050033992,2.7424419,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1727; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={3618.772,134.49144,1556.6233}; + angles[]={0.0050033992,2.7423823,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1728; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={3591.1313,135.04955,1544.9615}; + angles[]={0.0050033992,2.742363,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1729; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={3585.6763,135.07001,1542.6593}; + angles[]={0,2.7424607,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1730; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={3580.0137,135.06006,1540.254}; + angles[]={0,2.7424419,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1731; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={3596.563,134.9882,1547.2334}; + angles[]={0.0049914722,2.7423823,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1732; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={3563.2959,134.74126,1553.761}; + angles[]={0.010000871,4.4258738,0.029987715}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1739; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={3561.6226,134.64146,1559.4406}; + angles[]={0.0050033992,4.4259343,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1740; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={3559.8701,134.57674,1565.338}; + angles[]={0,4.4259157,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1741; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={3564.9419,134.83246,1548.108}; + angles[]={0.010000871,4.4259677,0.024993783}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1742; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={3558.1123,134.58017,1571.233}; + angles[]={6.268187,4.4259276,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1743; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={3662.6353,133.47324,1609.847}; + angles[]={0.015006351,0.99390703,6.2531877}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1770; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.3496,133.34848,1634.6012}; + angles[]={0.034989785,5.7375975,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1780; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={3611.3149,134.42223,1617.0748}; + angles[]={6.278194,5.7854147,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1781; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.8879,134.04626,1626.0515}; + angles[]={0.029997652,5.7378588,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1782; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={3566.0625,134.74689,1592.4376}; + angles[]={6.2631893,5.7854147,6.2531877}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1783; + type="Land_SPE_Dugout_6m_sandbags"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={3581.4133,134.46996,1601.214}; + angles[]={6.268187,5.7854147,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1784; + type="Land_SPE_Dugout_6m_sandbags"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={3490.2524,137.2984,1563.9644}; + angles[]={6.139185,0.95216131,6.2182751}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1640; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={3491.3921,136.54466,1559.9528}; + angles[]={6.2083216,5.228261,6.1391926}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1641; + type="Land_SPE_HedgeHog"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={3493.0623,136.12637,1554.9399}; + angles[]={6.233232,4.3507061,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1642; + type="Land_SPE_HedgeHog"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={3493.7493,135.91429,1551.1133}; + angles[]={6.2232599,0.58375055,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1643; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={3499.7041,135.51991,1548.3015}; + angles[]={6.22824,4.0742793,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1644; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={3499.4485,135.31996,1541.8612}; + angles[]={6.2432065,3.6285002,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1645; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={3502.1973,135.09991,1535.6172}; + angles[]={6.2182741,1.0751283,0.074864008}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1646; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={3475.5569,137.6566,1576.5923}; + angles[]={6.2382188,4.0742793,6.2382188}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1647; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={3473.6729,138.05907,1582.5037}; + angles[]={6.2481976,4.5697622,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1648; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={3463.2559,137.94038,1569.7155}; + angles[]={6.2282486,2.7406602,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1649; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={3483.3293,137.86949,1586.5338}; + angles[]={6.228241,4.7680664,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1650; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={3488.6111,137.36176,1581.9075}; + angles[]={0.010000871,6.0561733,6.2681909}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1651; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={3497.3821,137.2175,1586.1509}; + angles[]={6.2083297,0.73672938,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1652; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={3649.3474,132.86464,1673.8285}; + angles[]={6.2033539,0,6.1637616}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1675; + type="Land_SPE_HedgeHog"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={3665.6521,132.03058,1660.5791}; + angles[]={0.01999305,2.4804862,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1676; + type="Land_SPE_HedgeHog"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={3661.3088,132.22903,1658.1127}; + angles[]={0.014998405,4.8970513,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1677; + type="Land_SPE_HedgeHog"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={3656.8298,132.45132,1654.5679}; + angles[]={0.01999305,3.2847829,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1678; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={3661.062,132.10321,1675.4584}; + angles[]={6.2182822,1.9118153,6.178565}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1679; + type="Land_SPE_HedgeHog"; + atlOffset=-7.6293945e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={3659.0527,132.70457,1678.7511}; + angles[]={6.1835179,5.1458426,6.178566}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1680; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={3661.2859,132.8044,1684.7762}; + angles[]={0.010000871,1.2526568,6.2382092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1681; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={3650.1069,132.85359,1641.2853}; + angles[]={0.024996169,5.9548264,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1785; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={3645.2954,133.0909,1639.576}; + angles[]={0.029989703,3.7610896,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1786; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={3636.0793,133.56262,1633.8578}; + angles[]={0.034989785,5.5973158,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1787; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.3154,133.67801,1632.6381}; + angles[]={0.029989703,5.4214149,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1788; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.4304,133.79996,1631.3103}; + angles[]={0.029997652,4.8381209,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1789; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.292,134.22076,1625.1716}; + angles[]={0.019996032,2.757529,6.2631893}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1790; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item91 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.8176,134.3494,1622.4283}; + angles[]={0.010000871,5.9304633,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1791; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item92 + { + dataType="Object"; + class PositionInfo + { + position[]={3553.991,134.65222,1575.7383}; + angles[]={6.2531958,3.4692194,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1792; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item93 + { + dataType="Object"; + class PositionInfo + { + position[]={3554.2107,134.74261,1578.4199}; + angles[]={6.2481956,5.0942278,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1793; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item94 + { + dataType="Object"; + class PositionInfo + { + position[]={3560.3606,134.92909,1590.5397}; + angles[]={6.2581892,5.9330668,6.2432137}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1794; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item95 + { + dataType="Object"; + class PositionInfo + { + position[]={3570.4829,134.68187,1597.7548}; + angles[]={6.268187,2.3940899,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1795; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item96 + { + dataType="Object"; + class PositionInfo + { + position[]={3575.1411,134.58081,1599.5012}; + angles[]={6.2731848,5.3437281,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1796; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item97 + { + dataType="Object"; + class PositionInfo + { + position[]={3656.2695,133.83173,1581.424}; + angles[]={6.278182,5.0047669,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1705; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item98 + { + dataType="Object"; + class PositionInfo + { + position[]={3657.1846,133.82738,1584.215}; + angles[]={6.278182,5.0047936,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1706; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item99 + { + dataType="Object"; + class PositionInfo + { + position[]={3659.1279,133.7818,1590.0398}; + angles[]={0,5.0048194,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1707; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item100 + { + dataType="Object"; + class PositionInfo + { + position[]={3660.5188,133.73024,1592.8391}; + angles[]={0.0050033992,5.0048871,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1708; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item101 + { + dataType="Object"; + class PositionInfo + { + position[]={3658.1152,133.80711,1587.2181}; + angles[]={0,5.0048199,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1709; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item102 + { + dataType="Object"; + class PositionInfo + { + position[]={3655.3911,133.83388,1578.3381}; + angles[]={6.278182,5.0047588,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1710; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item103 + { + dataType="Object"; + class PositionInfo + { + position[]={3661.4578,133.67281,1596.6161}; + angles[]={0.010000871,5.0048871,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1718; + type="Land_SPE_US_Tent"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item104 + { + dataType="Object"; + class PositionInfo + { + position[]={3662.3745,133.62215,1599.3253}; + angles[]={0.0050033992,5.0048256,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1719; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item105 + { + dataType="Object"; + class PositionInfo + { + position[]={3663.6355,133.54091,1603.0023}; + angles[]={0.009988944,5.00489,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1720; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item106 + { + dataType="Object"; + class PositionInfo + { + position[]={3658.1924,133.69884,1604.5406}; + angles[]={0.010000871,5.00489,6.25319}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1756; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item107 + { + dataType="Object"; + class PositionInfo + { + position[]={3657.1279,133.76942,1601.1111}; + angles[]={0.010000871,5.00489,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1757; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item108 + { + dataType="Object"; + class PositionInfo + { + position[]={3656.1475,133.8264,1597.8358}; + angles[]={0.0050033992,5.00489,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1758; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item109 + { + dataType="Object"; + class PositionInfo + { + position[]={3655.1104,133.87907,1594.6346}; + angles[]={0.0050033992,5.00489,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1759; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item110 + { + dataType="Object"; + class PositionInfo + { + position[]={3654.2456,133.91373,1591.7788}; + angles[]={0.0050033992,5.00489,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1760; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item111 + { + dataType="Object"; + class PositionInfo + { + position[]={3653.2048,133.93703,1588.2264}; + angles[]={6.278182,5.00489,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1761; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item112 + { + dataType="Object"; + class PositionInfo + { + position[]={3652.4441,133.93979,1585.7334}; + angles[]={6.278182,5.00489,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1762; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item113 + { + dataType="Object"; + class PositionInfo + { + position[]={3651.1023,133.95255,1582.9208}; + angles[]={6.278182,5.00489,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1763; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item114 + { + dataType="Object"; + class PositionInfo + { + position[]={3650.0984,133.94427,1579.6241}; + angles[]={6.2731848,5.00489,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1764; + type="Land_SPE_US_Tent"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item115 + { + dataType="Object"; + class PositionInfo + { + position[]={3530.5466,137.01201,1588.3693}; + angles[]={0.0099949092,1.1923722,6.1736331}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1633; + type="Land_SPE_Sandbag_Curve"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item116 + { + dataType="Object"; + class PositionInfo + { + position[]={3529.7229,136.44466,1582.9404}; + angles[]={6.1342936,5.8676858,6.2083216}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1635; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item117 + { + dataType="Object"; + class PositionInfo + { + position[]={3575.2295,136.05545,1516.4745}; + angles[]={6.2133002,4.2561455,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1653; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item118 + { + dataType="Object"; + class PositionInfo + { + position[]={3595.6096,135.80113,1527.3894}; + angles[]={0.0099949092,4.2561455,6.2033615}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1654; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item119 + { + dataType="Object"; + class PositionInfo + { + position[]={3613.4417,135.41092,1534.0869}; + angles[]={0.029987715,4.2561455,6.228241}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1655; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item120 + { + dataType="Object"; + class PositionInfo + { + position[]={3651.5796,134.69957,1552.8353}; + angles[]={6.19839,4.2561455,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1656; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item121 + { + dataType="Object"; + class PositionInfo + { + position[]={3674.6082,134.69211,1564.6378}; + angles[]={6.2182741,4.2561455,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1657; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item122 + { + dataType="Object"; + class PositionInfo + { + position[]={3659.4614,132.43703,1673.3008}; + angles[]={6.2781701,5.6771393,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1658; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item123 + { + dataType="Object"; + class PositionInfo + { + position[]={3624.3835,134.55276,1661.7029}; + angles[]={6.2033606,4.2561455,6.2382092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1659; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item124 + { + dataType="Object"; + class PositionInfo + { + position[]={3608.2366,135.24765,1657.7035}; + angles[]={6.2581892,4.2561455,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1660; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item125 + { + dataType="Object"; + class PositionInfo + { + position[]={3587.0466,136.58467,1644.7448}; + angles[]={6.2482042,4.2561455,6.1934233}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1661; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item126 + { + dataType="Object"; + class PositionInfo + { + position[]={3560.0671,137.06595,1629.7197}; + angles[]={6.1983833,4.2561455,6.2232599}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1662; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item127 + { + dataType="Object"; + class PositionInfo + { + position[]={3541.1641,137.60081,1621.5747}; + angles[]={6.2033615,4.2561455,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1663; + type="Land_SPE_Sandbag_Long"; + atlOffset=0.0009765625; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item128 + { + dataType="Object"; + class PositionInfo + { + position[]={3501.9209,137.93161,1594.7976}; + angles[]={6.1588306,5.9824557,6.1686907}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1664; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item129 + { + dataType="Object"; + class PositionInfo + { + position[]={3654.6868,134.18011,1605.2097}; + angles[]={0.010000871,0.34914947,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1765; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item130 + { + dataType="Object"; + class PositionInfo + { + position[]={3653.0525,134.28543,1599.5826}; + angles[]={0.010000871,0.34914947,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1766; + type="Land_SPE_Sandbag_Long"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item131 + { + dataType="Object"; + class PositionInfo + { + position[]={3651.1167,134.36554,1593.8706}; + angles[]={0.0050033992,3.4671085,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1767; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item132 + { + dataType="Object"; + class PositionInfo + { + position[]={3649.0938,134.40694,1587.1991}; + angles[]={6.278182,0.32783917,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1768; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item133 + { + dataType="Object"; + class PositionInfo + { + position[]={3647.4944,134.39929,1581.8894}; + angles[]={6.2731967,0.28541541,6.2681909}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1769; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item134 + { + dataType="Object"; + class PositionInfo + { + position[]={3652.0361,134.04259,1620.6024}; + angles[]={0.029997652,0.2487786,6.2531877}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1800; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item135 + { + dataType="Object"; + class PositionInfo + { + position[]={3641.22,134.32169,1621.5828}; + angles[]={0.024998553,0.2487786,6.2581868}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1801; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item136 + { + dataType="Object"; + class PositionInfo + { + position[]={3644.9219,134.0743,1625.9945}; + angles[]={0.034982968,4.086091,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1802; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item137 + { + dataType="Object"; + class PositionInfo + { + position[]={3649.7915,133.94373,1625.3827}; + angles[]={0.039979152,5.2699194,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1803; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item138 + { + dataType="Object"; + class PositionInfo + { + position[]={3648.26,134.26244,1616.4607}; + angles[]={0.024996169,4.086091,6.2531877}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1804; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item139 + { + dataType="Object"; + class PositionInfo + { + position[]={3614.5574,134.96713,1571.3463}; + angles[]={0.010000871,2.2616496,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1806; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item140 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.0701,134.80402,1580.7037}; + angles[]={0.010000871,2.2617891,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1807; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item141 + { + dataType="Object"; + class PositionInfo + { + position[]={3622.4744,134.81728,1575.4705}; + angles[]={0.0049914722,6.0990272,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1808; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item142 + { + dataType="Object"; + class PositionInfo + { + position[]={3619.8384,134.88753,1571.3304}; + angles[]={0.0049914722,0.9995786,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1809; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=1.5258789e-005; + }; + class Item143 + { + dataType="Object"; + class PositionInfo + { + position[]={3612.429,134.92734,1576.5311}; + angles[]={0.014998405,6.0990644,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1810; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item144 + { + dataType="Object"; + class PositionInfo + { + position[]={3644.5229,133.20528,1664.6763}; + angles[]={6.1884756,1.005841,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1668; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.0021209717; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item145 + { + dataType="Object"; + class PositionInfo + { + position[]={3610.4949,135.70557,1531.8452}; + angles[]={6.2531958,2.7806933,6.188468}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1690; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item146 + { + dataType="Object"; + class PositionInfo + { + position[]={3671.8616,134.52548,1562.4628}; + angles[]={6.2133002,2.0199876,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1691; + type="Land_SPE_Sandbag_Nest"; + atlOffset=-0.019287109; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item147 + { + dataType="Object"; + class PositionInfo + { + position[]={3604.7678,135.53946,1656.9469}; + angles[]={6.2581868,5.828474,6.2033529}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1693; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item148 + { + dataType="Object"; + class PositionInfo + { + position[]={3502.3901,137.67473,1591.2963}; + angles[]={6.2332239,4.0528355,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1694; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item149 + { + dataType="Object"; + class PositionInfo + { + position[]={3501.26,138.46504,1599.0656}; + angles[]={6.228241,5.316462,6.2033539}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1696; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item150 + { + dataType="Object"; + class PositionInfo + { + position[]={3531.9683,135.61346,1581.2888}; + angles[]={6.144083,1.1113641,6.1884756}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1636; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item151 + { + dataType="Object"; + class PositionInfo + { + position[]={3486.0315,138.26065,1590.337}; + angles[]={6.1934237,0.6630227,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1665; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item152 + { + dataType="Object"; + class PositionInfo + { + position[]={3525.541,137.61038,1611.811}; + angles[]={6.2132993,4.1971798,6.188468}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1666; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item153 + { + dataType="Object"; + class PositionInfo + { + position[]={3657.5071,132.44493,1676.04}; + angles[]={6.0906024,5.6192646,6.228241}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1667; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item154 + { + dataType="Object"; + class PositionInfo + { + position[]={3643.9539,132.78189,1662.171}; + angles[]={0.01999305,0.54211938,6.1686907}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1669; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item155 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.4905,133.10751,1666.2604}; + angles[]={6.1245341,2.5132387,6.1934233}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1670; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item156 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.1333,132.8618,1661.1763}; + angles[]={0.01999305,4.2982378,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1671; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item157 + { + dataType="Object"; + class PositionInfo + { + position[]={3640.1287,132.95844,1659.8531}; + angles[]={0.01999305,1.0335404,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1672; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item158 + { + dataType="Object"; + class PositionInfo + { + position[]={3641.0916,133.29968,1666.421}; + angles[]={6.11479,1.1756266,6.153913}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1673; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item159 + { + dataType="Object"; + class PositionInfo + { + position[]={3508.1084,135.58594,1532.2242}; + angles[]={0.099666774,2.5639641,0.16838855}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1688; + type="Land_SPE_Sandbag_Short"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item160 + { + dataType="Object"; + class PositionInfo + { + position[]={3517.844,136.2952,1520.212}; + angles[]={6.2033529,2.781646,0.074856833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1689; + type="Land_SPE_Sandbag_Short"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item161 + { + dataType="Object"; + class PositionInfo + { + position[]={3669.3611,134.08549,1561.354}; + angles[]={6.19839,1.3333595,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1692; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item162 + { + dataType="Object"; + class PositionInfo + { + position[]={3503.2361,138.1144,1600.8232}; + angles[]={6.2033539,3.9008994,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1699; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item163 + { + dataType="Object"; + class PositionInfo + { + position[]={3504.8494,138.12538,1602.9083}; + angles[]={0.020001993,3.9008994,6.1934237}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1700; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item164 + { + dataType="Object"; + class PositionInfo + { + position[]={3576.4604,137.50415,1560.1278}; + angles[]={0.0099949092,5.875061,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1771; + type="Land_SPE_Tent_03"; + }; + class Item165 + { + dataType="Object"; + class PositionInfo + { + position[]={3598.8372,137.37119,1569.4185}; + angles[]={0.01499443,5.875061,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1776; + type="Land_SPE_Tent_03"; + }; + class Item166 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.0642,136.84622,1587.1415}; + angles[]={6.278194,5.875061,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1777; + type="Land_SPE_Tent_03"; + }; + class Item167 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.7815,135.78355,1570.8568}; + angles[]={0,5.839448,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1772; + type="Land_SPE_Tent_01"; + }; + class Item168 + { + dataType="Object"; + class PositionInfo + { + position[]={3612.4307,136.22551,1560.5835}; + angles[]={0.0050033992,5.839448,6.2581892}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1773; + type="Land_SPE_Tent_01"; + }; + class Item169 + { + dataType="Object"; + class PositionInfo + { + position[]={3595.3127,136.57094,1553.5117}; + angles[]={0.010000871,5.839448,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1774; + type="Land_SPE_Tent_01"; + }; + class Item170 + { + dataType="Object"; + class PositionInfo + { + position[]={3578.5254,136.64262,1545.8428}; + angles[]={0.0050033992,5.9563398,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1775; + type="Land_SPE_Tent_01"; + atlOffset=1.5258789e-005; + }; + class Item171 + { + dataType="Object"; + class PositionInfo + { + position[]={3527.3909,137.11865,1585.7554}; + angles[]={6.0906024,4.3819723,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1631; + type="Land_SPE_Sandbag_Nest"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item172 + { + dataType="Object"; + class PositionInfo + { + position[]={3527.603,136.56711,1581.8163}; + angles[]={6.1099439,1.1783571,6.19839}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1634; + type="Land_SPE_BarbedWire_04"; + }; + class Item173 + { + dataType="Object"; + class PositionInfo + { + position[]={3763.7952,127.2833,1732.3901}; + angles[]={0,0,6.2182751}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1674; + type="Land_SPE_HedgeHog"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=128; + atlOffset=-0.96459961; + }; + class Item3 + { + dataType="Layer"; + name="outpost_5"; + class Entities + { + items=22; + class Item0 + { + dataType="Marker"; + position[]={1526.0804,196.32864,3678.1433}; + name="outp_5_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=109.57747; + id=563; + atlOffset=9.1552734e-005; + }; + class Item1 + { + dataType="Marker"; + position[]={1496.9965,196.42766,3669.01}; + name="outpost_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=98.021454; + b=87.026459; + angle=337.24435; + id=564; + atlOffset=0.70246887; + }; + class Item2 + { + dataType="Marker"; + position[]={1482.3927,195.7401,3673.8118}; + name="outp_5_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=565; + }; + class Item3 + { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + dataType="Marker"; + position[]={1550.5466,196.76469,3672.074}; + name="outp_5_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=285.96228; + id=1921; + + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={1550.2601,196.75006,3672.0127}; + angles[]={6.2083287,4.9918365,0.034982968}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1922; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Marker"; + position[]={1507.953,196.39983,3723.8438}; + name="outp_5_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=61.319729; + id=1923; + atlOffset=7.6293945e-005; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={1508.1139,196.39273,3724.0886}; + angles[]={0.039979152,1.0711236,0.054944519}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1924; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Marker"; + position[]={1521.3517,196.52316,3689.0779}; + name="outp_5_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=70.879601; + id=1925; + + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={1527.3619,196.53857,3685.4539}; + angles[]={6.2531958,1.2370834,0.044968102}; + }; + areaSize[]={10.530831,0,9.2331076}; + areaIsRectangle=1; + flags=1; + id=1926; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.14494324; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1542.0122,198.62291,3711.6917}; + angles[]={6.2581892,4.4360876,0.049954481}; + }; + side="Empty"; + class Attributes + { + }; + id=1909; + type="Land_HelipadEmpty_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1523.7911,197.67422,3706.1248}; + angles[]={6.2432065,2.6901228,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1912; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1506.3065,196.05652,3665.2329}; + angles[]={6.2581892,2.7868838,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1910; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1521.4309,197.64731,3708.822}; + angles[]={0,5.8721342,0.034988083}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1911; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1555.4998,198.43411,3686.9558}; + angles[]={6.2133002,1.0788382,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1914; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1485.4436,194.82884,3626.4653}; + angles[]={6.233232,3.4153969,6.2681909}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1915; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1448.6481,195.34908,3683.1521}; + angles[]={0,4.6250324,0.079824187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1916; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1519.0255,197.02284,3706.6611}; + angles[]={6.2432065,1.1066748,0.054944519}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1913; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1449.7603,195.00348,3680.843}; + angles[]={6.268187,2.8625906,0.079824187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1917; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1449.6233,194.8739,3685.55}; + angles[]={0.044966776,3.3556643,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1918; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1488.1267,194.38684,3626.7874}; + angles[]={6.233232,1.5267813,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1919; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1483.4484,194.52267,3628.198}; + angles[]={6.233232,5.1844769,6.278182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1920; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1533.0543,198.25148,3730.7854}; + angles[]={6.2254915,4.1016626,6.261086}; + }; + side="Empty"; + class Attributes + { + }; + id=1908; + type="Land_HelipadEmpty_F"; + }; + }; + id=133; + atlOffset=0.032669067; + }; + class Item4 + { + dataType="Layer"; + name="outpost_6"; + class Entities + { + items=41; + class Item0 + { + dataType="Marker"; + position[]={1162.7856,127.10178,1773.1738}; + name="outp_6_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=18.593079; + b=5; + id=567; + atlOffset=0.54423523; + }; + class Item1 + { + dataType="Marker"; + position[]={1163.3,124.41466,1746.5894}; + name="outpost_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=99.148796; + b=66.190453; + id=568; + atlOffset=0.20601654; + }; + class Item2 + { + dataType="Marker"; + position[]={1170.1776,124.25243,1746.3047}; + name="outp_6_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=569; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={1162.7256,127.10154,1773.1792}; + angles[]={6.1391888,0,0.029993678}; + }; + areaSize[]={18.626526,0,5}; + areaIsRectangle=1; + flags=1; + id=1437; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.54654694; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1089.3856,124.13267,1766.5629}; + angles[]={6.1686907,4.2424664,0.10955995}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1625; + type="Land_SPE_BarbedWire_04"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1091.464,124.25025,1761.4271}; + angles[]={6.2631893,3.5481758,0.17324494}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1629; + type="Land_SPE_BarbedWire_04"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1094.2528,124.25,1772.0234}; + angles[]={0.01499443,5.8784871,6.2232561}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1630; + type="Land_SPE_BarbedWire_04"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1139.5974,127.45296,1794.9879}; + angles[]={6.1686869,2.725718,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2013; + type="Land_SPE_BarbedWire_04"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1148.3434,128.13293,1796.0408}; + angles[]={6.1588302,3.4197319,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2014; + type="Land_SPE_BarbedWire_04"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1232.5784,129.40376,1783.9418}; + angles[]={6.2033529,4.4649429,0.0050152978}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2015; + type="Land_SPE_BarbedWire_04"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1230.3877,129.41862,1794.203}; + angles[]={6.228241,4.6954288,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2016; + type="Land_SPE_BarbedWire_04"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1226.4189,123.10207,1693.2656}; + angles[]={6.2083244,1.4640158,6.2631893}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2017; + type="Land_SPE_BarbedWire_04"; + atlOffset=7.6293945e-006; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1224.6904,123.49723,1699.3514}; + angles[]={6.2482009,1.4456459,6.188468}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2018; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1166.9757,122.53953,1712.4963}; + angles[]={6.2133002,6.2511759,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2027; + type="Land_SPE_BarbedWire_04"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1158.474,122.43595,1714.8031}; + angles[]={6.2133002,0.66215789,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2028; + type="Land_SPE_BarbedWire_04"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1222.2545,124.46188,1714.2112}; + angles[]={6.2182784,1.4576066,6.2382135}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2019; + type="Land_SPE_BarbedWire_02"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1218.3737,125.71204,1731.5253}; + angles[]={6.2432051,1.4576066,6.1539092}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2020; + type="Land_SPE_BarbedWire_02"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1195.5728,129.04559,1779.4901}; + angles[]={6.19839,6.1588383,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2021; + type="Land_SPE_BarbedWire_02"; + atlOffset=1.5258789e-005; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1190.7217,130.30615,1797.1975}; + angles[]={6.1785731,2.9024129,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2022; + type="Land_SPE_BarbedWire_02"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1104.2959,123.67299,1739.8379}; + angles[]={6.2332287,4.1418648,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2023; + type="Land_SPE_BarbedWire_02"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1226.1099,128.70627,1780.5044}; + angles[]={6.1884689,1.7452821,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2005; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1072.0425,123.3104,1792.3906}; + angles[]={0.029987715,1.7452821,0.049956869}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2006; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1114.6433,122.62235,1723.2755}; + angles[]={6.1686907,1.7452821,6.1835146}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2007; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1174.5728,128.05725,1789.3112}; + angles[]={6.0335021,4.1748543,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2008; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1095.3534,124.12566,1769.7406}; + angles[]={0.079828672,1.6104678,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1624; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1212.7543,128.43695,1774.9202}; + angles[]={6.2182741,6.1448188,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2002; + type="Land_SPE_Sandbag_Curve"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1204.5806,128.87383,1779.0748}; + angles[]={6.1489944,4.6733136,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2003; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1092.4066,124.31765,1765.1073}; + angles[]={0.024998553,0,0.079828672}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1626; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1147.2863,127.80951,1793.9854}; + angles[]={6.1294069,1.6210531,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2011; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1140.1384,127.02905,1792.9844}; + angles[]={5.9644394,4.3401747,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2012; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1160.2253,122.58186,1716.3115}; + angles[]={6.2083244,5.1466646,0.029993678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2025; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1167.2262,122.68639,1714.5565}; + angles[]={6.2083244,1.5827167,0.034986377}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2026; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1211.2513,128.93159,1778.869}; + angles[]={6.1736255,0.83646691,6.2182751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2000; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.00012207031; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1212.2533,128.18562,1771.0476}; + angles[]={6.2133002,2.7318254,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2009; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1143.6238,127.56179,1794.323}; + angles[]={6.1686907,6.2060885,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2010; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1163.4933,122.52316,1714.6239}; + angles[]={6.2133002,3.4485042,0.034986377}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2024; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1093.7933,124.14556,1762.6893}; + angles[]={0.054944519,1.5267813,0.07982792}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1627; + type="Land_SPE_Sandbag_Short"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1208.5848,128.60176,1779.5004}; + angles[]={6.1050925,4.699882,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2004; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Logic"; + class PositionInfo + { + position[]={1094.0134,124.01695,1766.4025}; + angles[]={0.034986377,1.2126547,0.069885373}; + }; + areaSize[]={3.961004,0,4.071382}; + flags=1; + id=1623; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.025062561; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item39 + { + dataType="Logic"; + class PositionInfo + { + position[]={1208.8793,128.01825,1775.2899}; + angles[]={6.2182751,0.69107342,0.0049914722}; + }; + areaSize[]={7.9090071,0,5}; + flags=1; + id=2001; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1091.4105,124.27866,1768.6244}; + angles[]={0.0099949092,4.7998748,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1622; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=138; + atlOffset=0.76425934; + }; + class Item5 + { + dataType="Layer"; + name="outpost_7"; + class Entities + { + items=14; + class Item0 + { + dataType="Marker"; + position[]={5450.1978,1549.8904,636.35968}; + name="outp_7_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=281.2471; + id=571; + atlOffset=1432.8225; + }; + class Item1 + { + dataType="Marker"; + position[]={5453.6479,1549.4082,591.97583}; + name="outpost_7"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=98.712334; + b=100.73928; + angle=1.6206319; + id=572; + atlOffset=1434.0332; + }; + class Item2 + { + dataType="Marker"; + position[]={5462.1851,1548.1025,557.78711}; + name="outp_7_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=1.6202816; + id=573; + atlOffset=1432.8236; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={5450.1597,117.04645,636.06531}; + angles[]={6.2033577,4.9093595,6.228241}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1438; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Marker"; + position[]={5416.627,1550.4923,618.41663}; + name="outp_7_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=1.6206319; + id=2052; + atlOffset=1433.2289; + }; + class Item5 + { + dataType="Marker"; + position[]={5440.3931,1548.2035,574.68347}; + name="outp_7_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=266.27301; + id=2053; + atlOffset=1432.8225; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={5442.7939,115.33021,572.81458}; + angles[]={6.2731905,4.6449947,6.2731848}; + }; + areaSize[]={5,0,5.244606}; + areaIsRectangle=1; + flags=1; + id=2054; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Marker"; + position[]={5450.082,1547.1691,539.75128}; + name="outp_7_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=255.94658; + id=2055; + atlOffset=1432.8224; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={5450.1738,114.34286,539.46893}; + angles[]={6.2631865,4.4655561,0.019999012}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=2056; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Marker"; + position[]={5420.5391,1548.8838,580.06317}; + name="outp_7_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=90.837158; + id=2057; + atlOffset=1433.0333; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={5420.8354,115.8456,580.11523}; + angles[]={6.2631865,1.5831532,6.2631865}; + }; + areaSize[]={5,0,5}; + areaIsRectangle=1; + flags=1; + id=2058; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={5426.9517,115.82065,565.2981}; + angles[]={6.2581892,2.7998962,6.2631893}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2050; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={5497.0537,114.69653,531.67322}; + angles[]={6.268187,1.8180927,6.2681832}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2051; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={5415.8228,118.79611,675.24286}; + angles[]={6.2731905,0.1838094,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2049; + type="Land_SPE_Sandbag_Nest"; + atlOffset=7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=143; + atlOffset=61.324135; + }; + class Item6 + { + dataType="Layer"; + name="outpost_8"; + class Entities + { + items=57; + class Item0 + { + dataType="Marker"; + position[]={7519.853,271.57599,1361.793}; + name="outp_8_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=581; + atlOffset=0.00030517578; + }; + class Item1 + { + dataType="Marker"; + position[]={7562.0811,269.77573,1325.2168}; + name="outp_8_helipad"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=15; + b=15; + id=582; + }; + class Item2 + { + dataType="Marker"; + position[]={7566.1772,266.34308,1366.1316}; + name="outp_8_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=20.510376; + b=5; + angle=228.53036; + id=583; + atlOffset=-0.25808716; + }; + class Item3 + { + dataType="Marker"; + position[]={7544.042,272.58087,1344.567}; + name="outpost_8"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=49.771206; + b=83.074356; + angle=317.96817; + id=584; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={7566.1802,266.3374,1366.1191}; + angles[]={0.064911485,3.9882097,6.268187}; + }; + areaSize[]={20.551483,0,5}; + areaIsRectangle=1; + flags=1; + id=1439; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.2645874; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={7533.1411,266.3732,1308.8564}; + angles[]={5.9420671,3.7208076,0.21655147}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2087; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={7510.6318,265.46414,1324.9176}; + angles[]={5.9644365,4.1013193,0.28225124}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2088; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={7496.7129,266.85352,1355.1156}; + angles[]={6.2332225,4.5994825,0.27300745}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2089; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={7500.9863,267.52405,1391.9309}; + angles[]={0.0099949092,5.2292299,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2090; + type="Land_SPE_BarbedWire_02"; + atlOffset=3.0517578e-005; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={7508.5078,251.78224,1287.9479}; + angles[]={5.9420671,3.627964,0.32773516}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2091; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={7487.1616,251.55348,1310.5592}; + angles[]={6.1099372,4.3069243,0.31422919}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2092; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={7469.2026,255.88783,1357.4697}; + angles[]={6.139185,4.5374451,0.3976329}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2093; + type="Land_SPE_BarbedWire_02"; + atlOffset=1.5258789e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={7600.0278,263.19659,1329.4741}; + angles[]={6.2432137,3.612407,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2077; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={7517.8867,264.09924,1418.7144}; + angles[]={0.064911485,2.0708411,6.2332392}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2078; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={7520.7275,264.9632,1398.7405}; + angles[]={0.09967456,1.7235858,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2079; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={7534.6968,264.53223,1403.3306}; + angles[]={0.079817459,1.9527588,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2080; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={7541.187,263.98199,1399.0964}; + angles[]={0.14398554,2.7273874,6.2083278}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2081; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={7556.3662,263.35153,1391.1113}; + angles[]={0.19739246,1.9058686,6.0009341}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2082; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={7607.6797,261.92072,1329.222}; + angles[]={0.059925474,5.8871617,6.085793}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2083; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={7609.2666,261.12955,1337.2494}; + angles[]={0.16352004,4.666985,5.9599433}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2084; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={7603.1235,261.7608,1309.939}; + angles[]={6.2432137,5.3788748,6.188468}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2085; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={7515.8921,271.6987,1362.6377}; + angles[]={0.08975438,6.1833568,0.14400092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2108; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={7520.0044,271.98199,1365.9625}; + angles[]={0.010006829,4.7055149,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2109; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={7523.7583,272.17688,1362.0958}; + angles[]={0.1046123,6.2595043,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2110; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={7518.8403,272.55215,1357.035}; + angles[]={0.18292925,4.7055149,0.1440005}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2111; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={7594.5308,264.08035,1341.3651}; + angles[]={0.11942402,1.2683771,6.1835108}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2061; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={7545.9331,267.35434,1305.0861}; + angles[]={6.09061,3.1537836,0.069877692}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2064; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={7504.7183,268.86688,1381.5339}; + angles[]={0.02999169,5.909236,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2067; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={7502.7725,267.30136,1345.1658}; + angles[]={0.020001993,4.0852947,0.16352041}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2070; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={7546.3516,266.10977,1385.2582}; + angles[]={0.054952115,5.5568886,0.0049795164}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2073; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={7593.6221,264.47983,1336.6062}; + angles[]={6.2432137,2.5083525,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2076; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={7592.8511,263.82349,1343.1532}; + angles[]={0.074871972,2.5169177,6.0523729}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2062; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={7594.2554,263.96509,1338.9829}; + angles[]={0.1046123,0.059662066,6.1983981}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2063; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={7548.1504,267.31354,1306.1366}; + angles[]={6.0055428,4.4370937,0.22607899}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2065; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={7543.75,266.98303,1306.0787}; + angles[]={6.0429225,1.9611034,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2066; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={7503.0859,268.5098,1379.7024}; + angles[]={6.1490021,0.85376787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2068; + type="Land_SPE_Sandbag_Short"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={7507.1152,268.33603,1381.4706}; + angles[]={0.24497873,4.6784425,6.1002564}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2069; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={7504.9243,267.47302,1343.9877}; + angles[]={0.19739246,5.3523889,0.37186882}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2071; + type="Land_SPE_Sandbag_Short"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={7502.2944,267.09589,1347.5156}; + angles[]={6.0905952,2.8729444,0.20220031}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2072; + type="Land_SPE_Sandbag_Short"; + atlOffset=-3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={7547.3462,265.86572,1382.238}; + angles[]={0.059925474,2.3813248,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2074; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={7548.6045,265.57779,1386.0793}; + angles[]={0.15865895,4.3262248,6.1686831}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2075; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={7569.2695,265.57336,1372.3208}; + angles[]={0.14889871,5.5982108,6.1050849}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2094; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={7564.9971,265.61493,1377.1754}; + angles[]={0.28225124,5.4894428,6.0148249}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2095; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={7560.6113,264.53033,1381.3459}; + angles[]={0.18776426,5.5732346,6.1147823}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2096; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={7556.6504,264.38458,1384.8595}; + angles[]={0.14398554,4.4808269,6.1294103}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2097; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={7552.3965,264.91818,1385.3513}; + angles[]={0.33666661,4.9508729,5.9689565}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2098; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={7573.5195,265.49286,1367.4399}; + angles[]={0.16352004,2.3956425,6.1785731}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2099; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={7577.3818,265.58987,1363.269}; + angles[]={0.069878548,5.5982108,6.1884689}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2100; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={7582.959,264.83386,1356.5164}; + angles[]={0.17810075,2.2954988,5.8940849}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2101; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={7586.6416,264.35181,1352.6492}; + angles[]={0.054936919,5.8274441,5.9917402}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2102; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={7589.501,264.25705,1349.2926}; + angles[]={0.21177252,5.7038956,6.2133079}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2103; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={7591.5225,264.05099,1346.094}; + angles[]={0.039971694,5.7045898,5.9509845}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2104; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={7587.7329,264.15744,1326.7421}; + angles[]={6.2382174,0.64420021,6.1934309}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2105; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={7586.311,264.44479,1322.6948}; + angles[]={0.020001993,0.32560894,6.1196504}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=2106; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Logic"; + class PositionInfo + { + position[]={7519.3955,271.48724,1361.4458}; + angles[]={0.034989785,0,0.059925474}; + }; + areaSize[]={5.6960449,0,5.6893311}; + flags=1; + id=2107; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.085296631; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item55 + { + dataType="Logic"; + class PositionInfo + { + position[]={7544.0234,272.58746,1344.5054}; + angles[]={0.07983166,0,6.1934309}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=2112; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={7563.1719,266.77261,1293.9532}; + angles[]={6.1637464,0,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2086; + type="Land_SPE_BarbedWire_02"; + atlOffset=0.018493652; + }; + }; + id=148; + atlOffset=-2.6060181; + }; + class Item7 + { + dataType="Layer"; + name="outpost_9"; + class Entities + { + items=68; + class Item0 + { + dataType="Marker"; + position[]={5892.8472,252.10965,4751.6118}; + name="outp_9_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=213.75287; + id=587; + atlOffset=0.00039672852; + }; + class Item1 + { + dataType="Marker"; + position[]={5907.6055,252.35857,4715.5029}; + name="outpost_9"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=120.27996; + b=124.14651; + angle=17.007051; + id=588; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={5892.8481,252.11049,4751.6572}; + angles[]={6.2581868,3.7306914,0.10461972}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1440; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item3 + { + dataType="Marker"; + position[]={5886.2148,251.08508,4732.54}; + name="outp_9_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=28.96121; + id=1566; + atlOffset=0.00039672852; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={5886.2178,251.08345,4732.4946}; + angles[]={6.2481956,0.50505549,0.11943152}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1567; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Marker"; + position[]={5899.2168,251.90738,4723.0562}; + name="outp_9_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=27.89378; + id=1568; + atlOffset=0.00039672852; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={5899.2207,251.90399,4723.0107}; + angles[]={6.2083287,0.48633963,0.1046123}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1569; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Marker"; + position[]={5940.9287,253.38399,4686.9429}; + name="outp_9_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=40.830044; + id=1570; + atlOffset=0.00039672852; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={5940.9224,253.38301,4686.8979}; + angles[]={0,0.71329266,0.08975371}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1571; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={5981.7529,257.63947,4683.7212}; + angles[]={6.1835108,0.44569591,0.1537751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1549; + type="Land_SPE_BarbedWire_04"; + atlOffset=0.00012207031; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={5988.4868,258.20953,4679.5728}; + angles[]={6.1686831,0.89842421,0.14889871}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1550; + type="Land_SPE_BarbedWire_04"; + atlOffset=0.00012207031; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={5956.8848,262.53134,4784.2046}; + angles[]={0,5.8597221,0.2069986}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1558; + type="Land_SPE_BarbedWire_04"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={5960.9653,263.28937,4788.9399}; + angles[]={6.2731729,5.3372898,0.15865856}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1559; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={5962.9805,263.521,4793.7661}; + angles[]={0.0099949092,4.5331736,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1560; + type="Land_SPE_BarbedWire_04"; + atlOffset=-3.0517578e-005; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={5843.5479,245.58853,4701.9849}; + angles[]={0.074856833,0,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1516; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={5851.4233,246.73737,4705.96}; + angles[]={6.2681832,0,0.12435465}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1517; + type="Land_SPE_HedgeHog"; + atlOffset=4.5776367e-005; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={5877.8398,250.29953,4761.0049}; + angles[]={0.044968102,0,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1518; + type="Land_SPE_HedgeHog"; + atlOffset=-4.5776367e-005; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={5878.5884,251.92543,4795.9766}; + angles[]={6.2631927,6.2004943,0.094716646}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1519; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={5864.0259,249.76355,4767.6978}; + angles[]={6.2531977,0,0.099666774}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1520; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={5869.8521,251.1732,4799.0659}; + angles[]={6.19839,5.6786485,6.19839}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1521; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={5862.4609,251.29871,4801.0923}; + angles[]={0.029989703,0,0.27764258}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1522; + type="Land_SPE_HedgeHog"; + atlOffset=0.00010681152; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={5855.583,250.48662,4785.4106}; + angles[]={6.2033615,0,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1523; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={5804.5,241.16583,4652.771}; + angles[]={6.2432065,4.1351099,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1524; + type="Land_SPE_HedgeHog"; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={5809.8286,241.86588,4661.3081}; + angles[]={6.2631927,5.3922639,0.059925474}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1525; + type="Land_SPE_HedgeHog"; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={5813.3486,242.47438,4668.1563}; + angles[]={6.2432051,1.3133211,0.094717279}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1526; + type="Land_SPE_HedgeHog"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={5811.2915,242.38527,4670.6455}; + angles[]={6.2382174,4.6787448,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1527; + type="Land_SPE_HedgeHog"; + atlOffset=-1.5258789e-005; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={5814.0352,242.81053,4675.8584}; + angles[]={6.2531958,6.1748805,0.13419099}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1528; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={5817.3413,243.38805,4680.0322}; + angles[]={6.2731905,2.1216111,0.12435465}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1529; + type="Land_SPE_HedgeHog"; + atlOffset=6.1035156e-005; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={5817.3848,240.96411,4642.314}; + angles[]={6.2432065,3.870791,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1530; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={5821.1021,241.60983,4651.6206}; + angles[]={6.2182751,4.3710279,6.278194}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1531; + type="Land_SPE_HedgeHog"; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={5824.5537,242.39621,4660.4751}; + angles[]={6.2232518,2.5905523,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1532; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={5893.4121,252.60605,4790.6167}; + angles[]={0.13910256,3.2596445,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1533; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={5901.2788,254.14659,4795.7056}; + angles[]={0,3.2712557,0.18292925}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1534; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={5906.4707,254.99518,4806.9526}; + angles[]={0.064910568,0,0.18292925}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1535; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={5911.3491,255.87575,4810.1108}; + angles[]={0.034989785,3.1032453,0.18292958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1536; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={5915.4336,255.56053,4826.98}; + angles[]={0.15865856,4.9732499,0.32773516}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1537; + type="Land_SPE_HedgeHog"; + atlOffset=-9.1552734e-005; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={5923.3857,256.35431,4835.1929}; + angles[]={0.08975438,0.8137573,0.15865856}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1538; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={5926.3525,255.72575,4851.9878}; + angles[]={0.049960449,0.53713727,0.18292925}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1539; + type="Land_SPE_HedgeHog"; + atlOffset=-7.6293945e-005; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={5936.6318,257.93729,4857.8916}; + angles[]={6.0571213,3.4541404,0.30969584}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1540; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={5996.8276,258.37424,4668.6699}; + angles[]={6.1835108,1.3944138,0.18776426}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1546; + type="Land_SPE_HedgeHog"; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={5974.1646,256.14157,4684.5928}; + angles[]={6.2182751,1.3931828,0.13909525}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1547; + type="Land_SPE_HedgeHog"; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={5954.4067,260.97687,4768.688}; + angles[]={6.2033539,6.5613516e-005,0.26836061}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1556; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={5960.4727,262.93005,4801.6392}; + angles[]={6.268187,0.00056383578,0.074856035}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1557; + type="Land_SPE_HedgeHog"; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={5967.0381,263.43085,4796.6699}; + angles[]={0.0050033992,2.1053452,0.10955995}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1561; + type="Land_SPE_HedgeHog"; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={5966.7622,263.52612,4789.8306}; + angles[]={0.0050152978,3.7765689,0.12435512}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1562; + type="Land_SPE_HedgeHog"; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={5945.5176,261.96295,4807.6787}; + angles[]={6.2632012,4.8841009,0.1046123}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1563; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={5934.7056,260.57553,4806.6465}; + angles[]={0.014998405,0.41431853,0.13419813}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1564; + type="Land_SPE_HedgeHog"; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={5928.2236,259.02097,4807.2842}; + angles[]={0.07983166,5.7858148,0.23553574}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1565; + type="Land_SPE_HedgeHog"; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={5869.8076,249.59712,4743.1128}; + angles[]={6.2731848,0.40383676,0.15378249}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1513; + type="Land_SPE_Sandbag_Curve"; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={5958.2368,262.97427,4795.7495}; + angles[]={6.2481956,5.2931814,0.11450227}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1552; + type="Land_SPE_Sandbag_Curve"; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={5867.0464,249.23654,4744.7158}; + angles[]={6.2432137,3.6582484,0.10955232}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1507; + type="Land_SPE_Sandbag_Long"; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={5861.2822,248.3488,4734.1841}; + angles[]={6.2382107,3.6582484,0.044974733}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1512; + type="Land_SPE_Sandbag_Long"; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={5985.6206,257.70496,4678.4297}; + angles[]={6.2033539,5.3329806,0.13419858}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1543; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=6.1035156e-005; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={5982.5864,257.46893,4680.6406}; + angles[]={6.2083287,5.3282876,0.13418342}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1544; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={5979.0049,256.93307,4679.7114}; + angles[]={6.2332249,0.71898645,0.15378989}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1545; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={5959.2939,263.0499,4791.3472}; + angles[]={6.2731905,3.8423529,0.13418297}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1553; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={5956.8579,262.57782,4788.4907}; + angles[]={6.2332392,3.8399596,0.16352041}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1554; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={5952.5659,261.88385,4787.8877}; + angles[]={6.2332249,5.5170527,0.1537751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1555; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={5869.5249,249.62651,4747.043}; + angles[]={0.024986627,0.47273502,0.11450227}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1505; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={5860.5239,248.36433,4731.209}; + angles[]={0.07983166,3.6408908,0.1586514}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1506; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={5984.0894,257.33426,4674.1138}; + angles[]={0.0050033992,2.193753,0.084787562}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1541; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={5958.5225,262.98215,4794.4233}; + angles[]={6.2481956,0.71838379,0.11450227}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1551; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={5865.2324,248.55965,4741.9585}; + angles[]={0.044968102,3.6421533,0.054945603}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1509; + type="Land_SPE_Sandbag_Short"; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={5864.2109,248.43031,4739.9438}; + angles[]={6.278182,3.6421533,0.1440005}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1510; + type="Land_SPE_Sandbag_Short"; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={5862.8896,248.41043,4731.2617}; + angles[]={0.034989785,5.2021108,0.18292958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1514; + type="Land_SPE_Sandbag_Short"; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={5864.269,248.62645,4732.0513}; + angles[]={0.049953286,3.6421533,0.1440005}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1515; + type="Land_SPE_Sandbag_Short"; + }; + class Item66 + { + dataType="Logic"; + class PositionInfo + { + position[]={5868.689,249.38744,4733.5229}; + angles[]={0,0.5234766,0}; + }; + areaSize[]={9.8590002,0,17.16}; + areaIsRectangle=1; + flags=1; + id=1504; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.26199341; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={5974.9063,256.53162,4680.7622}; + angles[]={0,5.2172866,0.09471602}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1548; + type="Land_SPE_BarbedWire_04"; + }; + }; + id=153; + atlOffset=-0.43171692; + }; + class Item8 + { + dataType="Layer"; + name="outpost_10"; + class Entities + { + items=24; + class Item0 + { + dataType="Marker"; + position[]={1192.5986,247.2171,6450.5811}; + name="outpost_10"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorGUER"; + a=61.298615; + b=88.995224; + angle=30.45138; + id=591; + }; + class Item1 + { + dataType="Marker"; + position[]={1221.1487,249.36574,6422.0928}; + name="outp_10_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=306.73511; + id=1441; + atlOffset=0.15614319; + }; + class Item2 + { + dataType="Marker"; + position[]={1213.1036,249.28545,6411.0566}; + name="outp_10_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=301.56216; + id=1443; + atlOffset=0.15614319; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={1217.496,249.10759,6416.2671}; + angles[]={0.094709717,5.2615833,0.18776426}; + }; + areaSize[]={15.677088,0,6.142066}; + areaIsRectangle=1; + flags=1; + id=1444; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.15113831; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Marker"; + position[]={1204.522,247.38007,6445.2173}; + name="outp_10_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=119.80922; + id=1445; + atlOffset=0.15615845; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={1204.5486,247.22485,6445.0308}; + angles[]={0.0049795164,2.0893664,0}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1446; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1233.24,246.55138,6487.645}; + angles[]={0.06988623,3.3708849,0.024996169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1457; + type="Land_SPE_BarbedWire_04"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1182.6952,248.79231,6357.04}; + angles[]={0.074856833,0,0.24026991}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1452; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1185.1176,249.32233,6357.6343}; + angles[]={0.044966776,0,0.21655147}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1453; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1275.1555,241.05154,6522.5962}; + angles[]={0.024996169,3.4329674,6.22824}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1458; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1256.0216,242.41577,6519.9961}; + angles[]={0.074856035,3.433502,6.0761943}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1459; + type="Land_SPE_HedgeHog"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.6906,249.24701,6377.3535}; + angles[]={0.1537751,0.64679915,0.30970266}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1450; + type="Land_SPE_Sandbag_Curve"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1231.4646,246.74617,6483.2651}; + angles[]={0.084795304,4.0812426,0.059933435}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1456; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1193.951,243.39824,6515.8442}; + angles[]={0.074857175,4.1418409,0.069882989}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1812; + type="Land_SPE_Sandbag_Short"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1171.2681,245.68712,6447.1572}; + angles[]={0.059925474,2.7052453,0.1537751}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1814; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1171.1208,245.62357,6451.7344}; + angles[]={6.2432051,0.12184308,0.19739246}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1815; + type="Land_SPE_Sandbag_Short"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={1195.126,247.23,6447.4678}; + }; + areaSize[]={2,0,2}; + flags=1; + id=1447; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item17 + { + dataType="Logic"; + class PositionInfo + { + position[]={1194.0044,249.47864,6376.0146}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1449; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={1230.5917,246.17999,6484.9253}; + angles[]={0.059925474,3.4335451,0.059933435}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1455; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1189.9724,248.84534,6375.2842}; + angles[]={0.12435465,3.5886469,0.049953286}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1448; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1234.6633,246.73558,6484.4644}; + angles[]={0.08975438,0.73856395,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1454; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1196.1033,243.84621,6516.8306}; + angles[]={0.10461287,6.1047807,0.059933435}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1811; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1170.2617,245.82927,6449.5229}; + angles[]={0.044968102,4.6770029,0.15377471}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1813; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1191.1932,249.60229,6372.665}; + angles[]={0.12435512,3.0303125,0.30061045}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1451; + type="Land_SPE_BarbedWire_04"; + }; + }; + id=158; + atlOffset=1.4200134; + }; + class Item9 + { + dataType="Layer"; + name="outpost_11"; + class Entities + { + items=31; + class Item0 + { + dataType="Marker"; + position[]={4082.7876,276.28021,5352.5825}; + name="outp_11_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=235.02596; + id=594; + }; + class Item1 + { + dataType="Marker"; + position[]={4012.5144,276.82199,5330.3423}; + name="outpost_11"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=68.45311; + b=80.014; + angle=22.984995; + id=595; + atlOffset=-0.25946045; + }; + class Item2 + { + dataType="Marker"; + position[]={4019.8962,274.72,5295.7178}; + name="outp_11_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=596; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3953.5376,277.36002,5295.1182}; + angles[]={0,2.4288127,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=913; + type="Land_Radar_01_airshaft_F"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3952.3596,295.21744,5297.1729}; + angles[]={0,0.85801637,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=914; + type="Land_TTowerBig_1_F"; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={4082.854,276.26242,5352.6826}; + angles[]={0.084803045,4.1019773,6.1440902}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1430; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Marker"; + position[]={4004.5952,276.60074,5346.4341}; + name="outp_11_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=235.02596; + id=1902; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={4004.6616,276.59793,5346.5342}; + angles[]={0.084803045,4.1019773,6.1440902}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1903; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item8 + { + dataType="Marker"; + position[]={4031.3655,276.5603,5397.7124}; + name="outp_11_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=350.18002; + id=1904; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={4031.428,276.56125,5397.6099}; + angles[]={6.2681832,6.1190853,0.039973188}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1905; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Marker"; + position[]={3936.302,275.58234,5301.6294}; + name="outp_11_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=313.30252; + id=1906; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={3936.2368,275.58411,5301.7554}; + angles[]={6.2731905,5.4807034,0.019999012}; + }; + areaSize[]={5,0,5.2457552}; + areaIsRectangle=1; + flags=1; + id=1907; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.0018310547; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3961.2356,277.79068,5330.6777}; + angles[]={0.24026266,5.6035399,0.08975438}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1897; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3941.2195,276.60544,5308.8867}; + angles[]={6.2083278,2.3286519,0.17324875}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1899; + type="Land_SPE_BarbedWire_04"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3944.8569,276.89514,5313.1885}; + angles[]={6.2282333,5.6035399,0.1440005}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1900; + type="Land_SPE_BarbedWire_04"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3952.5872,277.3692,5321.3247}; + angles[]={0.14888424,5.6035399,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1901; + type="Land_SPE_BarbedWire_04"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3939.0938,276.16003,5312.5356}; + angles[]={6.2731905,0.72260123,0.084787562}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1892; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3943.3857,276.32504,5317.3501}; + angles[]={0.13909525,0.74583471,0.044966776}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1893; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3949.2556,276.53888,5323.3203}; + angles[]={0.1683882,0.8356548,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1894; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3954.9697,276.83133,5329.0752}; + angles[]={0.22132032,0.78319126,0.1145028}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1895; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3963.5059,277.03958,5335.9146}; + angles[]={0.25437713,0.97627074,0.10954469}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1896; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={4018.9514,276.40384,5394.7622}; + angles[]={6.2631836,4.0415192,0.074856833}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1880; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={4034.2744,277.04276,5389.8765}; + angles[]={0,0.34018406,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1883; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={4056.9131,277.61679,5335.1167}; + angles[]={0.014998405,1.1542311,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1885; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={4055.7813,277.6796,5332.6001}; + angles[]={0.019987086,2.8219073,6.2631984}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1886; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3967.3125,276.47263,5267.7803}; + angles[]={0.039986607,3.5934479,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1887; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={4019.8308,276.00385,5396.7241}; + angles[]={6.2581797,0.7676959,0.025005706}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1882; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={4036.405,276.66608,5387.5034}; + angles[]={0,2.0450263,0.01499443}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1884; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3969.7322,276.10086,5267.1611}; + angles[]={0.039971694,5.2160244,0.010012784}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1888; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3965.5527,275.99243,5269.4365}; + angles[]={0.029987715,5.2160244,0.010006829}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1889; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Logic"; + class PositionInfo + { + position[]={4018.0459,276.21082,5392.813}; + angles[]={6.2320037,0,0.48785135}; + }; + areaSize[]={1,0,1}; + flags=1; + id=1881; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.26080322; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=163; + atlOffset=-0.50686646; + }; + class Item10 + { + dataType="Layer"; + name="outpost_12"; + class Entities + { + items=35; + class Item0 + { + dataType="Marker"; + position[]={4987.8594,274.97009,6672.4419}; + name="outp_12_helipad"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=15; + b=15; + id=597; + atlOffset=2.322998; + }; + class Item1 + { + dataType="Marker"; + position[]={4964.8906,278.95999,6711.9761}; + name="outp_12_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=315.69312; + id=598; + atlOffset=5.9997864; + }; + class Item2 + { + dataType="Marker"; + position[]={4972.7148,273.16199,6698.042}; + name="outpost_12"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorGUER"; + a=56.868; + b=82.074997; + angle=45.033978; + id=599; + atlOffset=-0.00012207031; + }; + class Item3 + { + dataType="Marker"; + position[]={4948.5957,271.54633,6672.4419}; + name="outp_12_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=600; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={4964.5464,272.94669,6712.209}; + angles[]={6.2731905,5.5085511,0.044968102}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1431; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Marker"; + position[]={4932.9731,278.13971,6707.3657}; + name="outp_12_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=136.24132; + id=1874; + atlOffset=5.9997253; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={4933.3149,272.12869,6707.1294}; + angles[]={6.2282486,2.3765342,0.0049795164}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1875; + type="ModuleHideTerrainObjects_F"; + + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Marker"; + position[]={4964.2207,279.59018,6745.1294}; + name="outp_12_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=315.69312; + id=1876; + atlOffset=5.9997559; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={4963.8765,273.59348,6745.3623}; + angles[]={6.2581964,5.5085511,0.0049914722}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1877; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Marker"; + position[]={4941.186,278.51767,6715.7314}; + name="outp_12_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=133.82985; + id=1878; + atlOffset=5.9997864; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={4941.5376,272.51297,6715.5098}; + angles[]={6.2531958,2.3351631,0.0050033992}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1879; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4951.1846,273.37527,6724.9287}; + angles[]={6.2531977,0.86110985,0.009988944}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1491; + type="Land_SPE_BarbedWire_04"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={4952.6621,273.73572,6733.623}; + angles[]={6.2481956,5.339787,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1492; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={4956.8398,273.85889,6737.771}; + angles[]={6.2531819,5.7866273,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1493; + type="Land_SPE_BarbedWire_04"; + atlOffset=0.00021362305; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={4979.1221,273.92551,6748.9224}; + angles[]={6.2581964,0,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1483; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={4974.0381,273.82211,6749.0444}; + angles[]={6.2531939,3.612407,0.019987086}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1484; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={4970.2397,273.92203,6753.4604}; + angles[]={6.2431974,2.2030437,0.015014294}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1485; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={4948.6582,272.71829,6719.0093}; + angles[]={6.268187,0,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1489; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={4946.875,272.85086,6724.2173}; + angles[]={6.2332249,0,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1490; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={5015.7583,274.88879,6763.8848}; + angles[]={0,3.7255809,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1870; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={5005.4268,274.87387,6773.3491}; + angles[]={6.278182,3.791877,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1871; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={4961.8257,273.72324,6734.7314}; + angles[]={6.2581964,5.3807244,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1482; + type="Land_SPE_Sandbag_Curve"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={4957.4531,273.76038,6734.7466}; + angles[]={6.2581964,3.9390426,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1486; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={4954.7358,273.66089,6732.1563}; + angles[]={6.2481956,3.9390426,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1487; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={4952.9565,273.44507,6726.5381}; + angles[]={6.2382174,5.6130772,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1488; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={4961.9736,273.71472,6733.3823}; + angles[]={6.2631865,0.80616254,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1481; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.00012207031; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={4926.9644,270.42935,6666.4321}; + angles[]={6.2731786,4.1337714,6.2083297}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1861; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.00012207031; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={4964.2998,271.00952,6641.769}; + angles[]={6.2235241,2.8134763,0.010758872}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1862; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={5006.5293,274.07031,6692.8691}; + angles[]={6.2481956,1.5935097,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1863; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={4994.0591,274.66885,6742.6567}; + angles[]={6.268187,0.48587346,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1867; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={4952.1064,273.5101,6729.5454}; + angles[]={6.2432137,5.0695972,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1872; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={5005.6665,273.56564,6690.7241}; + angles[]={6.2432137,3.2520528,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1864; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={5005.9819,273.74405,6695.356}; + angles[]={6.2432137,6.1318364,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1865; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={4994.8525,274.24704,6740.4805}; + angles[]={6.268187,2.8425527,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1868; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={4991.644,274.1459,6741.8364}; + angles[]={6.2731905,4.0188527,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1869; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=168; + atlOffset=-0.27682495; + }; + class Item11 + { + dataType="Layer"; + name="outpost_13"; + class Entities + { + items=29; + class Item0 + { + dataType="Marker"; + position[]={2194.7737,270.97906,5479.5225}; + name="outp_13_helipad"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=15; + b=15; + id=601; + }; + class Item1 + { + dataType="Marker"; + position[]={2162.439,272.14368,5517.7598}; + name="outp_13_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=12.66935; + b=6.129426; + angle=155.21878; + id=602; + atlOffset=-0.11953735; + }; + class Item2 + { + dataType="Marker"; + position[]={2172.8516,271.84,5501.8892}; + name="outpost_13"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorGUER"; + a=50.665947; + b=66.409203; + id=603; + atlOffset=-0.26077271; + }; + class Item3 + { + dataType="Marker"; + position[]={2185.241,272.99799,5511.4751}; + name="outp_13_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=2; + b=2; + id=604; + atlOffset=0.00012207031; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={2162.4702,272.12784,5517.5562}; + angles[]={6.2631865,2.7090802,0.34113201}; + }; + areaSize[]={12.672291,0,6.2945204}; + areaIsRectangle=1; + flags=1; + id=1432; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.13140869; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2188.2041,273.44379,5514.8721}; + angles[]={6.2531939,5.0512729,6.2631984}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1858; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2189.5625,273.17493,5509.8555}; + angles[]={6.2531958,3.2865713,6.2432137}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1859; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2182.5171,273.08975,5507.6802}; + angles[]={6.2033539,2.0393069,0.064911485}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1860; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2172.0542,271.33463,5482.165}; + angles[]={6.2531958,3.1709869,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1837; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2148.8518,272.61578,5515.4282}; + angles[]={6.2731905,4.7482014,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1838; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2144.5212,272.47995,5525.9902}; + angles[]={0.0099949092,5.4817719,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1839; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2194.3037,274.93649,5544.0068}; + angles[]={0.020001993,0.60199654,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1845; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2144.5271,272.0799,5523.4585}; + angles[]={6.278194,6.0756035,0.0049914722}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1841; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2148.6985,272.21326,5517.708}; + angles[]={6.2431989,2.6636267,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1842; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2147.157,272.14734,5519.2891}; + angles[]={0.020001993,2.2468498,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1843; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2149.7595,272.13226,5512.8242}; + angles[]={6.2382174,3.0628474,0.020001993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1844; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2193.4543,274.48679,5546.3257}; + angles[]={0.034974448,2.6636267,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1846; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2184.3669,274.50378,5547.1973}; + angles[]={0.034974448,4.6969767,0.069893055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1847; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={2186.6245,274.51865,5547.2202}; + angles[]={0.079832405,4.6969767,6.2132916}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1848; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={2190.1401,271.11295,5472.6895}; + angles[]={6.2781701,0.15521558,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1849; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={2190.6167,271.12427,5475.4258}; + angles[]={6.2731786,0.15521558,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1850; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={2191.1501,271.18594,5479.063}; + angles[]={6.2681909,0.15521558,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1851; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={2191.1816,271.28403,5482.7563}; + angles[]={6.2382188,3.0343328,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1852; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={2193.0012,272.21591,5501.1304}; + angles[]={6.2382188,0.15521558,0.024986627}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1853; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={2192.845,272.09232,5498.5054}; + angles[]={6.2382188,3.1920838,0.034972742}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1854; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={2174.2893,270.71451,5470.4053}; + angles[]={6.1294103,2.4172914,0.074856833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1855; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={2172.292,270.63702,5472.8579}; + angles[]={6.2382174,5.5829773,0.19739276}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1856; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Logic"; + class PositionInfo + { + position[]={2145.7781,272.08301,5524.5918}; + angles[]={0.0099949092,0,0.0050033992}; + }; + areaSize[]={2,0,2}; + flags=1; + id=1840; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={2183.0598,273.47348,5515.0522}; + angles[]={6.268187,4.120091,0.099659584}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1857; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=173; + atlOffset=0.15301514; + }; + class Item12 + { + dataType="Layer"; + name="outpost_14"; + class Entities + { + items=37; + class Item0 + { + dataType="Marker"; + position[]={2919.0444,257.00937,3162.5161}; + name="outp_14_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=20.139477; + b=5; + angle=1.8302864; + id=606; + atlOffset=-0.57119751; + }; + class Item1 + { + dataType="Marker"; + position[]={2939.4929,256.91901,3124.7981}; + name="outpost_14"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorGUER"; + a=80; + b=75; + id=607; + atlOffset=2.1377869; + }; + class Item2 + { + dataType="Marker"; + position[]={2931.4431,254.89937,3118.1797}; + name="outp_14_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=608; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={2918.7905,256.96613,3162.1221}; + angles[]={6.1588306,0.032007389,6.2531958}; + }; + areaSize[]={20.166267,0,5}; + areaIsRectangle=1; + flags=1; + id=1433; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.57208252; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2928.6504,253.66747,3088.2407}; + angles[]={6.2232599,4.0109282,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1606; + type="Land_SPE_BarbedWire_04"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2962.6836,250.91917,3066.6262}; + angles[]={6.2232533,1.4590331,6.2482042}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1607; + type="Land_SPE_BarbedWire_04"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2963.4243,249.00606,3038.292}; + angles[]={6.2083297,5.7011371,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1608; + type="Land_SPE_BarbedWire_04"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2967.0913,257.1243,3174.6511}; + angles[]={6.2431989,3.0805645,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1616; + type="Land_SPE_BarbedWire_04"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2967.2546,258.51123,3182.0349}; + angles[]={6.1539059,6.1675353,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1617; + type="Land_SPE_BarbedWire_04"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2980.8008,257.50061,3179.7551}; + angles[]={6.109952,4.2855606,6.2182741}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1618; + type="Land_SPE_BarbedWire_04"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2961.0908,251.28285,3071.6829}; + angles[]={6.223259,0.82694441,6.2432051}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1620; + type="Land_SPE_BarbedWire_04"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2957.822,251.62997,3075.5715}; + angles[]={6.22824,0.61153162,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1621; + type="Land_SPE_BarbedWire_04"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2942.8411,252.33751,3085.3699}; + angles[]={6.22824,1.7452821,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1604; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2970.697,248.97658,3046.9309}; + angles[]={6.2182741,1.7452821,6.2631927}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1605; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2961.4744,256.78967,3176.0945}; + angles[]={6.1099372,0.82939821,6.2581987}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1614; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2960.3242,257.51443,3179.1228}; + angles[]={5.9734898,0.82939821,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1615; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2871.863,260.11447,3181.1968}; + angles[]={6.1983981,0.82939821,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1994; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2873.855,260.31262,3184.9946}; + angles[]={6.2332392,1.8728393,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1995; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={2882.0054,260.17517,3185.5879}; + angles[]={6.2232451,5.0386963,6.2581987}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1996; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={2891.7051,259.03247,3166.0361}; + angles[]={6.2232599,1.5264235,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1997; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={2958.4031,250.93527,3065.7468}; + angles[]={6.2182741,0.84256256,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1600; + type="Land_SPE_Sandbag_Curve"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={2980.5085,256.92221,3176.2734}; + angles[]={6.1588306,6.1689496,6.2481976}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1610; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={2894.5811,260.03314,3182.3962}; + angles[]={6.2133079,1.4491061,6.2531819}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1992; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={2899.759,259.88168,3182.4219}; + angles[]={6.2083287,1.6478024,6.25318}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1993; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={2959.1794,251.24345,3070.0498}; + angles[]={6.2232599,5.6840663,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1601; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={2957.1021,251.50829,3073.1768}; + angles[]={6.223259,5.6840663,6.2432051}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1602; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={2953.4207,251.67787,3073.5488}; + angles[]={6.223259,1.075174,6.2432051}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1603; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={2977.5664,257.66052,3179.5081}; + angles[]={6.0905952,4.7055149,6.2033539}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1611; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={2973.8208,257.98575,3179.7622}; + angles[]={6.0523729,4.7656908,6.2282486}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1612; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={2971.2854,257.43942,3177.0671}; + angles[]={6.0857925,0.15824151,6.2631836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1613; + type="Land_SPE_Sandbag_Long_Thick"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={2957.0488,251.01471,3065.8359}; + angles[]={6.2182741,2.5511858,6.2432137}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1599; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.00010681152; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={2979.6135,256.8605,3175.2529}; + angles[]={6.1785579,1.5935097,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1609; + type="Land_SPE_Sandbag_Nest"; + atlOffset=0.00012207031; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={2895.2732,259.52261,3177.6909}; + angles[]={6.2182741,4.8621006,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1991; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={2973.719,253.129,3117.2563}; + angles[]={6.22824,2.0682857,6.2382174}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1998; + type="Land_SPE_Sandbag_Nest"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Logic"; + class PositionInfo + { + position[]={2956.5647,250.97493,3069.5083}; + angles[]={0,5.6917362,0}; + }; + areaSize[]={5,0,8.9806509}; + flags=1; + id=1619; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.12702942; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item35 + { + dataType="Logic"; + class PositionInfo + { + position[]={2930.8289,254.84698,3117.0444}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1990; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item36 + { + dataType="Logic"; + class PositionInfo + { + position[]={2938.6528,254.81569,3126.4363}; + angles[]={6.2482023,0,6.2531877}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1999; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=178; + atlOffset=-0.16040039; + }; + class Item13 + { + dataType="Layer"; + name="outpost_15"; + class Entities + { + items=35; + class Item0 + { + dataType="Marker"; + position[]={6811.0195,291.93805,7623.3726}; + name="outp_15_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=278.33395; + id=610; + }; + class Item1 + { + dataType="Marker"; + position[]={6801.2642,290.29031,7653.9287}; + name="outpost_15"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=92.842216; + b=121.87746; + id=611; + atlOffset=-3.1369629; + }; + class Item2 + { + dataType="Marker"; + position[]={6843.1445,289.55984,7604.3892}; + name="outp_15_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=612; + }; + class Item3 + { + dataType="Marker"; + position[]={6782.9326,292.64731,7580.1206}; + name="outp_15_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=92.598396; + id=1573; + }; + class Item4 + { + dataType="Marker"; + position[]={6822.0166,290.81979,7595.9663}; + name="outp_15_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=267.47665; + id=1575; + }; + class Item5 + { + dataType="Marker"; + position[]={6810.3228,293.16302,7659.0215}; + name="outp_15_vehicle_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=250.95584; + id=1577; + }; + class Item6 + { + dataType="Marker"; + position[]={6795.0977,294.03268,7659.9634}; + name="outp_15_vehicle_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=141.75601; + id=1579; + }; + class Item7 + { + dataType="Marker"; + position[]={6814.4761,293.94696,7682.9116}; + name="outp_15_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=1598; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6804.6499,292.59366,7571.2466}; + angles[]={0.009988944,1.7857472,6.2531977}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1502; + type="Land_SPE_BarbedWire_04"; + atlOffset=9.1552734e-005; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6802.1675,292.71274,7563.7373}; + angles[]={0.0050033992,2.2325108,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1503; + type="Land_SPE_BarbedWire_04"; + atlOffset=9.1552734e-005; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6801.0347,292.09436,7581.6152}; + angles[]={0.015002378,2.7292247,6.2431974}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1499; + type="Land_SPE_HedgeHog"; + atlOffset=-3.0517578e-005; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6804.7554,292.02243,7577.5586}; + angles[]={0.020001993,2.7291973,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1500; + type="Land_SPE_HedgeHog"; + atlOffset=3.0517578e-005; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6796.3813,292.74817,7564.5239}; + angles[]={0,1.8266594,6.2631984}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1495; + type="Land_SPE_Sandbag_Curve"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6800.3936,292.73059,7566.2622}; + angles[]={0.0050033992,0.38497755,6.2581964}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1496; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6801.8447,292.67694,7569.7246}; + angles[]={0.0050033992,0.38498631,6.258182}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1497; + type="Land_SPE_Sandbag_Long_Thick"; + atlOffset=-3.0517578e-005; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6800.1138,292.70334,7572.9951}; + angles[]={0.0050033992,2.0590374,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1498; + type="Land_SPE_Sandbag_Long_Thick"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={6795.7051,292.78165,7565.7007}; + angles[]={0,3.5352831,6.2681751}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1494; + type="Land_SPE_Sandbag_Nest"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={6739.9863,295.86874,7633.0874}; + angles[]={6.2182741,5.4796209,6.2232599}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1586; + type="Land_SPE_Sandbag_Nest"; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={6788.0303,298.06393,7711.0137}; + angles[]={6.1588306,5.7171111,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1589; + type="Land_SPE_Sandbag_Nest"; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={6881.7769,288.76648,7641.5479}; + angles[]={6.1785731,1.7173555,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1592; + type="Land_SPE_Sandbag_Nest"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={6858.6201,292.07245,7567.4263}; + angles[]={0,2.2617214,6.2432137}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1595; + type="Land_SPE_Sandbag_Nest"; + atlOffset=3.0517578e-005; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={6741.9346,295.50723,7634.5283}; + angles[]={6.1983824,3.9620609,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1587; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={6738.4966,295.38306,7631.3057}; + angles[]={6.2731786,3.9663625,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1588; + type="Land_SPE_Sandbag_Short"; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={6790.2627,297.6947,7711.957}; + angles[]={6.2332392,4.2046714,6.2332239}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1590; + type="Land_SPE_Sandbag_Short"; + atlOffset=-3.0517578e-005; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={6786.1641,297.45724,7709.6313}; + angles[]={6.2033529,4.2061596,6.2631984}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1591; + type="Land_SPE_Sandbag_Short"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={6881.0098,288.16925,7639.249}; + angles[]={6.1835103,0.20472078,6.2083287}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1593; + type="Land_SPE_Sandbag_Short"; + atlOffset=6.1035156e-005; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={6881.9727,288.56845,7643.8623}; + angles[]={6.1835251,0.20471929,6.2033539}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1594; + type="Land_SPE_Sandbag_Short"; + atlOffset=3.0517578e-005; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={6856.7856,291.8439,7565.8428}; + angles[]={6.0382071,0.74922413,6.1983824}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1596; + type="Land_SPE_Sandbag_Short"; + atlOffset=-3.0517578e-005; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={6859.9712,291.33459,7569.3154}; + angles[]={0.19739276,0.73391628,0.07983166}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1597; + type="Land_SPE_Sandbag_Short"; + }; + class Item29 + { + dataType="Logic"; + class PositionInfo + { + position[]={6811.1494,291.92773,7623.0117}; + angles[]={6.2581744,4.8578448,6.2182941}; + }; + areaSize[]={5.4474373,0,5}; + areaIsRectangle=1; + flags=1; + id=1572; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.0071716309; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item30 + { + dataType="Logic"; + class PositionInfo + { + position[]={6782.7456,292.65149,7580.0215}; + angles[]={6.278194,1.6142815,6.258182}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1574; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item31 + { + dataType="Logic"; + class PositionInfo + { + position[]={6822.1938,290.81088,7596.0815}; + angles[]={0.0050033992,4.6662278,6.2382174}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1576; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item32 + { + dataType="Logic"; + class PositionInfo + { + position[]={6810.46,293.16763,7659.1826}; + angles[]={6.2332239,4.3773336,6.2581964}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1578; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item33 + { + dataType="Logic"; + class PositionInfo + { + position[]={6794.9004,294.04758,7660.04}; + angles[]={6.2432122,2.4747434,6.223259}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=1580; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={6801.2446,292.64679,7576.3516}; + angles[]={0.014998405,0.77842242,6.2481956}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1501; + type="Land_SPE_BarbedWire_04"; + atlOffset=0.00012207031; + }; + }; + id=183; + atlOffset=0.59182739; + }; + class Item14 + { + dataType="Layer"; + name="outpost_1"; + class Entities + { + items=45; + class Item0 + { + dataType="Marker"; + position[]={2916.4031,255.4541,7389.1074}; + name="outp_1_helipad"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=15; + b=15; + id=443; + }; + class Item1 + { + dataType="Marker"; + position[]={2836.2239,251.11591,7396.0854}; + name="outp_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=22.212721; + b=5; + angle=175.78676; + id=444; + atlOffset=-0.65989685; + }; + class Item2 + { + dataType="Marker"; + position[]={2865.801,255.41803,7361.2993}; + name="outpost_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=113.53277; + b=87.95974; + id=445; + atlOffset=1.1533966; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={2836.3306,251.11789,7396.1045}; + angles[]={0.034988083,3.0645576,0.039971694}; + }; + areaSize[]={22.254951,0,5}; + areaIsRectangle=1; + flags=1; + id=1429; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.66177368; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2812.0134,251.46817,7377.9595}; + angles[]={0.049953286,4.2424664,0.044966776}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1472; + type="Land_SPE_BarbedWire_04"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2814.0918,251.88422,7372.8237}; + angles[]={0.07983166,3.5481758,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1476; + type="Land_SPE_BarbedWire_04"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2824.2549,251.95079,7380.4053}; + angles[]={0.039980642,4.5793915,0.044976059}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1477; + type="Land_SPE_BarbedWire_04"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2861.7825,258.53137,7277.1133}; + angles[]={0.049961641,0.3738974,0.084803045}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1817; + type="Land_SPE_BarbedWire_04"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2857.9902,258.27621,7277.0703}; + angles[]={0.054938007,6.1525002,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1822; + type="Land_SPE_BarbedWire_04"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2849.5859,258.08746,7276.6025}; + angles[]={0.029989703,6.2594662,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1823; + type="Land_SPE_BarbedWire_04"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2844.9443,257.97964,7274.8623}; + angles[]={6.1983824,6.1423001,0.074871972}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1824; + type="Land_SPE_BarbedWire_04"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2914.2651,260.14072,7300.0796}; + angles[]={6.2182751,2.8890009,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1830; + type="Land_SPE_BarbedWire_04"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2919.6853,260.32559,7303.1206}; + angles[]={6.2282486,2.5373769,0.0049795164}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1831; + type="Land_SPE_BarbedWire_04"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2893.9456,260.05603,7291.1108}; + angles[]={6.1588306,2.2016854,6.2531958}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1832; + type="Land_SPE_BarbedWire_04"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2889.0396,259.62973,7286.415}; + angles[]={6.1637616,2.1189072,6.268187}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1833; + type="Land_SPE_BarbedWire_04"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2875.1472,259.68445,7279.2534}; + angles[]={6.278182,2.2753754,6.2332392}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1834; + type="Land_SPE_BarbedWire_04"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2881.4136,259.63623,7283.6753}; + angles[]={6.1736255,2.9066992,6.2382188}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1835; + type="Land_SPE_BarbedWire_04"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2821.9084,252.99275,7373.7104}; + angles[]={0.064911485,1.6508695,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1475; + type="Land_SPE_Guardbox"; + atlOffset=0.0056152344; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={2982.1755,257.33923,7404.6699}; + angles[]={0.020001993,4.5319986,0.014998405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1464; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={2968.6333,257.11676,7403.8164}; + angles[]={0.0050033992,4.5326142,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1465; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3015.0522,257.7291,7386.5093}; + angles[]={0.039986607,4.5319986,6.2731729}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1466; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={2604.2722,244.82159,7376.1104}; + angles[]={0.034989785,4.5319986,0.01999305}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1467; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={2627.0161,245.01886,7388.0732}; + angles[]={0.019996032,4.5319986,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1468; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={2833.449,251.87762,7380.3516}; + angles[]={0.049960449,0,0.044966776}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1478; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={2793.4331,250.08058,7378.6948}; + angles[]={0.01999305,0,0.044968102}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1479; + type="Land_SPE_HedgeHog"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={2950.8381,256.98563,7404.6128}; + angles[]={0.024989013,5.1792707,0.0300056}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1462; + type="Land_SPE_Sandbag_Curve"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={2817.9812,251.56665,7381.1372}; + angles[]={0.024996169,1.6104678,0.039971694}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1471; + type="Land_SPE_Sandbag_Curve"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={2815.0344,251.58934,7376.5039}; + angles[]={0.049954481,0,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1473; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={2858.332,258.02039,7280.3809}; + angles[]={0.049961641,4.6065683,0.049946126}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1818; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={2863.2139,258.49451,7280.042}; + angles[]={0.059940398,1.7855966,0.15864386}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1819; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={2850.1692,257.89514,7279.6958}; + angles[]={0.034989785,4.6285334,0.0099949092}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1820; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={2845.0625,258.02075,7278.9585}; + angles[]={0.0099949092,1.3022592,6.2431989}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1821; + type="Land_SPE_Sandbag_Long"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={2912.4858,260.2648,7304.5347}; + angles[]={0.015010322,4.1700258,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1826; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={2920.5154,260.38052,7306.9229}; + angles[]={0,4.6065683,0.01499443}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1827; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={2888.0576,260.12842,7291.3105}; + angles[]={6.1785583,4.0957518,6.2482109}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1828; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={2875.5034,259.71307,7283.3789}; + angles[]={6.2232599,4.0751438,0.0050033992}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1829; + type="Land_SPE_Sandbag_Long"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={2816.4211,251.43504,7374.0859}; + angles[]={0.06988623,1.5267813,0.049961641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1474; + type="Land_SPE_Sandbag_Short"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Logic"; + class PositionInfo + { + position[]={2951.9204,256.58218,7406.145}; + angles[]={0.034988083,4.5325351,0.034972742}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1461; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item38 + { + dataType="Logic"; + class PositionInfo + { + position[]={2816.1357,251.2618,7376.5005}; + angles[]={0.049961641,1.2126547,0.049961641}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1470; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item39 + { + dataType="Logic"; + class PositionInfo + { + position[]={2867.325,254.24606,7365.2075}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1836; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={2953.3604,257.12177,7402.3086}; + angles[]={0.0099949092,1.8366097,0.034989785}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1460; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={2814.0383,251.3997,7380.021}; + angles[]={0,4.7998748,0.064910568}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1469; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={2854.4871,257.96274,7279.5337}; + angles[]={0.049961641,3.1233175,0.024989013}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1816; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={2915.5117,259.22552,7315.1494}; + angles[]={0.18292925,1.5912557,0.07983166}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1825; + type="Land_SPE_Sandbag_Nest"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={2955.7188,257.22742,7403.9785}; + angles[]={0.014998405,1.2792422,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1463; + type="Land_SPE_BarbedWire_04"; + atlOffset=-3.0517578e-005; + }; + }; + id=201; + atlOffset=-0.029327393; + }; + }; + id=117; + atlOffset=-1.6273193; + }; + class Item5 + { + dataType="Layer"; + name="resources"; + state=2; + class Entities + { + items=10; + class Item0 + { + dataType="Layer"; + name="resource_1"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={2826.8025,154.95544,1703.105}; + name="reso_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=78.39299; + id=456; + atlOffset=0.6053772; + }; + class Item1 + { + dataType="Marker"; + position[]={2831.9319,154.466,1684.4611}; + name="resource_1"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorOrange"; + a=93.524002; + b=74.931999; + angle=350.578; + id=457; + atlOffset=-0.30537415; + }; + class Item2 + { + dataType="Marker"; + position[]={2829.6367,155.10652,1690.6616}; + name="reso_1_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=78.39299; + id=623; + atlOffset=0.6053772; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={2829.147,154.33769,1695.12}; + angles[]={0,6.085928,0}; + }; + areaSize[]={6.5349998,0,15.854}; + areaIsRectangle=1; + flags=1; + id=622; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.080978394; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=207; + atlOffset=0.19841003; + }; + class Item1 + { + dataType="Layer"; + name="resource_2"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={790.68384,226.00792,5638.125}; + name="reso_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=257.33194; + id=459; + atlOffset=1.6002655; + }; + class Item1 + { + dataType="Marker"; + position[]={765.96405,224.95274,5655.562}; + name="resource_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=95.150383; + b=53.763939; + id=460; + atlOffset=0.45678711; + }; + class Item2 + { + dataType="Marker"; + position[]={793.96545,225.24983,5623.5703}; + name="reso_2_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=257.33194; + id=624; + atlOffset=1.6002655; + }; + }; + id=211; + atlOffset=0.94389343; + }; + class Item2 + { + dataType="Layer"; + name="resource_3"; + class Entities + { + items=5; + class Item0 + { + dataType="Marker"; + position[]={925.44818,174.17131,7551.0518}; + name="reso_3_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=19.354977; + id=462; + atlOffset=0.59114075; + }; + class Item1 + { + dataType="Marker"; + position[]={942.76624,173.50999,7572.0742}; + name="resource_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=91.862267; + b=76.228539; + id=463; + }; + class Item2 + { + dataType="Marker"; + position[]={958.44238,174.10114,7585.6655}; + name="reso_3_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=214.72661; + id=626; + atlOffset=0.59114075; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={958.30872,173.50999,7585.8452}; + angles[]={0,3.7916574,0}; + }; + areaSize[]={5.7757373,0,5.0840139}; + areaIsRectangle=1; + flags=1; + id=627; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={925.62463,173.58618,7550.9141}; + angles[]={0.049961641,0.38207579,6.278194}; + }; + areaSize[]={5.7757373,0,5.0840139}; + areaIsRectangle=1; + flags=1; + id=625; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=215; + atlOffset=0.15852356; + }; + class Item3 + { + dataType="Layer"; + name="resource_4"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={2811.3381,275.2395,6737.4844}; + name="reso_4_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=327.34793; + id=465; + atlOffset=0.60540771; + }; + class Item1 + { + dataType="Marker"; + position[]={2785.9985,274.63,6721.2954}; + name="resource_4"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorOrange"; + a=61.557182; + b=64.913597; + id=466; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={2811.5771,274.63464,6737.3491}; + angles[]={6.278182,2.5490315,0.0050033992}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=628; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=219; + atlOffset=0.1546936; + }; + class Item4 + { + dataType="Layer"; + name="resource_5"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={7226.2607,280.98956,7181.7686}; + name="reso_5_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=79.274979; + id=468; + atlOffset=0.77261353; + }; + class Item1 + { + dataType="Marker"; + position[]={7215.5693,279.87192,7208.8066}; + name="resource_5"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorOrange"; + a=71.041; + b=70.627998; + id=469; + }; + class Item2 + { + dataType="Marker"; + position[]={7228.0435,281.00113,7170.9629}; + name="reso_5_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=89.140503; + id=630; + atlOffset=0.77261353; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={7231.8525,280.11197,7173.8579}; + angles[]={0,0,6.2531819}; + }; + areaSize[]={6.081543,0,15.653564}; + flags=1; + id=629; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.031036377; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=223; + atlOffset=0.20300293; + }; + class Item5 + { + dataType="Layer"; + name="resource_7"; + class Entities + { + items=5; + class Item0 + { + dataType="Marker"; + position[]={567.5531,203.80507,3107.2959}; + name="reso_7_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=149.70851; + id=614; + atlOffset=0.60507202; + }; + class Item1 + { + dataType="Marker"; + position[]={558.841,205.817,3093.073}; + name="resource_7"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorOrange"; + a=86.414001; + b=61.518002; + id=615; + atlOffset=1.0789337; + }; + class Item2 + { + dataType="Marker"; + position[]={563.15765,205.46034,3084.0352}; + name="reso_7_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=57.356335; + id=632; + atlOffset=0.60507202; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={563.30603,204.8382,3084.332}; + angles[]={0.029987715,5.7405615,6.228241}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=634; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={566.42133,203.30841,3103.3945}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=633; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=227; + atlOffset=-0.021316528; + }; + class Item6 + { + dataType="Layer"; + name="resource_8"; + class Entities + { + items=8; + class Item0 + { + dataType="Marker"; + position[]={2863.4883,128.21033,477.60352}; + name="reso_8_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=259.91412; + id=617; + atlOffset=0.50489044; + }; + class Item1 + { + dataType="Marker"; + position[]={2884.2961,126.81973,443.52127}; + name="resource_8"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=113.90878; + b=58.364674; + angle=352.3609; + id=618; + atlOffset=-0.013923645; + }; + class Item2 + { + dataType="Marker"; + position[]={2852.5591,128.18929,468.3208}; + name="reso_8_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=296.09634; + id=639; + atlOffset=0.50489044; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2923.3496,127.85773,405.79739}; + angles[]={6.2731905,0,6.2681909}; + }; + side="Empty"; + class Attributes + { + }; + id=636; + type="Land_HelipadEmpty_F"; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={2864.4739,128.603,399.47998}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=637; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={2923.5996,127.8548,405.88037}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=638; + type="ModuleHideTerrainObjects_F"; + atlOffset=-7.6293945e-006; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={2847.1941,127.54,462.69812}; + }; + areaSize[]={5.2983398,0,5}; + flags=1; + id=640; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2864.5068,128.59814,399.67413}; + angles[]={0.024996169,0,0}; + }; + side="Empty"; + class Attributes + { + }; + id=635; + type="Land_HelipadEmpty_F"; + }; + }; + id=231; + atlOffset=0.14682007; + }; + class Item7 + { + dataType="Layer"; + name="resource_9"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={4326.832,201.48,2191.6118}; + name="reso_9_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=269.7363; + id=620; + }; + class Item1 + { + dataType="Marker"; + position[]={4331.9092,201.42683,2176.9248}; + name="resource_9"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + id=621; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={4326.7163,201.48,2191.615}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=642; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=235; + atlOffset=-0.0032958984; + }; + class Item8 + { + dataType="Layer"; + name="resource_6"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={6811.8979,153.06342,714.12256}; + name="reso_6_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=270.08914; + id=579; + atlOffset=0.60462952; + }; + class Item1 + { + dataType="Marker"; + position[]={6860.3652,151.85785,727.08716}; + name="resource_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=68.264091; + b=53.552025; + id=580; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={6811.96,152.43385,713.84418}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=631; + type="ModuleHideTerrainObjects_F"; + atlOffset=-1.5258789e-005; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=270; + atlOffset=1.2405701; + }; + class Item9 + { + dataType="Layer"; + name="resource_10"; + class Entities + { + items=5; + class Item0 + { + dataType="Marker"; + position[]={7832.1812,294.452,3578.5129}; + name="resource_10"; + markerType="ELLIPSE"; + type="rectangle"; + colorName="ColorOrange"; + a=100; + b=100; + id=2181; + atlOffset=1.0078735; + }; + class Item1 + { + dataType="Logic"; + class PositionInfo + { + position[]={7828.2773,293.91061,3566.6521}; + angles[]={0.079832405,0,0.010012784}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=2182; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item2 + { + dataType="Marker"; + position[]={7828.4136,293.91571,3566.6052}; + name="reso_10_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=269.73599; + id=2180; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={7813.3052,294.37576,3561.0889}; + angles[]={0.064910568,1.2693213,0.0049914722}; + }; + areaSize[]={5,-1,5}; + areaIsRectangle=1; + flags=1; + id=2183; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Marker"; + position[]={7813.3271,294.3645,3561.2637}; + name="reso_10_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=342.58572; + id=2184; + }; + }; + id=2179; + atlOffset=0.095184326; + }; + }; + id=206; + atlOffset=-55.49704; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={4942.5884,273.52625,6740.6392}; + angles[]={0.024601143,3.9348843,6.2653179}; + }; + side="Empty"; + class Attributes + { + }; + id=2325; + type="Land_HelipadEmpty_F"; + }; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + }; + class Connections + { + class LinkIDProvider + { + nextID=39; + }; + class Links + { + items=39; + class Item0 + { + linkID=0; + item0=534; + item1=535; + class CustomData + { + type="Sync"; + }; + }; + class Item1 + { + linkID=1; + item0=479; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item2 + { + linkID=2; + item0=480; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item3 + { + linkID=3; + item0=481; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item4 + { + linkID=4; + item0=482; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item5 + { + linkID=5; + item0=483; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item6 + { + linkID=6; + item0=484; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item7 + { + linkID=7; + item0=485; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item8 + { + linkID=8; + item0=486; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item9 + { + linkID=9; + item0=487; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item10 + { + linkID=10; + item0=488; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item11 + { + linkID=11; + item0=489; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item12 + { + linkID=12; + item0=490; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item13 + { + linkID=13; + item0=491; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item14 + { + linkID=14; + item0=492; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item15 + { + linkID=15; + item0=493; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item16 + { + linkID=16; + item0=494; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item17 + { + linkID=17; + item0=495; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item18 + { + linkID=18; + item0=496; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item19 + { + linkID=19; + item0=497; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item20 + { + linkID=20; + item0=498; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item21 + { + linkID=21; + item0=499; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item22 + { + linkID=22; + item0=500; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item23 + { + linkID=23; + item0=501; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item24 + { + linkID=24; + item0=502; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item25 + { + linkID=25; + item0=503; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item26 + { + linkID=26; + item0=504; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item27 + { + linkID=27; + item0=505; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item28 + { + linkID=28; + item0=506; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item29 + { + linkID=29; + item0=507; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item30 + { + linkID=30; + item0=508; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item31 + { + linkID=31; + item0=509; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item32 + { + linkID=32; + item0=510; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item33 + { + linkID=33; + item0=511; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item34 + { + linkID=34; + item0=512; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item35 + { + linkID=35; + item0=513; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item36 + { + linkID=36; + item0=514; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item37 + { + linkID=37; + item0=515; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + class Item38 + { + linkID=38; + item0=516; + item1=534; + class CustomData + { + type="Sync"; + }; + }; + }; + }; +}; diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/navGrid.sqf b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/navGrid.sqf new file mode 100644 index 0000000000..c739c90fd2 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/navGrid.sqf @@ -0,0 +1,787 @@ +/*{"systemTimeUCT_G":"2024-08-11 11:40:32","worldName":"SPE_Mortain","StreetArtist_Config":{"_flatMaxDrift":-1,"_juncMergeDistance":-1,"_humanEdited": true}}*/ +navGrid = [ +[[7228.65,685.34,0],0,true,[[2120,1,19.6594],[2396,1,206.901],[49,1,7.68353]]],[[1494.26,7618.17,0],0,false,[[2343,0,262.116],[1939,0,104.914]]],[[1197.5,3864.49,0],0,false,[[396,0,114.362],[3032,0,211.394]]],[[1819.21,722.402,0],0,false,[[3454,0,177.121],[819,0,41.3448]]],[[7598.1,3545.73,0],0,true,[[1090,0,299.52],[3786,0,11.5359],[3188,0,12.7607]]], +[[8079.13,6430.56,0],0,false,[[3517,1,181.405],[797,1,26.4079]]],[[6474.28,2065.17,0],0,false,[[322,0,16.9318],[3700,0,23.6219]]],[[6446.29,606.321,0],0,false,[[1902,0,17.4694],[343,0,298.409]]],[[5253.9,1810.2,0],0,true,[[1266,1,16.6281],[1694,1,16.4671],[871,1,10.2463]]],[[368.267,4412.01,0],0,false,[[1559,0,23.7047],[2703,0,126.756]]], +[[2827.58,1222.01,0],0,true,[[3357,2,17.0777],[3595,1,28.4684],[23,1,7.45969],[2929,2,15.0193]]],[[3976.3,4605.58,0],0,false,[[285,0,22.4805]]],[[6496.79,4117.69,0],0,false,[[2589,0,110.083],[555,0,205.659]]],[[2919.85,6970.19,0],0,false,[[984,0,62.7316],[2594,0,19.5951]]],[[257.916,1146.51,0],0,true,[[2528,0,23.6365],[507,0,7.19892],[1505,0,22.3362],[2694,0,20.6168]]], +[[6399.58,4299.09,0],0,false,[[487,0,74.4112],[3674,0,134.153]]],[[4327.59,8120.03,0],0,false,[[3269,0,15.6398],[615,0,37.2691]]],[[2368.63,7344.26,0],0,false,[[3189,1,80.9942],[2027,1,187.948]]],[[4863.14,4468.31,0],0,true,[[2946,0,9.4074],[3501,0,116.241],[736,0,5.64812]]],[[6124.23,891.441,0],0,true,[[760,0,5.74418],[1777,0,6.24476],[829,0,1.35216],[647,0,5.06464]]], +[[7656.31,6631.77,0],0,true,[[3713,1,100.184],[1677,1,15.1769],[2609,1,21.6046]]],[[440.688,2522.97,0],0,true,[[1046,0,28.7036],[3161,0,157.929],[1309,0,10.6839]]],[[5448.83,6233.47,0],0,true,[[2371,0,11.4803],[3850,0,48.6369],[2438,0,4.92065]]],[[2828.41,1214.6,0],0,true,[[160,1,26.364],[3357,2,14.4334],[2929,2,17.8304],[10,1,7.45969]]],[[4060.87,5349.35,0],0,false,[[201,2,25.0073],[3572,2,18.995]]], +[[7268.79,4188.4,0],0,false,[[3278,0,20.633]]],[[7850.1,6645.1,0],0,true,[[327,1,28.866],[3795,1,119.095],[1377,1,11.9302]]],[[4059.27,5329.72,0],0,false,[[1465,0,7.14471],[2502,0,12.0974]]],[[2408.56,7178.25,0],0,false,[[1167,0,26.0279],[2222,0,113.499]]],[[4946.98,7790.06,0],0,false,[[3393,0,284.445]]], +[[6946.06,839.681,0],0,true,[[3178,0,10.7855],[2417,0,143.85],[1906,1,5.00688]]],[[1753.93,7358.43,0],0,false,[[1088,0,78.3449]]],[[8041.55,5332.21,0],0,false,[[510,0,13.0216],[3534,0,38.467]]],[[7089.97,5532.93,0],0,false,[[388,1,22.4147],[2981,1,76.6382],[1520,0,7.02587]]],[[3045.06,2524.38,0],0,false,[[3747,0,21.5655],[1779,0,44.8489]]], +[[1227.57,7972.66,0],0,true,[[2662,0,31.1858],[2878,1,4.06542],[148,1,11.3471]]],[[5284.07,7468.38,0],0,true,[[3131,2,18.9715],[773,1,10.5275],[3437,2,16.726]]],[[7291.56,2592.14,0],0,true,[[1846,0,356.577],[2185,0,20.581],[3355,0,9.25083]]],[[7200.31,929.592,0],0,true,[[2238,0,272.297],[692,0,13.9454],[2129,0,10.8611]]],[[3122.54,1939.93,0],0,false,[[3211,0,124.66],[2992,0,185.838]]], +[[7990.52,4495.03,0],0,false,[[1816,0,31.4582],[324,0,230.507]]],[[1300.29,3079.29,0],0,true,[[3463,1,11.3837],[1702,0,70.5292],[3814,1,16.4101]]],[[2751.14,1176,0],0,false,[[3357,2,72.3708],[2361,2,256.693]]],[[346.53,4480.4,0],0,true,[[2096,0,13.8099],[1575,0,0.753956],[1562,0,9.39062],[1701,0,8.82812]]],[[6182.9,6062,0],0,true,[[1003,0,24.22],[2491,0,117.519],[985,0,114.012]]], +[[4988.62,4658.42,0],0,false,[[2117,1,44.5095],[3011,1,252.929]]],[[7635.17,6763.2,0],0,true,[[208,1,25.8343],[3469,1,244.684],[2332,1,12.908]]],[[5134.44,5300.3,0],0,false,[[892,0,309.972],[3381,0,78.4717]]],[[362.378,4734.93,0],0,true,[[1343,0,16.0301],[1183,0,16.0448],[334,0,0.749243],[2431,0,16.7149]]],[[7221.04,686.405,0],0,true,[[2120,1,12.8111],[2720,1,180.676],[0,1,7.68353]]], +[[2103.64,7457.8,0],0,false,[[3410,0,43.7215]]],[[2031.79,7291.12,0],0,true,[[3309,1,14.4649],[2443,0,179.177],[1800,1,6.24807]]],[[2825.92,1795.71,0],0,true,[[2638,1,94.5806],[2380,1,11.6453],[643,1,11.5374]]],[[7529.21,6486.15,0],0,true,[[1467,1,14.5202],[3442,1,30.4975],[921,1,6.31036]]],[[781.691,3061.63,0],0,false,[[211,0,86.1516],[3209,0,101.313]]], +[[2593.27,4050.91,0],0,false,[[3545,0,129.579],[1259,0,229.233]]],[[4576.65,2272,0],0,false,[[2274,2,21.4422],[1102,2,25.6217]]],[[4289.42,4132.51,0],0,false,[[751,0,106.985],[2660,0,23.4121]]],[[7618.49,951.379,0],0,false,[[2264,0,202.545],[129,0,234.21]]],[[5461.56,6229.11,0],0,false,[[2438,0,9.5471],[1312,0,104.002]]], +[[863.48,8169.37,0],0,true,[[3368,1,15.5213],[1323,0,70.3406],[2465,1,6.85465]]],[[4390.37,3045.21,0],0,true,[[1657,1,25.8413],[2480,1,15.3917],[3570,1,40.8796]]],[[8026,7664.54,0],0,false,[[1503,0,31.8642],[1365,0,26.4119]]],[[3410.21,4710.36,0],0,true,[[1387,0,18.0149],[627,0,225.167],[778,0,16.481]]],[[4168.73,5962.24,0],0,false,[[235,0,76.0775],[2234,2,12.211]]], +[[6026.45,6235.81,0],0,true,[[3758,0,252.12],[426,0,18.5576],[478,0,302.641]]],[[3842.11,5938.03,0],0,true,[[2529,1,29.7888],[3312,1,27.8377],[2436,1,10.8659],[713,1,6.35427]]],[[3588.5,1748.8,0],0,false,[[3261,0,159.773],[2063,0,119.696]]],[[1293.51,5580.64,0],0,true,[[576,0,83.9581],[3889,0,83.8951],[3873,0,59.6403]]],[[4883.87,793.329,0],0,true,[[1175,1,26.9993],[562,1,223.711],[2379,1,14.3276]]], +[[5579.51,2214.18,0],0,true,[[2515,1,60.3396],[273,1,22.7255],[1130,1,10.7347]]],[[2524.69,82.2092,0],0,true,[[3184,0,3.36856],[3083,0,11.2975],[1184,0,0.566938]]],[[2160,5307.06,0],0,false,[[719,1,24.0119],[3439,1,106.459]]],[[294.381,7335.27,0],0,true,[[2883,0,10.0856],[1871,0,21.8825],[743,0,8.19635]]],[[205.995,7525,0],0,false,[[659,0,84.4515],[2841,0,143.83]]], +[[5829.15,1474.26,0],0,true,[[940,1,287.298],[1966,1,19.9982],[2356,1,10.1485]]],[[7045.56,4195.41,0],0,false,[[2538,0,32.209],[1784,0,98.5033]]],[[842.202,3473.54,0],0,true,[[1509,1,27.2557],[2557,1,315.133],[2397,1,11.5324]]],[[3153.5,1520.26,0],0,false,[[319,0,234.044],[2800,0,106.777]]],[[450.565,2395.48,0],0,true,[[613,0,20.3555],[2059,0,14.5219],[635,0,12.1687]]], +[[7007.99,307.175,0],0,false,[[3343,0,83.3948]]],[[1453.71,3345.08,0],0,false,[[435,0,13.9784],[1462,0,20.0056]]],[[7750.64,5846.26,0],0,false,[[154,0,54.9387]]],[[960.482,6121.85,0],0,false,[[3802,1,80.9111],[3115,1,77.1292]]],[[3029.63,2528.69,0],0,false,[[3747,0,26.7047],[3003,0,28.9409]]], +[[3666.54,5125.46,0],0,true,[[106,1,121.65],[2739,1,12.9827],[520,1,10.716]]],[[7556.82,1142.27,0],0,true,[[1805,0,6.51776],[2496,0,5.83186],[2264,0,19.7446]]],[[3868.92,1114.61,0],0,true,[[1154,0,109.565],[2316,0,7.34597],[2714,0,5.65605]]],[[2583.8,6826.58,0],0,true,[[3763,1,26.9736],[2601,1,261.611],[2754,1,16.1577]]],[[3114.85,7937.73,0],0,false,[[2934,0,261.691],[1811,0,295.447]]], +[[5680.06,4424.44,0],0,true,[[2695,1,47.7081],[3342,1,21.4007],[602,1,9.93665],[726,1,9.70636]]],[[1690.19,3274.33,0],0,false,[[1247,0,77.5173],[968,1,6.01042]]],[[353.641,255.994,0],0,false,[[2476,0,7.59271],[1305,0,24.361]]],[[2575.73,3822.64,0],0,true,[[267,1,33.5518],[3016,1,156.502],[1831,1,16.1729]]],[[5528.5,1217.86,0],0,false,[[1234,1,143.193],[2301,1,35.1364]]], +[[5772.25,2072.65,0],0,false,[[185,0,90.3716]]],[[4174.61,4308.42,0],0,false,[[2473,1,10.1045],[1250,0,115.809]]],[[6969.69,831.31,0],0,true,[[1906,1,26.889],[2103,1,218.809],[3178,1,14.7719]]],[[7253.34,3562.42,0],0,true,[[1854,1,14.5676],[1178,1,94.367],[3762,1,7.80318]]],[[1142.44,4604.34,0],0,false,[[3047,0,73.3327]]], +[[7643.28,4444.35,0],0,true,[[449,1,211.416],[3770,1,28.9702],[3353,1,17.6051]]],[[3265.2,6067.34,0],0,true,[[2884,0,24.9599],[481,0,80.6204],[2702,0,10.5238]]],[[2440.36,380.206,0],0,true,[[860,0,9.90121],[3478,0,49.6217],[1856,1,8.99347]]],[[1524.13,519.592,0],0,true,[[3329,2,32.9882],[2547,2,34.5585],[955,2,17.2575]]],[[5803.65,6707.42,0],0,false,[[1626,0,212.597],[877,0,13.5391]]], +[[2823.76,3641.36,0],0,true,[[3430,1,18.5651],[542,1,64.6528],[3435,1,27.2789],[1360,1,16.3835]]],[[3787.31,5136.39,0],0,true,[[3590,1,15.0859],[85,1,121.65],[2239,1,10.0358]]],[[3504.72,2115.29,0],0,true,[[2563,0,13.2595],[2087,0,57.49],[1332,0,5.53376],[1551,0,20.1389]]],[[3240.4,1441.01,0],0,true,[[2800,0,10.9025],[1460,2,15.2052],[373,2,18.6064]]],[[2835.95,4463.04,0],0,true,[[3225,0,8.86387],[701,0,4.4484],[3535,1,18.957],[3816,1,8.64103]]], +[[2649.21,838.797,0],0,true,[[3610,1,28.0085],[3883,1,150.166],[1660,1,8.41092]]],[[7674.39,2379.25,0],0,true,[[3232,0,14.8682],[2437,0,375.724],[329,0,23.2135]]],[[6907.04,4364.22,0],0,false,[[965,1,26.2428],[3218,1,25.7867]]],[[3338.9,2737.6,0],0,false,[[839,0,67.0338],[3514,0,72.331]]],[[4737.9,6873.1,0],0,false,[[715,1,157.344],[342,1,399.072]]], +[[7590.52,6622.76,0],0,true,[[2628,1,12.546],[386,1,214.436],[412,1,24.8928]]],[[2754.32,3175.95,0],0,true,[[3522,1,24.2793],[389,1,159.349],[1426,1,17.536],[474,1,21.4556]]],[[4552.33,2593.49,0],0,false,[[2645,1,152.402],[1643,1,60.7096]]],[[4558.1,2278.19,0],0,false,[[2274,2,8.43489],[1205,0,4.75891]]],[[1.84561,1263.2,0],0,false,[[3852,0,244.045]]], +[[5500.23,1244.29,0],0,true,[[2245,0,47.7605],[3550,0,12.2582],[427,0,11.2079],[2301,1,8.96368]]],[[4224.66,2903.47,0],0,true,[[2335,1,14.632],[3133,1,77.1485],[3418,1,8.43048]]],[[7022.89,1552.92,0],0,true,[[1576,0,165.829],[979,0,12.0732],[2313,0,19.592]]],[[247.61,7859.39,0],0,false,[[3826,0,254.151],[3629,0,168.677]]],[[3142.21,7616.16,0],0,true,[[1556,1,25.6773],[1461,1,10.3128],[2607,1,15.0312]]], +[[4424.97,4782.96,0],0,true,[[2288,0,26.426],[1649,0,19.2025],[467,0,30.9561]]],[[4784.77,6554.27,0],0,false,[[2686,0,14.7308],[1992,2,8.36389]]],[[2855.86,4563.04,0],0,true,[[3207,1,24.8979],[3816,1,94.1801],[3495,1,8.15871]]],[[2938.25,810.743,0],0,true,[[3245,0,309.435],[310,0,23.3885],[2403,0,14.474]]],[[7713.28,756.782,0],0,false,[[58,0,234.21],[2244,0,81.6593]]], +[[4854.63,4074.99,0],0,false,[[2791,0,31.4126],[3316,0,64.3614]]],[[5996.03,5446.23,0],0,true,[[876,0,45.6053],[476,0,6.15422],[3449,0,12.6937]]],[[4316.02,2926.16,0],0,true,[[738,1,19.1012],[2492,1,18.6325],[221,1,7.62486]]],[[3561.51,1174.36,0],0,true,[[540,0,399.3],[2405,0,29.3218],[1943,0,38.9741]]],[[4861.01,893.769,0],0,false,[[1051,0,376.74],[1349,0,29.392]]], +[[6930.99,1068.2,0],0,true,[[3171,0,132.617],[3699,0,15.0957],[3894,0,15.1452],[1004,0,16.9565]]],[[2434.81,4145.07,0],0,false,[[3017,0,253.896],[1594,1,14.9112]]],[[4278.95,6211.75,0],0,true,[[2141,0,5.74374],[600,0,38.1994],[1809,0,4.361]]],[[7245.19,3180.8,0],0,false,[[963,0,320.991],[3136,0,123.545]]],[[5538.9,1647.19,0],0,true,[[2365,1,10.4513],[934,0,29.3079],[3853,1,22.6927]]], +[[3256.16,3235.83,0],0,false,[[3749,1,24.3509],[1523,1,64.0245]]],[[921.738,8143.77,0],0,false,[[2465,1,58.2515],[1737,1,125.817]]],[[4101.79,5771.86,0],0,false,[[631,0,20.822],[834,0,24.7815]]],[[6723.21,2141.18,0],0,false,[[3597,0,246.588],[1018,0,92.0227]]],[[6486.28,2656.29,0],0,true,[[2728,1,11.0204],[3861,0,232.229],[2839,1,16.4599]]], +[[629.311,37.339,0],0,true,[[3354,2,19.5067],[568,2,22.509],[3646,2,7.72425]]],[[4200.17,4035.32,0.000244141],0,false,[[3023,0,19.5568],[1082,0,16.0831]]],[[555.446,8054.23,0],0,false,[[3906,0,99.8781],[505,0,21.4555]]],[[1232.83,7982.7,0],0,true,[[1700,1,21.4677],[2878,1,14.9011],[35,1,11.3471]]],[[3230.31,7233.5,0],0,true,[[2977,0,27.176],[2168,0,24.5143],[163,0,50.7401]]], +[[5817.15,632.652,0],0,true,[[2066,1,23.2959],[3910,1,18.8769],[151,1,8.0757]]],[[5817.94,640.687,0],0,false,[[1112,0,8.87456],[150,1,8.0757]]],[[4141.63,1661.46,0],0,true,[[3788,0,260.259],[3038,0,11.6768],[3400,0,10.879]]],[[7426.38,1370.05,0],0,false,[[2122,0,241.962],[770,0,216.864]]],[[7781.71,5802.05,0],0,true,[[314,0,6.48068],[82,0,54.9387],[3004,0,3.34025]]], +[[8175.77,5386.54,0],0,true,[[3703,0,9.63846],[2830,0,5.05942],[874,0,7.03875]]],[[6516.37,1087.67,0],0,true,[[1346,1,107.031],[2721,1,33.8342],[2336,1,6.88382]]],[[2404.3,289.005,0],0,true,[[679,1,30.9512],[1856,1,90.7418],[3084,1,1.81188]]],[[5833.52,1615.74,0],0,false,[[580,0,56.5127]]],[[4261.27,6045.29,0],0,false,[[2499,0,6.80701],[2271,2,10.3955]]], +[[2822.13,1189.05,0],0,false,[[2879,1,67.8002],[23,1,26.364]]],[[454.279,7393.6,0],0,false,[[331,0,18.3048],[633,0,10.5852]]],[[6509.86,3953.32,0],0,true,[[3120,0,16.0906],[456,0,180.16],[802,0,10.7873]]],[[3271.23,7259.28,0],0,false,[[818,0,102.893],[149,0,50.7401]]],[[2549.98,79.0622,0],0,false,[[3083,0,14.4355],[2110,0,10.5313]]], +[[2220.34,6428.95,0],0,true,[[1454,1,257.051],[2366,1,30.8249],[1211,1,14.3484]]],[[6965.94,2932.12,0],0,true,[[1447,1,216.389],[3557,1,9.08884],[205,1,17.8299]]],[[6058.52,4311.79,-0.663528],0,false,[[2536,2,15.6004],[3490,2,4.349]]],[[3592.82,8028.29,0],0,true,[[1270,1,19.5082],[2043,1,109.381],[2321,1,7.31717]]],[[5868.63,267.841,0],0,true,[[2416,1,24.5911],[3618,1,41.2402],[3315,1,14.6785]]], +[[6347.65,5993.69,0],0,false,[[2491,0,103.869],[2378,0,132.704]]],[[6798.77,7594.17,0],0,false,[[3048,0,7.33626],[3228,0,60.6744]]],[[3355.02,6292.89,0],0,false,[[1867,0,17.8602],[1770,0,4.81311]]],[[7576.34,491.851,0],0,false,[[2585,1,6.81775],[2792,0,120.315]]],[[6465.77,2519.94,0],0,true,[[2506,0,81.8607],[251,1,7.69249],[3546,1,12.8203]]], +[[4532.57,3141.38,0],0,false,[[368,0,39.6638]]],[[946.41,4872.44,0],0,true,[[1196,0,334.878],[289,1,8.3112],[974,1,14.8753]]],[[7945.7,1531.12,0],0,true,[[1056,0,256.597],[3167,0,9.64848],[1227,0,13.0685]]],[[6324.45,5866.91,0],0,true,[[1207,0,49.3773],[359,0,22.0264],[3744,0,63.9759]]],[[4529.2,2315.53,0],0,false,[[3908,2,11.5387],[3653,0,33.9173]]], +[[7002.43,4351.84,0],0,false,[[691,0,25.4105],[993,0,20.8653]]],[[1147,4729.19,0],0,true,[[1768,0,21.0113],[992,0,101.837],[867,0,8.83183],[2364,0,16.8327]]],[[2589.05,4295.93,0],0,true,[[1259,0,16.8207],[526,0,121.799],[3482,0,11.1947]]],[[4792.52,70.2889,0],0,true,[[564,1,7.0236],[629,1,397.722],[3401,1,11.5318]]],[[1303.99,7875.76,0],0,false,[[1939,0,218.439],[3612,0,70.1407]]], +[[5783.26,2103.05,0],0,false,[[3097,0,85.4202],[95,0,90.3716]]],[[4519.84,7875.23,0],0,false,[[3010,0,120.849]]],[[3909.52,4266.18,0],0,false,[[2493,0,148.95],[700,0,250.03]]],[[6785.62,1082.92,0],0,true,[[3620,0,131.988],[3529,0,11.3137],[3171,0,13.7132]]],[[7491.94,2832.46,0],0,true,[[1903,0,25.0531],[2044,0,14.7601],[2049,0,7.69214]]], +[[1716.51,5502.32,0],0,false,[[360,0,46.3986],[468,0,221.918]]],[[7113.23,6790.04,0],0,false,[[1535,0,188.622]]],[[4772.92,5232.8,0],0,true,[[2278,1,21.2037],[608,1,6.83294],[408,1,9.21564]]],[[8086.97,5353.13,0],0,true,[[3534,0,12.102],[2542,0,12.9189],[3499,0,14.3256]]],[[3400.32,2228.06,0],0,false,[[1240,1,10.5529],[2249,0,11.115]]], +[[3129.55,7554.83,0],0,true,[[1979,0,24.9862],[2482,0,15.7844],[547,1,12.9099]]],[[6341.91,6214,0],0,false,[[1036,0,96.5588],[227,0,175.274]]],[[3470.11,1564.48,0],0,true,[[2630,2,30.273],[315,2,29.0993],[1370,2,17.1039]]],[[5111.65,8100.2,0],0,false,[[325,2,8.5666],[3249,0,68.2147]]],[[4864.37,5220.64,0],0,false,[[861,0,47.5758]]], +[[7044.55,4369.96,0],0,true,[[783,1,12.7188],[1008,1,9.2723],[3803,1,14.6271]]],[[4051.96,5372.71,0],0,true,[[3110,2,26.2358],[24,2,25.0073],[1042,2,17.4286],[445,2,12.2129]]],[[2868.99,3172.76,0],0,true,[[3702,1,24.9739],[632,1,24.3468],[1256,1,6.16811],[2490,1,16.2383]]],[[2774.76,3331.44,0],0,false,[[2020,1,107.353],[942,1,30.329]]],[[5259.19,1832.24,0],0,false,[[339,1,124.323],[871,1,23.7846]]], +[[6948.17,2930.84,0],0,true,[[166,1,17.8299],[1263,1,174.182],[3557,1,9.53348]]],[[513.193,7160.32,0],0,true,[[2468,0,10.9431],[666,0,11.0903],[2835,0,11.2039]]],[[1842.64,4904.71,0],0,true,[[3295,0,5.36506],[1132,0,12.4238],[2774,0,9.65222]]],[[7656.9,6749.25,0],0,true,[[859,1,76.5089],[46,1,25.8343],[2332,1,13.3413]]],[[1558.04,5952.13,0],0,true,[[858,1,64.4252],[2039,1,18.9442],[3008,1,8.39431]]], +[[2554.14,1645.91,0],0,false,[[3472,0,330.132],[3476,0,20.397]]],[[752.94,3124.65,0],0,false,[[896,0,193.998],[54,0,86.1516]]],[[7110.29,6093.43,0],0,true,[[2387,0,9.04305],[1075,0,112.43],[929,0,6.22901]]],[[348.419,4428.25,0],0,true,[[253,0,6.1877],[888,0,5.89037],[2469,0,0.751566],[998,0,6.50207]]],[[4299.45,6290.71,0],0,true,[[597,0,11.7333],[2615,0,133.093],[1023,0,7.36189]]], +[[7431.27,2963.7,0],0,true,[[1491,1,29.3078],[930,1,27.6254],[3197,1,17.3765]]],[[5241.52,7682.87,0],0,false,[[2999,2,19.8995],[2065,2,21.3514]]],[[4739.71,3496.69,0],0,false,[[1280,0,15.0479],[539,0,36.7138]]],[[3756.38,988.161,0],0,false,[[705,0,13.5161],[1154,0,60.5253]]],[[6295.61,3346.32,0],0,false,[[707,0,112.457]]], +[[6730.6,7651.34,0],0,false,[[2926,0,87.127],[3000,0,292.284]]],[[4314.48,2918.69,0],0,false,[[132,1,7.62486],[1209,1,33.0255]]],[[3751.87,1133.75,0],0,false,[[3872,1,78.2796],[3148,1,295.011]]],[[7367.88,3236.98,0],0,true,[[1499,1,20.9619],[2209,1,95.5675],[3136,1,16.1111],[1532,1,18.1713]]],[[4332.98,7059.33,0],0,false,[[3157,0,49.8379],[1314,0,46.2046]]], +[[1283.32,7992.33,0],0,false,[[3030,0,30.3059],[3683,0,66.1096]]],[[894.657,1756.21,0],0,false,[[3457,0,21.8847],[1860,0,14.6538]]],[[6208.16,6141.48,0],0,false,[[196,0,175.274],[1003,0,96.2092]]],[[3096.81,2863.98,0],0,true,[[503,0,112.149],[671,0,23.9018],[1540,0,5.40943],[1496,0,10.9946]]],[[4990.74,1660.09,0],0,true,[[2974,1,8.05778],[675,0,52.4354],[321,1,3.71951]]], +[[4668.88,5088.73,0],0,true,[[307,0,118.043],[2777,0,11.3189],[3112,0,14.8935]]],[[3596.07,6665.67,0],0,true,[[484,0,63.7833],[3685,0,13.1093],[3200,0,18.2163]]],[[6659.86,229.913,0],0,true,[[1949,1,20.5949],[1201,1,24.3051],[3870,1,9.9133]]],[[7223.53,895.521,0],0,true,[[3456,0,42.6052],[803,0,17.0399],[536,0,11.3181]]],[[8189.07,6787.31,0],0,false,[[2698,0,274.176]]], +[[4156.48,6036.23,0],0,false,[[64,0,76.0775],[2499,0,108.495]]],[[6049.85,6024.83,0],0,false,[[947,0,254.126],[985,0,45.8453]]],[[8004.25,5835.5,0],0,true,[[1395,1,58.8018],[3869,1,18.1455],[1534,1,8.85324]]],[[4192.71,7491.74,0.000244141],0,false,[[1938,0,12.0388]]],[[3336.39,6367.17,0],0,false,[[3645,0,82.2295],[1867,0,58.8702]]], +[[4571.3,4559.64,0],0,true,[[1233,1,9.00932],[2315,0,16.4504],[665,1,18.8189]]],[[3721.63,3154.62,0],0,true,[[2429,0,24.4454],[2665,0,20.8052],[3205,0,77.3719]]],[[850.703,6055.43,0],0,false,[[764,0,108.182],[3588,0,18.9589]]],[[2835.55,3177.01,0],0,false,[[1345,0,31.8721],[632,1,9.75185]]],[[7787.8,6436.5,0],0,true,[[2409,0,79.5142],[3453,0,73.0535],[3820,0,226.296]]], +[[364.333,4698.88,0],0,true,[[1420,0,24.1893],[2450,0,0.749391],[1705,0,24.856],[3339,0,19.4266]]],[[3687.97,8103.55,0],0,false,[[278,0,102.607],[2043,1,13.0123]]],[[5068.95,4127.33,0],0,false,[[3022,1,26.0398],[543,1,29.1897],[3801,0,5.44906]]],[[519.94,4413.39,0],0,true,[[2703,0,25.0745],[1327,0,53.7751],[2070,0,12.2041]]],[[3222.34,7146.77,0],0,true,[[1275,1,34.1931],[504,1,372.587],[2368,1,15.1648]]], +[[1737.27,6749.25,0],0,false,[[3056,0,140.893],[2733,0,182.831]]],[[6467.72,2512.51,0],0,true,[[3546,1,19.72],[1553,1,18.6112],[174,1,7.69249]]],[[4449.51,4792.13,0],0,false,[[3857,1,19.803],[3670,1,26.6571]]],[[351.257,4422.76,0],0,true,[[3314,0,6.58581],[2469,0,5.77615],[586,0,0.750784],[213,0,6.1877],[926,0,6.16016]]],[[3375.83,6698.45,0],0,false,[[3662,1,28.2764],[3318,1,13.781]]], +[[1785.76,4655.79,0],0,false,[[2074,0,30.8979],[1473,0,77.4912]]],[[4379.21,2324.61,0],0,true,[[1661,0,25.9673],[1131,0,140.897],[3382,0,9.5639]]],[[2778.19,1969.45,0],0,true,[[3829,1,27.6122],[3193,1,12.7652],[3438,1,27.522],[2237,1,10.0733]]],[[4460.29,4701.63,0],0,true,[[1423,1,18.4756],[2257,1,13.216],[2648,1,2.69367],[2795,1,4.25241]]],[[7148.39,4384.03,0],0,true,[[473,0,276.402],[2803,1,14.3374],[1239,1,11.2132]]], +[[5258.01,7361.81,0],0,true,[[3515,2,30.0399],[3153,2,101.117],[1242,2,14.4311]]],[[5078.04,8185.9,0],0,false,[[1457,2,80.5051]]],[[4484.71,3115.86,0],0,false,[[3119,1,16.8754],[1392,2,16.6824]]],[[240.547,4160.84,0],0,false,[[2326,0,220.31],[3025,0,140.289]]],[[7798.83,6965.04,0],0,false,[[2332,0,258.343],[1052,0,262.532]]], +[[3056.81,2917.82,0],0,false,[[671,0,43.5141],[2566,0,57.8783]]],[[4246.75,6938.58,0],0,true,[[1722,0,59.2319],[2081,0,7.10717],[1156,0,7.86288]]],[[2563.88,3854.02,0],0,true,[[2137,1,33.1052],[93,1,33.5518],[3765,1,7.56252],[1831,1,17.9011]]],[[255.701,4601.1,0],0,false,[[1720,0,114.626],[350,0,109.427]]],[[5574.97,6930.34,0],0,false,[[693,0,149.596],[3085,0,26.0116]]], +[[2252.74,4394.52,0],0,false,[[514,1,153.715],[2311,1,61.1402]]],[[2040.52,7300.7,0],0,true,[[2399,1,144.894],[1800,1,6.72169],[3666,1,14.1322]]],[[4585.19,2326.26,0],0,true,[[3375,1,7.89893],[3223,1,18.3688],[2014,1,10.6656]]],[[5557.06,2217.7,0],0,true,[[1130,1,12.8874],[1546,1,87.1067],[70,1,22.7255]]],[[4484.49,8006.5,0],0,true,[[3010,0,15.4706],[1419,0,13.0685],[1935,0,10.3096]]], +[[2866.97,4183.86,0],0,true,[[3237,1,10.6828],[1710,1,25.8113],[1452,1,24.4985]]],[[4364.7,6139.42,0],0,true,[[3664,2,181.068],[1542,2,21.4425],[1074,2,13.5726]]],[[1858.21,4844.65,0],0,false,[[1132,0,50.4212]]],[[3748.91,8022.6,0],0,false,[[246,0,102.607],[1274,0,221.498]]],[[78.4704,5092.22,0],0,true,[[2053,0,11.2261],[1605,1,11.7146],[3901,1,6.9214]]], +[[6787.87,616.873,0],0,false,[[2417,0,196.527],[791,0,105.75]]],[[5360.15,7673.37,0],0,false,[[3089,1,144.805],[827,1,12.8841]]],[[6260.41,5352.75,0],0,false,[[2169,0,148.686],[2233,1,4.63491]]],[[2842.09,3542.55,0],0,true,[[3907,0,17.3278],[2654,0,18.2919],[2213,1,10.5939],[2540,1,20.9716]]],[[3364.77,228.306,0],0,false,[[1103,0,114.906],[1968,1,2.2678]]], +[[3989.38,4587.4,0],0,false,[[2976,0,20.3693],[11,0,22.4805]]],[[4513.35,3190.73,0],0,true,[[3542,2,28.2748],[2484,2,31.4779],[3289,2,4.50362],[625,2,9.98458]]],[[4873.53,562.533,0],0,true,[[562,1,7.94494],[1526,0,106.692],[3109,1,5.9708]]],[[1184.3,6377.7,0],0,false,[[3096,1,175.37],[3802,1,275.664]]],[[954.08,4869.25,0],0,true,[[2773,1,174.646],[974,1,22.8019],[176,1,8.3112]]], +[[521.008,3476.33,0],0,true,[[357,1,12.2153],[1422,0,235.455],[1281,0,6.89429],[2557,1,7.43813]]],[[4201.52,3006.3,0],0,false,[[306,0,57.5325]]],[[2790.05,6129.7,0],0,true,[[2430,0,61.5085],[3288,0,14.0387],[1585,0,5.8529]]],[[442.232,7183.04,0],0,true,[[1512,0,13.3051],[753,0,12.2988],[2895,0,12.682]]],[[3561.1,5399.6,0],0,true,[[2783,0,158.76],[3095,0,26.225],[1188,0,14.3094]]], +[[2663.01,1960.1,0],0,false,[[1791,0,50.4757],[3094,1,8.17012]]],[[6463.06,3633.69,0],0,false,[[1164,0,117.917]]],[[5504.52,1251.7,0],0,true,[[427,0,8.06132],[1128,0,6.50441],[3550,0,6.21284],[2301,1,6.41889]]],[[505.743,5498.65,0],0,false,[[1797,0,49.4985]]],[[7459.9,555.242,0],0,false,[[2396,1,58.4939],[3718,1,117.121]]], +[[537.998,8167.65,0],0,true,[[3186,1,69.621],[3690,1,18.6553],[3766,1,22.7145],[3906,1,19.2739]]],[[1184.46,2138.89,0],0,false,[[1243,1,169.044],[1645,1,42.4227]]],[[5291.81,39.8324,0],0,false,[[629,1,109.58],[3466,1,19.646]]],[[3230.42,7164.15,0],0,true,[[2368,0,9.27839],[893,0,15.2478],[459,0,5.03126]]],[[3406.91,335.437,0],0,false,[[1290,1,87.4252],[3386,1,252.244]]], +[[1357.79,7603.81,0],0,false,[[2062,1,170.439],[3433,1,135.911]]],[[4249.66,2978.64,0],0,false,[[3133,1,5.5401],[291,0,57.5325]]],[[4607.71,5188.52,0],0,false,[[1157,1,2.64503],[230,0,118.043]]],[[2851.1,1235.24,0],0,true,[[2929,2,12.8776],[3069,1,25.5689],[3616,2,21.0674]]],[[2902.27,4236.48,0],0,false,[[1847,0,113.58],[3378,0,49.7467]]], +[[2944.92,833.123,0],0,true,[[128,0,23.3885],[3402,0,101.356],[2403,0,16.6234]]],[[838.037,5562.18,0],0,false,[[1145,0,230.929],[2140,0,227.129]]],[[1703.27,4466.47,0],0,false,[[1658,0,107.37],[519,0,145.055]]],[[2928.24,4394.12,0],0,true,[[2015,0,7.26494],[3141,0,18.8123],[1893,0,7.43479]]],[[7788.18,5801.64,0],0,true,[[3009,0,132.771],[154,0,6.48068],[3004,0,4.44249]]], +[[3444.31,1551.02,0],0,false,[[197,2,29.0993],[857,2,31.0997]]],[[5505.15,1272.03,0],0,true,[[699,0,6.16156],[2852,0,8.08009],[1717,0,13.7505]]],[[4744.83,2390.73,0],0,false,[[3156,1,198.581],[1718,1,137.53]]],[[2112.73,2511.05,0],0,false,[[1866,0,289.628],[758,0,263.079]]],[[2947.73,1619.4,0],0,true,[[1434,0,9.31901],[78,0,234.044],[1359,1,11.4536]]], +[[3007.03,1315.59,0],0,false,[[1021,2,24.2847],[3616,2,154.642]]],[[4994.45,1660.32,0],0,true,[[567,1,205.923],[2974,1,9.09653],[229,1,3.71951]]],[[6459.29,2057.38,0],0,true,[[3707,0,8.90612],[6,0,16.9318],[1501,1,9.26062]]],[[1488.75,822.295,0],0,false,[[1904,0,292.22],[1442,0,366.194]]],[[7852.25,4310.68,0],0,false,[[40,0,230.507],[2199,0,169.278]]], +[[5109.88,8091.82,0],0,true,[[1457,2,18.8751],[1845,2,147.126],[198,2,8.5666]]],[[2976.22,4337.75,0],0,true,[[3804,0,48.0578],[682,0,27.8826],[3365,0,17.1447]]],[[7872.65,6627.17,0],0,true,[[2408,1,115.384],[26,1,28.866],[1377,1,17.5873]]],[[4223.97,2880.86,0],0,true,[[2965,1,20.8884],[2335,1,7.98613],[1029,1,5.36129]]],[[7652.56,2387.13,0],0,true,[[1619,0,158.328],[3232,0,9.61832],[111,0,23.2135]]], +[[3771.41,5935.88,0],0,false,[[1865,0,39.0396],[2142,0,97.2133]]],[[447.229,7376.72,0],0,false,[[2855,0,79.7045],[161,0,18.3048]]],[[7333.48,800.473,0],0,true,[[2796,0,13.7734],[2571,0,230.233],[1337,0,16.9263]]],[[2574.03,3181.14,0],0,false,[[389,1,21.2581],[2131,1,20.0469]]],[[362.043,4734.26,0],0,true,[[1343,0,15.3922],[48,0,0.749243],[3339,0,16.0301],[1183,0,16.7144]]], +[[4040.08,4091.94,0],0,false,[[3337,1,8.85074],[714,1,36.236]]],[[6859.68,6511.52,0],0,true,[[2705,1,29.084],[3661,1,141.948],[1527,1,12.7592]]],[[4536.24,6525.6,0],0,true,[[733,0,194.232],[1933,0,8.5985],[2457,0,4.24893]]],[[6871,3780.96,0],0,true,[[1055,0,14.8485],[2844,0,70.1235],[2256,0,11.2723]]],[[5350.18,1912.33,0],0,false,[[2920,1,189.788],[204,1,124.323]]], +[[3381.06,2629.15,0],0,false,[[3695,0,302.398],[1249,0,27.8644]]],[[3532.24,6683.08,0],0,false,[[2580,1,55.7419],[922,1,11.9582]]],[[4360.79,6997.72,0],0,true,[[114,1,399.072],[466,1,16.5399],[2003,1,8.84496]]],[[6532.7,889.653,0],0,false,[[7,0,298.409],[3736,0,60.5586]]],[[580.993,12.5641,0],0,true,[[568,2,31.7966],[1384,2,21.2246],[1230,2,16.6555]]], +[[1781.4,7167.58,0],0,false,[[2215,1,4.30925],[761,0,38.0302]]],[[1514.67,2446.22,0],0,false,[[2649,0,324.292],[1388,0,182.506]]],[[2935.72,3320.71,0],0,true,[[347,0,0],[883,0,22.628],[883,0,22.628],[2440,0,11.5292],[2440,0,11.5292]]],[[2639.03,3571.15,0],0,false,[[2021,0,30.6158],[3722,0,398.881]]],[[6213.05,1257.5,0],0,true,[[3613,1,105.296],[1346,1,240.688],[2283,1,4.51213]]], +[[229.9,4506.28,0],0,false,[[268,0,109.427]]],[[3479.05,1582.47,0],0,true,[[2063,0,140.165],[1370,0,11.8977],[2630,2,18.343]]],[[1999.85,3618.66,0],0,true,[[1134,0,61.4924],[2633,0,4.35298],[1260,0,9.52516]]],[[887.953,6076.69,0],0,true,[[3115,1,8.61651],[2198,1,7.77893],[2743,1,1.82559],[3510,1,14.1273],[1985,1,14.8787]]],[[1264.12,3529.73,0],0,false,[[2444,0,132.875],[910,0,85.895]]], +[[2573.61,167.533,0],0,true,[[1084,0,25.1066],[1174,0,22.4208],[1962,0,46.7971]]],[[5012.53,4117.42,0],0,false,[[543,1,28.0975],[2669,1,27.8031]]],[[509.038,3473.9,0],0,true,[[290,1,12.2153],[2668,1,139.841],[2557,1,18.9918],[1281,1,10.8053]]],[[200.765,368.2,0],0,true,[[1105,0,182.161],[754,0,33.9001],[1065,0,51.5716]]],[[6335.67,5848,0],0,false,[[178,0,22.0264],[3696,0,247.124]]], +[[1725.35,5471.02,0],0,false,[[190,0,46.3986],[3548,0,327.133]]],[[2851.86,4285.41,0],0,false,[[2093,0,46.3933],[853,0,6.10053]]],[[2561.13,3178.38,0],0,false,[[2131,1,8.46909],[594,0,19.8656]]],[[4079.86,3474.04,0],0,true,[[2167,1,15.135],[1900,1,9.27499],[2402,1,17.0507]]],[[3489.59,3918.58,0],0,false,[[1390,0,124.604],[1085,0,170.982]]], +[[508.007,4679.67,0],0,false,[[2896,0,46.8522],[2367,0,169.018]]],[[4139.04,3978.76,0],0,false,[[2898,2,125.762],[663,0,23.3679]]],[[1993.94,5734.78,0],0,true,[[1861,1,192.77],[3493,1,27.0845],[2915,1,10.4783]]],[[4494.13,3142.85,0],0,true,[[175,0,39.6638],[2913,0,13.0564],[1392,2,12.7457]]],[[4187.04,3948.83,0],0,false,[[3528,0,27.643],[663,0,33.2567],[1790,0,16.3092]]], +[[7707.75,6409.21,-6.10352e-005],0,false,[[870,0,12.2618],[2640,0,16.015]]],[[3756.92,1726.33,0],0,false,[[2877,0,122.964],[3780,1,11.6496]]],[[6456.85,5200.86,0],0,true,[[2960,1,26.9356],[1925,1,392.184],[3247,1,8.74613]]],[[3256.51,1450.3,0],0,true,[[857,2,182.232],[1460,2,33.8055],[108,2,18.6064]]],[[2719.9,2536.29,0],0,true,[[3313,1,229.38],[1277,1,25.0484],[1100,1,1.69449],[3679,1,18.255]]], +[[4099.94,6786.85,0],0,false,[[2642,0,198.453],[1722,0,188.939]]],[[2663.06,3607.43,0],0,false,[[1254,1,48.8729],[2247,1,18.6803]]],[[3242,5590.86,0],0,false,[[578,0,48.9932]]],[[225.169,6437.74,0],0,true,[[2395,0,16.7195],[2005,0,322.493],[2191,0,25.2318]]],[[602.034,4425.04,0],0,false,[[2931,0,18.5065],[2174,0,84.6568]]], +[[1316.35,4291.36,0],0,true,[[2971,0,46.2649],[3580,0,16.4863],[2661,0,10.8347]]],[[1957.96,763.237,0],0,true,[[2710,0,93.5765],[2584,0,11.3101],[3111,2,17.3977]]],[[7647.86,464.545,0],0,true,[[1041,0,197.983],[2713,1,13.1092],[2250,1,1.17942],[511,1,7.7265],[2713,0,13.0428]]],[[5528.53,4340.87,0],0,true,[[1017,1,25.7515],[628,1,13.649],[2489,1,19.4899],[3568,1,12.8785]]],[[5442.86,7919.47,0],0,false,[[3210,1,11.554],[3190,0,49.372]]], +[[1662.56,5904.6,0],0,false,[[1124,1,62.9292],[1665,1,41.0851]]],[[7376.93,6607.23,0],0,false,[[115,1,214.436],[1027,1,330.939]]],[[3548.45,2317.13,0],0,true,[[1146,1,14.3331],[3719,1,77.0376],[2384,1,3.50225],[3731,1,8.02636]]],[[7067.93,5529.1,0],0,true,[[881,1,202.692],[33,1,22.4147],[1742,1,7.39676]]],[[2595.23,3179.72,0],0,false,[[116,1,159.349],[333,1,21.2581]]], +[[6665.51,477.894,0],0,false,[[791,0,113.642],[637,0,113.029]]],[[5011.61,7014.91,0],0,false,[[868,0,135.379]]],[[324.294,4828.46,0],0,true,[[3489,0,7.39679],[2704,0,47.7457],[3656,0,4.1319]]],[[2362.4,202.488,0],0,true,[[1814,1,265.633],[2982,1,10.6965],[1883,1,19.1561]]],[[2799.04,461.617,0],0,true,[[515,0,10.0487],[2211,0,14.8379],[3117,0,11.4251]]], +[[3281.44,2348.24,0],0,false,[[2545,0,148.598],[1013,0,23.9629]]],[[1260.09,3914.91,0],0,false,[[3105,0,59.5682],[2,0,114.362]]],[[7973.77,259.471,0],0,false,[[2486,1,376.227],[1455,1,45.4236]]],[[6700.07,3173.99,0],0,false,[[3481,0,264.338],[741,0,167.85]]],[[7483.16,3180.17,0],0,false,[[2355,0,57.7703]]], +[[4432.78,6305.85,0],0,true,[[2615,0,6.77024],[733,0,49.5118],[1248,0,3.73491]]],[[3191.92,7231.92,0],0,false,[[1574,1,44.6777],[1278,1,25.0097]]],[[4279.71,1952.68,0],0,false,[[1978,2,72.6819],[1361,2,29.8194]]],[[5292.87,5203.1,0],0,false,[[1394,1,174.494],[1634,1,20.0218]]],[[4409.79,6083.36,0],0,true,[[3150,0,94.8218],[2034,0,5.97539],[1098,0,7.35234]]], +[[2283.59,4329.29,0],0,true,[[1975,1,16.3001],[616,0,6.73882],[2311,1,11.543]]],[[1770.14,7313.59,0],0,true,[[1088,0,43.7998],[3154,0,88.2058],[416,0,26.4006]]],[[1563.71,1196.2,0],0,false,[[2854,1,19.1672],[849,1,111.761]]],[[4782.02,5234.16,0],0,true,[[192,1,9.21564],[3271,1,14.7726],[608,1,4.91972]]],[[2992.15,1099.55,0],0,false,[[1415,0,13.3959],[3081,0,19.4689]]], +[[4491.19,4655.91,0],0,false,[[1480,1,30.9835],[1959,2,8.1626]]],[[5812.57,4648.93,0],0,false,[[2521,1,28.4515],[2281,1,112.037]]],[[7615.38,6623.58,0],0,true,[[2609,1,20.5094],[2628,1,13.4905],[115,1,24.8928]]],[[2898.75,3494.26,0],0,false,[[2654,0,56.6898],[2987,0,121.877]]],[[3993.79,4442.53,0],0,true,[[3640,0,31.8039],[2155,0,41.3971],[1443,0,68.5479]]], +[[7667.06,7885.71,0],0,true,[[1946,0,95.2751],[1035,0,40.1772],[662,1,14.5642],[1608,1,9.65774]]],[[1749.41,7328.44,0],0,true,[[406,0,26.4006],[2343,0,228.255]]],[[5323.18,2232,0],0,false,[[1120,1,123.735],[2780,1,308.275]]],[[6743.79,1749.76,0],0,true,[[436,0,251.033],[891,0,27.501],[3191,0,15.5804]]],[[8002.95,4534.54,0],0,true,[[1299,1,11.3531],[1816,0,10.5965],[2826,1,14.2792]]], +[[1527.27,2132.99,0],0,true,[[1565,0,333.679],[3088,0,23.0328],[1941,0,12.7857]]],[[5498.54,1757.79,0],0,false,[[934,0,102.944]]],[[7842.58,753.226,0],0,true,[[1767,0,24.8557],[448,0,26.8916],[3877,0,10.9504],[601,0,4.32031]]],[[5519.82,4346.27,0],0,false,[[3568,1,9.34378],[1315,1,26.0996]]],[[8013.73,4866.3,0],0,false,[[3062,0,138.237],[2593,0,113.749]]], +[[8103.08,2193.61,0],0,true,[[2437,0,97.1507],[3168,0,15.6488],[1606,0,28.9777]]],[[6041.03,6224.35,0],0,false,[[65,0,18.5576],[651,0,51.0341]]],[[5497.18,1255.02,0],0,true,[[2696,0,45.5891],[297,0,8.06132],[120,0,11.2079],[3550,0,3.7046],[2301,1,14.1679]]],[[53.8276,5111.79,2.92323],0,true,[[1954,1,15.5836],[898,1,14.2385],[3901,1,24.6305]]],[[2495.35,7482.67,0],0,true,[[1014,0,3.50378],[2596,0,84.5855],[2156,0,2.83703],[1284,0,18.2595]]], +[[2058.87,5655.05,0],0,false,[[3913,1,43.5414],[1379,1,148.293]]],[[6000.31,7567.89,0],0,true,[[1593,0,25.3122],[2310,0,130.561],[1858,0,14.7863]]],[[6480.12,6026.27,0],0,true,[[2378,0,11.1047],[2340,0,99.5262],[2857,0,10.2828]]],[[2477.73,3119.05,0],0,false,[[3398,0,230.532],[2192,0,75.4572]]],[[384.397,7226.3,0],0,true,[[1898,0,13.5012],[2855,0,83.5149],[1456,0,13.9784]]], +[[1453.29,3358.71,0],0,true,[[2905,1,5.20211],[81,0,13.9784],[569,1,9.96256]]],[[6497.57,1712.32,0],0,false,[[690,0,285.311],[418,0,251.033]]],[[341.833,4497.71,0],0,true,[[1562,0,8.58942],[624,0,0.753382],[1701,0,9.15205],[1869,0,10.5842]]],[[4811.74,5863.62,0],0,false,[[1610,0,120.35],[2258,0,107.361]]],[[462.439,2008.64,0],0,false,[[3369,0,20.1577],[1771,0,21.7037]]], +[[7076.74,7010.28,0],0,true,[[1380,0,14.899],[525,1,13.1897],[3748,1,18.3753]]],[[2858.75,4293.14,0],0,true,[[2885,1,125.719],[2189,1,30.6337],[853,1,4.30077]]],[[5890.31,7283.5,0],0,false,[[2938,0,44.7375]]],[[3204.72,859.655,0],0,true,[[2560,0,4.39868],[2210,0,3.33654],[1485,0,5.8856],[745,0,4.36844]]],[[6439.4,5201.98,0],0,false,[[1410,1,243.331],[3247,1,8.74613],[912,0,7.43323]]], +[[4062.29,5366.2,0],0,true,[[1042,1,6.65909],[1721,0,23.1385],[201,2,12.2129]]],[[6166.1,2777.73,0],0,false,[[1617,1,340.683],[3843,1,374.643]]],[[6183.11,6583.16,0],0,true,[[2807,1,25.8052],[2353,1,394.961],[840,1,11.7081]]],[[7827.89,730.699,0],0,false,[[422,0,26.8916],[2995,0,30.8998]]],[[7847.85,4497.62,0],0,false,[[1998,1,122.003],[100,1,211.416]]], +[[6909.52,4346.97,0],0,false,[[3068,0,25.8717],[2046,0,26.4115]]],[[6881.77,1945.99,0],0,true,[[2426,0,92.5325],[1697,0,8.38682],[1235,0,13.3718]]],[[2520.84,169.649,0],0,true,[[2982,0,155.34],[1084,0,27.712],[3671,0,74.6519]]],[[205.977,6104.58,0],0,true,[[3565,1,28.2208],[3759,1,143.213],[3137,1,17.3108]]],[[3782.68,6543.89,0],0,true,[[2537,0,17.1509],[3364,0,172.66],[1125,0,8.92154]]], +[[3052.89,5579.56,0],0,true,[[2170,0,11.7425],[2985,0,10.9268],[1168,0,5.5768]]],[[6640.07,4077.37,0],0,false,[[162,0,180.16],[1197,0,229.477]]],[[3229.21,761.626,0],0,false,[[825,0,15.3282]]],[[7194.2,5927.92,0],0,false,[[2688,0,316.832],[2127,0,135.334]]],[[3232.75,7168.59,0],0,false,[[303,0,5.03126],[2977,0,37.8902]]], +[[1183.21,2091.18,0],0,true,[[461,0,108.909],[1645,1,9.79249],[3436,1,16.6428],[2632,0,22.1625]]],[[1289.43,2100.36,0],0,false,[[3633,0,78.0256],[460,0,108.909]]],[[731.797,5987.11,0],0,true,[[3366,0,143.111],[764,0,30.9803],[1145,0,246.066]]],[[6314.03,6607.94,0],0,true,[[2201,1,149.692],[2248,1,21.4547],[1506,1,6.29676]]],[[1257.21,4713,0],0,false,[[2364,0,97.8919],[3721,0,122.534]]], +[[6755.31,1091.1,0],0,false,[[2598,0,183.646],[3529,0,20.2584]]],[[4344.68,7001.39,0],0,true,[[342,1,16.5399],[2130,1,96.0909],[1314,1,15.0413],[2003,1,7.78925]]],[[4450.73,4775.37,0],0,true,[[1615,0,5.03811],[125,0,30.9561],[3670,1,11.4771]]],[[1734.55,5721.05,0],0,false,[[190,0,221.918],[3422,0,142.873]]],[[2761.36,5843.15,0],0,false,[[3905,0,236.678],[3427,0,141.682]]], +[[1955.73,3405.66,0],0,true,[[2317,0,207.416],[717,0,8.81858],[3217,0,11.6729]]],[[1861.86,7248.11,0],0,true,[[2604,1,36.8226],[3740,1,29.75],[3839,1,18.5214]]],[[8073.94,6449.03,0],0,true,[[1541,0,10.2339],[3593,0,73.377],[797,1,9.26194]]],[[7048.94,4637.8,0],0,false,[[259,0,276.402]]],[[2770.57,3189.91,0],0,true,[[1269,1,87.2653],[1426,1,29.9108],[116,1,21.4556]]], +[[5051.83,6839.25,0],0,false,[[997,1,7.09731],[1920,0,50.1751]]],[[5995.03,5440.17,0],0,true,[[1727,0,48.0122],[131,0,6.15422],[3449,0,10.3048]]],[[7796.66,717.382,0],0,false,[[1039,0,20.803],[3746,0,20.8899]]],[[5766.68,6088.77,0],0,false,[[1257,1,6.45355],[65,0,302.641]]],[[5991.88,978.33,0],0,false,[[3592,0,131.796],[3349,0,125.419]]], +[[4981.96,1985.87,0],0,false,[[634,1,24.9382],[3019,1,22.6203]]],[[3198.1,6022.87,0],0,false,[[101,0,80.6204],[1625,0,369.812]]],[[8082.09,6539.52,0],0,false,[[3593,0,28.9212]]],[[4633.72,8110.44,0],0,false,[[2568,0,157.882],[688,0,122.606]]],[[3575.34,6605.65,0],0,true,[[1141,0,11.0378],[231,0,63.7833],[3336,1,12.9355]]], +[[4420.46,3019.64,0],0,true,[[3257,2,13.4608],[850,2,31.9568],[3570,2,3.46017]]],[[1655.43,5969.31,0],0,true,[[2360,1,322.954],[858,1,34.5211],[1124,1,18.2711]]],[[6327.49,4281.06,0],0,false,[[1498,0,47.9477],[15,0,74.4112]]],[[4058.47,5294.77,0],0,false,[[2502,0,22.8789],[1687,0,59.2301]]],[[2000.52,6467.15,0],0,false,[[2636,0,92.8935],[2559,0,262.321]]], +[[5458.31,2239.96,0],0,true,[[1546,1,16.6857],[768,0,185.619],[1120,1,14.7933],[1921,0,25.4435]]],[[2770.85,5027.39,0],0,false,[[2385,0,145.922],[1493,0,163.9]]],[[4475.45,4725.05,0],0,true,[[3670,1,45.4106],[3783,1,20.4887],[2257,1,14.7884]]],[[3036.39,1286.48,0],0,false,[[3031,0,174.17],[550,0,37.0304]]],[[3327.15,2221,0],0,false,[[817,0,33.1116],[3800,0,125.26]]], +[[7328.68,6133.64,0],0,false,[[681,1,7.6419],[3856,0,236.017]]],[[365.248,3913.56,0],0,true,[[1942,0,189.606],[1320,0,8.07019],[2748,0,13.9353]]],[[5419.06,5416.91,0],0,false,[[1634,1,228.649],[1187,1,32.2235]]],[[4392.66,3063.85,0],0,false,[[2480,1,3.45716],[1355,0,132.056]]],[[4530.19,2508.64,0],0,false,[[1643,1,27.3409],[1414,1,32.4662]]], +[[2970.88,1909.47,0],0,true,[[3757,1,25.3384],[2508,1,73.6842],[3448,1,15.104]]],[[7561.14,1153.09,0],0,true,[[1428,0,45.4702],[1743,0,16.8971],[1805,0,6.79696]]],[[6539.3,5674.12,0],0,true,[[3696,0,21.9933],[2190,0,259.986],[2523,0,44.5642]]],[[3191.55,2804.92,0],0,false,[[3514,0,90.9835],[228,0,112.149]]],[[3382.59,6813.55,0],0,false,[[249,1,372.587],[2570,1,141.322]]], +[[556.464,8032.84,0],0,true,[[147,0,21.4555],[2208,0,59.1255],[1292,0,3.96304],[960,0,7.0122]]],[[3584.36,6558.17,0],0,true,[[805,1,288.187],[1054,1,13.0822],[2543,1,18.7587]]],[[257.159,1153.66,0],0,true,[[14,0,7.19892],[3836,0,20.8445],[2694,0,21.3793],[1505,0,19.661]]],[[5163.93,2884.75,0],0,true,[[2500,1,53.3555],[2644,1,29.6967],[3102,1,19.2033]]],[[1036.28,6037.91,0],0,false,[[966,0,7.90083],[2634,1,7.30629]]], +[[8028.73,5330.92,0],0,false,[[32,0,13.0216]]],[[7643.53,458.177,0],0,true,[[2713,1,5.38828],[2250,1,6.58068],[382,1,7.7265],[2713,1,5.32168]]],[[6351.42,4402.21,0],0,false,[[3792,0,349.755],[2494,0,74.1544]]],[[1298.09,3963.57,0],0,true,[[3105,0,4.88281],[2651,0,50.878],[2161,0,5.29716]]],[[2168.01,4522.09,0],0,false,[[1000,1,80.0582],[270,1,153.715]]], +[[2804.09,470.175,0],0,false,[[394,0,10.0487],[3245,0,59.2797]]],[[6801.93,7244.93,0],0,false,[[3074,1,11.166],[2148,0,253.945]]],[[654.326,7363.86,0],0,false,[[3566,0,188.592],[3222,0,231.418]]],[[269.396,739.131,0],0,false,[[1691,0,90.1054],[2009,0,205.438]]],[[1569.98,4501.11,0],0,false,[[312,0,145.055],[1611,0,34.7351]]], +[[3655.97,5127.17,0],0,true,[[3095,0,264.001],[1558,0,20.8827],[2739,1,7.79947],[85,1,10.716]]],[[840.57,3667.8,0],0,false,[[3058,0,47.9052]]],[[5480.69,4491.17,0],0,false,[[1849,0,337.774],[3549,1,10.8426]]],[[683.322,-0.0463385,0.00190735],0,false,[[3646,0,60.1699]]],[[640.094,963.686,0],0,true,[[689,1,22.4514],[2351,0,142.317],[2160,1,13.1202],[2052,0,19.9962]]], +[[7064.48,7015.15,0],0,true,[[3748,1,31.5555],[3074,1,341.023],[440,1,13.1897],[1380,1,25.5504]]],[[2621.32,4412.39,0],0,false,[[182,0,121.799],[1723,0,32.0589]]],[[5536.79,6805.62,0],0,false,[[693,0,67.8343]]],[[961.136,1080.18,0],0,false,[[1083,1,230.845],[622,1,22.0525]]],[[6989.35,388.772,0],0,false,[[1905,1,25.9456],[1949,1,345.68]]], +[[3915.85,3581.08,0],0,false,[[2716,0,130.65],[548,0,87.1531]]],[[1678.47,3285.84,0],0,false,[[968,1,19.7899],[2270,1,50.9537]]],[[6185.46,4314.25,0],0,true,[[1748,1,21.5343],[3684,1,105.705],[1834,1,11.2058]]],[[5842.72,7321.09,0],0,false,[[1858,0,293.082]]],[[3680.57,3149.21,0],0,false,[[2665,0,20.6959],[2902,0,39.1502]]], +[[4271.24,6051.47,0],0,false,[[837,2,13.8731],[2271,2,21.4497]]],[[7218.21,905.51,0],0,true,[[2129,0,19.4174],[233,0,11.3181],[803,0,27.2967]]],[[5109.11,4602.47,0],0,false,[[3549,1,377.622],[969,1,24.0616]]],[[4391.27,8149.83,0],0,false,[[1171,0,54.5371],[2568,0,96.9849]]],[[4745.52,3460.68,0],0,false,[[217,0,36.7138],[3126,0,33.6679]]], +[[3423.86,1536.41,0],0,false,[[857,2,7.14531],[133,0,399.3]]],[[2134.93,7325.31,0],0,true,[[3666,1,84.2501],[2727,1,27.1585],[1733,1,12.4879]]],[[2839.96,3578.79,0],0,false,[[105,1,64.6528],[2213,1,27.1301]]],[[5040.16,4122.48,0],0,false,[[247,1,29.1897],[356,1,28.0975]]],[[752.585,7590.71,0],0,true,[[2410,0,272.349],[1537,0,22.2852],[3745,0,11.3287]]], +[[7281.5,8007.21,0],0,false,[[614,0,89.0266],[1073,0,27.2332]]],[[4801.15,1090.04,0],0,false,[[1232,0,6.65187],[3594,0,17.2516]]],[[3126.05,7567.25,0],0,true,[[1918,1,19.6271],[1556,1,25.8416],[2482,1,4.95249],[195,1,12.9099]]],[[3848.32,3634.4,0],0,true,[[530,0,87.1531],[2697,0,21.2683],[3317,1,17.7571]]],[[5913.33,575.958,0],0,false,[[1808,0,105.695],[2503,0,92.2587]]], +[[3020.34,1319.74,0],0,false,[[493,0,37.0304],[1021,2,10.9073]]],[[4136.48,4185.96,0],0,true,[[1648,0,67.5562],[1571,0,10.6272],[1068,0,43.0716]]],[[4784.21,3740.89,0],0,false,[[1817,1,17.5222],[3492,1,7.6805]]],[[912.602,6205.25,0],0,false,[[1324,0,20.7852],[1569,0,110.171]]],[[7619.29,1297.13,0],0,true,[[3892,0,25.4587],[1437,0,63.399],[3583,0,9.94285]]], +[[6385.25,3971.29,0],0,false,[[12,0,205.659],[802,0,120.49]]],[[1561.96,3439.7,0],0,false,[[1144,0,121.082],[1950,0,97.418]]],[[7718.16,2993.91,0],0,true,[[2207,1,24.0425],[3179,0,304.104],[1910,0,27.1198],[2331,1,24.6748]]],[[3755.28,1433.37,0],0,true,[[3148,1,8.20695],[2530,0,190.487],[1433,1,14.0611]]],[[1576.33,1202.07,0],0,false,[[1960,0,16.0147],[2854,1,5.39884]]], +[[6350.11,4325.21,0],0,true,[[1976,1,23.1404],[712,1,64.2743],[2494,1,12.3023]]],[[341.766,4596.19,0],0,true,[[774,0,15.9925],[571,0,0.749219],[2178,0,16.5758],[2475,0,12.9145]]],[[4870.89,570.022,0],0,true,[[69,1,223.711],[287,1,7.94494],[3109,1,12.4551]]],[[4756.69,3623.47,0],0,false,[[3073,1,28.6851],[987,1,32.332]]],[[4787.78,65.1008,0],0,true,[[3401,1,16.1843],[2446,1,62.6156],[183,1,7.0236]]], +[[4269.3,4518.87,0],0,false,[[2308,1,157.338],[2663,1,149.791]]],[[4847.35,1971.6,0],0,false,[[3321,2,99.3412],[2970,2,122.557]]],[[5177.88,1727.16,0],0,false,[[772,1,13.5269],[321,1,205.923]]],[[609.278,27.0823,0],0,true,[[145,2,22.509],[344,2,31.7966],[1830,2,7.96324],[706,2,9.27997]]],[[1451.4,3368.49,0],0,true,[[2905,1,12.5124],[1334,1,8.67647],[435,1,9.96256],[2228,1,16.9279]]], +[[1506.92,3746.83,2.69464],0,false,[[3172,0,167.714],[2959,0,111.753]]],[[342.102,4596.86,0],0,true,[[774,0,16.5753],[2475,0,12.2197],[561,0,0.749219],[3815,0,12.914]]],[[3063.72,2416.74,0],0,false,[[1779,0,91.0068],[2164,0,183.731]]],[[5113.61,755.958,0],0,false,[[1301,0,374.735],[2731,0,150.492]]],[[6121.19,1114.77,0],0,false,[[3098,0,235.337],[2283,0,166.208]]], +[[5275.73,7930.2,0],0,false,[[1253,0,113.698],[3076,0,130.77]]],[[1250.26,5640.15,0],0,false,[[1028,0,141.074],[68,0,83.9581]]],[[7888.18,1910.15,0],0,true,[[810,0,14.3241],[3539,0,394.943],[2284,0,28.4439]]],[[3256.34,5544.18,0],0,true,[[3045,0,18.1235],[377,0,48.9932],[2550,0,16.7976]]],[[1412.25,4281.25,0],0,false,[[1199,0,39.2403],[2971,0,51.0741]]], +[[5880.07,1585.86,0],0,true,[[158,0,56.5127],[3579,0,11.4926],[1613,0,11.1334]]],[[4200.14,3196.53,0],0,false,[[1572,1,150.94],[1957,1,167.61]]],[[1151.55,3607.67,0],0,true,[[2060,0,27.0143],[1150,0,124.585],[609,0,15.1937]]],[[5233.79,2971.08,0],0,false,[[2874,0,68.3623]]],[[4502.54,2520.64,0],0,false,[[1909,2,68.7373],[1876,2,25.0856]]], +[[402.823,863.427,0],0,false,[[2908,0,44.3328],[2957,0,19.2851]]],[[350.922,4422.09,0],0,true,[[253,0,0.750784],[2469,0,6.18707],[926,0,5.80098],[3314,0,6.16037]]],[[6177.91,4387.57,0],0,false,[[3122,0,193.325],[1834,0,72.2078]]],[[2622.5,7664.79,0],0,false,[[2432,0,29.3119],[1310,0,79.2734]]],[[5607.81,7264.07,0],0,true,[[3834,0,18.9928],[3821,0,359.029],[1729,0,10.1123],[3226,0,20.1092]]], +[[4520,5557.24,0],0,false,[[2322,0,219.992],[1024,0,331.47]]],[[4922.76,4112.23,0],0,true,[[2922,0,131.171],[3316,0,13.5396],[3146,0,11.5631]]],[[4719.68,3366.47,0],0,false,[[3752,0,29.3023]]],[[2132,5519.58,0],0,false,[[3548,0,86.7988],[1379,1,7.78152]]],[[2575.42,3164.61,0],0,false,[[362,0,19.8656],[1469,0,84.8524]]], +[[356.885,4634.97,0],0,true,[[2098,0,12.3034],[1917,0,0.749844],[1177,0,13.0475],[3215,0,8.69717]]],[[52.538,4480.44,0],0,true,[[2616,0,92.1645],[2684,0,9.31554],[795,0,16.6933]]],[[4295.93,6279.52,0],0,true,[[1809,0,69.8515],[1023,0,7.08997],[214,0,11.7333]]],[[7682.3,5771.92,0],0,false,[[1795,0,99.7339],[3677,0,208.764]]],[[1819.06,4668.39,0],0,true,[[3297,1,11.1714],[2074,0,6.43274],[2501,1,13.2807]]], +[[4247.18,6232.95,0],0,true,[[137,0,38.1994],[2725,0,10.0535],[1202,0,16.7343]]],[[7839.62,756.369,0],0,true,[[2082,0,17.0487],[3877,0,10.392],[422,0,4.32031]]],[[5670.46,4426.99,0],0,true,[[3034,1,13.5622],[726,1,6.1733],[3342,1,11.4906],[90,1,9.93665]]],[[791.685,1795.93,0],0,false,[[2811,0,188.671],[3520,1,13.0181]]],[[2917.03,2456.54,0],0,false,[[3003,0,126.162],[3658,0,112.246]]], +[[4134.97,5146.88,0],0,false,[[1500,2,79.8341],[2092,2,141.638]]],[[2397.92,6630.64,0],0,true,[[1828,0,266.715],[2350,0,3.85639],[1454,1,11.8074],[2601,1,8.96434]]],[[6363.18,5446.85,0],0,false,[[2637,0,4.8531],[1303,0,12.9597]]],[[4779.2,5230.13,0],0,true,[[702,0,24.0895],[192,1,6.83294],[408,1,4.91972]]],[[1158.44,3621.2,0],0,true,[[2031,0,10.2775],[2444,0,8.18532],[582,0,15.1937],[2060,0,12.6859]]], +[[5477.09,6779.9,0],0,true,[[2815,0,95.7616],[1034,1,10.6429],[3299,1,8.17568]]],[[2536.07,6933.66,0],0,false,[[1321,0,93.9877],[1993,0,167.86]]],[[4065.05,6951.05,0],0,false,[[3390,1,100.926],[847,1,230.129]]],[[470.887,2396.64,0],0,false,[[759,0,202.446],[79,0,20.3555]]],[[7332.49,7936.01,0],0,false,[[545,0,89.0266],[2769,0,26.4088]]], +[[4362.97,8109.05,0],0,false,[[16,0,37.2691],[1333,0,24.2327]]],[[2276.9,4328.58,0],0,false,[[405,0,6.73882],[3163,0,171.655]]],[[5622.66,6297.95,0],0,true,[[1312,0,71.9191],[1892,1,7.90226],[2246,1,4.40226]]],[[1597.07,6915.17,0],0,false,[[1764,0,11.9545],[2254,1,9.14836]]],[[4620.75,3399.11,0],0,false,[[1880,1,53.5789],[3196,1,92.5841]]], +[[3979.2,6395.61,0],0,false,[[3043,0,256.581],[808,0,34.6137]]],[[4743.92,1123.04,0],0,false,[[2042,0,24.3178],[2329,0,12.5633]]],[[940.716,1071.85,0],0,true,[[528,1,22.0525],[2160,1,310.888],[1901,1,8.81528]]],[[7172.95,6239.5,0],0,false,[[1075,0,174.287],[1786,0,78.7525]]],[[342.168,4498.38,0],0,true,[[1562,0,9.15227],[1869,0,9.85956],[437,0,0.753382],[3425,0,10.5838]]], +[[4521.15,3196.95,0],0,true,[[1863,1,20.0014],[3289,1,5.78192],[286,2,9.98458]]],[[32.3907,4180.4,0],0,false,[[2326,0,10.3578]]],[[3585.19,4569.93,0],0,false,[[63,0,225.167],[2923,0,211.112]]],[[5517.19,4333.27,0],0,true,[[3061,0,10.2052],[383,1,13.649],[2489,1,6.02633],[3568,1,4.60891]]],[[5185.44,65.4374,0],0,false,[[183,1,397.722],[302,1,109.58]]], +[[8001.14,4566.28,0],0,false,[[1766,0,76.7152],[3227,0,44.349]]],[[4097.13,5751.6,0],0,false,[[2318,0,10.2842],[142,0,20.822]]],[[2844.66,3173.52,0],0,true,[[202,1,24.3468],[2422,1,23.4057],[243,1,9.75185]]],[[458.355,7403.36,0],0,true,[[161,0,10.5852],[3202,0,11.7134],[2424,0,12.7892]]],[[5005.58,1977.94,0],0,false,[[1189,1,84.0175],[480,1,24.9382]]], +[[448.426,2383.57,0],0,true,[[3837,0,221.14],[2059,0,25.8069],[79,0,12.1687]]],[[6680,7936.74,0],0,true,[[3000,0,10.726],[1740,0,33.9385],[1678,0,18.7708]]],[[6656.63,366.436,0],0,false,[[390,0,113.029],[2690,0,19.502]]],[[4772.51,3430.62,0],0,true,[[878,0,12.693],[1802,0,46.8753],[3126,0,7.19084]]],[[5.33434,449.499,0],0,false,[[754,0,181.041]]], +[[7482.34,2968.87,0],0,true,[[1581,1,6.12038],[1653,0,129.697],[3725,1,7.22008]]],[[4624.71,2981.78,0],0,true,[[1583,1,92.2605],[2428,1,11.0609],[2488,1,14.3329]]],[[1483.39,4077.69,0],0,false,[[2179,0,47.8667]]],[[2819,1786.49,0],0,true,[[2380,1,3.22513],[2789,0,96.3581],[52,1,11.5374]]],[[4780.98,4320.94,0],0,true,[[3407,0,2.9635],[2928,0,24.6249],[3244,0,6.42918]]], +[[4689.71,3355.61,0],0,false,[[3173,1,58.4259],[3077,1,20.2105]]],[[8050.8,4551.03,0],0,true,[[3240,0,7.67259],[2941,1,11.9158],[1215,1,18.3712]]],[[6122.24,886.818,0],0,true,[[829,0,4.69406],[2225,0,15.1763],[19,0,5.06464]]],[[4740.81,3638.1,0],0,false,[[3887,1,28.834],[2105,1,42.484]]],[[3392.5,4730.21,0],0,false,[[1387,0,8.6001]]], +[[7613.76,8075.94,0],0,false,[[3525,1,59.8793],[3246,1,99.4592]]],[[6076.8,6188.08,0],0,true,[[426,0,51.0341],[958,0,29.749],[3399,0,6.27033]]],[[4818.16,262.489,0],0,false,[[1668,1,5.58561],[3902,0,182.672]]],[[189.406,117.331,0],0,false,[[2370,0,181.259]]],[[4611.42,2859.29,0],0,false,[[2305,1,5.94105],[2119,0,115.721]]], +[[2701.43,2007.22,0],0,true,[[2320,1,17.0502],[3829,1,57.988],[3176,1,8.70227]]],[[1791.63,155.48,0],0,true,[[2602,0,58.2881],[3874,0,8.56871],[856,0,12.8091]]],[[2479.39,3197.61,0],0,false,[[2963,1,32.0967],[3497,1,94.1067]]],[[5559.54,2915.96,0],0,true,[[2635,1,8.10374],[2565,1,241.432],[2831,1,3.55889]]],[[166.455,7598.86,0],0,false,[[3419,0,17.7907],[74,0,84.4515]]], +[[1238.93,1689.38,0],0,false,[[1953,0,98.0464],[1673,0,130.258]]],[[4686.81,3221.14,0],0,true,[[3416,1,21.9997],[2488,1,233.597],[1400,1,10.1797]]],[[7658.62,7897.49,0],0,true,[[3246,1,86.8808],[1608,1,23.9345],[415,1,14.5642]]],[[4159.12,3966.88,0],0,false,[[369,0,33.2567],[366,0,23.3679],[1790,0,21.5641]]],[[1124.13,3472.37,0],0,true,[[3241,1,27.6581],[1659,1,147.009],[2820,1,18.6206],[1150,1,16.4088]]], +[[4589.33,4565.03,0],0,true,[[1940,1,184.272],[1233,1,27.3009],[240,1,18.8189]]],[[502.315,7162.02,0],0,true,[[2895,0,51.6803],[2835,0,21.8962],[206,0,11.0903]]],[[2094.75,4604.2,0],0,false,[[806,0,15.3546],[2956,1,7.38477]]],[[4371.58,2975.55,0],0,true,[[885,1,35.6744],[3615,1,16.599],[1655,1,16.7794]]],[[3995.58,5519.6,0],0,true,[[2983,1,66.971],[3070,1,108.995],[1351,1,59.8176]]], +[[1422.9,1184.24,0],0,true,[[849,1,30.0776],[2882,1,220.92],[1442,1,17.4012]]],[[3081.49,2882.2,0],0,true,[[228,0,23.9018],[265,0,43.5141],[1540,0,18.8989]]],[[7873.13,2998.64,0],0,false,[[3654,1,322.989],[2331,1,137.541]]],[[4233.36,4006.64,0],0,false,[[1560,1,42.5802],[1734,1,41.4887]]],[[6925.75,1872.41,0],0,false,[[1235,0,73.4017],[2462,0,149.971]]], +[[4953.29,1696.24,0],0,false,[[229,0,52.4354],[2078,0,58.1513]]],[[5647.99,6307.61,0],0,false,[[2990,0,112.69],[1389,0,11.757]]],[[4262.73,2877.48,0],0,false,[[2154,1,43.5939],[1029,1,36.1319]]],[[1146.96,4830.56,0],0,true,[[1633,1,119.092],[2773,1,22.4587],[992,1,10.3746]]],[[2393.64,259.948,0],0,false,[[1883,1,46.4351],[157,1,30.9512]]], +[[6821.48,2035.4,0],0,true,[[1018,0,53.0511],[2513,0,6.36367],[1789,0,6.40813]]],[[7331.2,6126.42,0],0,true,[[3028,1,96.5094],[2904,1,14.8138],[495,1,7.6419]]],[[2991.47,4314.4,0],0,true,[[326,0,27.8826],[2147,0,206.969],[3365,0,11.7992]]],[[2406.05,6616.9,0],0,true,[[1030,0,313.964],[2350,0,12.2959],[1454,1,15.2056]]],[[4328.12,2878.92,0],0,true,[[725,1,56.3052],[2154,1,22.9399],[2951,1,10.9635],[1209,1,12.9362]]], +[[4204.06,7527.3,0],0,true,[[779,0,55.404],[2847,0,120.677],[3916,0,19.2752]]],[[1211.41,4069.93,0],0,true,[[2212,0,42.1198],[3273,0,5.4642],[1451,0,10.2196]]],[[5104.87,390.433,0],0,false,[[3902,0,177.734],[1516,0,111.667]]],[[4698.89,8186.84,0],0,false,[[483,0,122.606]]],[[624.935,947.13,0],0,true,[[524,1,22.4514],[3614,1,221.603],[2052,1,17.9979],[2160,1,30.2008]]], +[[6253.75,1596.46,0],0,false,[[2414,0,114.138],[436,0,285.311]]],[[7027.72,4354.27,0],0,false,[[3606,0,18.2486],[180,0,25.4105]]],[[7188.17,936.457,0],0,true,[[1004,0,277.664],[38,0,13.9454],[2129,0,23.7248]]],[[5499.77,6845.97,0],0,true,[[527,0,67.8343],[269,0,149.596],[3187,0,81.7574]]],[[4858.85,5580.6,0],0,false,[[3669,0,135.139],[3018,0,398.684]]], +[[5970.55,1710.75,0],0,true,[[1613,0,144.873],[2452,0,7.68299],[1792,0,7.37399]]],[[6959.3,4367.95,0],0,false,[[2964,1,25.6207],[965,1,26.187]]],[[3353.52,6706.13,0],0,false,[[3318,1,35.3778],[1502,1,142.591]]],[[7746,6711.4,0],0,false,[[1806,0,4.33704],[2698,0,203.06]]],[[5503.09,1266.26,0],0,true,[[3550,0,10.0946],[316,0,6.16156],[3036,1,15.9075]]], +[[3708.28,4405.98,0],0,true,[[187,0,250.03],[2923,0,6.12117],[2554,0,6.88807]]],[[2839.57,4460.47,0],0,true,[[3535,1,16.3445],[1675,0,7.05948],[109,0,4.4484],[3816,1,11.4465]]],[[4791.5,5209.48,0],0,true,[[3112,0,185.015],[608,0,24.0895],[861,0,29.4318]]],[[5100.15,2856.47,0],0,false,[[821,0,8.36951],[1958,0,15.1156]]],[[4592.25,2789.6,0],0,true,[[2305,1,71.1903],[2349,1,12.0404],[3564,1,10.525]]], +[[3745.78,980.263,0],0,true,[[3626,0,5.15811],[218,0,13.5161],[3681,1,9.54022]]],[[609.746,36.3505,0],0,true,[[1830,0,8.5828],[1450,0,92.5617],[568,2,9.27997]]],[[6406.08,3366.53,0],0,true,[[219,0,112.457],[3104,0,15.8264],[3896,0,30.5993]]],[[4135.05,4442.03,0],0,false,[[1676,0,143.43],[2670,0,83.1437]]],[[1711,5874.74,0],0,false,[[3422,0,13.5119],[1696,1,6.72086]]], +[[6499.8,2796.16,0],0,false,[[2134,1,72.2966],[2839,1,124.429]]],[[5889.15,4360.23,0],0,true,[[1885,1,30.913],[2498,1,27.3212],[3230,1,6.68087]]],[[6286.03,4321.23,0],0,false,[[560,1,64.2743],[1748,1,79.4104]]],[[3840.4,5931.91,0],0,true,[[2436,1,7.92571],[2840,0,15.4668],[66,1,6.35427]]],[[4064.35,4118.8,0],0,false,[[335,1,36.236],[3235,1,28.232]]], +[[4891.7,6842.47,0],0,false,[[3155,1,132.082],[114,1,157.344]]],[[4498.56,1085.85,0],0,false,[[3753,0,160.244],[1051,0,143.753]]],[[1962.89,3400.53,0],0,true,[[2077,0,45.593],[3217,0,4.55647],[470,0,8.81858]]],[[5101.21,3915.62,0],0,true,[[2676,0,21.1334],[3523,0,273.536],[1772,0,17.779]]],[[2164.01,5330.73,0],0,true,[[2116,1,23.3288],[72,1,24.0119],[1289,1,9.93932]]], +[[3937.33,6428.21,0],0,true,[[808,0,18.4586],[1819,0,11.5197],[3052,0,10.919],[932,0,8.04411]]],[[7247.96,6286.05,0],0,true,[[2418,1,140.989],[1508,1,5.86684],[1061,1,12.0407]]],[[5245.36,5976.66,0],0,true,[[3018,0,172.795],[756,0,16.7922],[1671,0,12.778]]],[[4703.32,3307.71,0],0,false,[[2755,0,23.1744],[3752,0,32.8929]]],[[7472.8,2962.56,0],0,true,[[2049,0,124.524],[1581,1,5.33567],[1491,1,12.5196]]], +[[4383.96,2883.64,0],0,true,[[938,1,8.30528],[684,1,56.3052],[1756,2,16.1198],[2525,2,15.1318]]],[[5674.02,4432.03,0],0,true,[[602,1,6.1733],[2521,1,232.968],[90,1,9.70636]]],[[414.521,1851.59,0],0,true,[[3603,1,3.42587],[1573,0,161.357],[2302,1,9.36598]]],[[4017.07,4157.62,0],0,false,[[1732,1,20.4633],[1874,1,21.6013]]],[[5127.87,6946.83,0],0,false,[[2998,2,18.98],[2862,2,90.7641]]], +[[1767.51,6856.34,0],0,false,[[1598,0,82.6158],[1764,0,168.435]]],[[1223.97,1788.32,0],0,true,[[920,1,23.2287],[3331,1,133.173],[1953,1,8.15445]]],[[7185.52,709.5,0],0,true,[[2103,1,29.0725],[2120,1,29.7888],[3238,1,16.2567]]],[[4453.29,6350.77,0],0,false,[[400,0,49.5118],[337,0,194.232]]],[[5077.84,4133.62,0],0,false,[[2859,0,12.6401],[2770,1,8.4281],[3801,0,5.44906]]], +[[2534.05,1668.07,0],0,true,[[2398,1,17.0722],[3134,1,194.254],[3114,1,28.3386]]],[[4863.31,4462.71,0],0,true,[[1689,0,9.83037],[2946,0,5.87092],[18,0,5.64812]]],[[1812.12,2947.96,0],0,true,[[2474,0,327.584],[2193,0,152.198],[2677,0,96.9879]]],[[4300.81,2914.99,0],0,false,[[765,1,60.4873],[132,1,19.1012]]],[[5308.66,5204.48,0],0,false,[[3697,1,66.2928],[1634,1,18.2159]]], +[[3841.05,5437.83,0],0,false,[[1364,0,98.2335],[1188,0,283.51]]],[[6665.43,3338.23,0],0,false,[[398,0,167.85],[1708,0,212.073]]],[[1549.71,7211.81,0],0,false,[[1011,1,156.04],[3054,1,183.751]]],[[298.623,7328.4,0],0,true,[[2883,0,5.06043],[3198,0,17.3234],[73,0,8.19635]]],[[5641.88,1048.71,0],0,true,[[1882,1,26.4377],[1234,1,60.5946],[1631,1,15.1853]]], +[[3209.01,860.38,0],0,true,[[443,0,4.36844],[1485,0,1.54454],[2210,0,6.24403]]],[[4753.46,5244.02,0],0,false,[[1843,0,214.408],[2278,1,4.3598]]],[[666.161,56.8903,0],0,false,[[841,2,378.039],[3354,2,22.2092]]],[[7470.83,5847.14,0],0,true,[[1597,0,90.8924],[3686,0,123.847],[3677,0,25.711]]],[[3241.69,902.909,0],0,false,[[2090,0,39.8203]]], +[[7090.45,5622.33,0],0,true,[[3429,0,41.9477],[3086,0,4.02492],[2688,0,13.0937]]],[[4287.46,4236.77,0],0,false,[[57,0,106.985],[1250,0,18.2038]]],[[7281.03,3822.41,0],0,false,[[2445,1,222.972],[3067,1,51.0066]]],[[432.718,7190.67,0],0,true,[[1456,0,47.5052],[2895,0,24.237],[293,0,12.2988]]],[[172.802,387.343,0],0,false,[[358,0,33.9001],[639,0,181.041]]], +[[2813.59,1786.37,0],0,true,[[2380,1,3.83648],[2603,1,252.252],[2740,1,3.77037]]],[[5253.53,5961.99,0],0,true,[[722,0,16.7922],[1639,0,139.446],[1671,0,28.9502]]],[[8091.31,1250.23,0],0,true,[[1006,0,102.825],[1204,0,10.0082],[3405,0,18.7667]]],[[2333.92,2371.07,0],0,false,[[318,0,263.079],[3274,0,152.171]]],[[667.295,2422.14,0],0,false,[[3813,0,14.4183],[613,0,202.446]]], +[[6120.11,895.353,0],0,true,[[1282,0,18.0574],[829,0,4.86978],[19,0,5.74418]]],[[1746.51,7175.12,0],0,false,[[345,0,38.0302],[3676,0,12.6383]]],[[1.06217,5157.75,0],0,false,[[1954,1,54.4798]]],[[5352.05,7684.16,0],0,true,[[2427,0,104.654],[3862,0,11.7201],[827,1,12.0688]]],[[761.079,5996.28,0],0,false,[[462,0,30.9803],[242,0,108.182]]], +[[4244.12,2897.19,0],0,false,[[3418,1,19.8359],[738,1,60.4873]]],[[7799.37,1455.79,0],0,true,[[1295,0,19.4678],[2824,0,95.5983],[2458,0,24.2144],[843,0,15.3395]]],[[4029.49,4079.26,0],0,true,[[2268,2,18.1481],[1353,2,20.1756],[3337,2,7.97924]]],[[5460.54,2423.91,0],0,false,[[490,0,185.619],[2851,0,273.875]]],[[2782.46,4581.9,0],0,false,[[3495,0,78.9088]]], +[[7377.89,1167.76,0],0,true,[[153,0,216.864],[2238,0,27.2704],[1007,0,8.19915]]],[[6748.96,5488.94,0],0,false,[[2190,0,38.6833],[1864,0,197.624]]],[[5187.19,1736.82,0],0,false,[[871,1,96.2562],[567,1,13.5269]]],[[5291.93,7475.37,0],0,false,[[36,1,10.5275],[1851,1,16.2563]]],[[345.413,4580.62,0],0,true,[[3812,0,19.8962],[561,0,15.9925],[2178,0,0.749666],[571,0,16.5753]]], +[[2894.99,151.272,0],0,false,[[2712,0,207.105],[2195,0,359.044]]],[[3980.07,5910.47,0],0,true,[[3376,1,15.0877],[2814,1,131.008],[2345,1,9.64134]]],[[7681.13,6362.02,0],0,false,[[801,0,10.6599],[1396,0,7.42366],[870,0,61.2012]]],[[3409.64,4726.82,0],0,true,[[3728,0,105.763],[1387,0,11.6612],[63,0,16.481]]],[[4149.43,7531.99,0],0,false,[[685,0,55.404]]], +[[7009.33,4371.53,0],0,false,[[783,1,22.9636],[2964,1,24.5476]]],[[4914.06,1049.26,0],0,true,[[2958,1,14.6674],[2095,0,4.94847],[1603,1,10.7855]]],[[4493.36,4632.42,0.154922],0,false,[[1980,2,7.4527],[1959,2,15.575]]],[[7032.23,4373.15,0],0,true,[[200,1,12.7188],[780,1,22.9636],[3803,1,26.1203]]],[[1325.99,5971.23,0],0,false,[[2269,1,19.1997],[2634,1,290.051]]], +[[5802.75,5971.6,0],0,false,[[3327,1,22.3761],[1257,1,117.448]]],[[3514.64,3344.1,0],0,false,[[2415,1,273.586],[3749,1,256.904]]],[[958.43,3467.55,0.000244141],0,false,[[3692,0,9.88703],[1126,0,9.88703]]],[[3851.31,3542.35,0],0,true,[[2121,1,175.196],[1735,1,24.4469],[1489,1,49.6251]]],[[5641.81,1022.86,0],0,false,[[1375,0,135.702],[1631,0,13.4756]]], +[[4420.14,4100.19,0],0,false,[[2672,0,143.879],[2683,0,85.9655]]],[[6750.33,523.251,0],0,false,[[280,0,105.75],[390,0,113.642]]],[[5492.19,6571.1,0],0,true,[[2172,1,14.3339],[1397,1,115.719],[1704,1,3.36305]]],[[3253.64,7422.47,0],0,false,[[889,0,20.1421],[1009,0,186.722]]],[[3350.42,7582,0],0,false,[[1009,0,32.4495],[3308,0,146.567]]], +[[55.6919,4496.82,0],0,true,[[2684,0,25.2378],[3434,0,200.045],[596,0,16.6933]]],[[4689.55,5893.43,0],0,false,[[2265,0,165.902],[1322,0,32.0703]]],[[8065.72,6453.3,0],0,true,[[5,1,26.4079],[2837,1,74.9138],[1541,1,10.9346],[472,1,9.26194]]],[[7667.5,2431.64,0],0,false,[[1048,0,360.095],[3232,0,44.2741]]],[[7075.69,5548.96,0],0,true,[[3033,0,8.08267],[879,0,7.48407],[2861,0,4.66015]]], +[[7231.05,4179.01,0],0,true,[[1101,0,206.663],[3278,0,18.4014],[1524,0,16.3198]]],[[7670.62,6360.29,0],0,true,[[1686,0,157.391],[1396,0,16.7748],[777,0,10.6599]]],[[6500.3,3948.32,0],0,true,[[555,0,120.49],[3120,0,6.82779],[162,0,10.7873]]],[[7238.3,887.04,0],0,true,[[233,0,17.0399],[2796,0,115.247],[536,0,27.2967]]],[[3521.66,6674.78,0],0,true,[[1555,1,18.9396],[1381,1,81.7718],[2145,1,24.9542],[922,1,7.38704]]], +[[3707.64,6300.93,0],0,true,[[3585,1,20.2838],[506,1,288.187],[3575,1,12.9227]]],[[2109.97,4602.25,0],0,false,[[3413,0,40.7691],[667,0,15.3546]]],[[872.503,4190.92,0],0,true,[[1838,0,18.6586],[3359,0,8.71164],[1477,0,10.1763]]],[[3951.82,6416.77,0],0,false,[[620,0,34.6137],[720,0,18.4586]]],[[2981.96,6892.79,0],0,true,[[983,0,298.794],[884,0,15.2383],[1952,0,17.5303]]], +[[7901.3,1904.4,0],0,true,[[3168,0,351.538],[2284,0,16.5754],[577,0,14.3241]]],[[388.593,1264.14,0],0,false,[[3893,0,35.5429],[2988,0,22.0137]]],[[4642.18,2066.21,0],0,true,[[2970,2,104.481],[2764,2,13.3767],[2821,2,8.05153]]],[[4908,7191.59,0],0,false,[[2206,0,237.635]]],[[4727.49,2276.69,0],0,false,[[2780,1,311.095],[2014,1,140.224]]], +[[2937.33,1597.9,0],0,false,[[1081,1,237.711],[1359,1,27.5526]]],[[414.176,1285.02,0],0,false,[[1114,0,26.1357],[1064,0,46.5188]]],[[3359.99,2225.09,0],0,false,[[2249,0,29.4612],[494,0,33.1116]]],[[3360.34,7270.35,0],0,true,[[1841,0,20.7573],[163,0,102.893],[2535,0,83.6969]]],[[1818.71,681.122,0],0,true,[[3,0,41.3448],[1853,2,15.5494],[2182,2,9.00184]]], +[[7705.17,6353.92,0],0,false,[[1396,0,18.3815],[2909,0,18.9209],[2893,0,16.3067]]],[[5103.12,2864.28,0],0,false,[[2626,1,12.2186],[703,0,8.36951]]],[[1388.08,7293.72,0],0,true,[[3433,1,199.228],[1011,1,26.2738],[1618,1,14.1538]]],[[5874.27,4769.65,0],0,true,[[2281,1,24.0264],[3255,1,101.824],[1549,1,13.0663]]],[[4704.82,2742.25,0],0,true,[[3233,1,9.71808],[3203,0,4.79669],[2996,1,3.33532]]], +[[3231.01,776.773,0],0,false,[[3552,0,87.2301],[457,0,15.3282]]],[[4313.78,3010.42,0],0,true,[[1957,1,93.9235],[2984,1,21.5634],[1709,1,29.8268]]],[[5363.95,7685.68,0],0,true,[[281,1,12.8841],[3396,1,18.0382],[763,1,12.0688],[3862,1,0.927976],[3609,1,5.14428]]],[[3141.13,7466.72,0],0,false,[[2935,0,22.791],[1979,0,64.6414]]],[[6122.88,891.424,0],0,true,[[760,0,4.86978],[647,0,4.69406],[19,0,1.35216],[1777,0,6.84536]]], +[[4194.67,2829.63,0],0,false,[[2328,0,26.1134],[2420,0,27.3549]]],[[5525.22,5707.63,0],0,false,[[3898,0,26.6543],[3064,0,82.4162]]],[[3784.93,1732.56,0],0,false,[[1438,2,338.736],[2544,2,20.2752]]],[[5768.97,1843.81,0],0,true,[[1127,1,21.132],[1313,1,21.4844],[1206,1,18.0812],[3507,1,10.9939]]],[[4108.43,5795.69,0],0,false,[[142,0,24.7815],[2782,0,94.4184]]], +[[2750.26,5193.72,0],0,false,[[1493,0,38.0866],[2687,0,144.407]]],[[5828.86,6379.96,0],0,true,[[3758,0,9.87336],[2990,0,82.267],[1536,0,13.3889]]],[[4281.11,6061.22,0],0,true,[[3673,2,19.5006],[535,2,13.8731],[2230,2,8.22924]]],[[936.878,4018.14,0],0,true,[[3790,0,26.8313],[2516,0,127.278],[3123,0,13.8422]]],[[3375.11,2682.95,0],0,false,[[1249,0,26.3807],[113,0,67.0338]]], +[[6194.41,6586.2,0],0,true,[[447,1,11.7081],[2113,0,94.8996],[2807,1,14.4306]]],[[998.956,236.165,0],0,true,[[3145,2,30.03],[747,2,378.039],[3363,2,13.4901],[1118,2,22.4904]]],[[3267.85,2358.98,0],0,false,[[2164,0,54.6887],[1013,0,22.4119]]],[[7784.89,1460.61,0],0,true,[[766,0,15.3395],[3583,0,233.753],[2458,0,13.1567],[1295,0,21.5604]]],[[509.033,3143.02,0],0,false,[[1069,0,216.869],[2466,0,19.4825]]], +[[3.84396,7101.38,0],0,false,[[2242,0,74.3637],[3256,0,138.917]]],[[3643.75,7986.69,0],0,false,[[2321,0,61.4054],[3779,0,133.026]]],[[3878.95,6816.81,0],0,false,[[612,1,230.129],[2054,1,197.866]]],[[4006.56,4577.52,0],0,true,[[2504,0,19.0574],[3712,0,16.4153],[2976,0,4.71414]]],[[1452.89,1185.32,0],0,true,[[407,1,111.761],[670,1,30.0776],[1442,1,13.3334]]], +[[4408.32,2990.13,0],0,false,[[485,2,31.9568],[1481,2,53.0174]]],[[7055.01,6618.49,0],0,false,[[1535,0,15.724],[3183,0,7.27867]]],[[6381.28,5474.16,0],0,false,[[1303,0,19.8268],[2183,0,79.3033]]],[[2856.23,4289.66,0],0,false,[[361,0,6.10053],[441,1,4.30077]]],[[2999.73,1988.42,0],0,true,[[2508,1,11.1221],[949,1,11.8511],[2133,1,19.2353]]], +[[1330.69,1461.44,0],0,false,[[1673,0,153.749],[3035,0,243.24]]],[[1801.88,163.149,0],0,true,[[1557,0,169.25],[3874,0,21.2585],[656,0,12.8091]]],[[3416.73,1536.66,0],0,true,[[315,2,31.0997],[373,2,182.232],[540,2,7.14531]]],[[1621.46,5963.35,0],0,true,[[1124,1,17.1718],[209,1,64.4252],[486,1,34.5211]]],[[7722.11,6709.35,0],0,true,[[3713,1,8.40369],[208,1,76.5089],[1185,1,13.2512]]], +[[2430.47,380.753,0],0,true,[[1877,0,110.033],[102,0,9.90121],[1856,1,6.17675]]],[[4817.55,5215.14,0],0,false,[[702,0,29.4318],[199,0,47.5758]]],[[4508.09,2385.15,0],0,true,[[1965,2,12.2385],[2297,2,16.6663],[1131,2,3.48269]]],[[676.809,6604.52,0],0,false,[[3231,0,271.724],[3554,0,58.2607]]],[[8010.98,6548.64,0],0,false,[[1836,0,25.3159]]], +[[2119.01,2018.15,0],0,false,[[1095,1,163.665],[1318,1,368.643]]],[[7791.89,7822.54,0],0,false,[[3465,1,61.0283],[1997,1,52.9987]]],[[1140.69,4723.06,0],0,true,[[2383,0,113.032],[1768,0,16.7478],[181,0,8.83183],[2364,0,19.7612]]],[[5130.92,6963.29,0],0,false,[[2998,2,3.59857],[391,0,135.379]]],[[4334.72,2944.74,0],0,true,[[1713,1,23.2939],[3307,1,36.9612],[1529,1,6.14207]]], +[[7701.55,6419.61,0],0,false,[[777,0,61.2012],[1147,0,36.6484],[370,0,12.2618]]],[[5244.34,1813.81,0],0,true,[[204,1,23.7846],[772,1,96.2562],[1694,1,11.1237],[8,1,10.2463]]],[[900.077,6140.98,0],0,false,[[3510,0,51.3186],[1324,0,44.7641]]],[[6943.2,3058.53,0],0,true,[[963,0,11.5845],[3557,0,125.167],[2004,0,21.5447]]],[[8179.14,5392.71,0],0,true,[[3703,0,15.2677],[2766,0,9.87567],[155,0,7.03875]]], +[[7130.25,2165.25,0],0,false,[[3636,0,320.56],[2267,0,234.527]]],[[6025.52,5476.79,0],0,true,[[2868,1,8.7032],[131,0,45.6053],[1162,1,10.8702]]],[[5802.09,6720.86,0],0,false,[[104,0,13.5391]]],[[4774.57,3443.14,0],0,false,[[3503,0,20.8395],[638,0,12.693]]],[[7072.56,5555.68,0],0,false,[[799,0,7.48407],[3848,0,22.5753]]], +[[4029.39,4391,0],0,true,[[3152,2,74.8473],[1153,2,85.3884],[2836,2,9.08883]]],[[6910.13,5405.14,0],0,false,[[2612,1,99.2769],[388,1,202.692]]],[[6096.78,7794.77,0],0,false,[[1712,1,243.141],[1899,1,26.2655]]],[[2914.52,3312.8,0],0,true,[[347,0,22.628],[3726,0,22.7427],[3726,0,22.7427],[347,0,22.628],[883,0,0]]],[[2973.58,6905.49,0],0,true,[[2067,0,27.121],[1952,0,32.5291],[809,0,15.2383]]], +[[4338.7,2964.75,0],0,false,[[1213,1,8.14721],[668,1,35.6744]]],[[5399.46,6241.19,0],0,false,[[3551,0,221.875],[2371,0,39.0642]]],[[5943.77,4937.6,0],0,true,[[2605,1,18.6299],[1302,1,195.948],[1832,1,12.5863]]],[[347.283,4434.02,0],0,true,[[213,0,5.89037],[998,0,0.751806],[2469,0,6.50185],[3750,0,12.4545]]],[[3233.81,7425.44,0],0,false,[[1563,0,13.7596],[793,0,20.1421]]], +[[2863.23,3244.8,0],0,true,[[1385,0,21.5058],[2232,0,20.586],[3647,0,21.1988],[1895,0,0.124067],[1385,0,21.4419]]],[[6771.05,1746.36,0],0,true,[[418,0,27.501],[1576,0,165.19],[3191,0,13.2504]]],[[5398.7,5446.14,0],0,false,[[3099,0,35.6708],[47,0,309.972]]],[[3245.23,7167.33,0],0,false,[[303,0,15.2478],[2535,0,87.6884]]],[[5138.89,3005.93,0],0,false,[[3102,0,123.004],[2903,0,340.95]]], +[[7628.27,6581.73,0],0,true,[[3512,0,119.194],[2776,0,10.9727],[2579,0,10.6021]]],[[563.467,3125.57,0],0,false,[[2466,0,38.2969],[211,0,193.998]]],[[8097.2,1287.67,0],0,false,[[3208,0,203.716],[2176,0,19.1138]]],[[64.3493,5102.2,0],0,false,[[3901,1,10.5766],[428,1,14.2385]]],[[2391.9,4566.92,0],0,true,[[1822,0,254.281],[1059,0,279.624],[2581,0,113.231]]], +[[1421.08,3359.62,0],0,false,[[1334,1,28.0647],[1441,1,201.551]]],[[3178.9,2219.11,0],0,true,[[3800,0,23.253],[1859,0,307.713],[946,0,101.514]]],[[5854.22,7643.13,0],0,true,[[3324,0,18.9508],[3602,0,26.3584],[1272,0,21.7716]]],[[4970.54,5317.13,0],0,false,[[2236,1,153.275],[1801,1,124.907]]],[[7698.54,3904.25,0],0,true,[[1567,0,8.80036],[2664,0,91.6026],[3502,0,8.20686]]], +[[3421.01,4913.09,0],0,false,[[1002,0,38.2854]]],[[2070.79,7490.34,0],0,false,[[1932,0,106.356],[3410,0,25.7641]]],[[6679.37,894.955,0],0,false,[[3736,0,122.049],[2518,0,81.6758]]],[[873.419,1191.63,0],0,false,[[1901,0,149.852]]],[[4026.73,5438.59,0],0,false,[[3526,1,11.7528],[2983,1,19.8417]]], +[[1332.31,3478.25,0],0,false,[[354,0,85.895],[2080,0,27.5718]]],[[7486.29,6489.71,0],0,false,[[2991,1,133.796],[1467,1,28.7357]]],[[6436.13,5195.31,0.000305176],0,false,[[444,0,7.43323],[2960,0,7.43323]]],[[4875.37,4008.31,0],0,false,[[2286,1,94.8972],[1547,1,29.7542]]],[[7517,6404.36,0],0,true,[[3625,0,50.8256],[915,0,10.4825],[1686,0,3.61604]]], +[[7519.21,6414.6,0],0,true,[[1686,0,11.0138],[921,0,67.7305],[914,0,10.4825]]],[[5183.11,1739.15,0],0,false,[[2084,1,24.707],[1076,1,131.664]]],[[955.766,3885.46,0],0,false,[[1497,0,294.173],[1803,0,23.3521]]],[[181.374,5340.86,0],0,true,[[1261,0,19.6854],[3213,0,211.545],[1624,0,9.56393]]],[[1984.82,6699.81,0],0,false,[[2273,0,202.686],[3056,0,136.488]]], +[[1200.99,1785.01,0],0,false,[[1757,1,160.791],[731,1,23.2287]]],[[7524.43,6482.05,0],0,true,[[915,0,67.7305],[53,1,6.31036],[1467,1,10.5362]]],[[3520.33,6682.04,0],0,true,[[341,1,11.9582],[1555,1,15.599],[2145,1,18.2705],[804,1,7.38704]]],[[1125.74,5676.08,0],0,false,[[2140,0,100.698],[1028,0,11.7206]]],[[4545.58,3240.85,0],0,false,[[3424,1,33.8937],[1863,1,30.5216]]], +[[5173.16,6203.54,0],0,true,[[3825,0,9.61617],[2124,0,177.264],[3551,0,10.497]]],[[354.495,4417.52,0],0,true,[[3314,0,0.750435],[253,0,6.16016],[1559,0,11.0758],[586,0,5.80098]]],[[1281.51,7241.85,0],0,false,[[1421,0,105.199],[3909,0,122.339]]],[[1427.97,4310.96,0],0,false,[[1947,0,170.942],[1116,0,62.5928]]],[[7115.53,6096.8,0],0,true,[[2620,0,4.40898],[212,0,6.22901],[2387,0,2.81765]]], +[[7403.67,2962.53,0],0,true,[[215,1,27.6254],[1447,1,222.869],[3197,1,11.2958]]],[[5061.19,6824.78,0],0,true,[[2747,2,16.6705],[997,1,18.0963],[1991,2,9.63599],[2969,1,5.14191]]],[[3943.17,6433.54,0],0,true,[[1972,0,35.8925],[3052,0,13.7195],[720,0,8.04411]]],[[2198.84,5589.75,0],0,false,[[3868,0,85.6517],[1588,0,113.108]]],[[5532.71,1675.19,0],0,false,[[139,0,29.3079],[421,0,102.944]]], +[[1614.88,8023.14,0],0,false,[[3527,0,7.34492],[2152,1,2.82978]]],[[3698.92,588.245,0],0,false,[[1229,0,92.9454],[2298,0,192.379]]],[[4477.2,800.345,0],0,false,[[2858,0,129.457]]],[[4392.26,2883.94,0],0,true,[[1143,1,38.5947],[725,1,8.30528],[1756,2,15.0604]]],[[428.823,106.411,0],0,true,[[2745,0,97.3103],[2330,0,30.3761],[1868,0,16.9404]]], +[[5578.72,1615.06,0],0,false,[[3853,1,29.3524],[75,1,287.298]]],[[3762.02,1665.47,0],0,false,[[1433,1,221.71],[3780,1,49.5823]]],[[2785.51,3303.1,0],0,false,[[203,1,30.329],[1269,1,30.1475]]],[[2197.84,5257.5,0],0,false,[[1719,0,66.1302],[1252,0,281.733]]],[[950.961,7576.53,0],0,false,[[1807,0,21.6408]]], +[[3280.21,4252.04,0],0,true,[[1539,0,18.9197],[2950,0,14.9527],[1464,0,13.1541]]],[[3202.84,2315.82,0],0,false,[[1013,0,83.9929],[901,0,101.514]]],[[5812.86,5951.75,0],0,false,[[3327,1,3.59973],[236,0,254.126]]],[[1408.11,2736.53,0],0,false,[[3053,1,93.8501],[2558,1,191.89]]],[[2987.94,1989.51,0],0,true,[[3135,1,153.624],[2133,1,28.4294],[854,1,11.8511]]], +[[291.397,7316.31,0],0,false,[[2883,0,9.71894]]],[[2397.48,2784.05,0],0,false,[[1510,0,309.259],[3398,0,135.873]]],[[2947.98,1834.98,0],0,false,[[2646,0,38.5061],[2453,1,7.04612]]],[[493.027,3033.76,0],0,true,[[2404,0,36.509],[2002,0,11.7047],[2038,0,10.4258]]],[[5301.59,6806.66,0],0,false,[[2737,1,106.83],[1446,1,179.353]]], +[[1510.1,509.576,0],0,true,[[2547,2,17.6005],[1888,0,249.315],[103,2,17.2575]]],[[1768.87,7149.89,0],0,false,[[2215,1,24.3747],[1763,1,168.739]]],[[4295.71,4046.3,0],0,true,[[2660,0,69.9824],[2672,0,24.7023],[1504,1,4.78059]]],[[6096.21,6165.56,0],0,false,[[651,0,29.749],[1003,0,111.171]]],[[6913.14,1949.91,0],0,false,[[3849,0,101.471],[1697,0,24.4037]]], +[[551.163,8037.41,0],0,true,[[1292,0,7.06356],[3125,0,20.2056],[505,0,7.0122]]],[[3789.51,6249.89,0],0,false,[[2359,0,94.5638],[3149,0,83.2176]]],[[3459.36,2163.44,0],0,false,[[2678,0,126.322],[2563,0,53.5626]]],[[6944.59,3070.03,0],0,true,[[873,0,11.5845],[138,0,320.991],[2004,0,12.1121]]],[[3694.09,3792.54,0],0,false,[[2697,0,208.083],[1390,0,156.339]]], +[[6933.2,4366.08,0],0,false,[[696,1,26.187],[112,1,26.2428]]],[[1034.29,6030.27,0],0,true,[[2843,0,241.5],[509,0,7.90083],[2634,1,10.9185]]],[[3375.63,4978.84,0],0,true,[[1316,1,302.027],[1267,1,17.9031],[1844,1,10.3338]]],[[1695.85,3276.36,0],0,true,[[2809,1,198.964],[531,1,19.7899],[91,1,6.01042]]],[[5085.78,4608.3,0],0,false,[[537,1,24.0616],[1842,1,117.451]]], +[[2877.05,7038.99,0],0,false,[[3704,0,36.4361],[2574,0,161.111]]],[[4454.47,7983.8,0],0,false,[[1419,0,24.9522],[3652,0,94.662]]],[[5133.54,4301.74,0],0,true,[[3798,0,64.1787],[1222,0,153.977],[2599,0,3.60651]]],[[393.71,2072.09,0],0,false,[[3369,0,78.4784]]],[[931.545,4872.63,0],0,true,[[289,1,22.8019],[3303,1,355.099],[176,1,14.8753]]], +[[343.452,7991.71,0],0,false,[[3629,0,72.4414]]],[[4219.14,7003.4,0],0,true,[[2130,1,29.8378],[3390,1,62.6555],[3599,1,16.4629]]],[[3196.8,791.101,0],0,false,[[2403,0,266.827],[2560,0,67.6582]]],[[6119.02,4227.17,0],0,false,[[1169,0,90.3657]]],[[7029.45,1542.82,0],0,true,[[1731,0,12.6585],[2313,0,9.21152],[122,0,12.0732]]], +[[424.468,7730.62,0],0,true,[[1629,0,14.274],[2948,0,74.2062],[2522,0,11.2544]]],[[4291.34,5455.39,0],0,false,[[2472,0,115.294],[2322,0,32.1485]]],[[4221.71,2828.79,0],0,true,[[1873,1,30.5319],[2965,1,31.8805],[2420,1,18.21]]],[[2777.23,6693.81,0],0,false,[[2717,0,211.906],[809,0,298.794]]],[[2873.35,7011.45,0],0,false,[[3704,0,30.9451],[13,0,62.7316]]], +[[6089.09,6002.61,0],0,false,[[236,0,45.8453],[44,0,114.012]]],[[4698.64,1142.39,0],0,false,[[2793,0,16.2065]]],[[4749.3,3592.01,0],0,false,[[563,1,32.332],[3743,1,58.3609]]],[[260.7,6106.72,0],0,true,[[1440,1,347.831],[3565,1,26.5466],[2259,1,15.5836]]],[[2883.74,3924.86,0],0,false,[[3362,0,150.579],[2531,0,150.93]]], +[[2527.68,8188.27,0],0,false,[[1927,0,324.165]]],[[5835.51,5785.34,0],0,false,[[2810,1,74.5514],[2980,1,100.055]]],[[1136.62,4830.14,0],0,true,[[181,0,101.837],[678,1,10.3746],[2773,1,12.6013]]],[[6981.65,4349.97,0],0,false,[[180,0,20.8653],[3199,0,22.409]]],[[4817.8,2091.8,0],0,false,[[1548,2,216.235],[3321,2,118.104]]], +[[3913.97,1355.58,0],0,true,[[2530,0,18.285],[3516,0,5.53355],[1238,0,3.40425]]],[[7894.83,835.916,0],0,false,[[3487,0,349.807],[1767,0,72.9786]]],[[5046.24,6834.88,0],0,true,[[931,1,18.0963],[3155,1,23.1657],[475,1,7.09731]]],[[347.618,4434.69,0],0,true,[[213,0,6.50207],[3750,0,11.7765],[2937,0,12.4546],[888,0,0.751806]]],[[2847.17,4135.57,0],0,true,[[1494,1,13.383],[3824,1,92.8534],[1710,1,26.4267]]], +[[2113.22,4580.38,0],0,false,[[2956,1,23.5197],[514,1,80.0582]]],[[6514.84,513.097,0],0,false,[[1902,0,111.718],[1417,0,181.933]]],[[3396.14,4941.19,0],0,false,[[1844,0,44.6637],[905,0,38.2854]]],[[6167.76,6080.75,0],0,true,[[958,0,111.171],[44,0,24.22],[227,0,96.2092]]],[[6947.73,1065.52,0],0,true,[[3699,0,15.9334],[692,0,277.664],[3894,0,13.3069],[135,0,16.9565]]], +[[4031.98,7984.67,0],0,true,[[2847,0,382.209],[1330,0,30.294],[2656,0,26.5634]]],[[8022.4,1179.76,0],0,false,[[3248,0,9.56884],[757,0,102.825]]],[[7374.95,1160.14,0],0,true,[[3543,0,37.7032],[2238,0,19.5894],[770,0,8.19915]]],[[7047.41,4361.14,0],0,true,[[200,1,9.2723],[3461,1,14.3257],[3606,1,5.37275]]],[[3344.64,7551.98,0],0,false,[[793,0,186.722],[794,0,32.4495]]], +[[2901.89,1853.65,0],0,true,[[1271,0,135.381],[1373,1,4.59465],[2638,1,2.51198]]],[[1408.37,7277.13,0],0,true,[[822,1,26.2738],[742,1,156.04],[1618,1,13.0282]]],[[4761.3,1924.66,0],0,false,[[2802,0,147.092],[3831,0,57.7057]]],[[3257.56,2349.36,0],0,true,[[395,0,23.9629],[946,0,83.9929],[842,0,22.4119]]],[[2498.71,7481.7,0],0,true,[[1923,0,6.22731],[429,0,3.50378],[2156,0,5.63861],[1284,0,15.7241]]], +[[1210.73,3479.35,0],0,false,[[1840,1,109.583],[3241,1,59.3265]]],[[2378.18,3127.14,0],0,false,[[2204,0,90.7743],[3886,0,330.106]]],[[5552.54,4350.12,0],0,false,[[3300,1,25.1186],[383,1,25.7515]]],[[6785.43,2073.65,0],0,false,[[143,0,92.0227],[680,0,53.0511]]],[[418.865,1389.37,0],0,false,[[2709,0,79.7748],[1279,0,62.7661]]], +[[5813.47,6402.45,0],0,false,[[1226,1,11.4284],[1536,0,14.1012]]],[[3028.45,1327.04,0],0,true,[[1460,2,225.515],[320,2,24.2847],[550,2,10.9073]]],[[4477.03,1456.7,0],0,true,[[1296,0,23.9705],[1058,0,64.3904],[2240,0,11.3612]]],[[4293.62,6286.22,0],0,true,[[597,0,7.08997],[1890,0,6.71841],[214,0,7.36189]]],[[4688.62,5832.81,0],0,true,[[590,0,331.47],[1961,0,12.0527],[1610,0,15.9702]]], +[[4337.26,6114.34,0],0,false,[[1542,2,15.7779],[3673,2,57.8075]]],[[1810.04,1929.54,0],0,false,[[2455,1,172.426],[3864,1,25.0232]]],[[7076.1,6479.25,0],0,false,[[386,1,330.939],[1730,1,18.2469]]],[[1136.31,5680.79,0],0,true,[[3521,0,17.2638],[576,0,141.074],[923,0,11.7206]]],[[4226.72,2876.27,0],0,false,[[677,1,36.1319],[328,1,5.36129]]], +[[2593.98,6365.74,0],0,false,[[1620,0,204.91],[683,0,313.964]]],[[5241.12,7672.39,0],0,true,[[2427,0,8.25559],[3393,0,36.0252],[2065,2,12.0699]]],[[4782.21,3703.77,0],0,false,[[1725,1,5.91037],[3835,0,33.5912]]],[[2681.75,7486.5,0],0,false,[[2829,0,34.1036],[1914,0,201.788]]],[[5469.87,6787.71,0],0,true,[[610,1,10.6429],[2724,1,46.2591],[3299,1,18.0224]]], +[[7633.03,7864.83,0],0,false,[[415,0,40.1772],[1644,0,125.866]]],[[6419.32,6248.58,0],0,false,[[2411,0,76.4747],[196,0,96.5588]]],[[2882.17,4425.13,0],0,false,[[1675,0,48.7585],[2015,0,48.4638]]],[[1336.61,3449.58,0],0,true,[[2228,1,136.095],[1840,1,21.4814],[2080,1,4.90137]]],[[7780.32,704.594,0],0,true,[[2244,0,11.7315],[477,0,20.803],[2866,0,19.8744]]], +[[5694.96,5214.42,0],0,false,[[2732,0,204.387]]],[[7759.79,627.71,0],0,false,[[3639,0,57.2653],[382,0,197.983]]],[[4063.5,5359.65,0],0,true,[[445,1,6.65909],[3687,1,5.73412],[201,2,17.4286]]],[[2671.18,7738.05,0],0,true,[[2539,0,68.3343],[3584,0,75.1864],[1310,0,45.6847]]],[[4984.12,1491.48,0],0,false,[[2576,1,22.7623],[3404,1,308.451]]], +[[5690.17,6552.96,0],0,false,[[3885,1,24.5749],[2618,1,179.741]]],[[439.419,2494.37,0],0,true,[[2059,0,86.0876],[1309,0,18.7791],[21,0,28.7036]]],[[2727.93,3005.1,0],0,false,[[3775,1,22.9868],[3313,1,252.488]]],[[7715.05,2786.06,0],0,false,[[1910,0,186.082],[798,0,360.095]]],[[3524.9,2287.33,0],0,false,[[3731,0,30.0316],[2678,0,24.789]]], +[[2998.98,1107.96,0],0,true,[[1080,0,24.916],[3031,0,15.85],[1415,0,7.96121]]],[[4501.45,951.741,0],0,true,[[716,0,143.753],[2858,0,23.9159],[134,0,376.74]]],[[7789.57,7215.56,0],0,true,[[264,0,262.532],[3075,0,13.1433],[1285,0,15.13]]],[[7104.67,7988.02,-0.00012207],0,false,[[1753,0,81.6824],[1159,0,39.5962]]],[[3575.86,6568.1,0],0,true,[[2464,1,16.8067],[506,1,13.0822],[2543,1,6.5002]]], +[[6882.54,3790.29,0],0,true,[[1948,0,100.146],[338,0,14.8485],[2256,0,6.303]]],[[8048.85,1318.52,0],0,false,[[1762,0,42.2536],[177,0,256.597]]],[[7828.27,5632.02,0],0,false,[[2135,1,183.236],[1395,1,219.326]]],[[4513.15,1407.16,0],0,false,[[1022,0,64.3904],[3753,0,218.035]]],[[2630.11,4433.28,0],0,false,[[899,0,279.624],[3372,0,12.5497]]], +[[1867.72,908.213,0],0,true,[[2181,0,346.644],[3454,0,18.4429],[2407,0,9.50005]]],[[7254.31,6296.29,0],0,true,[[721,1,12.0407],[3118,1,98.9123],[1508,1,8.82464]]],[[4761.1,3785.56,0],0,false,[[3768,1,205.081],[1817,1,32.8051]]],[[2726.38,992.309,0],0,true,[[3883,1,21.9119],[2879,1,151.142],[2187,1,9.40372]]],[[441.686,1322.19,0],0,false,[[816,0,46.5188],[3281,0,47.6811]]], +[[203.185,416.837,0],0,false,[[2009,0,123.874],[358,0,51.5716]]],[[2719.53,7049.61,0],0,false,[[2287,0,218.671],[1778,0,28.9096]]],[[4534.18,3280.34,0],0,false,[[3578,2,42.5344],[2921,2,41.0168]]],[[4164.97,4216.01,0],0,false,[[551,0,43.0716]]],[[350.194,3261.17,0],0,false,[[3101,0,210.288],[844,0,216.869]]], +[[4112.23,309.25,0],0,false,[[3351,0,211.692],[1241,0,331.965]]],[[5378.75,7347.94,0],0,false,[[1242,0,116.003]]],[[1333.81,8186.63,0],0,false,[[2799,1,183.289]]],[[7259.62,8023.15,-0.000366211],0,false,[[545,0,27.2332],[1753,0,82.2534]]],[[4357,6128.25,0],0,true,[[1542,2,8.77892],[2034,0,63.9206],[276,2,13.5726]]], +[[7044.87,6153.26,0],0,false,[[212,0,112.43],[623,0,174.287]]],[[5107.37,1846.72,0],0,false,[[916,1,131.664],[1716,1,166.72]]],[[8123.25,4958.18,0],0,true,[[3634,0,70.2996],[2679,0,10.3451],[3062,0,22.7003]]],[[5641.66,7285.52,0],0,false,[[3129,0,192.345],[3834,0,22.0381]]],[[5416.97,3410,0],0,true,[[3558,0,20.9043],[3280,0,163.719],[2056,0,132.352]]], +[[3013.29,1087.57,0],0,false,[[1155,0,123.713],[1050,0,24.916]]],[[2885.89,1369.07,0],0,false,[[2392,1,117.217],[815,1,237.711]]],[[4187.94,4045.77,0.00012207],0,false,[[146,0,16.0831]]],[[1185.86,1127.49,0],0,false,[[2882,1,29.6091],[528,1,230.845]]],[[2548.54,168.723,0],0,false,[[452,0,27.712],[355,0,25.1066]]], +[[3348.3,3950.13,0],0,false,[[1431,0,142.435],[364,0,170.982]]],[[5431.87,7903.67,0],0,false,[[3396,1,210.736],[3210,1,28.5016]]],[[7743.03,4178.16,0],0,true,[[2779,0,8.23724],[3353,0,296.577],[2199,0,9.24235]]],[[1807.73,7334.03,0],0,true,[[3462,0,149.277],[406,0,43.7998],[31,0,78.3449]]],[[394.485,880.301,0],0,true,[[3614,1,19.1993],[1897,1,71.4632],[2957,1,10.0141]]], +[[7662.88,3821.04,0],0,false,[[1567,0,82.7137],[4,0,299.52]]],[[6719.88,7315.88,0],0,true,[[3292,1,93.0026],[2699,1,24.3933],[1265,1,10.9638]]],[[6146.68,1987.98,0],0,false,[[1967,1,118.218],[1127,1,384.383]]],[[4021.62,4017.47,0],0,false,[[2196,1,19.9758],[2263,1,228.824]]],[[6270.34,6608.78,0],0,true,[[2248,1,22.3594],[2807,1,65.8906],[2808,1,8.42393],[2871,1,11.7536]]], +[[1955.73,2007.85,0],0,true,[[3888,2,15.7225],[865,1,163.665],[2658,1,13.6829]]],[[6005.12,7777.48,0],0,true,[[3477,0,53.0212],[3265,0,18.5057],[3059,0,93.1331]]],[[1824.83,1941.85,0],0,false,[[3864,1,6.51117],[1565,0,40.466]]],[[4417.13,6083.03,0],0,true,[[2034,0,12.1065],[2265,0,177.106],[404,0,7.35234]]],[[1196.49,2526.09,0],0,true,[[3042,1,26.8093],[1758,1,209.963],[2649,1,9.2168]]], +[[2719.91,2534.59,0],0,false,[[3679,0,18.3034],[374,1,1.69449]]],[[7175.6,4361.95,0],0,true,[[2304,0,19.1997],[800,0,206.663],[2803,1,23.9542]]],[[4596.3,2255.63,0],0,false,[[56,2,25.6217],[1548,2,59.86]]],[[3280.46,170.012,0],0,false,[[2195,0,142.237],[284,0,114.906]]],[[7470.25,7885.13,0],0,false,[[1644,0,143.082],[3733,0,79.1716]]], +[[345.327,258.088,0],0,false,[[2476,0,7.28991],[358,0,182.161]]],[[5191.55,393.603,0],0,true,[[1516,0,3.51849],[3488,0,0.398322],[1741,0,8.29164]]],[[8186.69,1897.18,0],0,false,[[1533,0,88.9613]]],[[3853.4,3660.09,0],0,false,[[3317,1,35.582],[1550,1,163.757]]],[[3150.48,4493.9,0],0,false,[[3365,0,242.778],[1539,0,259.382]]], +[[6647.41,358.247,0],0,false,[[1417,0,23.3753],[3591,0,14.9996]]],[[2947,6949.89,0],0,false,[[2032,1,17.6036],[2735,1,11.6268]]],[[5826.2,637.457,0],0,false,[[2503,0,14.5492],[151,0,8.87456]]],[[347.569,4541.9,0],0,true,[[3242,0,17.8792],[2282,0,18.3415],[1595,0,0.749854],[3812,0,19.0181]]],[[398.089,1264.43,0],0,false,[[2988,0,27.9443],[816,0,26.1357]]], +[[8035.58,1708.98,0],0,true,[[1533,0,155.341],[2910,0,12.4902],[1987,0,12.2404]]],[[1365.99,4316.42,0],0,false,[[928,0,62.5928],[2661,0,55.8784]]],[[7455.7,3128.26,0],0,true,[[2355,0,7.63824],[1891,0,17.6127],[1881,0,11.9733]]],[[1005.86,257.563,0],0,true,[[2144,0,92.1938],[3363,0,15.1343],[841,2,22.4904]]],[[3701.26,2905.69,0],0,false,[[3205,0,205.364],[3310,0,303.061]]], +[[5446.3,2231.5,0],0,true,[[1546,1,24.5863],[417,1,123.735],[1921,1,20.5531],[490,1,14.7933]]],[[3441.5,2257.94,0],0,true,[[1240,1,41.9075],[1237,1,22.5793],[3774,1,14.2572]]],[[6952.75,6794.33,0],0,false,[[2582,0,199.281]]],[[805.533,619.323,0],0,false,[[3912,0,155.933],[3742,0,202.321]]],[[1638.59,5962.28,0],0,true,[[858,1,17.1718],[385,1,62.9292],[486,1,18.2711]]], +[[3791.26,6541.56,0],0,true,[[2537,0,9.23598],[2642,0,226.327],[454,0,8.92154]]],[[950.122,3472.91,0],0,false,[[1659,1,27.9126],[1509,1,81.0722],[787,0,9.88703]]],[[5789.58,1848.33,0],0,false,[[1092,1,384.383],[833,1,21.132]]],[[5509.57,1247.61,0],0,false,[[297,0,6.50441],[2301,1,1.04268]]],[[726.119,4312.33,0],0,false,[[2174,0,128.769],[1838,0,172.327]]], +[[5569.89,2218.94,0],0,true,[[273,1,12.8874],[2442,0,52.5371],[70,1,10.7347]]],[[4504.63,2385.51,0],0,true,[[256,0,140.897],[1965,2,11.565],[862,2,3.48269],[2297,2,18.2494]]],[[1843.25,4892.36,0],0,true,[[207,0,12.4238],[277,0,50.4212],[3651,0,5.26755]]],[[2276.55,924.232,0],0,false,[[3080,2,1.65769],[2076,0,7.55409]]],[[1938.61,3615.43,0],0,false,[[3504,0,342.134],[352,0,61.4924]]], +[[2279.88,404.788,0],0,false,[[1815,0,62.7198]]],[[6201.61,2170.83,0],0,true,[[3106,1,17.051],[1969,1,304.382],[2757,1,21.1769]]],[[5745.22,1162.75,0],0,false,[[2221,0,163.014],[3592,0,177.726]]],[[5767.85,5114.33,0],0,false,[[3467,0,304.231],[1191,0,254.009]]],[[8187.22,1637.98,0],0,false,[[3113,0,84.0657]]], +[[4049.58,4865.72,0],0,false,[[3326,0,172.585],[3644,0,185.583]]],[[3571.97,6595.16,0],0,false,[[3336,1,1.90404],[484,0,11.0378]]],[[3075.11,6791.23,0],0,false,[[1952,0,120.357],[1435,0,82.0962]]],[[4430.39,2883.63,0],0,false,[[2323,1,82.2416],[938,1,38.5947]]],[[1492.5,3341.02,0],0,false,[[3601,1,9.52435],[556,0,121.082]]], +[[753.366,5753.19,0],0,false,[[462,0,246.066],[311,0,230.929]]],[[3534.47,2313.98,0],0,false,[[2064,1,50.9402],[387,1,14.3331]]],[[7713.65,6453.74,0],0,true,[[3682,0,12.782],[2409,0,4.58847],[870,0,36.6484]]],[[4404.27,3205.64,0],0,true,[[2629,0,6.37406],[1355,0,10.521],[3182,0,17.5652]]],[[2381.13,6175.78,0],0,false,[[1338,0,136.994],[2300,0,218.654]]], +[[1135.36,3484.32,0],0,true,[[582,0,124.585],[2820,0,27.6644],[3241,1,18.6715],[664,1,16.4088]]],[[3636.12,1123.89,0],0,true,[[2405,0,61.2111],[3596,0,28.7987],[1630,0,6.75856]]],[[1024.22,3817,0],0,true,[[2389,0,22.3517],[2069,0,187.348],[1916,0,13.0369],[3617,0,22.9985]]],[[4047.58,4308.62,0],0,true,[[880,2,85.3884],[1670,2,8.10309],[3540,2,8.13828]]],[[3792.42,1036.66,0],0,false,[[218,0,60.5253],[87,0,109.565]]], +[[3104.79,1006.88,0],0,false,[[2210,0,193.865],[1080,0,123.713]]],[[4248.15,6946.31,0],0,true,[[2081,0,12.6474],[3599,0,57.7441],[266,0,7.86288]]],[[4605.5,5189.97,0],0,true,[[2551,1,282.796],[2035,1,20.1549],[307,1,2.64503]]],[[362.15,4759.12,0],0,true,[[2431,0,7.48662],[3142,0,6.55108],[1589,0,0.749169],[1183,0,8.14691]]],[[7066.49,7977.54,0],0,false,[[1740,0,356.879],[1053,0,39.5962]]], +[[2596.05,3663.07,0],0,false,[[3079,0,230.933],[2401,0,40.3218]]],[[5515.7,4163.36,0],0,false,[[1747,0,18.6306],[2760,0,141.167]]],[[6019.72,5485.95,0],0,true,[[2868,1,18.1384],[2158,1,138.601],[876,1,10.8702]]],[[5123.03,3575.28,0],0,false,[[2722,0,197.082],[2818,0,315.346]]],[[6578.29,3657.72,0],0,true,[[3431,0,16.772],[296,0,117.917],[2804,0,12.5801],[3165,0,12.5077]]], +[[330.955,8188.93,0],0,false,[[3629,0,180.601]]],[[2814.94,3361.18,0],0,false,[[2540,1,166.679],[3166,1,60.0714]]],[[2387.29,7192.76,0],0,true,[[3024,0,137.063],[28,0,26.0279],[1622,0,26.7319]]],[[3048.53,5583.04,0],0,true,[[1625,0,149.364],[455,0,5.5768],[2985,0,15.5328]]],[[6206.88,4247.57,0],0,false,[[978,0,90.3657],[1498,0,77.4155]]], +[[6265.9,779.757,0],0,false,[[2595,0,19.534],[2775,0,224.205]]],[[4339.57,8132.74,0],0,false,[[3269,0,29.2543],[538,0,54.5371]]],[[3545.14,4184.47,0],0,false,[[1924,0,145.598]]],[[1352.56,1836.63,-0.44416],0,false,[[1358,2,15.5925],[3331,2,5.01793]]],[[2595.77,164.131,0],0,false,[[355,0,22.4208],[2050,0,42.809]]], +[[4885.68,820.259,0],0,true,[[3406,1,68.138],[69,1,26.9993],[2379,1,12.7373],[3072,1,20.1116]]],[[5681.05,2191.18,0],0,false,[[3341,1,76.231],[3871,1,21.966]]],[[349.737,4624.06,0],0,true,[[3815,0,15.7355],[2098,0,0.749428],[2475,0,16.4838],[595,0,13.0475]]],[[7280.72,3472.68,0],0,false,[[98,1,94.367],[1499,1,230.905]]],[[4092.5,3393.79,0],0,false,[[2111,0,62.7656],[3311,1,11.1965]]], +[[364.429,4655.54,0],0,true,[[2555,0,12.8373],[2454,0,0.749197],[3215,0,13.562],[1705,0,18.4832]]],[[4545.18,2303.71,0],0,false,[[3908,2,27.5798],[2274,2,23.3606]]],[[5738.03,6125.55,0],0,false,[[1463,1,5.87109],[1288,0,151.096]]],[[362.203,4750.97,0],0,true,[[48,0,16.0448],[2431,0,0.749571],[334,0,16.7144],[1158,0,8.14691]]],[[2524.15,82.0392,0],0,true,[[2624,0,10.4944],[3184,0,2.94509],[71,0,0.566938],[3083,0,11.8278]]], +[[7734.86,6705.78,0],0,true,[[3795,1,14.14],[3713,1,8.90381],[1806,1,8.21143],[859,1,13.2512]]],[[1217.8,7959.33,0],0,true,[[2878,1,12.9836],[1926,1,61.3895],[3767,1,8.11839]]],[[5434.49,5445.17,0],0,true,[[497,1,32.2235],[3099,1,4.64322],[1486,1,10.2829]]],[[3573.85,5400.23,0],0,false,[[294,0,14.3094],[740,0,283.51]]],[[5089.17,1978.28,0],0,false,[[3443,1,90.1123],[634,1,84.0175]]], +[[873.466,6074.44,0],0,true,[[3588,0,10.7203],[2198,1,6.91229],[3663,1,9.28356]]],[[5891.08,5313.74,0],0,false,[[1138,0,254.009],[1727,0,164.233]]],[[4483.48,2667.68,0],0,false,[[3805,2,160.824],[1909,2,82.4651]]],[[3923.22,6021.56,0],0,false,[[2106,0,100.317],[2359,0,170.692]]],[[56.3013,7329.41,0],0,true,[[3020,0,78.9572],[1484,0,25.4562],[2186,0,12.4542]]], +[[1537.15,6858.83,0],0,true,[[2873,1,26.3319],[2587,1,152.354],[3631,1,4.65427]]],[[942.538,5202.7,0],0,false,[[3304,0,145.609],[176,0,334.878]]],[[6787.8,4251.58,0],0,false,[[456,0,229.477],[1200,0,110.916]]],[[2166.32,5464.68,0],0,false,[[3754,1,48.8069],[1761,1,23.7873]]],[[1451.48,4280.75,0],0,false,[[1995,0,287.392],[579,0,39.2403]]], +[[6843.73,4347.11,0],0,true,[[1197,0,110.916],[2924,0,4.62217],[2532,0,5.18467]]],[[6638.39,218.567,0],0,true,[[232,1,24.3051],[3251,1,381.822],[3870,1,15.1179]]],[[4233.05,6241.9,0],0,true,[[600,0,16.7343],[3043,0,46.3108],[2725,0,7.40225]]],[[2624.65,1912.38,0],0,false,[[1416,1,54.3616],[2276,1,201.733]]],[[8094.34,1259.75,0],0,true,[[2176,0,10.308],[3405,0,10.8411],[757,0,10.0082]]], +[[4557.86,2273.57,0],0,false,[[118,0,4.75891],[2693,0,39.2867]]],[[5757.28,1857.58,0],0,true,[[3507,0,28.8548],[3340,0,55.2973],[833,1,18.0812]]],[[6297.27,5907.92,0],0,false,[[2491,0,74.7881],[178,0,49.3773]]],[[5520.72,6684.3,0],0,true,[[2618,1,43.6144],[2617,1,9.71554],[1397,1,5.59032]]],[[4317.17,2885.79,0],0,true,[[221,1,33.0255],[2951,1,7.16947],[684,1,12.9362]]], +[[4007.93,8070.21,0],0,false,[[3459,0,17.6642]]],[[2215.14,6415.58,0],0,false,[[2300,0,96.3457],[165,1,14.3484]]],[[3325.48,2171.57,0],0,false,[[1449,1,194.756],[1614,1,58.9625]]],[[4332.61,2959.35,0],0,true,[[3408,1,14.6749],[1529,1,10.1738],[885,1,8.14721]]],[[4005.01,5389.84,0],0,true,[[3147,1,38.3975],[3573,1,24.7923],[2891,1,6.7226]]], +[[8069.08,4549.26,0],0,true,[[2150,1,117.158],[2941,1,29.3012],[646,1,18.3712]]],[[2886.56,3769.02,0],0,true,[[2216,0,7.97745],[3840,0,33.3009],[2531,0,10.4916]]],[[2768.98,7382.8,0],0,false,[[2798,1,195.762],[3789,1,25.5164]]],[[930.219,1762.5,0],0,false,[[3040,0,185.064],[2785,1,17.8697]]],[[3549.06,1025.43,0],0,false,[[1943,0,138.451]]], +[[4229.71,7500.83,0.000244141],0,false,[[3916,0,19.5572],[3452,0,14.6755],[1628,0,11.0745]]],[[6096.9,899.325,0],0,true,[[3349,0,8.61356],[2202,0,4.3569],[1282,0,5.72351]]],[[5009.28,4230.33,0],0,false,[[972,0,153.977],[2922,0,103.686]]],[[3803.7,3522.74,0],0,false,[[3706,1,11.8022],[1489,1,6.53025]]],[[4375.89,1990.77,0],0,true,[[3139,2,215.996],[1978,2,31.0698],[2872,2,10.6248]]], +[[7436.9,3116.64,0],0,true,[[3338,1,4.19725],[3197,1,151.896],[1891,1,4.51389]]],[[5806.62,6411.6,0],0,true,[[2591,1,14.9587],[3885,1,158.716],[1020,1,11.4284]]],[[7939.5,1542.62,0],0,true,[[177,0,13.0685],[1295,0,174.143],[3167,0,5.12029]]],[[6280.83,4856.92,0],0,true,[[3090,0,275.785],[3185,0,26.7711],[2723,0,14.1921]]],[[3784.66,619.57,0],0,false,[[2001,0,210.19],[936,0,92.9454]]], +[[565.003,7.91011,0],0,true,[[1384,2,5.88201],[2745,0,70.9707],[344,2,16.6555]]],[[4739.36,2864.19,0],0,true,[[2647,0,17.234],[3474,0,293.132],[2369,0,2.43542]]],[[4796.65,1094.94,0],0,false,[[1409,0,11.703],[546,0,6.65187]]],[[4562.36,4560.78,0],0,true,[[665,1,27.3009],[2930,1,65.3303],[240,1,9.00932]]],[[5608.35,1099.14,0],0,false,[[744,1,60.5946],[94,1,143.193]]], +[[6891.99,1937.43,0],0,true,[[1697,0,6.64294],[674,0,73.4017],[451,0,13.3718]]],[[1977.5,761.808,0],0,true,[[3494,2,283.142],[3111,2,30.5286],[2584,2,12.0731]]],[[3456.93,2274.42,0],0,true,[[1121,1,22.5793],[2064,1,40.149],[3774,1,9.27205]]],[[3913.08,1358.87,0],0,true,[[3516,0,8.92343],[995,0,3.40425],[2530,0,14.8817]]],[[7137.79,4380.37,0],0,true,[[2803,1,24.8573],[3803,1,79.6851],[259,1,11.2132]]], +[[3410.76,2229.55,0],0,true,[[2382,1,19.4389],[1121,1,41.9075],[194,1,10.5529]]],[[4221.28,1.36186,0],0,false,[[1070,0,331.965]]],[[5265.82,7373.94,0],0,false,[[1071,0,116.003],[260,2,14.4311]]],[[1147.2,2301.11,0],0,false,[[1758,1,21.6121],[301,1,169.044]]],[[4610.4,1998.84,0],0,true,[[3831,0,110.63],[2125,0,10.6722],[1424,0,9.93538]]], +[[6436.94,5479.05,0],0,false,[[1864,0,159.811],[3091,0,47.1624]]],[[4441.36,5394.97,0],0,false,[[2751,0,81.9893],[2524,0,208.331]]],[[1630.21,3226.74,0],0,true,[[1793,0,28.2863],[91,0,77.5173],[1769,0,10.5131],[2474,0,14.6569]]],[[4436.1,6304.18,0],0,true,[[2615,0,8.02302],[3537,0,73.2817],[400,0,3.73491]]],[[3378.54,2656.86,0],0,true,[[340,0,27.8644],[839,0,26.3807],[2126,0,43.5573]]], +[[4272.81,4247.55,3.233],0,false,[[751,0,18.2038],[96,0,115.809]]],[[636.93,1509.79,0],0,false,[[3281,0,223.811],[3377,0,286.83]]],[[2358.28,5027.17,0],0,false,[[943,0,281.733],[1298,0,305.966]]],[[5173.95,7938.78,0],0,true,[[1983,0,15.1791],[575,0,113.698],[1845,2,23.142]]],[[2644.13,3652.48,0],0,true,[[3016,1,26.9213],[376,1,48.8729],[2401,1,14.1311]]], +[[3887.68,5922.77,0],0,false,[[2436,1,40.5607],[3376,1,78.3431]]],[[2875.1,3173.56,0],0,false,[[2490,0,12.4413],[202,1,6.16811]]],[[5765.27,6082.49,0],0,true,[[785,1,117.448],[2143,1,29.1412],[478,1,6.45355]]],[[2823.37,7080.96,0],0,false,[[2165,0,64.991],[2706,0,126.051]]],[[2585.56,4279.48,0],0,false,[[55,0,229.233],[182,0,16.8207]]], +[[2009.15,3620.52,0],0,true,[[2633,0,7.63548],[2750,0,97.8191],[352,0,9.52516]]],[[200.831,5343.84,0],0,true,[[2511,0,272.045],[918,0,19.6854],[1624,0,10.9236]]],[[2696.67,4233.22,0],0,false,[[3482,0,114.951],[2093,0,148.233]]],[[6774.96,2914.32,0],0,true,[[205,1,174.182],[3481,1,17.371],[3621,1,20.746]]],[[5246.19,4167.8,0],0,false,[[2495,1,11.5853],[3798,0,160.617]]], +[[6713.05,7324.46,0],0,false,[[1091,1,10.9638],[3048,0,276.248]]],[[5263.94,1796.94,0],0,false,[[2412,1,253.348],[8,1,16.6281]]],[[3357.84,4977.39,0],0,true,[[1844,1,9.56753],[2887,1,201.417],[967,1,17.9031]]],[[5397.67,5848.35,0],0,false,[[1639,0,96.8861],[3898,0,171.203]]],[[2792.69,3274.3,0],0,true,[[3166,1,29.8588],[474,1,87.2653],[942,1,30.1475]]], +[[3584.12,8010.83,0],0,false,[[3532,1,263.557],[168,1,19.5082]]],[[2806.38,1945.21,0],0,false,[[3193,0,25.0883],[1010,0,135.381]]],[[5834.24,7651.32,0],0,false,[[902,0,21.7716],[3323,0,163.142]]],[[2742.97,979.649,0],0,false,[[2187,0,20.2863],[3276,0,158.951]]],[[3963.12,8060.91,0],0,false,[[278,0,221.498],[3459,0,28.1811]]], +[[3212.16,7179.41,0],0,false,[[1278,1,31.3059],[249,1,34.1931]]],[[4281.98,2141.06,0],0,false,[[3426,0,147.909],[1661,0,187.888]]],[[2725.4,2511.94,0],0,false,[[374,1,25.0484],[2102,1,23.1413]]],[[3201.7,7208.9,0],0,true,[[401,1,25.0097],[1275,1,31.3059],[2978,1,7.50987]]],[[402.384,1328.82,0],0,false,[[1019,0,62.7661],[3893,0,30.6642]]], +[[4733.43,3510.18,0],0,false,[[217,0,15.0479],[3793,1,10.2577]]],[[519.007,3469.74,0],0,true,[[1647,0,287.982],[290,0,6.89429],[357,1,10.8053]]],[[6102.61,899.06,0],0,true,[[3349,0,14.3358],[760,0,18.0574],[1221,0,5.72351],[2202,0,2.39525],[3098,0,4.07265]]],[[4617.38,4479.39,0],0,false,[[2315,0,97.6791],[2467,0,148.926]]],[[2505.65,7467.59,0],0,true,[[3301,0,64.8977],[429,0,18.2595],[2156,0,18.264],[1014,0,15.7241]]], +[[7787.04,7230.48,0],0,true,[[1052,0,15.13],[1368,0,174.698],[3075,0,3.71639]]],[[7664.12,3517.33,0],0,true,[[2223,0,12.1812],[3188,0,67.1587],[2243,0,7.94475]]],[[5787.46,4344.67,0],0,false,[[2091,1,75.1052],[2813,1,99.4382]]],[[5635.64,6040.37,0],0,false,[[1182,0,151.096],[2157,0,164.722]]],[[2169.29,5339.15,0],0,false,[[719,1,9.93932],[1719,0,22.2575]]], +[[3369.94,257.462,0],0,true,[[1378,1,18.7624],[304,1,87.4252],[2262,1,11.2748]]],[[2193.79,4003.96,0],0,true,[[1928,0,44.2997],[1656,0,16.5312],[3017,0,26.7075]]],[[558.154,8036.42,0],0,true,[[960,0,7.06356],[2730,0,21.8216],[505,0,3.96304]]],[[3482.83,3516.13,0],0,false,[[1907,0,386.38],[1342,0,157.793]]],[[882.731,1769.32,0],0,false,[[3041,1,77.2556],[1683,1,28.4403]]], +[[7800.53,1475.19,0],0,true,[[1227,0,174.143],[766,0,19.4678],[843,0,21.5604],[2458,0,17.7258]]],[[4458.76,1472.21,0],0,true,[[2346,0,138.59],[1022,0,23.9705],[2240,0,12.78]]],[[3619.06,1952.5,0],0,false,[[3371,0,18.0217],[2011,0,147.729]]],[[2533.55,4783.29,0],0,false,[[1252,0,305.966],[1822,0,17.8592]]],[[7991.6,4534.78,0],0,true,[[419,1,11.3531],[1998,1,26.4762],[2826,1,24.9191]]], +[[1404.3,6897.33,0],0,false,[[2510,0,16.8652],[3108,0,193.737]]],[[5270.53,420.699,0],0,true,[[2756,0,21.1825],[573,0,374.735],[1741,0,79.6605]]],[[6102.45,5046.25,0],0,false,[[887,1,195.948],[2960,1,363.083]]],[[6370.34,5457.63,0],0,false,[[607,0,12.9597],[852,0,19.8268]]],[[4030.04,3646.48,0],0,true,[[2716,1,9.72549],[3890,1,141.436],[2072,1,20.6824]]], +[[357.926,279.76,0],0,false,[[92,0,24.361],[1306,0,300.74]]],[[380.262,579.629,0],0,false,[[1305,0,300.74],[2908,0,240.466]]],[[4035.71,4141.08,0],0,true,[[2036,1,24.8623],[3302,2,9.26916],[3177,2,15.6812]]],[[7186.25,4383.72,0],0,true,[[2030,1,282.653],[2803,1,23.7139],[2304,1,9.60595]]],[[443.422,2512.67,0],0,true,[[1046,0,18.7791],[1654,0,85.1532],[21,0,10.6839]]], +[[2630.31,7738.44,0],0,false,[[588,0,79.2734],[1043,0,45.6847]]],[[149.792,5105.82,0],0,false,[[3093,1,230.967],[1605,1,62.2202]]],[[5556.02,6270.96,0],0,false,[[59,0,104.002],[617,0,71.9191]]],[[5747.57,1842.28,0],0,false,[[833,1,21.4844],[3352,1,40.7093]]],[[4348.62,7015.9,0],0,true,[[2003,0,15.8389],[466,1,15.0413],[224,0,46.2046]]], +[[5539.94,4362.04,0],0,false,[[423,1,26.0996],[3509,1,19.3189]]],[[3641.14,5108.24,0],0,false,[[2739,1,17.8661],[967,1,302.027]]],[[4022.88,863.111,0],0,false,[[2316,0,297.846],[2823,0,245.792]]],[[2485.3,2057.68,0],0,false,[[865,1,368.643],[1752,1,77.7992]]],[[6327.9,2127.33,0],0,false,[[2261,1,141.065],[2757,1,121.244]]], +[[368.415,3906.15,0],0,true,[[2592,0,67.7778],[496,0,8.07019],[2748,0,10.6526]]],[[2590.9,6857.34,0],0,true,[[1530,0,9.8428],[611,0,93.9877],[3720,0,7.40649]]],[[4696.88,5862.87,0],0,true,[[796,0,32.0703],[3162,0,3.98263],[3262,0,6.83225]]],[[865.974,8099.42,0],0,false,[[60,0,70.3406],[2410,0,260.668]]],[[907.798,6185.03,0],0,true,[[872,0,44.7641],[553,0,20.7852],[1912,0,46.4055]]], +[[199.243,6863.95,0],0,false,[[2005,0,155.437],[2619,0,78.5086]]],[[5687.34,2906.9,0],0,true,[[2162,1,4.93771],[3358,0,34.3004],[1692,1,8.68565]]],[[573.234,4416.93,0],0,true,[[248,0,53.7751],[2931,0,11.5428],[3284,0,11.1428],[3643,0,17.3533]]],[[2239.47,901.129,0],0,true,[[1875,0,15.2901],[3494,2,13.984],[2146,2,17.2287]]],[[5093.43,6817.73,0],0,true,[[2061,0,43.0144],[3388,1,10.6462],[2741,1,9.59629]]], +[[4019.69,8012.36,0],0,false,[[1005,0,30.294],[3459,0,62.0669]]],[[4813.29,233.596,0],0,false,[[1668,1,34.2897],[3401,1,154.482]]],[[3499.99,2118.1,0],0,true,[[1551,0,19.4177],[107,0,5.53376],[2563,0,8.03471]]],[[4387.14,8109.83,0],0,false,[[615,0,24.2327]]],[[1444.66,3373.94,0],0,true,[[2228,1,10.4441],[900,1,28.0647],[569,1,8.67647]]], +[[1601.55,8035.4,0],0,false,[[2641,1,189.653],[2152,1,18.6001]]],[[3590.72,2446.71,0],0,false,[[1788,0,77.6068],[3428,0,70.4592]]],[[7337.28,784,0],0,true,[[2796,0,28.2716],[3630,0,231.501],[332,0,16.9263]]],[[2325.42,6064.37,0],0,false,[[2940,0,183.43],[1149,0,136.994]]],[[4694.8,5849.21,0],0,true,[[3262,0,7.09697],[1961,0,5.69431],[1610,0,3.95347]]], +[[2848.66,3215.01,0],0,true,[[2232,0,12.7499],[1345,0,8.35791],[3647,0,12.1374]]],[[5485.7,3231.96,0],0,false,[[2831,0,322.525],[3558,0,188.381]]],[[3582.81,3588,0],0,false,[[1293,0,157.793],[1366,0,198.938]]],[[363.587,4718.94,0],0,true,[[2450,0,19.4266],[334,0,15.3922],[3339,0,0.749458],[48,0,16.0301]]],[[336.33,4778.75,0],0,true,[[2704,0,4.03465],[1720,0,97.9361],[3806,0,7.83964]]], +[[2846.01,3207.1,0],0,true,[[3647,0,20.4538],[243,0,31.8721],[1340,0,8.35791]]],[[6423.04,1139.99,0],0,false,[[349,1,240.688],[156,1,107.031]]],[[7058.99,1532.58,0],0,false,[[2313,0,22.1988],[2122,0,162.617]]],[[1875.61,7224.19,0],0,false,[[3839,1,28.7016],[1974,1,28.3645]]],[[4889.96,897.881,0],0,true,[[134,0,29.392],[3406,1,9.74789],[1773,1,18.3928]]], +[[7312.98,1567.48,0],0,false,[[2462,0,355.886],[3015,0,234.93]]],[[4048.08,5535.55,0],0,true,[[669,1,59.8176],[2577,2,15.6914],[3598,2,11.5288]]],[[5233.71,3502.55,0],0,false,[[2056,0,184.098],[3391,0,134.566]]],[[4032.2,4059.3,0],0,true,[[767,2,20.1756],[2898,2,18.1649],[3027,2,6.83753]]],[[2068.69,4936.74,0],0,false,[[3651,0,232.235],[1459,1,13.6131]]], +[[4403.7,3195.14,0],0,true,[[498,0,132.056],[3182,0,28.0822],[2629,0,11.3932],[1148,0,10.521]]],[[5438.08,6673.87,0],0,true,[[3797,0,66.0492],[2815,0,19.0165],[1483,0,112.08]]],[[6583.29,4342.16,0],0,true,[[3444,1,251.711],[2400,1,27.9399],[2388,1,16.7902]]],[[1367.23,1841.91,-1.09216],0,true,[[2048,2,10.1815],[1173,2,15.5925],[3268,2,3.54175]]],[[2938.01,1625.44,0],0,true,[[815,1,27.5526],[2453,1,207.728],[1434,1,4.78655],[319,1,11.4536]]], +[[2828.51,3657.03,0],0,true,[[2533,0,13.3913],[3430,0,15.322],[105,1,16.3835],[3435,1,15.9191]]],[[4252.03,1941.72,0],0,true,[[402,2,29.8194],[2079,2,48.5511],[2184,2,6.43232]]],[[2022.62,5708.2,0],0,false,[[3412,1,12.3188],[3493,1,12.3188]]],[[4357.17,3557.69,2.78467],0,false,[[3859,0,163.943],[1944,0,280.792]]],[[3935.06,5409.47,0],0,false,[[2891,0,66.7518],[740,0,98.2335]]], +[[8028.67,7690.78,0],0,false,[[62,0,26.4119]]],[[3750.59,3483.14,0],0,true,[[1342,0,198.938],[2692,1,10.3491],[2415,1,12.2146]]],[[3387.09,6071.99,0],0,true,[[3286,0,19.3725],[1934,0,74.8292],[2652,0,9.98598]]],[[7786.57,7384.17,0],0,false,[[1285,0,174.698]]],[[6410.96,8189.37,0],0,false,[[1970,0,185.012]]], +[[3485.29,1572.35,0],0,true,[[351,0,11.8977],[197,2,17.1039],[2630,2,13.1692]]],[[2956.42,7455.91,0],0,false,[[1914,0,80.1108],[2569,0,90.8347]]],[[2967.41,2900.63,0],0,false,[[2163,0,250.221],[3867,0,85.5609]]],[[2906.47,1853.4,0],0,true,[[3277,1,5.13066],[1010,1,4.59465],[2646,1,8.13918],[2638,1,4.60449]]],[[3762.1,8188.27,0],0,false,[[1813,1,91.8704]]], +[[5580.76,902.365,0],0,false,[[1578,0,281.819],[789,0,135.702]]],[[944.467,4236.47,0],0,false,[[3359,0,77.3324],[3283,0,140.38]]],[[7857.23,6635.56,0],0,true,[[2916,0,91.8647],[26,1,11.9302],[327,1,17.5873]]],[[3365.94,239.132,0],0,true,[[1968,1,10.2612],[1290,1,18.7624],[2262,1,7.8078]]],[[2131.72,5527.35,0],0,true,[[430,1,148.293],[3754,1,22.8764],[593,1,7.78152]]], +[[7089.95,7017.16,0],0,true,[[440,0,14.899],[3711,0,63.8762],[525,1,25.5504]]],[[3564.12,6604.92,0],0,false,[[804,1,81.7718],[3336,1,13.781]]],[[5999.41,7598.66,0],0,false,[[3059,0,119.984],[1858,0,29.6319]]],[[5800.53,2884.96,0],0,true,[[3895,1,14.2208],[3519,0,13.7194],[3843,1,12.2335]]],[[562.173,2.75326,0],0,false,[[344,2,21.2246],[1230,2,5.88201]]], +[[2872.87,3263.88,0],0,true,[[2325,0,20.9525],[890,0,21.5058],[1385,0,0.0640241],[1895,0,21.5086],[2325,0,21.0163]]],[[4941.31,4618.27,0],0,true,[[1842,1,28.1012],[3392,1,20.8003],[3389,1,8.95197],[1650,1,12.2102]]],[[3398.36,4723.93,0],0,true,[[649,0,8.6001],[778,0,11.6612],[63,0,18.0149]]],[[1690.31,2396.96,0],0,false,[[346,0,182.506],[3291,0,36.2137]]],[[5637.51,6302.31,0],0,true,[[676,0,11.757],[1892,1,7.58302],[2026,1,3.86053]]], +[[3574.66,3829.99,0],0,false,[[964,0,156.339],[364,0,124.604]]],[[6716.21,2491.06,0],0,false,[[2188,0,252.251]]],[[4486.84,3132.4,0],0,true,[[2484,2,32.725],[3298,2,34.5319],[262,2,16.6824],[368,2,12.7457],[2913,2,17.1271]]],[[1556.79,4527.98,0],0,false,[[1473,0,196.996],[1611,0,26.9611]]],[[5134.52,5244.46,0],0,false,[[1936,1,62.3092],[403,1,174.494]]], +[[7988.59,5779.23,0],0,false,[[1057,1,219.326],[237,1,58.8018]]],[[7687.19,6357.74,0],0,true,[[801,0,16.7748],[777,0,7.42366],[820,0,18.3815]]],[[5515.14,6684,0],0,true,[[792,1,115.719],[2617,1,7.19199],[1208,1,5.59032]]],[[880.286,3696.41,0],0,true,[[2797,0,7.30879],[2358,0,9.62651],[3058,0,3.3388]]],[[7998.74,6525.91,0],0,true,[[2837,1,24.4958],[2408,1,46.421],[1836,1,3.00041]]], +[[4694.04,3228.24,0],0,false,[[661,1,10.1797],[1404,0,24.1975]]],[[5294.11,351.906,0],0,true,[[2993,0,297.856],[2381,0,17.7175],[1945,0,8.89981]]],[[1092.83,3929.9,0],0,false,[[1451,0,174.224],[3617,0,112.415]]],[[1482.29,3342.31,0],0,false,[[3601,1,19.3709],[2905,1,28.7214]]],[[4702.16,3250.12,0],0,false,[[1400,0,24.1975],[2755,0,34.5012]]], +[[7997.09,5359.54,0],0,false,[[1637,0,365.541],[3638,0,47.1545]]],[[7387.73,6032.39,0],0,true,[[3782,1,186.579],[3028,1,13.5131],[2822,1,4.52011]]],[[1582.3,549.896,0],0,false,[[1853,2,255.105],[3329,2,32.6652]]],[[6195.28,1484.08,0],0,true,[[2553,0,187.583],[3506,0,11.3469],[2414,0,16.1389]]],[[4786.21,1100.22,0],0,false,[[3370,0,21.4278],[1232,0,11.703]]], +[[6261.9,5341.8,0],0,false,[[444,1,243.331],[2233,1,11.791]]],[[3545.69,2059.71,0],0,false,[[2087,0,28.2137],[2828,0,56.2241]]],[[1905.6,3927.33,0],0,false,[[2875,0,227.314]]],[[4919.59,1743.01,0],0,false,[[2078,0,8.93893],[2294,0,127.519]]],[[4509.68,2485.95,0],0,false,[[499,1,32.4662],[2028,1,6.25971]]], +[[2992.77,1112.93,0],0,true,[[409,0,13.3959],[1050,0,7.96121],[3031,0,9.26695]]],[[2654.02,1957.74,0],0,false,[[3094,1,14.9886],[1203,1,54.3616]]],[[6630.53,374.411,0],0,false,[[1001,0,181.933],[1110,0,23.3753]]],[[4328.43,3065.14,0],0,false,[[1999,1,24.1692]]],[[4473.89,7999.09,0],0,true,[[1935,0,22.691],[971,0,24.9522],[274,0,13.0685]]], +[[364.732,4674.69,0],0,true,[[2454,0,18.4832],[245,0,24.1893],[1705,0,0.749183],[2450,0,24.8561]]],[[1340.91,7160.35,0],0,false,[[3738,0,219.767],[927,0,105.199]]],[[510.3,3707.14,0],0,false,[[290,0,235.455],[3394,0,94.4492]]],[[4448,4687.83,0],0,false,[[2663,1,96.4191],[258,1,18.4756]]],[[4610.5,2008.71,0],0,true,[[2125,0,20.2805],[2821,0,62.5713],[1244,0,9.93538]]], +[[3745.75,1710.93,0],0,true,[[2544,2,24.5199],[1609,2,120.753],[3780,2,14.0998]]],[[2763.35,3160.93,0],0,true,[[474,1,29.9108],[3775,1,137.743],[3522,1,21.0619],[116,1,17.536]]],[[2801.93,7326.68,0],0,false,[[3778,0,57.3823],[2338,0,25.812]]],[[7604.89,1144.08,0],0,false,[[1437,0,133.12],[501,0,45.4702]]],[[3972.51,3794.87,0],0,true,[[1550,1,17.111],[2263,1,4.56813],[1726,1,12.0201]]], +[[4512.39,4402.45,0],0,false,[[2930,1,146.901],[2610,1,166.662]]],[[3251.87,3996.25,0],0,false,[[2950,0,254.425],[1085,0,142.435]]],[[4287.64,4023.55,0],0,false,[[1504,1,21.706],[2955,1,10.1381]]],[[3757.03,1447.32,0],0,true,[[3148,1,21.2779],[941,1,221.71],[558,1,14.0611]]],[[2938.51,1620.68,0],0,false,[[1359,1,4.78655],[319,0,9.31901]]], +[[3129.55,6729.79,0],0,false,[[1142,0,82.0962],[3645,0,337.306]]],[[968.345,7541.39,0],0,false,[[1636,0,31.3754]]],[[7638.6,1237.06,0],0,false,[[554,0,63.399],[1428,0,133.12]]],[[4090.03,1877.03,0],0,false,[[2079,2,126.412],[832,2,338.736]]],[[359.333,4108.38,0],0,true,[[1942,0,15.9762],[1963,0,133.303],[3025,0,9.83886]]], +[[607.792,6121.13,0],0,false,[[3417,1,201.277],[988,1,347.831]]],[[1316.56,3190.25,0],0,false,[[900,1,201.551],[3814,1,114.13]]],[[1440.08,1181.73,0],0,true,[[323,0,366.194],[670,1,17.4012],[849,1,13.3334]]],[[3939.5,4466.67,0],0,false,[[414,0,68.5479]]],[[4920.59,2607.99,0],0,true,[[3727,0,140.637],[1570,1,14.7031],[3582,1,17.4248]]], +[[7125.76,6102.33,0],0,true,[[2944,0,180.809],[2387,0,8.81033],[2620,0,7.22771]]],[[5123.15,6808.84,0],0,false,[[954,1,179.353],[2741,1,22.4147]]],[[7181.26,2952.05,0],0,false,[[930,1,222.869],[166,1,216.389]]],[[5000.84,2765.95,0],0,true,[[1640,1,104.64],[3474,1,5.24267],[2657,1,14.573]]],[[3156.75,2076.17,0],0,false,[[2133,1,165.021],[1212,1,194.756]]], +[[541.528,98.0846,0],0,false,[[706,0,92.5617],[1868,0,120.158]]],[[1202.46,4064.99,0],0,true,[[686,0,10.2196],[1402,0,174.224],[3273,0,6.30277]]],[[2870.61,4208.09,0],0,false,[[2189,1,55.3368],[275,1,24.4985]]],[[1023.13,6041.09,0],0,false,[[2634,1,20.841],[1985,1,125.254]]],[[2391.38,6620.81,0],0,true,[[2601,1,20.499],[165,1,257.051],[2350,1,9.7818],[606,1,11.8074],[683,1,15.2056]]], +[[8013.28,237.078,0],0,false,[[397,1,45.4236],[2180,1,24.4995]]],[[392.448,7215.02,0],0,true,[[1898,0,26.9612],[753,0,47.5052],[434,0,13.9784]]],[[5104.01,8109.75,0],0,false,[[261,2,80.5051],[325,2,18.8751]]],[[2800.29,3580.38,0],0,false,[[3907,0,39.4852]]],[[2074.68,4924.52,0],0,true,[[2285,1,27.8916],[2925,1,301.197],[1354,1,13.6131]]], +[[3226.96,1433.92,0],0,true,[[373,2,33.8055],[1021,2,225.515],[2800,2,15.4039],[108,2,15.2052]]],[[3143.33,7626.41,0],0,true,[[1811,0,18.553],[124,1,10.3128],[2607,1,6.59549]]],[[1465.51,3328.96,0],0,false,[[81,0,20.0056],[2051,0,27.4316]]],[[5737.48,6131.4,0],0,true,[[2143,1,27.1936],[2026,1,196.507],[1182,1,5.87109]]],[[3288.41,4262.3,0],0,true,[[1896,0,125.4],[2950,0,27.7646],[945,0,13.1541]]], +[[4061.05,5336.64,0],0,false,[[3572,2,8.2877],[27,0,7.14471]]],[[4417.08,3775.07,0],0,false,[[2614,0,74.9604],[2967,0,121.832]]],[[7514.71,6486.09,0],0,true,[[911,1,28.7357],[53,1,14.5202],[921,1,10.5362]]],[[8031.37,230.518,0],0,false,[[2180,1,6.37118],[1780,0,76.8917]]],[[2635.69,3104.93,0],0,false,[[594,0,84.8524],[1774,0,121.198]]], +[[3123.88,5560.02,0],0,false,[[3071,0,126.312],[2170,0,66.8508]]],[[4024.73,4183.92,0],0,true,[[3524,1,19.9155],[1732,1,12.4196],[2013,2,13.9184]]],[[4003.1,4528.63,0],0,true,[[3900,0,10.5347],[3640,0,55.7652],[3181,0,6.8084]]],[[1709.66,4645.96,0],0,false,[[255,0,77.4912],[1393,0,196.996]]],[[5163.38,7925.43,0],0,false,[[1845,2,27.754],[2999,2,235.099]]], +[[3462.04,5.0329,0],0,false,[[1968,1,252.338]]],[[1557.47,537.379,0],0,false,[[3329,2,4.84763],[1904,0,5.65467]]],[[880.193,4184.27,0],0,true,[[1838,0,28.7849],[2007,0,67.7038],[807,0,10.1763]]],[[5986.02,4865.37,0],0,true,[[3367,0,64.0313],[1857,0,6.67107],[3090,0,19.53]]],[[234.803,1177.83,0],0,true,[[3087,0,194.401],[2439,0,25.968],[3836,0,20.3955]]], +[[4486.57,4686.52,0],0,true,[[3783,1,19.6537],[410,1,30.9835],[2736,1,11.0284]]],[[4392.03,2939.76,0],0,true,[[850,2,53.0174],[2194,2,10.3387],[2666,2,18.6056]]],[[1711.9,2375.48,0],0,false,[[3046,0,216.856],[3291,0,21.837]]],[[5375.55,6615.86,0],0,false,[[1356,0,112.08]]],[[74.6351,7346.92,0],0,true,[[1194,0,25.4562],[3002,0,118.342],[2186,0,13.6033]]], +[[3210.42,860.952,0],0,true,[[1507,0,22.7794],[443,0,5.8856],[745,0,1.54454],[2210,0,7.4462]]],[[5435.45,5455.4,0],0,true,[[1187,1,10.2829],[2295,1,245.704],[3099,1,6.34371]]],[[1.28799,850.168,0],0,false,[[2528,0,374.686]]],[[4125.37,5279.04,0],0,true,[[3737,1,31.2483],[2372,1,74.4163],[2561,1,4.58654]]],[[3809.05,3526.15,0],0,true,[[788,1,49.6251],[3706,1,18.1751],[1223,1,6.53025]]], +[[2775.21,7030.44,0],0,true,[[1778,0,29.9967],[3704,0,70.0372],[3239,0,16.0348]]],[[7460.53,2964.96,0],0,true,[[1581,1,16.6282],[215,1,29.3078],[724,1,12.5196]]],[[922.463,4033.52,0],0,false,[[3458,0,47.5299],[3123,0,10.1127]]],[[2717.69,5174.17,0],0,false,[[491,0,163.9],[835,0,38.0866]]],[[2855,4146.42,0],0,true,[[999,1,13.383],[3486,0,30.95],[1710,1,13.6411]]], +[[4076.28,5158.33,0],0,false,[[1687,0,78.675],[3326,0,127.612]]],[[3086.35,2867.34,0],0,true,[[3880,0,13.7866],[1540,0,5.82923],[228,0,10.9946]]],[[668.668,3944.66,0],0,false,[[2394,0,136.324],[917,0,294.173]]],[[6281.08,4269.26,0],0,false,[[1169,0,77.4155],[487,0,47.9477]]],[[7358.21,3255.54,0],0,true,[[1178,1,230.905],[1532,1,10.6271],[223,1,20.9619],[3136,1,14.8318]]], +[[4107.99,5222,0],0,false,[[2763,2,52.8697],[605,2,79.8341]]],[[6450.38,2059.89,0],0,true,[[2456,1,13.8994],[3707,1,2.76548],[2261,1,7.70067],[322,1,9.26062]]],[[3233.15,6782.53,0],0,false,[[697,1,142.591],[3641,1,153.431]]],[[8018.57,7633.6,0],0,false,[[2675,1,7.33558],[62,0,31.8642]]],[[4298.23,4042.26,0],0,true,[[957,1,4.78059],[1432,1,21.706],[2672,1,21.4359]]], +[[275.798,1159.86,0],0,true,[[14,0,22.3362],[2988,0,133.735],[2694,0,10.121],[507,0,19.661]]],[[6309.61,6612.42,0],0,false,[[463,1,6.29676],[3279,0,254.791]]],[[3233.09,861.018,0],0,true,[[2090,0,8.06231],[1485,0,22.7794],[3552,0,5.06608]]],[[7246.73,6291.78,0],0,true,[[1786,0,13.1846],[721,1,5.86684],[1061,1,8.82464]]],[[869.405,3473.86,0],0,true,[[1126,1,81.0722],[77,1,27.2557],[2397,1,15.9999]]], +[[2447.95,2486.59,0],0,false,[[3274,0,177.11],[951,0,309.259]]],[[2412.71,7752.94,0],0,false,[[2765,0,13.0941]]],[[432.792,7173.92,0],0,false,[[1519,0,232.12],[293,0,13.3051]]],[[4512.96,6284.39,0],0,false,[[2057,2,153.59],[3664,2,26.3406]]],[[514.145,3108.6,0],0,false,[[2038,0,68.1617],[3294,0,32.8098]]], +[[346.377,4523.39,0],0,true,[[3425,0,14.8686],[3242,0,0.751409],[1869,0,15.5859],[1595,0,17.8806]]],[[5189.01,391.17,0],0,true,[[687,0,111.667],[1106,0,3.51849],[3488,0,3.90404]]],[[5613.54,3708.29,0],0,true,[[1794,0,129.445],[2889,0,14.4847],[2781,0,15.3498]]],[[454.964,5192.92,0],0,false,[[3536,0,119.268],[3304,0,381.545]]],[[277.934,7023.07,0],0,false,[[2136,0,55.3442],[1512,0,232.12]]], +[[7083.91,5536.48,0.000305176],0,false,[[2173,0,7.02587],[33,0,7.02587]]],[[3970.86,2200.73,0],0,false,[[2787,0,153.735]]],[[3050.17,7432.46,0],0,true,[[2478,1,30.2282],[3130,1,111.105],[2569,1,18.7674]]],[[3198.88,3207.4,0],0,true,[[140,1,64.0245],[3475,1,22.4979],[3714,1,9.72514]]],[[7216.52,4171.59,0],0,true,[[800,0,16.3198],[3007,0,130.766],[3278,0,34.3052]]], +[[2926.72,3374.6,0],0,true,[[1525,0,0],[3881,0,13.0896],[3881,0,13.0896]]],[[4979.68,558.714,0],0,false,[[287,0,106.692]]],[[6872.44,6511.68,0],0,false,[[336,1,12.7592],[2231,0,107.044]]],[[4361.9,2316.51,0],0,false,[[3777,0,20.6358],[3382,0,9.5639],[1829,0,5.01326]]],[[4330.69,2949.36,0],0,true,[[1213,1,10.1738],[2492,1,9.59025],[1713,1,17.9547],[869,1,6.14207]]], +[[2592.92,6847.71,0],0,true,[[2754,0,7.91121],[3720,0,14.2124],[1321,0,9.8428]]],[[1920.12,3254.93,0],0,true,[[2255,1,291.516],[2809,1,27.6054],[2327,1,9.33543]]],[[7368.81,3255.12,0],0,true,[[1499,1,10.6271],[3037,0,251.363],[3136,0,21.0025],[223,1,18.1713]]],[[8130.48,1829.46,0],0,false,[[1107,0,88.9613],[1115,0,155.341]]],[[8001.25,5843.83,0],0,true,[[237,1,8.85324],[3009,0,84.8888],[3869,1,13.2984]]], +[[7062.27,6632.42,0],0,false,[[851,0,15.724],[191,0,188.622]]],[[5822.8,6391.89,0],0,true,[[1020,0,14.1012],[3758,0,21.8433],[836,0,13.3889]]],[[751.305,7568.56,0],0,true,[[544,0,22.2852],[3566,0,68.2484],[3745,0,11.6032]]],[[3409.81,5560,0],0,false,[[2783,0,75.8341],[3045,0,157.528]]],[[3275.13,4270.26,0],0,false,[[1109,0,259.382],[945,0,18.9197]]], +[[3092.14,2866.69,0],0,true,[[1496,0,5.82923],[228,0,5.40943],[671,0,18.8989]]],[[8066.17,6442.38,0],0,true,[[472,0,10.2339],[2848,0,99.4195],[797,1,10.9346]]],[[4348.86,6124.99,0],0,true,[[1074,2,8.77892],[1025,2,15.7779],[276,2,21.4425],[1699,2,6.54471]]],[[881.006,1525.93,0],0,false,[[3040,0,99.4441]]],[[591.664,4529.06,0],0,false,[[2367,0,52.4102],[3284,0,107.487]]], +[[2921.26,1866.59,0],0,false,[[2006,1,43.4317],[3277,1,14.7032]]],[[5470.72,2228.83,0],0,true,[[273,1,87.1067],[490,1,16.6857],[1120,1,24.5863],[1921,1,19.1063]]],[[4859.31,3983.27,0],0,true,[[913,1,29.7542],[1662,1,223.737],[2853,1,10.42]]],[[4642.79,2218.24,0],0,false,[[1102,2,59.86],[994,2,216.235]]],[[5870.69,4757.11,0],0,true,[[2377,0,71.3384],[2281,1,11.6492],[823,1,13.0663]]], +[[3959.3,3784.15,0],0,false,[[1108,1,163.757],[1429,1,17.111]]],[[3490.18,2101.37,0],0,true,[[2992,0,306.275],[1332,0,19.4177],[107,0,20.1389]]],[[4063.93,4467.04,0],0,true,[[3640,0,66.8228],[3152,2,9.61774],[3470,2,11.7826]]],[[6467.28,2493.91,0],0,true,[[251,1,18.6112],[2188,1,11.7353],[3513,1,28.348]]],[[6924.26,857.487,0],0,false,[[2834,1,23.2803],[1906,1,25.5673]]], +[[3504.8,6683.39,0],0,true,[[922,1,15.599],[2390,1,80.1065],[804,1,18.9396],[2145,1,13.2009]]],[[3134.55,7591.65,0],0,false,[[547,1,25.8416],[124,1,25.6773]]],[[1953.83,200.705,0],0,true,[[2912,0,7.21884],[856,0,169.25],[2334,0,8.91954]]],[[3659.54,5106.6,0],0,true,[[520,0,20.8827],[1878,0,22.544],[2739,1,13.5915]]],[[344.593,4412.59,0],0,true,[[2425,0,97.3738],[9,0,23.7047],[926,0,11.0758],[3314,0,10.4857]]], +[[4264.95,4020.01,0],0,false,[[2955,1,13.3803],[673,1,42.5802]]],[[3781.09,3506.88,0],0,true,[[3706,1,15.8407],[2692,1,28.6095],[3734,1,4.88246]]],[[344.315,4489.5,0],0,true,[[1575,0,9.9789],[437,0,8.58942],[1701,0,0.753383],[624,0,9.15227],[43,0,9.39062]]],[[3227.49,7437.66,0],0,false,[[889,0,13.7596],[2935,0,105.811]]],[[6235.67,6494.34,0],0,true,[[2113,0,7.35863],[3140,0,48.6343],[3716,0,4.62295]]], +[[1809.31,1978.96,0],0,false,[[1097,0,40.466],[420,0,333.679]]],[[1870.59,2707.3,0],0,false,[[3291,0,355.912],[1616,0,109.095]]],[[7693.06,3897.39,0],0,true,[[3502,0,16.1622],[1090,0,82.7137],[904,0,8.80036]]],[[266.822,7366.46,0],0,true,[[2841,0,37.1516],[1871,0,20.3778],[3420,0,8.69702]]],[[906.616,6314.32,0],0,false,[[553,0,110.171],[1984,0,119.343]]], +[[4917.96,2593.53,0],0,true,[[3582,1,31.9673],[3156,1,204.513],[1444,1,14.7031]]],[[4125.87,4185.82,0],0,true,[[551,0,10.6272],[2227,0,11.0467],[3866,1,12.8732]]],[[4097.77,3282.7,0],0,true,[[2586,1,23.9344],[581,1,150.94],[3628,1,7.6271]]],[[459.505,2004.47,0],0,false,[[727,0,161.357],[2989,0,21.5379]]],[[3167.78,7269.37,0],0,false,[[3320,1,179.101],[401,1,44.6777]]], +[[346.195,4479.73,0],0,true,[[2096,0,13.164],[1701,0,9.39119],[1562,0,9.9789],[43,0,0.753956],[3846,0,13.8089]]],[[6919.46,1682.09,0],0,false,[[891,0,165.19],[122,0,165.829]]],[[3427.45,2718.08,0],0,false,[[3680,0,220.455],[2126,0,55.3575]]],[[5448.46,654.175,0],0,false,[[3356,0,255.889],[1375,0,281.819]]],[[1923.13,1997.37,0],0,false,[[3864,1,106.908],[2643,2,3.45592]]], +[[4074.98,5312.2,0],0,false,[[3572,2,20.7428],[2763,2,43.1899]]],[[7477.12,2965.68,0],0,true,[[3725,1,11.8928],[724,1,5.33567],[640,1,6.12038],[1491,1,16.6282]]],[[4434.95,4831.17,0],0,false,[[3039,1,95.3935],[3857,1,22.1297]]],[[4537.35,3007.67,0],0,false,[[3119,1,141.609],[641,1,92.2605]]],[[3744,1038.18,0],0,false,[[3596,0,113.682],[1798,1,3.65832]]], +[[2786.14,6125.35,0],0,true,[[3427,0,199.035],[292,0,5.8529],[3288,0,17.3603]]],[[4939.47,2003.64,0],0,true,[[3124,1,16.874],[3828,1,12.6988],[3544,1,6.59197]]],[[3731.62,1855.75,0],0,true,[[3100,0,87.9674],[3261,0,19.3652],[2011,0,4.87934]]],[[2196.48,5477.09,0],0,false,[[933,0,113.108],[3259,0,34.6141]]],[[362.485,4759.79,0],0,true,[[2431,0,8.14639],[3142,0,6.27552],[1158,0,0.749169]]], +[[4769.91,3677.65,0],0,true,[[1725,1,32.0711],[3073,1,27.1216],[3887,1,37.5191]]],[[7552.72,3523.97,0],0,true,[[3037,0,78.4174],[3159,0,14.0799],[3897,0,15.4392]]],[[3700.04,2487.98,0],0,false,[[1669,1,87.7038],[2461,1,271.974]]],[[5977.93,7579.66,0],0,true,[[3324,0,138.237],[431,0,25.3122],[1858,0,11.1539]]],[[2429.67,4159.06,0],0,true,[[1975,1,209.841],[2850,1,33.772],[136,1,14.9112]]], +[[347.234,4541.23,0],0,true,[[3242,0,17.1959],[1113,0,0.749854],[1515,0,17.8806],[2282,0,19.0184]]],[[6523.34,2877.48,0],0,true,[[3771,1,102.998],[1617,1,31.5318],[2134,1,19.855]]],[[7380.6,5836.66,0],0,false,[[3029,1,9.60374],[748,0,90.8924]]],[[1833.64,6810.01,0],0,false,[[730,0,82.6158]]],[[5566.2,2761.12,0],0,false,[[2851,0,131.735],[2682,0,151.655]]], +[[6525.55,6059.89,0],0,false,[[2857,0,55.1585],[2659,0,131.022]]],[[1083.76,5713.33,0],0,false,[[3530,0,33.6242]]],[[3258.62,299.614,0],0,false,[[2262,0,125.534]]],[[4917.07,1059.62,0],0,true,[[3404,1,132.309],[2958,1,25.41],[781,1,10.7855],[2095,1,7.91019]]],[[4095.07,2987.06,0],0,false,[[1738,0,76.3418],[2328,0,162.085]]], +[[90.138,5092.58,0],0,true,[[1311,1,62.2202],[279,1,11.7146],[3901,1,17.2097]]],[[8126.72,2176.87,0],0,true,[[425,0,28.9777],[3622,0,72.6535],[3168,0,14.2654]]],[[4038.56,5417.69,0],0,true,[[1848,2,21.7395],[3110,2,20.8468],[3147,2,6.43372],[3526,2,12.69]]],[[7669.99,7876.53,0],0,true,[[662,1,23.9345],[3465,1,75.9815],[415,1,9.65774]]],[[3639.41,1653.93,0],0,false,[[1425,2,120.753],[2630,2,161.274]]], +[[4697.27,5846.16,0],0,true,[[1961,0,4.33974],[438,0,120.35],[1339,0,3.95347],[1024,0,15.9702]]],[[1539.36,4507.53,0],0,true,[[519,0,34.7351],[1947,0,89.2884],[1393,0,26.9611]]],[[8188.76,138.068,0],0,false,[[2180,1,177.061]]],[[5888.33,1593.33,0],0,true,[[3579,0,21.4744],[695,0,144.873],[580,0,11.1334]]],[[3374.32,2204.16,0],0,false,[[1212,1,58.9625],[2382,1,25.0486]]], +[[4455.05,4772.8,0],0,false,[[3670,1,6.7162],[467,0,5.03811]]],[[1908.2,2809.57,0],0,true,[[1566,0,109.095],[3608,0,27.8813],[2193,0,20.1491],[2171,0,17.3727]]],[[6493.12,2868.46,0],0,true,[[1596,1,31.5318],[446,1,340.683],[2134,1,12.6821]]],[[1396.48,7282.36,0],0,true,[[3909,0,13.562],[822,1,14.1538],[1011,1,13.0282]]],[[7503.62,2439.77,0],0,false,[[2185,0,241.026],[329,0,158.328]]], +[[2728.32,6211.12,0],0,false,[[3288,0,96.021],[1030,0,204.91]]],[[1.05265,4323.18,0],0,false,[[2684,0,156.966]]],[[2377.22,7169.71,0],0,false,[[1167,0,26.7319]]],[[2852.2,5442.96,0],0,true,[[2375,0,102.006],[2572,0,210.408],[2386,0,22.1839]]],[[189.973,5345.04,0],0,true,[[3254,0,132.933],[918,0,9.56393],[1261,0,10.9236]]], +[[3003.1,5716.22,0],0,false,[[481,0,369.812],[1168,0,149.364]]],[[5704.32,6544.38,0],0,false,[[3885,1,10.9388],[104,0,212.597]]],[[4855.95,5953.97,0],0,false,[[2258,0,15.7052],[1711,0,96.2104]]],[[4240.76,7500.44,0],0,false,[[3916,0,26.697],[1775,0,88.3514],[1220,0,11.0745]]],[[411.402,7724.87,0],0,true,[[2449,0,77.1622],[980,0,14.274],[2522,0,24.9634]]], +[[3642.38,1121.35,0],0,false,[[1151,0,6.75856],[3409,0,39.3614]]],[[5647.83,1034.74,0],0,true,[[789,0,13.4756],[1882,1,11.8515],[744,1,15.1853]]],[[8045.56,4577.07,0],0,true,[[2593,0,199.926],[3227,0,13.6927],[3240,0,18.8893]]],[[1262.75,4804.79,0],0,false,[[3204,1,157.084],[678,1,119.092]]],[[5302.83,5220.43,0],0,true,[[403,1,20.0218],[497,1,228.649],[739,1,18.2159]]], +[[414.923,5817.21,0],0,false,[[3250,0,149.382]]],[[939.869,7554.56,0],0,true,[[1703,0,30.0677],[1436,0,31.3754],[1807,0,10.9311]]],[[7680.18,5183.81,0],0,false,[[1825,0,214.989],[1405,0,365.541]]],[[2472.43,3870.68,0],0,false,[[3715,0,87.6684]]],[[5302.14,5833.08,0],0,false,[[756,0,139.446],[1268,0,96.8861]]], +[[5071.57,2840.27,0],0,false,[[3769,1,28.2266],[1448,1,104.64]]],[[2125.61,3610.38,0],0,true,[[2750,0,20.3411],[3079,0,278.132],[2945,0,15.2209]]],[[1797.45,7231.24,0],0,true,[[3054,1,68.3804],[2604,1,29.7951],[3154,1,11.6511]]],[[4539.95,2534.09,0],0,false,[[117,1,60.7096],[499,1,27.3409]]],[[7534.4,7798.58,0],0,false,[[1035,0,125.866],[1104,0,143.082]]], +[[1175.89,2097.69,0],0,true,[[301,1,42.4227],[2632,1,13.2546],[460,1,9.79249],[3436,1,16.3336]]],[[4095.47,5787.02,0],0,false,[[3332,2,26.8131],[3192,2,19.1382]]],[[543.751,3198.44,0],0,false,[[3294,0,62.8145],[1281,0,287.982]]],[[4189.45,4145.64,0],0,false,[[2660,0,108.343],[551,0,67.5562]]],[[4411.59,4769.27,0],0,false,[[125,0,19.2025],[3819,0,153.829]]], +[[4952.67,4622.73,0],0,true,[[1386,1,12.2102],[2117,1,6.85955],[3389,0,13.5318]]],[[4547.99,4215.52,0],0,true,[[2610,1,25.4715],[2333,1,246.345],[2790,1,15.6384]]],[[3731.18,6238.33,0],0,false,[[3807,1,103.185],[3585,1,46.6398]]],[[7496.56,3097.52,0],0,false,[[640,0,129.697],[1881,0,47.9778]]],[[528.441,2516.36,0],0,false,[[1309,0,85.1532],[3813,0,183.562]]], +[[4378.1,2991,0],0,true,[[3615,1,32.8832],[1657,1,29.7812],[668,1,16.7794]]],[[2196.15,4020.27,0],0,true,[[3017,0,20.3455],[3143,0,74.5068],[3845,0,19.3792],[1291,0,16.5312]]],[[4385.31,3019.89,0],0,true,[[1655,1,29.7812],[61,1,25.8413],[1709,1,65.1583]]],[[1754.47,4559.45,0],0,false,[[312,0,107.37]]],[[977.734,3468.83,0],0,true,[[664,1,147.009],[1126,1,27.9126],[3471,1,6.42274]]], +[[2655.2,832.9,0],0,false,[[110,1,8.41092],[2073,0,81.3664]]],[[4360.55,2306.58,0],0,false,[[1276,0,187.888],[256,0,25.9673],[1829,0,5.01326]]],[[4795.01,3769.81,0],0,false,[[1547,1,223.737],[1887,1,20.0806]]],[[6704.98,2103.59,0],0,false,[[3700,0,221.186],[2277,0,46.9385]]],[[3397.35,4286.82,0],0,false,[[2226,0,188.764],[1896,0,17.6208]]], +[[1696.3,5881.96,0],0,false,[[385,1,41.0851],[1696,1,22.6785]]],[[4884.9,1579.61,0],0,false,[[3066,0,21.1359],[2583,0,117.459]]],[[3526.15,6597.7,0],0,false,[[3709,1,30.1678],[2788,1,104.424]]],[[4816.3,267.753,0],0,true,[[3109,1,295.458],[1331,1,34.2897],[652,1,5.58561]]],[[3632.31,2433.36,0],0,false,[[3719,1,68.2176],[1592,1,87.7038]]], +[[4048.3,4300.55,0],0,false,[[1153,2,8.10309],[3574,2,55.4577]]],[[5244.13,5989.37,0],0,true,[[2124,0,49],[722,0,12.778],[756,0,28.9502]]],[[1144.07,4673.18,0],0,true,[[2759,0,115.87],[3047,0,7.30526],[1765,0,8.89923]]],[[1311.9,1611.89,0],0,false,[[660,0,130.258],[855,0,153.749]]],[[4173.23,4322.96,0],0,false,[[2473,1,22.1014],[3611,1,35.7569]]], +[[2845.97,4457.5,0],0,false,[[701,0,7.05948],[1037,0,48.7585]]],[[4198.05,4563.66,0],0,false,[[3819,0,145.005],[708,0,143.43]]],[[7643.88,6623.07,0],0,true,[[20,1,15.1769],[2579,0,33.7855],[2609,1,8.22791]]],[[6669.65,7952.39,0],0,true,[[3000,0,29.4493],[2485,0,281.872],[636,0,18.7708]]],[[2562.99,7389.07,0],0,true,[[2027,1,12.6783],[3301,0,32.591],[2798,1,11.0602]]], +[[5222.21,7249.05,0],0,true,[[3153,2,17.2926],[3305,2,124.872],[2280,2,10.3782]]],[[3198.86,2708.48,0],0,false,[[3705,0,79.8141],[3747,0,237.178]]],[[1964.23,7471.31,0],0,false,[[2549,1,402.881],[3127,1,17.3771]]],[[910.979,1766.52,0],0,true,[[1294,1,28.4403],[2785,1,35.3616],[1860,1,4.84612]]],[[4438.15,4813.98,0],0,false,[[3857,1,5.66244],[2288,0,7.68736]]], +[[4010.55,4199.74,0],0,false,[[3518,1,73.8806],[1732,1,22.1619]]],[[7520.54,6403.67,0],0,true,[[801,0,157.391],[915,0,11.0138],[914,0,3.61604]]],[[4062.22,5235.68,0],0,false,[[488,0,59.2301],[1495,0,78.675]]],[[5661.34,1952.48,0],0,false,[[3340,0,80.0857],[3464,0,253.465]]],[[4872.4,4459.03,0],0,false,[[2512,0,241.142],[736,0,9.83037]]], +[[2.13631,3526.41,0],0,false,[[3860,1,349.95]]],[[276.804,828.91,0],0,false,[[3891,0,11.5147],[518,0,90.1054]]],[[5696.01,2907.56,0],0,true,[[3895,1,93.0659],[2162,1,12.3931],[1326,1,8.68565]]],[[6771.66,943.496,0],0,true,[[2947,1,30.6644],[2674,1,128.506],[3756,1,9.49947],[3620,1,17.4557]]],[[5246.18,1824.74,0],0,true,[[8,1,16.4671],[1736,1,67.2642],[871,1,11.1237]]], +[[2119.95,6360.98,0],0,false,[[2306,0,33.4259],[2636,0,132.828]]],[[1717.71,5874.5,0],0,true,[[1665,1,22.6785],[1861,1,119.47],[709,1,6.72086]]],[[6889.81,1943.69,0],0,true,[[959,0,24.4037],[1235,0,6.64294],[451,0,8.38682]]],[[468.618,7361.94,0],0,false,[[3202,0,31.3347],[3164,0,111.149]]],[[4342.32,6124.75,0],0,false,[[1542,2,6.54471],[2141,0,102.739]]], +[[1246.16,7999.5,0],0,true,[[3030,1,13.5691],[148,1,21.4677],[2799,1,30.0624]]],[[343.98,4488.83,0],0,true,[[1575,0,9.39119],[1562,0,0.753383],[43,0,8.82812],[437,0,9.15205]]],[[1353.23,3125.39,0],0,false,[[41,0,70.5292],[2719,0,164.757]]],[[911.078,7563.22,0],0,true,[[1807,0,22.5936],[3745,0,157.441],[1636,0,30.0677]]],[[5489.83,6568.7,0],0,false,[[792,1,3.36305],[3797,0,71.8812]]], +[[364.397,4674.02,0],0,true,[[2454,0,17.817],[1420,0,0.749183],[1180,0,18.4832],[245,0,24.856]]],[[351.854,1872.24,0],0,false,[[1915,1,378.156],[3603,1,64.2357]]],[[2959.79,1861.4,0],0,false,[[2453,1,29.6801],[3757,1,24.0075]]],[[6621.68,3545.73,0],0,true,[[741,0,212.073],[3541,0,18.2275],[2289,0,9.63658]]],[[4326.9,3029.41,0],0,true,[[826,1,29.8268],[1999,1,11.6227],[1657,1,65.1583]]], +[[2857.75,4159.77,0],0,true,[[275,1,25.8113],[999,1,26.4267],[1494,1,13.6411]]],[[4821.34,6042.67,0],0,false,[[1627,0,96.2104],[2918,0,102.229]]],[[6249.17,7607.71,0],0,false,[[2606,1,313.573],[882,1,243.141]]],[[4313.41,2953.9,0],0,true,[[3133,1,66.7592],[869,1,23.2939],[1529,1,17.9547]]],[[4253.08,1925.89,0],0,false,[[2184,0,16.632],[3788,0,28.4732]]], +[[1543.85,4744.98,0],0,false,[[2447,1,188.8],[3204,1,131.588]]],[[4991.11,1963.08,0],0,false,[[1076,1,166.72],[3483,1,23.5494]]],[[5518.72,1273.41,0],0,false,[[316,0,13.7505],[2221,0,130.805]]],[[4608.89,2378.13,0],0,false,[[317,1,137.53],[3375,1,50.4838]]],[[2181.41,5321.5,0],0,false,[[1289,0,22.2575],[943,0,66.1302]]], +[[276.057,4713.21,0],0,false,[[1344,0,97.9361],[268,0,114.626]]],[[4084.03,5373.99,0],0,false,[[445,0,23.1385],[2472,0,107.738]]],[[4187.78,6935.83,0],0,false,[[375,0,188.939],[266,0,59.2319]]],[[2643.07,4435.94,0],0,false,[[526,0,32.0589],[2519,0,197.583]]],[[4612.7,7203.83,0],0,false,[[3809,0,268.88]]], +[[4778.62,3708.47,0],0,true,[[3492,1,25.9424],[1590,1,32.0711],[1032,1,5.91037]]],[[3977.83,3784.09,0],0,true,[[2263,1,15.6794],[2072,1,126.573],[1429,1,12.0201]]],[[5999.73,5399.45,0],0,false,[[1191,0,164.233],[476,0,48.0122]]],[[6891.65,880.166,0],0,false,[[2674,1,8.08326],[3699,0,181.25]]],[[5617.91,7264.69,0],0,true,[[589,0,10.1123],[3226,0,10.2399],[3834,0,9.7167]]], +[[7058.12,6476.15,0],0,true,[[1027,1,18.2469],[2347,1,21.6125],[3794,1,10.1754]]],[[7031.79,1530.41,0],0,false,[[2907,0,372.522],[979,0,12.6585]]],[[4013.93,4177.84,0],0,true,[[1685,1,22.1619],[728,1,20.4633],[1471,1,12.4196]]],[[2147.32,7326.69,0],0,true,[[541,1,12.4879],[3264,0,32.0739],[2727,1,15.2475]]],[[4266.88,3995.87,0],0,false,[[673,1,41.4887],[2955,1,30.1568]]], +[[3837.59,3562.57,0],0,false,[[788,1,24.4469],[3317,1,79.5941]]],[[5225.59,1888.7,0],0,false,[[1694,1,67.2642],[3443,1,104.706]]],[[984.978,8037.92,0],0,false,[[141,1,125.817],[3044,1,128.301]]],[[4041.42,2963.74,0],0,false,[[1604,0,76.3418]]],[[1998.74,1528.65,0],0,false,[[2017,1,338.456],[3266,1,154.251]]], +[[6711.9,7948.24,0],0,false,[[636,0,33.9385],[1159,0,356.879]]],[[5198.17,398.599,0],0,true,[[3488,0,7.9239],[1301,0,79.6605],[1106,0,8.29164]]],[[7072.89,5534.56,0],0,false,[[2173,1,7.39676],[388,1,7.39676]]],[[7544.62,1149.79,0],0,true,[[501,0,16.8971],[3543,0,133.566],[1805,0,11.4192]]],[[4024.72,4123.82,0],0,false,[[1874,1,13.0978],[2794,1,4.72781]]], +[[7642.9,7187.52,0],0,false,[[3075,0,156.462],[3306,0,67.3294]]],[[8097.3,1609.65,0],0,true,[[1837,0,11.0513],[1987,0,105.487],[3113,0,12.3838]]],[[5515.89,4144.74,0],0,true,[[1937,0,320.446],[1161,0,18.6306],[3523,0,211.205]]],[[6206.92,4315.65,0],0,true,[[712,1,79.4104],[1834,1,11.0257],[532,1,21.5343]]],[[6844.55,4356.87,0],0,true,[[2532,0,4.62883],[3444,1,10.5854],[3385,1,12.6443]]], +[[2677.36,3620.16,0],0,false,[[3430,0,150.936],[2021,0,31.7181]]],[[7063.66,5622.83,0],0,false,[[3848,0,63.5319],[3086,0,24.9021]]],[[2562.61,2050.91,0],0,true,[[1318,1,77.7992],[2778,1,19.758],[3060,1,9.22875]]],[[7177.81,8023.59,-0.000610352],0,false,[[1073,0,82.2534],[1053,0,81.6824]]],[[4215,7507.65,0.000183105],0,false,[[3916,0,12.2355],[1938,0,16.5197]]], +[[7769.82,7895.91,0],0,false,[[3724,0,24.7066],[2968,0,25.7441]]],[[4390.65,2868.97,0],0,true,[[2525,2,29.4246],[1862,2,29.6596],[725,2,16.1198],[938,2,15.0604]]],[[1044.43,1811.59,0],0,true,[[2919,1,10.715],[920,1,160.791],[3447,1,7.07044]]],[[1149,2322.45,0],0,true,[[1099,1,209.963],[1243,1,21.6121],[3675,1,8.14453]]],[[7631.2,8133.86,0],0,false,[[2175,0,74.9057],[2354,0,88.0574]]], +[[4189.44,2624.25,0],0,false,[[2197,1,218.49],[1873,1,180.129]]],[[2171.76,5441.54,0],0,true,[[1198,1,23.7873],[2116,1,88.025],[3259,1,10.3182]]],[[8078.88,1290.12,0],0,false,[[3405,0,23.4304],[1056,0,42.2536]]],[[1720.02,6992.46,0],0,false,[[956,1,168.739],[3216,1,137.256]]],[[1608.25,6910.97,0],0,false,[[730,0,168.435],[618,0,11.9545]]], +[[1150.3,4679.48,0],0,true,[[1672,0,8.89923],[1768,0,28.8797],[3047,0,7.10872]]],[[7924.81,4573.82,0],0,false,[[1977,0,147.47],[630,0,76.7152]]],[[7855.98,774.159,0],0,true,[[996,0,72.9786],[422,0,24.8557],[3877,0,13.9736]]],[[1148.53,4708.26,0],0,true,[[1765,0,28.8797],[2364,0,15.1966],[181,0,21.0113],[867,0,16.7478]]],[[1619.79,3227.47,0],0,true,[[2680,0,17.3611],[2474,0,17.3609],[1247,0,10.5131]]], +[[3359.81,6293.29,0],0,true,[[1908,0,12.8054],[2652,0,217.487],[172,0,4.81311]]],[[483.914,2006.07,0],0,false,[[439,0,21.7037],[3414,0,180.494]]],[[5088.26,3903.45,0],0,true,[[2818,0,14.8372],[2676,0,4.45863],[718,0,17.779]]],[[4892.93,916.011,0],0,true,[[2958,1,120.452],[3406,1,27.9392],[1349,1,18.3928]]],[[2727.77,3026.22,0],0,false,[[1469,0,121.198],[2163,0,20.9675]]], +[[4309.58,7445.15,0],0,false,[[1628,0,88.3514],[3270,0,122.728]]],[[5510.8,4920.07,1.8754],0,false,[[1849,0,99.2925],[3467,0,22.7946]]],[[6126.5,885.675,0],0,true,[[19,0,6.24476],[2595,0,163.692],[829,0,6.84536]]],[[2746.6,7039.48,0],0,true,[[1066,0,28.9096],[1490,0,29.9967],[3239,0,14.8025]]],[[3039.03,2480.23,0],0,false,[[34,0,44.8489],[572,0,91.0068]]], +[[8040.28,303.189,0],0,false,[[1468,0,76.8917]]],[[4139.58,4227.15,0],0,false,[[1930,1,23.9055],[2473,1,79.5965]]],[[3298.92,6051.56,0],0,false,[[2884,0,29.7319]]],[[1785.16,5032.23,0],0,false,[[2774,0,131.222]]],[[7012.23,4105.38,0],0,true,[[76,0,98.5033],[2483,0,19.3069],[2419,0,7.82452]]], +[[8114.97,4971.3,0],0,false,[[2744,0,83.8344],[2679,0,14.9201]]],[[7234.05,6288.42,0],0,false,[[623,0,78.7525],[1508,0,13.1846]]],[[7087.56,4205.84,0],0,true,[[3461,1,146.462],[3600,1,20.4277],[3007,1,13.2096],[2538,1,13.3554]]],[[3637.03,2508.92,0],0,false,[[3310,0,117.291],[1336,0,77.6068]]],[[6827.47,2033.19,0],0,true,[[680,0,6.40813],[3636,0,13.2921],[2513,0,1.63338]]], +[[4180.45,3963.75,0],0,false,[[369,0,16.3092],[663,0,21.5641],[2094,0,20.4208]]],[[2672.25,1911.4,0],0,false,[[2138,0,101.631],[295,0,50.4757]]],[[5977.7,1708.96,0],0,true,[[3506,0,307.835],[695,0,7.37399],[2452,0,14.0581]]],[[1605.21,3213.8,0],0,false,[[2719,0,108.095],[1247,0,28.2863]]],[[5490.75,3674.68,0],0,false,[[2115,0,72.47],[1517,0,129.445]]], +[[7777.5,5797.01,0],0,false,[[3004,0,7.20313],[598,0,99.7339]]],[[2296.54,933.275,0],0,false,[[2361,2,259.366],[3080,2,22.3008]]],[[458.488,5483.92,0],0,false,[[298,0,49.4985],[2511,0,32.8188]]],[[3744.72,1034.6,0],0,true,[[3681,1,54.6942],[3872,1,22.8765],[1584,1,3.65832]]],[[5586.54,6472.57,0],0,false,[[2022,0,50.4099]]], +[[2036.1,7295.64,0],0,true,[[3309,1,19.4279],[3666,1,19.1613],[271,1,6.72169],[51,1,6.24807]]],[[5063.68,5260.69,0],0,false,[[903,1,124.907],[1936,1,11.5796]]],[[4749.91,3390.53,0],0,false,[[638,0,46.8753]]],[[978.796,3885.43,0],0,true,[[917,0,23.3521],[2516,0,14.8566],[1990,0,15.6719]]],[[5173.76,6896.92,0],0,false,[[3821,0,219.64],[2061,0,69.8531]]], +[[7555.96,1148.72,0],0,true,[[1743,0,11.4192],[86,0,6.51776],[501,0,6.79696]]],[[7742.45,6708.91,0],0,false,[[1185,1,8.21143],[698,0,4.33704]]],[[933.667,7563.56,0],0,true,[[1703,0,22.5936],[944,0,21.6408],[1636,0,10.9311]]],[[5966.68,636.066,0],0,false,[[2685,0,143.372],[549,0,105.695]]],[[4283.19,6212.75,0],0,true,[[2141,0,5.55329],[597,0,69.8515],[137,0,4.361]]], +[[7269.7,1871.42,0],0,false,[[2128,0,313.874],[3849,0,281.176]]],[[3136.35,7643.45,0],0,false,[[89,0,295.447],[1461,0,18.553]]],[[5587.53,2914.51,0],0,true,[[2162,1,96.713],[2635,1,20.0212],[2682,1,16.6677]]],[[3700.47,8120.85,0],0,false,[[2043,1,33.7895],[1374,1,91.8704]]],[[2187.71,4.20573,0],0,false,[[393,1,265.633]]], +[[2313.56,360.32,0],0,true,[[1135,0,62.7198],[1877,0,9.60526],[2932,0,11.4685]]],[[8002.15,4523.98,0],0,false,[[419,0,10.5965],[40,0,31.4582]]],[[4775.46,3756.07,0],0,false,[[1062,1,32.8051],[552,1,17.5222]]],[[4766.79,4339.71,0],0,false,[[2467,0,94.6409],[3407,0,23.4986]]],[[3928.31,6435.38,0],0,true,[[720,0,11.5197],[3052,0,1.60486],[2864,0,7.26455]]], +[[4062.79,6456.66,0],0,false,[[2897,0,74.4085],[2952,0,205.989]]],[[3020.89,7392.56,0],0,true,[[2224,1,52.7435],[3320,1,14.4281],[2911,1,7.65513],[2252,1,8.118]]],[[2520.63,4770.96,0],0,true,[[1298,0,17.8592],[899,0,254.281],[3799,0,321.894]]],[[518.402,4308.63,0],0,false,[[2070,0,102.512],[2219,0,127.8]]],[[5072.46,6817.99,0],0,true,[[3388,1,11.3844],[2969,1,8.04165],[2747,2,18.0614]]], +[[7495.44,5076.39,0],0,false,[[1637,0,214.989]]],[[4897.72,6953.05,0],0,true,[[1920,0,151.479],[2752,0,3.31759],[2206,0,4.05049]]],[[5835.53,328.985,0],0,false,[[3650,0,148.87],[1931,0,26.6625]]],[[2184.6,6789.62,0],0,false,[[3858,0,51.7787],[606,0,266.715]]],[[4361.22,2311.54,0.000183105],0,false,[[1528,0,5.01326],[1661,0,5.01326]]], +[[616.308,30.8195,0],0,false,[[568,2,7.96324],[706,0,8.5828]]],[[2567.34,3836.46,0],0,true,[[93,1,16.1729],[3715,0,18.9843],[267,1,17.9011]]],[[5938.8,4926.05,0],0,true,[[2605,1,6.72281],[3678,0,50.795],[887,1,12.5863]]],[[2570.94,3860.8,0],0,false,[[3765,0,11.3648],[3660,0,19.1073]]],[[6196.1,4317.71,0],0,true,[[587,0,72.2078],[1748,1,11.0257],[532,1,11.2058]]], +[[1857.59,1430.54,0],0,true,[[3266,1,17.9229],[2784,1,59.4389],[2166,1,10.6103]]],[[8001.69,6525.34,0],0,false,[[1399,1,3.00041],[864,0,25.3159]]],[[8088.71,1602.75,0],0,true,[[3167,0,157.969],[1746,0,11.0513],[3113,0,22.459]]],[[857.024,4201.3,0],0,true,[[1129,0,172.327],[1477,0,28.7849],[807,0,18.6586]]],[[8190.15,6212.13,0],0,false,[[2865,1,37.2942]]], +[[1316.4,3456.29,0],0,true,[[1038,1,21.4814],[1015,1,109.583],[2080,1,17.4442]]],[[3376.04,7256.88,0],0,false,[[3373,0,407.345],[818,0,20.7573]]],[[4969.37,4619.52,0],0,true,[[969,1,117.451],[1386,1,28.1012],[2117,1,12.1527],[3389,1,24.7054]]],[[4678.01,5443.07,0],0,true,[[2524,0,93.5362],[746,0,214.408],[3669,0,133.15]]],[[3366.67,4973.75,0],0,true,[[1267,1,9.56753],[1002,0,44.6637],[967,1,10.3338]]], +[[5154.84,7951.82,0],0,true,[[325,2,147.126],[1474,2,27.754],[1983,2,10.1323],[1253,2,23.142]]],[[6950.26,2635.07,0],0,false,[[3861,0,239.561],[37,0,356.577]]],[[2929.1,4346.67,0],0,false,[[3141,0,29.0302],[309,0,113.58]]],[[4038.75,5439.43,0],0,false,[[2047,2,20.9724],[1607,2,21.7395]]],[[5490.21,4828.15,0],0,false,[[522,0,337.774],[1776,0,99.2925]]], +[[3011.83,4873,0],0,true,[[2738,0,53.3057],[2251,0,5.96474],[2917,1,6.67841]]],[[5300.29,7489.31,0],0,false,[[773,1,16.2563],[3089,1,48.8377]]],[[4215.63,3495.91,0],0,true,[[3833,0,5.78902],[3859,0,12.0285],[2655,0,8.11812]]],[[1806.51,671.495,0],0,true,[[2182,2,23.8932],[1407,2,255.105],[819,2,15.5494]]],[[7254.49,3576.94,0],0,true,[[3067,1,202.035],[3762,1,7.5526],[98,1,14.5676]]], +[[6481.11,4218.08,0],0,true,[[1929,0,146.749],[2589,0,4.39211],[3674,0,9.53598]]],[[2432.96,375.099,0],0,true,[[157,1,90.7418],[3773,1,26.1425],[860,1,6.17675],[102,1,8.99347]]],[[5991.62,4861.82,0],0,true,[[3090,0,14.0705],[2016,0,146.293],[1478,0,6.67107]]],[[5986.17,7572.17,0],0,true,[[1382,0,29.6319],[533,0,293.082],[1593,0,11.1539],[431,0,14.7863]]],[[2892.85,2129.49,0],0,false,[[901,0,307.713],[3116,0,114.93]]], +[[907.527,1763.12,0],0,false,[[226,0,14.6538],[1683,1,4.84612]]],[[1830.78,5835.97,0],0,false,[[1696,1,119.47],[367,1,192.77]]],[[4396.36,2839.87,0],0,false,[[1756,2,29.6596],[3505,2,24.0614]]],[[4531.96,3213.66,0],0,false,[[924,1,30.5216],[625,1,20.0014]]],[[6562.65,5464.19,0],0,false,[[771,0,197.624],[1245,0,159.811]]], +[[3810.36,5937.25,0],0,false,[[2840,0,15.4285],[330,0,39.0396]]],[[1971.07,2758.95,0],0,false,[[2171,0,67.7329],[318,0,289.628]]],[[3350.97,6310.26,0],0,false,[[239,0,58.8702],[172,0,17.8602]]],[[437.099,118.423,0],0,false,[[1450,0,120.158],[939,0,16.9404]]],[[343.877,4508.05,0],0,true,[[624,0,9.85956],[3425,0,0.752986],[437,0,10.5842],[1515,0,15.5859]]], +[[5522.72,8186.69,0],0,false,[[3210,1,268.916]]],[[280.693,7351.85,0],0,true,[[73,0,21.8825],[1568,0,20.3778],[3420,0,20.0825]]],[[7553.55,6520.11,0],0,true,[[3442,1,13.2029],[2953,1,69.1345],[1879,1,7.13621]]],[[4220.04,2798.48,0],0,true,[[1760,1,180.129],[982,1,30.5319],[2420,1,15.9515]]],[[4021.25,4136.44,0],0,false,[[728,1,21.6013],[1744,1,13.0978]]], +[[2244.28,886.683,0],0,true,[[1328,0,15.2901],[3855,0,40.1043],[3494,2,19.5968]]],[[4501.16,2495.6,0],0,true,[[584,2,25.0856],[2028,2,10.8777],[3796,2,24.7868]]],[[2323.15,360.705,0],0,true,[[2932,0,20.6544],[860,0,110.033],[1815,0,9.60526]]],[[3663.09,5084.33,0],0,false,[[1558,0,22.544],[3350,0,368.557]]],[[7554.36,6513.02,0],0,true,[[3442,1,7.25634],[3001,0,29.8174],[1872,1,7.13621]]], +[[4644.2,3447.02,0],0,false,[[2817,1,96.1247],[619,1,53.5789]]],[[7467.33,3131.03,0],0,true,[[1653,0,47.9778],[1117,0,11.9733],[2355,0,6.77067]]],[[5656.55,1026.73,0],0,true,[[2768,1,115.046],[1631,1,11.8515],[744,1,26.4377]]],[[2373.15,218.344,0],0,true,[[393,1,19.1561],[679,1,46.4351],[2982,1,9.64133]]],[[4188.19,4716.43,0],0,false,[[2667,2,82.9822],[3776,2,158.731]]], +[[5918.7,4351.14,0],0,false,[[3490,1,141.207],[711,1,30.913]]],[[2817.99,7386.34,0],0,false,[[3789,1,23.6755],[2224,1,151.081]]],[[4790.07,3750.37,0],0,false,[[1662,1,20.0806],[3492,1,17.5558]]],[[1600.63,277.96,0],0,false,[[955,0,249.315],[2541,0,125.714]]],[[2650.78,6865.05,0],0,false,[[3468,1,133.079],[2023,1,25.0848]]], +[[4286.9,6286.13,0],0,false,[[1023,0,6.71841],[2725,0,79.3349]]],[[7440.58,3119.24,0],0,false,[[1117,0,17.6127],[1225,1,4.51389]]],[[5630.23,6300.19,0],0,true,[[1389,1,7.58302],[617,1,7.90226],[2026,1,9.16063],[2246,1,8.74493]]],[[2935.06,4391.17,0],0,true,[[2015,0,14.491],[3804,0,19.7398],[313,0,7.43479]]],[[1974.25,5680.3,0],0,false,[[2915,0,51.9059]]], +[[2863.34,3244.74,0],0,true,[[1385,0,21.5086],[2232,0,20.5822],[3647,0,21.1953],[1385,0,21.4447],[890,0,0.124067]]],[[3383.11,4297.2,4.65434],0,false,[[1464,0,125.4],[1664,0,17.6208]]],[[325.25,862.759,0],0,false,[[1089,1,71.4632],[2590,1,52.4092]]],[[373.073,7233.37,0],0,true,[[3198,0,104.814],[1456,0,26.9612],[434,0,13.5012]]],[[6074.65,7808.84,0],0,true,[[882,1,26.2655],[3477,1,25.0402],[2827,1,28.1394],[2033,1,17.1257]]], +[[4076.58,3465.38,0],0,true,[[2402,1,10.1504],[2121,1,99.5096],[363,1,9.27499]]],[[945.931,1078.96,0],0,false,[[622,1,8.81528],[908,0,149.852]]],[[6436.76,592.806,0],0,true,[[2775,0,33.7845],[1001,0,111.718],[7,0,17.4694]]],[[7469.36,2821.65,0],0,false,[[3355,0,293.712],[189,0,25.0531]]],[[1553.22,541.111,0],0,true,[[1476,0,5.65467],[323,0,292.22],[3329,2,6.26496]]], +[[7013.93,396.893,0],0,false,[[2012,1,10.2488],[529,1,25.9456]]],[[6946.37,844.677,0],0,true,[[1554,1,25.5673],[97,1,26.889],[3178,1,12.1209],[30,1,5.00688]]],[[3108.39,3564.83,0],0,false,[[2845,0,282.867],[1293,0,386.38]]],[[3360.8,6306.05,0],0,false,[[2986,0,44.9481],[1770,0,12.8054]]],[[4506.67,2589.25,0],0,false,[[1192,2,82.4651],[584,2,68.7373]]], +[[7721.36,2966.99,0],0,true,[[2207,1,19.486],[1048,0,186.082],[2331,1,19.5172],[557,0,27.1198]]],[[5591.51,5658.6,0],0,false,[[2295,1,25.2548],[2299,1,201.929]]],[[864.69,6201.4,0],0,false,[[1324,0,46.4055],[3231,0,190.189]]],[[5025.81,4134.15,0],0,false,[[2562,0,19.5416],[3473,0,20.0015]]],[[2881.72,7484.5,0],0,false,[[1033,0,201.788],[1371,0,80.1108]]], +[[3.73006,2017.19,0],0,false,[[1706,1,378.156]]],[[1011.48,3819.66,0],0,true,[[2389,0,17.8455],[2797,0,175.391],[1152,0,13.0369],[3617,0,24.7152]]],[[357.22,4635.64,0],0,true,[[2098,0,13.0479],[3215,0,7.95202],[2555,0,8.69713],[595,0,0.749844]]],[[3117.21,7549.73,0],0,false,[[3130,1,24.0331],[547,1,19.6271]]],[[3431.6,2336.88,0],0,true,[[3818,0,48.8478],[2545,0,6.6364],[3695,0,8.29842]]], +[[5029.85,6881.53,0],0,false,[[475,0,50.1751],[1826,0,151.479]]],[[5458.07,2214.7,0],0,true,[[3464,0,83.2656],[1546,1,19.1063],[1120,1,20.5531],[490,0,25.4435]]],[[4857.91,4016.71,0],0,false,[[2853,0,23.2684],[3496,0,58.6068]]],[[2504.63,7483.56,0],0,false,[[2734,0,138.361],[1014,0,6.22731]]],[[3618.88,4299.1,0],0,false,[[1172,0,145.598],[2772,0,50.4865]]], +[[6823.02,5330.97,0],0,true,[[372,1,392.184],[3272,1,9.50363],[2612,1,15.3029]]],[[1205.03,7899.78,0],0,false,[[1186,1,61.3895],[2062,1,168.778]]],[[2475.83,7882.07,0],0,false,[[2344,0,142.378],[990,0,324.165]]],[[2156.3,3980.73,0],0,true,[[2441,0,16.3458],[1291,0,44.2997],[2691,0,16.0821]]],[[6566.15,4316.06,0],0,false,[[2388,0,21.9989],[1855,0,146.749]]], +[[4128.76,4205.84,0],0,false,[[3866,1,28.2213],[1781,1,23.9055]]],[[5858.52,317.025,0],0,false,[[1827,0,26.6625],[3618,1,9.3868]]],[[1970.19,7459.25,0],0,false,[[3127,1,4.71032],[906,0,106.356]]],[[4542.47,6531.52,0],0,true,[[337,0,8.5985],[3013,0,7.71167],[2457,0,4.44189]]],[[3312.63,6077.53,0],0,false,[[1367,0,74.8292],[2884,0,23.7585]]], +[[4489.07,8015.59,0],0,true,[[2568,0,140.566],[1419,0,22.691],[274,0,10.3096]]],[[5073.44,5254.45,0],0,true,[[1801,1,11.5796],[1394,1,62.3092],[3381,1,5.45587]]],[[5584.71,3832.25,0],0,false,[[2781,0,111.982],[1747,0,320.446]]],[[4199.63,7501.59,0.000244141],0,false,[[1754,0,16.5197],[238,0,12.0388]]],[[1425.42,7695.8,0],0,false,[[1,0,104.914],[184,0,218.439]]], +[[4771.45,4592.57,0],0,false,[[3392,1,151.127],[665,1,184.272]]],[[1518.53,2142.32,0],0,false,[[420,0,12.7857],[3046,0,101.099]]],[[354.753,4093.11,0],0,true,[[1439,0,15.9762],[496,0,189.606],[3025,0,25.049]]],[[3538.45,1145.48,0],0,false,[[133,0,38.9741],[1219,0,138.451]]],[[4403.17,3284.2,0],0,false,[[3182,0,61.1937],[1363,0,280.792]]], +[[5297,360.3,0],0,true,[[1401,0,8.89981],[2756,0,45.4537],[2381,0,11.3958]]],[[7741.65,7937.24,0],0,true,[[2354,0,138.218],[3724,0,25.3603],[415,0,95.2751]]],[[1482.16,4444.63,0],0,false,[[1611,0,89.2884],[928,0,170.942]]],[[6914.84,3884.89,0],0,false,[[2483,0,226.39],[1055,0,100.146]]],[[6678.17,239.313,0],0,false,[[529,1,345.68],[232,1,20.5949]]], +[[1608.16,3524.66,0],0,true,[[556,0,97.418],[3504,0,6.09083],[2324,0,7.53955]]],[[2.59136,4236.73,0],0,false,[[2326,0,59.19]]],[[2994.84,6880.9,0],0,true,[[884,0,32.5291],[1142,0,120.357],[809,0,17.5303]]],[[1216.91,1784.25,0],0,false,[[731,1,8.15445],[660,0,98.0464]]],[[42.4253,5122.4,0],0,false,[[428,1,15.5836],[762,1,54.4798]]], +[[4002.99,4388.98,0],0,true,[[2493,0,14.6509],[2836,0,17.5736],[2155,0,18.2716]]],[[1790.06,8072.75,0],0,false,[[3527,0,179.343]]],[[4237.84,3062.19,0],0,false,[[581,1,167.61],[826,1,93.9235]]],[[5094.54,2842.43,0],0,false,[[703,0,15.1156],[3260,0,199.761]]],[[4491.56,4647.89,1.08871],0,false,[[782,2,15.575],[410,2,8.1626]]], +[[1575.64,1218.06,0],0,false,[[3035,0,252.584],[559,0,16.0147]]],[[4693.73,5843.66,0],0,true,[[1339,0,5.69431],[1610,0,4.33974],[1024,0,12.0527]]],[[2561.15,123.274,0],0,false,[[355,0,46.7971]]],[[483.619,4089.94,0],0,false,[[1439,0,133.303]]],[[2922.83,4123.95,0],0,false,[[2867,0,61.0956],[3362,0,53.3844]]], +[[4505.23,2397.05,0],0,true,[[3796,2,74.1326],[1131,2,11.565],[862,2,12.2385]]],[[5846.55,1464.43,0],0,true,[[2356,1,10.8765],[3219,1,302.34],[75,1,19.9982]]],[[6244.44,2047.49,0],0,false,[[3106,1,122.617],[1092,1,118.218]]],[[3366.95,228.92,0],0,true,[[1475,1,252.338],[1378,1,10.2612],[284,1,2.2678]]],[[5906.67,2209.16,0],0,false,[[1136,1,304.382],[3341,1,153.393]]], +[[6279.18,8059.75,0],0,false,[[1369,0,185.012],[2033,0,315.72]]],[[414.049,1843.02,0],0,true,[[3603,1,6.73831],[3445,0,265.485],[2302,1,7.45833]]],[[3977.55,6438.76,0],0,true,[[2801,0,14.6032],[932,0,35.8925],[3760,0,11.3855]]],[[3654.23,6659.59,0],0,false,[[2054,1,95.8058],[3440,1,27.4458]]],[[1848.22,7216.99,0],0,false,[[1348,1,28.3645],[2215,1,80.1365]]], +[[2296.92,4319.9,0],0,true,[[405,1,16.3001],[1594,1,209.841],[2311,1,26.9291]]],[[6373.17,4326.76,0],0,true,[[2746,1,48.9079],[560,1,23.1404],[2494,1,11.5347]]],[[7778.94,4595.37,0],0,false,[[2892,0,195.364],[1766,0,147.47]]],[[4347.08,1979.34,0],0,false,[[1224,2,31.0698],[402,2,72.6819]]],[[3129.59,7529.86,0],0,false,[[828,0,64.6414],[195,0,24.9862]]], +[[4494.07,4625.12,0],0,false,[[782,2,7.4527],[2930,1,76.9386]]],[[3.38283,733.017,0],0,false,[[2123,1,263.679]]],[[4958.63,4124.57,0],0,false,[[3146,0,26.5951],[2290,0,27.2097]]],[[5159.29,7942.73,0],0,false,[[1845,2,10.1323],[1253,0,15.1791]]],[[839.966,6408.63,0],0,false,[[1569,0,119.343]]], +[[901.293,6070.11,0],0,true,[[1453,1,125.254],[2198,1,21.517],[353,1,14.8787],[2743,1,15.3657]]],[[5860.78,333.124,0],0,false,[[3618,1,24.6073],[2085,1,221.851]]],[[8039.85,1697.59,0],0,true,[[1746,0,105.487],[2910,0,23.9962],[1115,0,12.2404]]],[[1415.01,6747.68,0],0,false,[[3555,1,8.66223],[3290,0,20.7741]]],[[364.363,1579.1,0],0,true,[[3445,0,16.0809],[3446,0,30.9348],[2376,0,16.5509]]], +[[990.112,3874.6,0],0,true,[[2516,0,29.9377],[2389,0,44.7942],[1803,0,15.6719]]],[[5057.2,6816.01,0],0,true,[[2747,2,25.8107],[2546,2,18.4633],[2969,2,9.97753],[931,2,9.63599]]],[[4781.75,6546.48,0],0,true,[[2833,2,21.6997],[2114,2,24.2291],[126,2,8.36389]]],[[2425.32,7052.76,0],0,false,[[611,0,167.86],[2943,0,83.9725]]],[[4048.23,3354.34,0],0,false,[[3577,0,61.4191],[2534,0,111.682]]], +[[1738.39,4273.63,0],0,false,[[3735,0,235.636],[1199,0,287.392]]],[[8188.33,5950.25,0],0,false,[[3869,1,209.207]]],[[7843.86,7812.34,0],0,false,[[866,1,52.9987],[3659,1,19.2319]]],[[7965.91,4528.37,0],0,false,[[1299,1,26.4762],[449,1,122.003]]],[[4328.07,3040.97,0],0,false,[[1709,1,11.6227],[1418,1,24.1692]]], +[[2642.08,108.26,0],0,false,[[2471,0,112.436],[2050,0,51.2064]]],[[3945.44,514.737,0],0,false,[[3351,0,110.616],[1229,0,210.19]]],[[488.061,3023.16,0],0,true,[[3161,0,349.26],[2038,0,21.5734],[953,0,11.7047]]],[[4352.41,7000.53,0],0,true,[[342,1,8.84496],[1314,0,15.8389],[466,1,7.78925]]],[[6936.42,3078.98,0],0,true,[[2481,0,96.5636],[873,0,21.5447],[963,0,12.1121]]], +[[164.963,6747.31,0],0,false,[[378,0,322.493],[1325,0,155.437]]],[[2955.36,1893.36,0],0,false,[[3448,1,8.65578],[1545,1,43.4317]]],[[918.428,4130.34,0],0,false,[[1477,0,67.7038],[3790,0,89.2241]]],[[2120.31,6317.43,0],0,true,[[2942,1,29.3404],[2293,1,30.1333],[2306,1,13.6387]]],[[231.175,537.392,0],0,false,[[518,0,205.438],[1065,0,123.874]]], +[[4370.6,4933.15,0],0,false,[[2214,1,128.308],[3039,1,26.1293]]],[[3726.77,1855.41,0],0,true,[[1297,0,147.729],[2877,0,10.5988],[1587,0,4.87934],[3261,0,15.3491]]],[[7023.81,399.466,0],0,true,[[3791,1,20.5032],[1905,1,10.2488],[2479,1,5.05726]]],[[4037.52,4189.38,0],0,true,[[3574,2,56.3212],[3177,2,33.0039],[1471,2,13.9184],[3524,2,10.0857]]],[[4594.61,2321.27,0],0,true,[[814,1,140.224],[3223,1,28.7329],[3375,1,13.7469],[272,1,10.6656]]], +[[2922.88,4399.03,0],0,true,[[1037,0,48.4638],[313,0,7.26494],[1893,0,14.491]]],[[5935.54,4730.98,0],0,true,[[1857,0,146.293],[2377,0,5.71213],[2159,0,15.0837]]],[[2314.25,1645.89,0],0,false,[[3134,1,29.6643],[1739,1,338.456]]],[[5604.09,4358.23,0],0,false,[[2037,1,29.1127],[3300,1,27.2283]]],[[3803.26,5138.59,0],0,true,[[2239,0,6.28857],[2509,0,5.98331],[3590,1,7.37921]]], +[[2734.05,3430.77,0],0,false,[[2247,1,171.71],[203,1,107.353]]],[[2657.63,3595.42,0],0,false,[[1750,0,31.7181],[348,0,30.6158]]],[[5537.84,6459.9,0],0,false,[[1799,0,50.4099],[3132,1,10.1768]]],[[2628.46,6853.63,0],0,true,[[1889,1,25.0848],[3763,1,25.3001],[2717,1,13.2191]]],[[4118.61,2300.15,0],0,false,[[3777,0,232.886],[2787,0,96.6662]]], +[[4081.41,5706.47,0],0,false,[[3144,2,35.3766],[3598,2,163.529]]],[[5639.29,6298.89,0],0,true,[[1463,1,196.507],[1892,1,9.16063],[1389,1,3.86053]]],[[2550.88,7385.33,0],0,true,[[17,1,187.948],[1679,1,12.6783],[2798,1,22.8671]]],[[4503.49,2484.98,0],0,true,[[1414,1,6.25971],[1876,2,10.8777],[3796,2,14.5135]]],[[5720.34,904.583,0],0,true,[[3910,1,269.954],[2639,1,10.0979],[2768,1,23.5518]]], +[[7467.79,4407.17,0],0,false,[[3770,1,150.67],[1308,1,282.653]]],[[1153.06,3629.94,0],0,true,[[2069,0,40.2506],[609,0,10.2775],[2060,0,6.37396]]],[[2963.91,6945.02,0],0,false,[[2933,1,52.2204],[1111,1,17.6036]]],[[6068.88,7824.96,0],0,true,[[1970,0,315.72],[3477,0,26.9278],[1899,1,17.1257],[2827,1,20.2647]]],[[4406.13,6088.08,0],0,true,[[1074,0,63.9206],[1098,0,12.1065],[404,0,5.97539]]], +[[4624.53,5196.6,0],0,false,[[1157,1,20.1549],[2278,1,135.581]]],[[4058.16,4130.99,0],0,false,[[1307,1,24.8623],[3235,1,26.8366]]],[[5633.13,4356.91,0],0,false,[[2813,1,56.2835],[2018,1,29.1127]]],[[492.909,3044.18,0],0,true,[[2002,0,21.5734],[1514,0,68.1617],[953,0,10.4258]]],[[1539.32,5949.22,0],0,true,[[209,1,18.9442],[3619,1,139.704],[3008,1,10.886]]], +[[2618.54,6899.99,0],0,false,[[3720,0,44.2415],[2622,0,174.483]]],[[6946.28,5230.83,0],0,false,[[3272,0,164.708],[2812,0,394.122]]],[[4724.73,1137.6,0],0,false,[[621,0,24.3178]]],[[3677.02,8096.52,0],0,true,[[168,1,109.381],[1813,1,33.7895],[246,1,13.0123]]],[[7501.65,2821.35,0],0,true,[[2888,0,100.044],[189,0,14.7601],[2049,0,20.1176]]], +[[5310.76,1537.67,0],0,false,[[3397,1,249.156],[2084,1,214.045]]],[[6883.13,4346.74,0],0,false,[[450,0,26.4115],[2700,0,22.9311]]],[[4040.63,5460.32,0],0,false,[[2577,2,60.4345],[1848,2,20.9724]]],[[1376.91,1844.67,0],0,true,[[3268,1,6.86647],[2455,1,283.011],[1358,2,10.1815]]],[[7493.87,2839.9,0],0,true,[[2044,0,20.1176],[724,0,124.524],[189,0,7.69214]]], +[[2637.94,156.907,0],0,true,[[1174,0,42.809],[2712,0,74.5034],[2000,0,51.2064]]],[[1484.48,3309.28,0],0,false,[[1462,0,27.4316],[2260,0,51.0556]]],[[642.632,943.855,0],0,true,[[3912,0,317.66],[689,1,17.9979],[2160,1,18.4598],[524,0,19.9962]]],[[68.5198,5087.11,0],0,false,[[3563,0,73.9019],[279,0,11.2261]]],[[3743.51,6675.01,0],0,false,[[847,1,197.866],[1973,1,95.8058]]], +[[3553.59,2077.87,0],0,false,[[2994,0,50.2113],[2087,0,14.1546]]],[[5407.48,3537.58,0],0,false,[[1079,0,132.352],[1352,0,184.098]]],[[4623,6391.5,0],0,false,[[2114,2,197.785],[1513,2,153.59]]],[[7811.73,6509.04,0],0,true,[[3453,0,5.5411],[2597,0,8.58094],[3693,0,2.82381]]],[[445.704,2409.08,0],0,true,[[79,0,14.5219],[1046,0,86.0876],[635,0,25.8069]]], +[[1158.06,3633.88,0],0,true,[[3032,0,24.8222],[582,0,27.0143],[2031,0,6.37396],[609,0,12.6859]]],[[5123.27,6848.69,0],0,false,[[1804,0,69.8531],[1329,0,43.0144]]],[[1261.27,7742.43,0],0,false,[[1926,1,168.778],[305,1,170.439]]],[[3489.63,1685.63,0],0,false,[[67,0,119.696],[351,0,140.165]]],[[3486.49,2301.52,0],0,false,[[1237,1,40.149],[1146,1,50.9402]]], +[[5248.18,7662.62,0],0,true,[[216,2,21.3514],[2433,2,114.073],[1031,2,12.0699],[2427,2,7.70297]]],[[5824.82,610.656,0],0,false,[[2085,1,59.5936],[150,1,23.2959]]],[[2956.15,6926.26,0],0,false,[[2870,0,18.4917],[884,0,27.121]]],[[6478.18,2142.91,0],0,false,[[3065,1,86.6783],[2456,1,74.1662]]],[[1132.45,3664.29,0],0,false,[[1152,0,187.348],[2031,0,40.2506]]], +[[508.103,4410.42,0],0,true,[[1823,0,102.512],[2703,0,13.5076],[248,0,12.2041]]],[[6408.83,954.939,0],0,false,[[2393,0,88.1921],[2336,0,192.466]]],[[4021.93,3665.5,0],0,true,[[1726,1,126.573],[1304,1,20.6824],[2716,1,11.8585]]],[[2735.85,823.384,0],0,false,[[1660,0,81.3664],[2339,0,188.097]]],[[1814.8,4663.62,0],0,false,[[599,0,6.43274],[255,0,30.8979]]], +[[2188.61,5692.07,0],0,true,[[2940,0,348.755],[3868,0,17.2824],[3243,0,11.3226]]],[[2277.71,931.696,0],0,true,[[1133,0,7.55409],[2856,0,21.0683],[3080,2,9.10541]]],[[2007.6,3403.91,0],0,false,[[717,0,45.593]]],[[4926.96,1747.65,0],0,true,[[675,0,58.1513],[2802,0,119.997],[1413,0,8.93893]]],[[4206.98,1923.93,0],0,false,[[1361,2,48.5511],[1438,2,126.412]]], +[[1333.44,3453.26,0],0,true,[[910,0,27.5718],[1038,1,4.90137],[1840,1,17.4442]]],[[4252.53,6934.44,0],0,true,[[3236,0,114.007],[1156,0,12.6474],[266,0,7.10717]]],[[7826.94,744.975,0],0,false,[[3746,0,20.1123],[601,0,17.0487]]],[[2927.53,3344.08,0],0,true,[[2083,0,0],[2440,0,16.3363],[2440,0,16.3363],[3881,0,17.9228],[3881,0,17.9228]]],[[5196.81,1718.63,0],0,false,[[2045,1,214.045],[916,1,24.707]]], +[[5843.2,553.986,0],0,false,[[1986,1,221.851],[2066,1,59.5936]]],[[4925.51,2659.76,0],0,true,[[2657,1,117.419],[3655,1,12.4076],[3334,1,6.99658]]],[[3545.97,2087.87,0],0,true,[[107,0,57.49],[1411,0,28.2137],[2055,0,14.1546]]],[[7912.79,8033.14,0],0,false,[[2108,0,211.67]]],[[3978.23,2575.09,-0.136597],0,false,[[3604,2,15.6],[2197,2,7.4494]]], +[[3240.34,864.51,0],0,true,[[749,0,39.8203],[1507,0,8.06231],[3552,0,5.20289]]],[[5862.46,4346,0],0,false,[[3230,1,29.7593],[1287,1,75.1052]]],[[4182.65,5013.59,0],0,false,[[605,2,141.638],[2667,2,225.393]]],[[2822.31,4249.77,0],0,false,[[1262,0,148.233],[361,0,46.3933]]],[[4190.31,3981.49,0.000244141],0,false,[[1790,0,20.4208],[3023,0,35.3895]]], +[[4911.84,1053.68,0],0,true,[[781,0,4.94847],[3594,0,100.647],[1603,1,7.91019]]],[[347.433,4466.66,0],0,true,[[2937,0,19.6062],[43,0,13.8099],[3846,0,0.752656],[1575,0,13.164]]],[[5441.97,2.08013,0],0,false,[[3466,1,135.276]]],[[350.072,4624.73,0],0,true,[[3815,0,16.4843],[595,0,12.3034],[1917,0,13.0479],[1177,0,0.749428]]],[[7356.16,6345.49,0],0,true,[[3118,1,15.8672],[3319,0,35.08],[2762,1,9.93422]]], +[[3820.39,5941.76,0],0,false,[[2470,0,15.3188],[2840,0,10.036]]],[[4443.64,2985.8,0],0,false,[[2806,1,7.72388]]],[[2730.76,2489.55,0],0,true,[[1277,1,23.1413],[3485,1,400.654],[3158,1,4.58835]]],[[7160.18,723.724,0],0,true,[[97,1,218.809],[732,1,29.0725],[3238,1,13.2159]]],[[2019.75,7053.41,0],0,false,[[2443,0,68.9798],[3858,0,273.564]]], +[[4722.26,3600.03,0],0,false,[[648,1,42.484],[2817,1,76.4164]]],[[3966.24,5931.3,0],0,false,[[2345,0,16.3126],[1193,0,100.317]]],[[3779.66,7241.8,0],0,false,[[3373,0,238.18]]],[[7765.21,7909.94,0],0,false,[[2088,0,211.67],[3724,0,11.6525]]],[[3256.63,6013.33,0],0,false,[[2217,0,23.0369]]], +[[2546.26,72.3677,0],0,false,[[164,0,10.5313],[2624,0,13.8006]]],[[4155.15,3391.2,0],0,false,[[2303,0,95.9245],[1179,0,62.7656]]],[[4452.89,3075.91,0],0,false,[[3298,2,31.3943],[3257,2,51.5206]]],[[6229.94,6498.95,0],0,true,[[840,0,94.8996],[1564,0,7.35863],[3716,0,5.97744]]],[[4764.43,6529.54,0],0,false,[[1992,2,24.2291],[2057,2,197.785]]], +[[5492,3603.47,0],0,false,[[3128,0,174.295],[1794,0,72.47]]],[[2167.35,5353.81,0],0,false,[[1761,1,88.025],[719,1,23.3288]]],[[4958.88,4625.65,0],0,true,[[1650,1,6.85955],[45,1,44.5095],[1842,1,12.1527]]],[[5309.99,2916.96,0],0,false,[[2565,1,9.84429],[2711,0,114.257]]],[[4726.17,2862.35,0],0,true,[[654,0,115.721],[2369,0,10.9241],[2647,0,11.9073]]], +[[7211.5,694.952,0],0,true,[[732,1,29.7888],[49,1,12.8111],[0,1,19.6594]]],[[3978.63,3450.84,0],0,false,[[1900,1,99.5096],[788,1,175.196]]],[[7200.37,1452.45,0],0,false,[[1347,0,162.617],[153,0,241.962]]],[[248.268,829.948,0],0,false,[[2590,1,31.293],[1981,1,263.679]]],[[5223.85,6033.94,0],0,true,[[925,0,177.264],[1671,0,49],[3267,0,197.285]]], +[[4606.6,1989.01,0],0,true,[[3817,0,306.095],[1424,0,20.2805],[1244,0,10.6722]]],[[3395.48,2673.53,0],0,false,[[1577,0,55.3575],[1249,0,43.5573]]],[[7282.21,6011.64,0],0,false,[[458,0,135.334],[2822,0,104.169]]],[[7516.05,1684.39,0],0,false,[[2458,0,341.883],[1810,0,313.874]]],[[7205.12,919.855,0],0,true,[[692,0,23.7248],[536,0,19.4174],[38,0,10.8611]]], +[[4248.8,7006.21,0],0,false,[[466,1,96.0909],[976,1,29.8378]]],[[2554.09,3183.09,0],0,true,[[333,1,20.0469],[2963,1,44.0647],[362,1,8.46909]]],[[4924.94,3767.38,0],0,false,[[3835,0,159.802],[3665,0,205.668]]],[[3013.57,2001.78,0],0,true,[[949,1,28.4294],[1449,1,165.021],[3211,1,7.23514],[854,1,19.2353]]],[[6505.8,2868.17,0],0,true,[[1617,1,12.6821],[710,1,72.2966],[1596,1,19.855]]], +[[7646.32,5628.67,0],0,false,[[2548,1,254.743],[1057,1,183.236]]],[[241.982,6993.91,0],0,false,[[2619,0,134.785],[1519,0,55.3442]]],[[2552.57,3885.13,0],0,false,[[3206,1,67.2388],[267,1,33.1052]]],[[2761.26,1910.96,0],0,true,[[2237,0,59.5221],[2740,0,135.351],[1791,0,101.631]]],[[5702.26,511.054,0],0,false,[[3562,0,79.5464]]], +[[1060.39,5600.98,0],0,false,[[311,0,227.129],[923,0,100.698]]],[[4282.49,6207.25,0],0,true,[[1699,0,102.739],[137,0,5.74374],[1809,0,5.55329]]],[[3674.55,5931.56,0],0,false,[[330,0,97.2133],[2600,0,251.807]]],[[5751.36,6108.03,0],0,false,[[1257,1,29.1412],[1463,1,27.1936]]],[[981.44,346.048,0],0,false,[[3742,0,179.047],[1118,0,92.1938]]], +[[3508.58,6696.03,0],0,true,[[2570,1,33.9828],[1555,1,13.2009],[804,1,24.9542],[922,1,18.2705]]],[[2254.09,910.216,0],0,true,[[3080,2,26.0275],[3494,2,31.1449],[1328,2,17.2287]]],[[3105.3,4144.22,0],0,false,[[682,0,206.969]]],[[6955.02,7442.69,0],0,false,[[516,0,253.945]]],[[4635.27,5857.67,0],0,false,[[3092,0,292.283],[3162,0,58.5993]]], +[[8186.21,4549.48,0],0,false,[[1215,1,117.158]]],[[4102.34,4172.78,0],0,true,[[3524,1,59.0985],[3866,1,14.5704],[3667,1,11.9237]]],[[1613.13,8020.93,0],0,true,[[1335,1,18.6001],[2549,1,262.419],[935,1,2.82978]]],[[53.1336,5616.87,0],0,false,[[3847,0,71.9718],[3254,0,187.786]]],[[4305.33,2878.48,0],0,true,[[684,1,22.9399],[677,1,43.5939],[2951,1,12.0133]]], +[[3989.79,4401.51,0],0,true,[[414,0,41.3971],[2493,0,21.0556],[1955,0,18.2716]]],[[2493.14,7480.89,0],0,true,[[3741,0,207.148],[429,0,2.83703],[1284,0,18.264],[1014,0,5.63861]]],[[5672.06,5883.09,0],0,false,[[1288,0,164.722],[3898,0,246.781]]],[[5997.3,5611.65,0],0,false,[[1162,1,138.601],[2810,1,212.355]]],[[5936.81,4715.95,0],0,true,[[2377,0,11.0892],[3122,0,230.864],[2016,0,15.0837]]], +[[652.504,959.439,0],0,true,[[622,1,310.888],[689,1,30.2008],[2052,1,18.4598],[524,1,13.1202]]],[[1294.79,3967.71,0],0,true,[[2673,0,77.1682],[513,0,5.29716],[3105,0,6.54327]]],[[5683.97,2910.51,0],0,true,[[1692,1,12.3931],[1812,1,96.713],[1326,1,4.93771]]],[[2744.5,3013.61,0],0,false,[[1774,0,20.9675],[1372,0,250.221]]],[[3231.69,2399.65,0],0,false,[[572,0,183.731],[842,0,54.6887]]], +[[2771.38,7042.35,0],0,false,[[3239,0,16.1263],[1258,0,64.991]]],[[1867.33,1434.74,0],0,true,[[1835,1,10.6103],[3553,0,9.92437],[3266,1,8.1073]]],[[4076.31,3488.7,0],0,true,[[3890,1,23.8325],[363,1,15.135],[3708,1,8.37276]]],[[3226.82,7257.76,0],0,false,[[149,0,24.5143],[3560,0,82.7247]]],[[6340.21,5453.49,0],0,false,[[2637,0,22.7087],[282,0,148.686]]], +[[3063.84,5583.8,0],0,false,[[1470,0,66.8508],[455,0,11.7425]]],[[1925.53,2809.08,0],0,true,[[1616,0,17.3727],[1866,0,67.7329],[2193,0,27.3685],[3608,0,24.4417]]],[[5493.87,6556.86,0],0,false,[[3379,1,93.8997],[792,1,14.3339]]],[[7077.85,5540.03,0],0,false,[[2861,0,4.56405],[1742,1,7.39676],[1520,0,7.02587]]],[[677.984,4398.08,0],0,false,[[379,0,84.6568],[1129,0,128.769]]], +[[7581.89,8189.62,0],0,false,[[1759,0,74.9057]]],[[8098.38,1268.62,0],0,false,[[897,0,19.1138],[1204,0,10.308]]],[[5411.88,6295.41,0],0,false,[[3850,0,59.5396]]],[[345.078,4579.94,0],0,true,[[3812,0,19.2815],[774,0,0.749666],[2282,0,19.8958],[561,0,16.5758]]],[[1436.16,4085.24,0],0,false,[[2832,0,158.565],[642,0,47.8667]]], +[[8034.61,225.033,0],0,true,[[1455,1,24.4995],[1612,1,177.061],[1468,1,6.37118]]],[[1819.59,1237.02,0],0,false,[[2374,0,150.286],[1060,0,346.644]]],[[1827.56,682.787,0],0,true,[[3111,2,138.977],[1853,2,23.8932],[819,2,9.00184]]],[[6422.53,5541.73,0],0,false,[[852,0,79.3033],[2523,0,134.879]]],[[4258.45,1941.54,0],0,false,[[1361,2,6.43232],[1714,0,16.632]]], +[[7308.77,2580.86,0],0,true,[[37,0,20.581],[1619,0,241.026],[3355,0,12.4055]]],[[66.9716,7335.77,0],0,true,[[2842,0,49.8892],[1194,0,12.4542],[1484,0,13.6033]]],[[2723.12,983.502,0],0,true,[[1273,0,20.2863],[3883,1,12.6028],[1063,1,9.40372]]],[[6470.34,2482.59,0],0,true,[[1391,0,252.251],[1553,1,11.7353],[3513,1,16.8239]]],[[2863.96,4262.97,0],0,false,[[441,1,30.6337],[1452,1,55.3368]]], +[[6748.7,5525.6,0],0,false,[[502,0,259.986],[771,0,38.6833]]],[[232.894,6413.8,0],0,true,[[3137,0,307.731],[2395,0,10.1277],[378,0,25.2318]]],[[2500.59,3190.67,0],0,false,[[433,0,75.4572],[2963,1,10.0607]]],[[1907.64,2829.69,0],0,true,[[737,0,152.198],[1616,0,20.1491],[2171,0,27.3685]]],[[4386.23,2931.2,0],0,true,[[3307,1,16.666],[1481,2,10.3387],[2666,2,9.95677]]], +[[3227.7,44.1071,0],0,false,[[775,0,359.044],[1103,0,142.237]]],[[4021.95,4037.43,0],0,false,[[3027,1,18.8245],[1093,1,19.9758]]],[[3985.47,2575.38,0],0,false,[[2089,2,7.4494],[1760,1,218.49]]],[[880.351,6075.04,0],0,true,[[1985,1,21.517],[1190,1,6.91229],[3663,1,15.6236],[353,1,7.77893],[2743,1,6.47321]]],[[7751.65,4181.47,0],0,true,[[324,0,169.278],[1087,0,9.24235],[2779,0,13.507]]], +[[523.745,4729.31,0],0,true,[[2527,0,4.68924],[3538,0,234.502],[2896,0,6.41139]]],[[6462.86,6594.55,0],0,false,[[3661,1,267.367],[463,1,149.692]]],[[6100.99,900.814,0],0,true,[[1221,0,4.3569],[3098,0,2.80223],[1282,0,2.39525]]],[[6448.9,4332.22,0],0,false,[[2400,1,106.939],[2746,1,27.1278]]],[[2374.49,3217.51,0],0,true,[[3511,1,15.4401],[1016,0,90.7743],[3497,1,15.8125],[2357,0,22.5001]]], +[[8158.69,6249.17,0],0,false,[[3282,0,108.521],[3103,0,14.0336]]],[[4894.28,6955.18,0],0,true,[[2752,0,1.614],[813,0,237.635],[3423,0,6.26325],[1826,0,4.05049]]],[[7703.53,2974.83,0],0,true,[[557,1,24.0425],[3725,1,214.755],[1910,1,19.486],[2331,1,33.9128]]],[[554.864,7974.01,0],0,false,[[505,0,59.1255],[2522,0,274.582]]],[[7422.55,3161.09,0],0,false,[[223,1,95.5675],[3338,1,42.7402]]], +[[3203.17,862.599,0],0,true,[[443,0,3.33654],[1155,0,193.865],[2560,0,5.58916],[745,0,6.24403],[1485,0,7.4462]]],[[2785.19,456.292,0],0,true,[[3478,0,303.997],[3117,0,25.8761],[394,0,14.8379]]],[[1234.92,4104.49,0],0,true,[[2362,0,32.7873],[686,0,42.1198],[3253,0,19.2482]]],[[2846.07,3552.36,0],0,true,[[542,1,27.1301],[283,1,10.5939],[2540,1,29.4525],[2654,1,24.1193]]],[[4298.13,5038.45,0],0,true,[[3571,1,123.351],[2010,1,128.308],[2551,1,60.1565]]], +[[1785.71,7167.5,0],0,true,[[1974,1,80.1365],[956,1,24.3747],[345,1,4.30925]]],[[2893.84,3765.78,0],0,true,[[2531,0,17.2518],[2845,0,23.3866],[1216,0,7.97745]]],[[3274.76,6024.16,0],0,false,[[2702,0,44.7003],[2109,0,23.0369]]],[[2888.3,4176.46,0],0,true,[[3378,0,11.996],[3823,0,9.49052],[2867,0,6.85806]]],[[608.115,4335.91,0],0,false,[[1823,0,127.8],[3643,0,72.93]]], +[[4506.26,3520.94,0],0,false,[[2614,2,202.952],[3578,2,204.163]]],[[5629.26,1276.56,0],0,false,[[1717,0,130.805],[1137,0,163.014]]],[[2499.46,7111.7,0],0,false,[[28,0,113.499],[2287,0,15.1364]]],[[7676.28,3516.56,0],0,true,[[3772,0,192.492],[2243,0,7.08615],[1286,0,12.1812]]],[[2968.6,7396.68,0],0,false,[[1886,1,151.081],[1821,1,52.7435]]], +[[6115.38,873.317,0],0,false,[[647,0,15.1763],[2685,0,172.872]]],[[3565.76,4332.19,0],0,true,[[2715,0,24.0388],[1664,0,188.764],[2772,0,15.437]]],[[4114.84,4186.03,0],0,false,[[1571,0,11.0467],[3866,1,4.16849]]],[[1445.53,3384.32,0],0,true,[[1334,1,10.4441],[1038,1,136.095],[569,1,16.9279]]],[[4514.2,1574.24,0],0,false,[[2890,0,115.057],[3817,0,140.86]]], +[[4288.88,6063.94,0],0,true,[[837,2,8.22924],[3150,0,59.8261],[3673,2,12.4432]]],[[6922.73,6598.51,0],0,false,[[1527,0,107.044]]],[[2854.26,3226.42,0],0,true,[[890,0,20.586],[1340,0,12.7499],[1895,0,20.5822],[3647,0,0.615165]]],[[6255.85,5351.92,0],0,true,[[1410,1,11.791],[2868,1,256.571],[282,1,4.63491]]],[[4180.32,5966.07,0],0,true,[[2271,2,103.342],[2337,2,28.3055],[64,2,12.211]]], +[[7304.19,3561.17,0],0,false,[[3762,0,48.7325],[3159,0,237.702]]],[[4839.83,5249.1,0],0,false,[[3271,1,45.2857],[903,1,153.275]]],[[2768.13,1969.95,0],0,true,[[3829,1,18.7341],[2138,0,59.5221],[257,1,10.0733]]],[[7361.03,1146.48,0],0,true,[[770,0,27.2704],[38,0,272.297],[1007,0,19.5894]]],[[3796.99,5139.02,0],0,true,[[3590,1,6.5815],[2019,0,6.28857],[106,1,10.0358]]], +[[4469.34,1465.06,0],0,true,[[2890,0,3.88384],[1022,0,11.3612],[1296,0,12.78]]],[[4349.12,7181.85,0],0,false,[[3270,0,148.461],[3157,0,75.0747]]],[[35.3885,7036.22,0],0,false,[[845,0,74.3637]]],[[7670.45,3512.53,0],0,true,[[3179,0,218.607],[2223,0,7.08615],[1286,0,7.94475]]],[[7769.63,699.788,0],0,true,[[129,0,81.6593],[1039,0,11.7315],[2866,0,8.9676]]], +[[5508.51,1197.92,0],0,false,[[120,0,47.7605]]],[[5621.74,6302.26,0],0,true,[[1892,1,8.74493],[3132,1,169.723],[617,1,4.40226]]],[[2670.07,3590.11,0],0,false,[[376,1,18.6803],[2020,1,171.71]]],[[6292.66,6609.01,0],0,true,[[463,1,21.4547],[1094,1,22.3594],[2808,1,13.9357]]],[[3389.25,2228.22,0],0,false,[[194,0,11.115],[817,0,29.4612]]], +[[7647.43,463.451,0],0,false,[[511,1,6.58068],[382,1,1.17942]]],[[3016.12,4868.85,0],0,false,[[1850,0,5.96474],[2917,1,4.92326]]],[[3029,7392.93,0],0,true,[[3320,1,7.75693],[2478,1,14.6263],[2911,1,3.68611],[1821,1,8.118]]],[[1986.5,6165.64,0],0,false,[[2293,1,172.254],[2360,1,75.6533]]],[[1588.14,6913.17,0],0,true,[[3216,1,31.1926],[2873,1,48.2209],[618,1,9.14836]]], +[[2210.51,3251.91,0],0,false,[[3511,1,155.416],[1531,1,291.516]]],[[6881.84,3784.03,0],0,true,[[338,0,11.2723],[3672,0,121.119],[1055,0,6.303]]],[[4468.35,4712.1,0],0,false,[[258,1,13.216],[492,1,14.7884]]],[[4862.19,5939.58,0],0,true,[[438,0,107.361],[1627,0,15.7052],[3267,0,209.037]]],[[245.638,6102.72,0],0,true,[[3565,1,11.8764],[3383,0,41.7963],[988,1,15.5836]]], +[[1525.94,3280.36,0],0,false,[[2051,0,51.0556],[2680,0,91.8827]]],[[6443.51,2056.39,0],0,true,[[1501,1,7.70067],[1319,1,141.065],[3707,1,6.9157]]],[[3365.89,246.939,0],0,true,[[1378,1,7.8078],[1602,0,125.534],[1290,1,11.2748]]],[[3973.81,3799.25,0],0,true,[[1093,1,228.824],[1726,1,15.6794],[1429,1,4.56813]]],[[7562.48,1123.41,0],0,true,[[2496,0,14.7352],[58,0,202.545],[86,0,19.7446]]], +[[4576.88,6009.56,0],0,false,[[1098,0,177.106],[796,0,165.902]]],[[2018.62,0.809813,0],0,false,[[2758,0,222.632]]],[[7342.82,2145.41,0],0,false,[[875,0,234.527],[3539,0,208.253]]],[[4028.99,4097.39,0],0,false,[[2477,2,17.2513],[767,2,18.1481]]],[[1344.75,5967.17,0],0,true,[[3619,1,57.0762],[784,1,19.1997],[2613,1,6.83834]]], +[[1632.11,3306.75,0],0,false,[[531,1,50.9537],[3854,1,81.7565]]],[[4256.11,6036.27,0],0,true,[[535,2,21.4497],[2234,2,103.342],[159,2,10.3955]]],[[2052.26,4620.06,0],0,false,[[2925,1,16.9621],[3297,1,229.228]]],[[2138.36,6801.49,0],0,false,[[3858,0,25.189],[919,0,202.686]]],[[4560.62,2286.22,0],0,true,[[1181,2,23.3606],[56,2,21.4422],[118,2,8.43489]]], +[[1304.57,3901.04,0],0,false,[[2651,0,56.4233]]],[[2562.89,1722.07,0],0,false,[[1203,1,201.733],[2398,1,48.9971]]],[[6702.85,2058.61,0],0,false,[[1663,0,46.9385]]],[[4752.93,5239.7,0],0,true,[[2035,1,135.581],[192,1,21.2037],[746,1,4.3598]]],[[3785.03,5069.22,0],0,false,[[2509,0,70.8629]]], +[[5222.6,7259.41,0],0,true,[[3153,2,7.76414],[3455,0,299.939],[1680,2,10.3782]]],[[5862.74,4748.63,0],0,true,[[411,1,112.037],[823,1,24.0264],[1549,1,11.6492]]],[[347.76,4560.23,0],0,true,[[1113,0,18.3415],[3812,0,0.749458],[1595,0,19.0184],[2178,0,19.8958]]],[[6210.93,1253.52,0],0,false,[[574,0,166.208],[349,1,4.51213]]],[[7907.03,1888.9,0],0,true,[[2910,0,209.926],[810,0,16.5754],[577,0,28.4439]]], +[[2075.87,4952.38,0],0,false,[[3439,1,259.672],[1459,1,27.8916]]],[[4939.35,4078.3,0],0,false,[[2669,1,56.3876],[913,1,94.8972]]],[[2511.59,7102.77,0],0,true,[[2222,0,15.1364],[1066,0,218.671],[2943,0,18.0002]]],[[4436.61,4806.47,0],0,false,[[1684,0,7.68736],[125,0,26.426]]],[[6616.82,3554.06,0],0,true,[[2319,0,149.179],[1708,0,9.63658],[3541,0,9.50827]]], +[[4984.93,4131.53,0],0,false,[[1982,0,27.2097],[2562,0,21.4533]]],[[5305.49,38.4533,0],0,false,[[3466,1,6.22156],[2993,0,22.3139]]],[[362.538,5042.87,0],0,true,[[3863,0,7.33024],[3536,0,106.03],[2708,1,11.9273]]],[[2099.87,6295.29,0],0,true,[[2008,1,30.1333],[2253,1,172.254],[3451,1,12.3364]]],[[4853.86,1641.1,0],0,false,[[1413,0,127.519]]], +[[5573.23,5641.23,0],0,true,[[1486,1,245.704],[1911,1,25.2548],[3064,1,7.60038]]],[[7230.44,7193.85,0],0,false,[[3711,0,186.615]]],[[4512.71,2369.15,0],0,true,[[862,2,16.6663],[2881,2,30.2341],[1131,2,18.2494]]],[[3570.26,706.877,0],0,true,[[936,0,192.379],[2906,0,12.6328],[2914,1,15.4085]]],[[5722.17,5810.98,0],0,false,[[1911,1,201.929],[2997,1,103.439]]], +[[2292.07,6358.1,0],0,false,[[1211,0,96.3457],[1149,0,218.654]]],[[5508.79,1246.92,0],0,true,[[94,1,35.1364],[3036,1,33.8593],[1128,1,1.04268],[120,1,8.96368],[427,1,14.1679],[3550,1,12.6293],[297,1,6.41889]]],[[421.226,1845.05,0],0,true,[[3603,1,10.3051],[3520,1,363.132],[727,1,9.36598],[1971,1,7.45833]]],[[4204.62,3463.36,0],0,false,[[2655,0,26.3155],[2111,0,95.9245]]],[[7177.01,4381.09,0],0,true,[[2803,1,14.4471],[1101,0,19.1997],[1308,1,9.60595]]], +[[4605.48,2859.49,0],0,true,[[2621,1,27.847],[704,1,71.1903],[654,1,5.94105]]],[[2128.02,6328.68,0],0,false,[[1695,0,33.4259],[2008,1,13.6387]]],[[5119.76,2503.96,0],0,false,[[3260,0,140.824],[3727,0,159.696]]],[[4195.61,4380.5,0],0,true,[[3611,1,26.0163],[565,1,157.338],[2670,1,3.77926]]],[[5494.58,4483.44,0],0,false,[[3342,1,173.248],[3549,1,25.9005]]], +[[6122.75,7526.55,0],0,false,[[431,0,130.561]]],[[2278.72,4339.74,0],0,true,[[270,1,61.1402],[1975,1,26.9291],[405,1,11.543]]],[[1.40918,6417.78,0],0,false,[[3170,0,327.393]]],[[7038.51,1541.13,0],0,true,[[979,0,9.21152],[1347,0,22.1988],[122,0,19.592]]],[[5680.98,390.451,0],0,true,[[3356,0,201.296],[3650,0,18.5814],[3562,0,44.2209]]], +[[4577.22,4544.38,0],0,false,[[240,0,16.4504],[1283,0,97.6791]]],[[3876.24,1114.08,0],0,true,[[87,0,7.34597],[1317,0,297.846],[2714,0,3.56]]],[[1993.54,3588.04,0],0,false,[[2633,0,30.0171],[470,0,207.416]]],[[4093.75,5741.89,0],0,true,[[2650,0,5.56118],[631,0,10.2842],[3144,2,5.49067]]],[[6483.48,3506.69,0],0,false,[[3701,0,117.835],[2289,0,149.179]]], +[[2684.53,2009.29,0],0,true,[[2939,1,20.8907],[3176,1,11.0863],[655,1,17.0502]]],[[3592.97,8020.98,0],0,false,[[168,1,7.31717],[846,0,61.4054]]],[[4321.4,5466.8,0],0,false,[[981,0,32.1485],[590,0,219.992]]],[[4438.4,2964.81,0],0,false,[[1143,1,82.2416],[2806,1,13.9116]]],[[1605.29,3531.63,0],0,true,[[3504,0,5.43503],[2959,0,160.461],[1950,0,7.53955]]], +[[2882.52,3282.39,0],0,true,[[2325,0,0.0638955],[1385,0,20.9525],[1385,0,21.0164],[3726,0,22.7382],[3726,0,22.7382]]],[[36.2699,4189.97,0],0,true,[[263,0,220.31],[626,0,10.3578],[1951,0,59.19]]],[[1911.25,3257.76,0],0,true,[[3217,0,155.835],[2809,1,18.9666],[1531,1,9.33543]]],[[4183.06,2852.95,0],0,false,[[1604,0,162.085],[830,0,26.1134]]],[[4749.42,1111.75,0],0,false,[[621,0,12.5633],[2949,0,3.67498]]], +[[403.722,123.476,0],0,false,[[939,0,30.3761],[2370,0,49.8634]]],[[7737.25,2978.31,0],0,true,[[672,1,137.541],[2207,1,33.9128],[1910,1,19.5172],[557,1,24.6748]]],[[7647.1,6758.3,0],0,true,[[46,1,12.908],[264,0,258.343],[208,1,13.3413]]],[[4657.93,3995.73,0],0,true,[[1651,1,246.345],[3768,1,29.0719],[3293,1,14.7183]]],[[1962.27,197.877,0],0,true,[[2912,0,2.3022],[2975,0,189.346],[2758,0,4.97252],[1557,0,8.91954]]], +[[4224.16,2888.85,0],0,true,[[328,1,7.98613],[121,1,14.632],[3418,1,6.20392]]],[[6516.42,1080.79,0],0,false,[[2071,0,192.466],[156,1,6.88382]]],[[4158.73,5947.77,0],0,false,[[2234,2,28.3055],[2901,2,90.6619]]],[[2779.93,7314.43,0],0,false,[[1427,0,25.812]]],[[2923.17,818.182,0],0,false,[[2073,0,188.097],[2403,0,27.7002]]], +[[6506.22,5936.39,0],0,false,[[432,0,99.5262],[3744,0,133.434]]],[[5758.7,2744.86,0],0,false,[[3358,0,145.337]]],[[478.201,6539.16,0],0,false,[[3554,0,218.79],[2395,0,285.949]]],[[1534.78,7362.16,0],0,false,[[416,0,228.255],[1,0,262.116]]],[[2396.81,7765.92,0],0,false,[[2623,0,29.3162],[1927,0,142.378]]], +[[3972.28,5916.16,0],0,true,[[3376,1,7.11738],[2106,0,16.3126],[776,1,9.64134]]],[[4364.29,1572.78,0],0,false,[[3400,0,247.457],[1296,0,138.59]]],[[7036.51,6476.32,0],0,true,[[1730,1,21.6125],[2705,1,151.578],[3794,1,11.4631],[2838,1,17.756]]],[[537.569,1139,0],0,false,[[2351,0,144.724],[2749,0,191.52]]],[[4589.61,2777.88,0],0,true,[[704,1,12.0404],[2645,1,35.9465],[3233,1,112.025],[3564,1,3.97535]]], +[[2399,6626.94,0],0,true,[[683,0,12.2959],[1454,1,9.7818],[606,0,3.85639],[2601,1,10.9695]]],[[649.405,1101.81,0],0,false,[[524,0,142.317],[2348,0,144.724]]],[[3659.24,3086.64,0],0,false,[[3865,0,60.9973],[3680,0,216.024]]],[[5839.93,6407.92,0],0,false,[[447,1,394.961],[2591,1,19.416]]],[[7676.54,8058.72,0],0,false,[[1759,0,88.0574],[1946,0,138.218]]], +[[7461.1,3133.66,0],0,true,[[399,0,57.7703],[1117,0,7.63824],[1881,0,6.77067]]],[[5839.11,1472.36,0],0,true,[[1966,1,10.8765],[3579,0,109.885],[75,1,10.1485]]],[[2381.38,3238.93,0],0,true,[[3722,0,23.9593],[3511,1,20.2999],[3497,1,17.0166],[2204,0,22.5001]]],[[883.109,3687.21,0],0,false,[[1398,0,9.62651],[3723,0,92.0047]]],[[3841.35,6171.14,0],0,false,[[1193,0,170.692],[961,0,94.5638]]], +[[1937.43,6108.07,0],0,false,[[2253,1,75.6533],[486,1,322.954]]],[[2525.4,1054.58,0],0,false,[[42,2,256.693],[1796,2,259.366]]],[[1244.29,4135.87,0],0,true,[[3580,0,160.981],[2212,0,32.7873],[3253,0,15.5865]]],[[3502.3,3105.33,0],0,false,[[2902,0,168.069],[3586,0,241.789]]],[[1159.83,4718.31,0],0,true,[[1768,0,15.1966],[464,0,97.8919],[181,0,16.8327],[867,0,19.7612]]], +[[5529.25,1643.2,0],0,true,[[139,1,10.4513],[2412,1,53.7637],[3853,1,27.5702]]],[[2199.85,6405.93,0],0,false,[[165,1,30.8249],[2942,1,89.6666]]],[[539.784,4535.79,0],0,false,[[365,0,169.018],[1544,0,52.4102]]],[[3221.47,7161.91,0],0,false,[[303,0,9.27839],[249,1,15.1648]]],[[4736.96,2863.81,0],0,true,[[2119,0,10.9241],[1231,0,2.43542],[2647,0,15.532]]], +[[366.163,155.778,0],0,true,[[2330,0,49.8634],[2476,0,97.8305],[653,0,181.259]]],[[5437.41,6232.83,0],0,true,[[886,0,39.0642],[22,0,11.4803],[2438,0,14.9728]]],[[4169.65,5219.28,0],0,false,[[1488,1,74.4163],[3571,1,98.8389]]],[[41.4284,6096.11,0],0,true,[[3759,1,21.577],[3055,1,37.7182],[3170,1,13.5444]]],[[1858.54,1381.43,0],0,false,[[3553,0,44.6038],[2181,0,150.286]]], +[[2949.03,5474.24,0],0,false,[[2985,0,169.779],[1623,0,102.006]]],[[380.291,1575.1,0],0,false,[[1989,0,16.5509],[2709,0,137.704]]],[[5932.48,4726.16,0],0,true,[[2159,0,11.0892],[1549,0,71.3384],[2016,0,5.71213]]],[[6472.88,6034.69,0],0,true,[[170,0,132.704],[432,0,11.1047],[2857,0,3.98559]]],[[4885.77,807.528,0],0,true,[[3072,0,15.751],[69,1,14.3276],[1175,1,12.7373]]], +[[2816.64,1788.68,0],0,true,[[52,1,11.6453],[755,1,3.83648],[643,1,3.22513],[2740,1,3.31468]]],[[5308.14,362.716,0],0,true,[[1401,0,17.7175],[2611,0,172.276],[1945,0,11.3958]]],[[3394.93,2218.3,0],0,false,[[1614,1,25.0486],[1240,1,19.4389]]],[[1045.81,4758.96,0],0,false,[[867,0,113.032]]],[[3546.21,2314.44,0],0,false,[[387,1,3.50225],[3731,0,4.5423]]], +[[2870.42,4953.2,0],0,false,[[491,0,145.922],[3234,0,100.789]]],[[2854.21,5427.65,0],0,false,[[2687,0,156.404],[1623,0,22.1839]]],[[7117.99,6098.18,0],0,true,[[1445,0,8.81033],[212,0,9.04305],[2620,0,1.59638],[929,0,2.81765]]],[[6567.04,4337.96,0],0,true,[[2400,1,11.8048],[1929,0,21.9989],[1357,1,16.7902]]],[[1014.64,3837.2,0],0,true,[[1990,0,44.7942],[3617,0,11.2311],[1152,0,22.3517],[1916,0,17.8455]]], +[[3426.28,6698.84,0],0,false,[[1555,1,80.1065],[3662,1,22.6042]]],[[4407.18,2818.27,0],0,false,[[2936,1,91.9657],[3505,2,4.58555]]],[[2837.11,1262.54,0],0,true,[[3595,1,13.6583],[1081,1,117.217],[3069,1,8.45541]]],[[6346.2,933.273,0],0,false,[[3361,0,139.418],[2071,0,88.1921]]],[[561.042,3911.23,0],0,false,[[2748,0,184.304],[1497,0,136.324]]], +[[234.307,6423.81,0],0,true,[[2342,0,285.949],[378,0,16.7195],[2191,0,10.1277]]],[[7408.91,583.84,0],0,false,[[0,1,206.901],[299,1,58.4939]]],[[853.532,3475.59,0],0,true,[[3723,0,125.721],[77,1,11.5324],[1509,1,15.9999]]],[[2549.65,1674.96,0],0,true,[[2276,1,48.9971],[3114,1,12.057],[3476,1,9.11653],[735,1,17.0722]]],[[1977.75,7430.35,0],0,true,[[3127,1,25.7939],[271,1,144.894],[3498,1,11.5752]]], +[[6555.44,4340.11,0],0,true,[[2388,1,11.8048],[2203,1,106.939],[1357,1,27.9399]]],[[2636.31,3664.25,0],0,true,[[1160,0,40.3218],[3016,1,13.3938],[1254,1,14.1311]]],[[4082.64,3457.26,0],0,true,[[1900,1,10.1504],[3732,1,48.8111],[363,1,17.0507]]],[[2950.82,817.795,0],0,true,[[2339,0,27.7002],[977,0,266.827],[128,0,14.474],[310,0,16.6234]]],[[528.675,3041.09,0],0,false,[[3209,0,189.292],[953,0,36.509]]], +[[3583.84,1155.46,0],0,false,[[133,0,29.3218],[1151,0,61.2111]]],[[4074.81,1673.35,0],0,false,[[3038,0,80.9148]]],[[1862.69,900.161,0],0,true,[[3454,0,9.3587],[2710,0,102.802],[1060,0,9.50005]]],[[7962.58,6555,0],0,false,[[1399,1,46.421],[327,1,115.384]]],[[7717.51,6456.22,0],0,true,[[3682,0,15.2566],[244,0,79.5142],[1147,0,4.58847]]], +[[847.037,7840.77,0],0,false,[[1323,0,260.668],[544,0,272.349]]],[[6380.31,6310.5,0],0,false,[[3761,0,152.562],[1036,0,76.4747]]],[[5482.44,1669.64,0],0,false,[[2365,1,53.7637],[1266,1,253.348]]],[[5652.35,2189.87,0],0,true,[[3871,1,8.94369],[2816,0,17.7758],[2515,1,17.5987],[3531,0,20.923]]],[[6201.49,1498.95,0],0,true,[[1408,0,16.1389],[690,0,114.138],[3506,0,6.64453]]], +[[3744.14,3472.82,0],0,true,[[2692,1,21.7094],[786,1,273.586],[1366,1,12.2146]]],[[5875.46,244.234,0],0,false,[[2894,1,312.658],[169,1,24.5911]]],[[6866.17,766.66,0],0,false,[[30,0,143.85],[280,0,196.527]]],[[7296.28,6157.94,0],0,true,[[2625,1,17.6663],[721,1,140.989],[2944,1,5.70332]]],[[7008.63,4098.44,0],0,true,[[3764,0,111.109],[2483,0,12.5037],[1784,0,7.82452]]], +[[4213.24,2812.89,0],0,true,[[830,0,27.3549],[1873,1,15.9515],[982,1,18.21]]],[[1525.84,5597.38,0],0,false,[[3194,0,140.261],[3569,0,163.556]]],[[2821.26,3174.23,0],0,false,[[632,1,23.4057],[3522,1,42.7069]]],[[1391.27,6003.29,0],0,false,[[2613,0,84.5559]]],[[457.641,7416.03,0],0,true,[[2948,0,260.675],[633,0,12.7892],[3202,0,24.2444]]], +[[249.967,4406.16,0],0,false,[[2616,0,122.203],[1559,0,97.3738]]],[[6832.87,2021.5,0],0,false,[[451,0,92.5325],[2513,0,11.9874]]],[[5249.09,7670.26,0],0,true,[[1031,0,8.25559],[763,0,104.654],[2065,2,7.70297]]],[[4625.7,2970.76,0],0,true,[[641,1,11.0609],[3296,1,14.5205],[2488,1,24.6713]]],[[3745.93,3157.3,0],0,false,[[2767,0,148.602],[241,0,24.4454]]], +[[2836.4,6154.48,0],0,false,[[2689,0,126.793],[292,0,61.5085]]],[[362.538,4751.64,0],0,true,[[48,0,16.7149],[1158,0,7.48662],[1589,0,8.14639],[1183,0,0.749571]]],[[2645.21,7646.51,0],0,true,[[3584,0,20.2257],[2726,0,155.506],[588,0,29.3119]]],[[5277.08,7552.68,0],0,false,[[2065,2,114.073],[3437,2,67.9798]]],[[4685.93,3277.92,0],0,false,[[3014,1,32.5428],[3416,1,34.8239]]], +[[6240.81,6444.75,0],0,false,[[3716,0,59.1526]]],[[3847.62,5928.66,0],0,true,[[713,1,7.92571],[1255,1,40.5607],[2529,1,19.2066],[66,1,10.8659]]],[[8021,2245.36,0],0,false,[[111,0,375.724],[425,0,97.1507]]],[[5452.04,6229.75,0],0,true,[[2371,0,14.9728],[59,0,9.5471],[22,0,4.92065]]],[[230.026,1152.32,0],0,true,[[1479,0,25.968],[2528,0,31.9693],[3836,0,8.47028]]], +[[2938.42,3331.91,0],0,true,[[2083,0,16.3363],[347,0,11.5292],[347,0,11.5292],[2083,0,16.3363],[2440,0,0]]],[[2142.46,3972.24,0],0,true,[[2875,0,26.6529],[2691,0,2.43398],[1928,0,16.3458]]],[[5573.62,2270.85,0],0,false,[[1130,0,52.5371]]],[[2047.21,7115.78,0],0,false,[[51,0,179.177],[2104,0,68.9798]]],[[1165.88,3617.8,0],0,false,[[609,0,8.18532],[354,0,132.875]]], +[[7063.25,3784.28,0],0,true,[[3559,1,5.1416],[752,1,222.972],[2961,1,4.82005]]],[[4786.46,2.54179,0],0,false,[[564,1,62.6156]]],[[1725,4692.21,0],0,false,[[2819,1,56.3957],[1715,1,188.8]]],[[4980.05,1510.05,0],0,false,[[2583,0,11.7499],[2576,1,4.49987]]],[[353.714,7674.08,0],0,false,[[3220,0,74.806],[1629,0,77.1622]]], +[[364.668,4699.55,0],0,true,[[1420,0,24.8561],[3339,0,18.7798],[245,0,0.749391],[1343,0,19.4266]]],[[2713.59,777.019,0],0,false,[[2966,0,83.9766]]],[[5966.25,1717.12,0],0,true,[[695,0,7.68299],[3844,0,196.659],[1792,0,14.0581]]],[[2954.45,1832.21,0],0,true,[[1359,1,207.728],[1707,1,29.6801],[952,1,7.04612]]],[[364.764,4656.21,0],0,true,[[2555,0,13.5614],[1705,0,17.817],[1180,0,0.749197],[1420,0,18.4832]]], +[[1653.27,1860.97,0],0,false,[[2048,1,283.011],[1026,1,172.426]]],[[6457.41,2071.87,0],0,false,[[2068,1,74.1662],[1501,1,13.8994]]],[[4538.85,6528.95,0],0,true,[[337,0,4.24893],[3013,0,12.1367],[1933,0,4.44189]]],[[7783.02,1473.62,0],0,true,[[766,0,24.2144],[2128,0,341.883],[843,0,13.1567],[1295,0,17.7258]]],[[5125.94,4885.06,-0.102341],0,false,[[3011,1,12.9029],[3751,0,19.9355]]], +[[7080.04,4010.53,0],0,false,[[3287,1,133.362],[3559,1,223.172]]],[[3954.21,2573.9,0],0,false,[[1592,1,271.974],[3604,2,8.68949]]],[[7028.94,1763.75,0],0,false,[[674,0,149.971],[1350,0,355.886]]],[[3396.98,6059.29,0],0,true,[[2652,0,19.7293],[3479,0,189.958],[3286,0,13.7316]]],[[3576.54,6584.69,0],0,false,[[3336,1,9.96707],[1054,1,16.8067]]], +[[870.248,8170.46,0],0,true,[[3368,1,21.6395],[141,1,58.2515],[60,1,6.85465]]],[[526.322,3134.05,0],0,false,[[844,0,19.4825],[896,0,38.2969]]],[[4741.21,4428.99,0],0,false,[[1283,0,148.926],[1818,0,94.6409]]],[[510.774,7170.96,0],0,false,[[3164,0,84.8121],[206,0,10.9431]]],[[348.084,4427.58,0],0,true,[[253,0,5.77615],[213,0,0.751566],[586,0,6.18707],[888,0,6.50185]]], +[[3806.85,5948.93,0],0,false,[[3605,0,22.3668],[2100,0,15.3188]]],[[2648.06,1.92425,0],0,false,[[2000,0,112.436]]],[[4183.26,5415.67,0],0,false,[[1721,0,107.738],[981,0,115.294]]],[[4167.03,4301.76,0],0,true,[[1781,1,79.5965],[1674,1,22.1014],[96,1,10.1045]]],[[1628.15,3212.26,0],0,true,[[1769,0,17.3609],[737,0,327.584],[1247,0,14.6569]]], +[[342.945,4609.05,0],0,true,[[571,0,12.2197],[3815,0,0.748841],[561,0,12.9145],[1177,0,16.4838]]],[[348.351,251.455,0],0,true,[[2370,0,97.8305],[1105,0,7.28991],[92,0,7.59271]]],[[4029.91,4114.61,0],0,true,[[3302,2,18.3585],[2268,2,17.2513],[2794,2,5.85392]]],[[3035.64,7405.96,0],0,true,[[2252,1,14.6263],[1522,1,30.2282],[2569,1,12.0451]]],[[7028.86,399.688,0],0,true,[[2012,1,5.05726],[3343,0,13.3965],[3791,1,15.4883]]], +[[4392.3,3060.42,0],0,false,[[61,1,15.3917],[498,1,3.45716]]],[[6913.37,3158.25,0],0,false,[[2004,0,96.5636]]],[[3129.7,7570.6,0],0,false,[[195,0,15.7844],[547,1,4.95249]]],[[7010.83,4086.14,0],0,true,[[1784,0,19.3069],[1948,0,226.39],[2419,0,12.5037]]],[[4502.08,3161.35,0],0,false,[[286,2,31.4779],[1392,2,32.725]]], +[[6519.87,8190.75,0],0,false,[[1678,0,281.872]]],[[7647.84,446.403,0],0,true,[[2713,1,10.4897],[397,1,376.227],[3785,1,19.1841],[3915,1,10.7546],[2713,1,10.4862]]],[[4229.57,5359.8,0],0,false,[[2561,0,128.414],[2751,0,134.48]]],[[4630.19,2995.02,0],0,true,[[661,1,233.597],[2428,1,24.6713],[641,1,14.3329]]],[[5511.42,4331.54,0],0,true,[[383,1,19.4899],[3556,1,56.4272],[3568,1,7.72982],[628,1,6.02633]]], +[[2882.22,3163.38,0],0,true,[[2566,0,244.107],[1256,0,12.4413],[202,1,16.2383]]],[[6251.47,5966.88,0],0,true,[[44,0,117.519],[1207,0,74.7881],[170,0,103.869]]],[[4328.14,2940.13,0],0,false,[[132,1,18.6325],[1529,1,9.59025]]],[[3991.08,4380.5,0],0,true,[[1955,0,14.6509],[187,0,148.95],[2155,0,21.0556]]],[[6361.84,4328.86,0],0,true,[[512,0,74.1544],[560,1,12.3023],[1976,1,11.5347]]], +[[5238.54,4159.12,0],0,true,[[2514,1,24.7156],[3022,1,146.541],[1264,1,11.5853]]],[[7555.86,1136.54,0],0,true,[[3649,0,11.9788],[2264,0,14.7352],[86,0,5.83186]]],[[566.582,5838.47,0],0,true,[[3250,0,13.0296],[3366,0,149.809],[3484,0,14.08]]],[[5863.1,4368.44,0],0,false,[[711,1,27.3212],[3827,1,46.03]]],[[4254.94,6047.79,0],0,false,[[235,0,108.495],[159,0,6.80701]]], +[[5215.44,2898.21,0],0,false,[[3335,1,25.0916],[508,1,53.3555]]],[[1807.05,4674.06,0],0,true,[[599,1,13.2807],[2819,1,27.6853],[3297,1,23.8972]]],[[4058.47,5317.65,0],0,false,[[27,0,12.0974],[488,0,22.8789]]],[[5838.5,629.723,0],0,false,[[549,0,92.2587],[1112,0,14.5492]]],[[4007.43,4596.55,0],0,false,[[3644,0,89.6141],[848,0,19.0574]]], +[[1641.65,61.2759,0],0,false,[[3874,0,178.54]]],[[6384.2,2525.77,0],0,false,[[174,0,81.8607]]],[[5669.07,7257.11,0],0,false,[[3226,0,41.7083],[2938,0,181.127]]],[[2993.77,1979.04,0],0,false,[[500,1,73.6842],[854,1,11.1221]]],[[3808.33,5135.44,0],0,false,[[2019,0,5.98331],[2279,0,70.8629]]], +[[1418.25,6903.71,0],0,true,[[3822,0,19.8993],[3738,0,75.5429],[1300,0,16.8652]]],[[426.897,5475.03,0],0,true,[[1797,0,32.8188],[1261,0,272.045],[3808,0,16.6344]]],[[5106.98,4419.96,0],0,false,[[2599,0,120.976],[1689,0,241.142]]],[[6826.68,2031.77,0],0,true,[[2426,0,11.9874],[680,0,6.36367],[1789,0,1.63338],[3636,0,14.286]]],[[5262.75,4164.03,0],0,false,[[3556,1,249.828],[2495,1,24.7156]]], +[[5638.19,2200.31,0],0,true,[[3871,1,21.8934],[70,1,60.3396],[2413,1,17.5987],[3531,1,16.2975]]],[[972.81,3899.02,0],0,true,[[838,0,127.278],[1803,0,14.8566],[1990,0,29.9377]]],[[7991.44,6343.37,0],0,true,[[2848,0,24.8469],[3635,0,271.988],[3820,0,12.857]]],[[6752.1,903.686,0],0,false,[[907,0,81.6758],[3756,0,44.0717]]],[[2833.27,4420.76,0],0,true,[[1723,0,197.583],[3691,0,10.299],[2885,1,7.89852]]], +[[5921.69,4878.3,0],0,true,[[3255,1,17.508],[2605,1,45.5792],[3367,1,10.0675]]],[[5803.11,4622.11,0],0,false,[[726,1,232.968],[411,1,28.4515]]],[[432.022,7738.92,0],0,true,[[1629,0,24.9634],[2208,0,274.582],[980,0,11.2544]]],[[6514.4,5638.86,0],0,false,[[2183,0,134.879],[502,0,44.5642]]],[[4624.5,5489.37,0],0,false,[[1246,0,208.331],[1843,0,93.5362]]], +[[4387.84,2898.26,0],0,true,[[2666,2,23.245],[1756,2,29.4246],[725,2,15.1318]]],[[5879.78,7674.12,0],0,false,[[3265,0,144.892],[3324,0,21.2357]]],[[520.571,4732.76,0],0,true,[[2608,0,159.69],[2200,0,4.68924],[2896,0,7.85086]]],[[237.589,1134.45,0],0,true,[[1487,0,374.686],[14,0,23.6365],[2439,0,31.9693]]],[[3852.34,5910.05,0],0,true,[[3070,1,306.986],[66,1,29.7888],[2436,1,19.2066]]], +[[3908.85,1373.13,0],0,true,[[558,0,190.487],[995,0,18.285],[1238,0,14.8817]]],[[2882.32,3778.62,0],0,true,[[989,0,150.93],[2216,0,17.2518],[1216,0,10.4916]]],[[6844.5,4352.24,0],0,true,[[2924,0,3.49194],[1749,0,4.62883],[1200,0,5.18467]]],[[2841.75,3658.83,0],0,false,[[3840,0,86.4868],[1360,0,13.3913]]],[[3998.32,3306.27,7.19218],0,false,[[2767,0,193.315],[1994,0,111.682]]], +[[3323.06,7202.85,0],0,false,[[893,0,87.6884],[818,0,83.6969]]],[[6073.98,4309.65,-1.42537],0,false,[[3684,2,6.279],[167,2,15.6004]]],[[3796.73,6534.14,0],0,true,[[2864,0,157.534],[1125,0,9.23598],[454,0,17.1509]]],[[7077.66,4196.88,0],0,true,[[3600,1,14.3429],[76,0,32.209],[1787,1,13.3554],[3007,0,15.5599]]],[[2684.55,7803.88,0],0,false,[[1043,0,68.3343]]], +[[2850.19,3523.2,0],0,true,[[283,1,20.9716],[1166,1,166.679],[2213,1,29.4525],[2654,1,8.84569]]],[[1716.27,289.45,0],0,false,[[1888,0,125.714],[2602,0,100.207]]],[[8074.54,5356.66,0],0,true,[[3638,0,30.5959],[3499,0,26.1],[193,0,12.9189]]],[[3569.56,6569.67,0],0,true,[[1054,1,6.5002],[3709,1,21.512],[2805,1,10.2941],[506,1,18.7587]]],[[3767.24,1722.69,0],0,true,[[832,2,20.2752],[1425,2,24.5199],[3780,2,11.1475]]], +[[3427.31,2341.89,0],0,true,[[1919,0,6.6364],[395,0,148.598],[3695,0,7.56609]]],[[5044.66,6802.48,0],0,false,[[1991,2,18.4633],[3637,2,246.777]]],[[1493.63,503.427,0],0,true,[[103,2,34.5585],[3876,2,398.23],[955,2,17.6005]]],[[7392.85,5651.62,0],0,true,[[2880,1,10.3878],[2135,1,254.743],[3107,1,20.2185]]],[[1770.02,7813.84,0],0,false,[[2152,1,262.419],[1682,1,402.881]]], +[[3255.95,5527.43,0],0,true,[[3045,0,6.04038],[3071,0,10.8678],[578,0,16.7976]]],[[4351.33,5066.27,0],0,false,[[2214,1,60.1565],[1157,1,282.796]]],[[4245.59,3876.23,0],0,false,[[2967,0,84.9401],[3528,0,66.6435]]],[[6114.41,1316.15,0],0,true,[[3219,1,5.00866],[1408,0,187.583],[3613,1,9.9611]]],[[3701.54,4404.6,0],0,true,[[700,0,6.88807],[2715,0,131.361],[2923,0,4.38132]]], +[[361.916,4642.96,0],0,true,[[1917,0,8.69713],[1180,0,12.8373],[2454,0,13.5614],[3215,0,0.749812]]],[[314.116,7421.52,0],0,false,[[3420,0,65.2534],[3220,0,185.864]]],[[528.03,3473.88,0],0,true,[[77,1,315.133],[357,1,18.9918],[290,1,7.43813]]],[[1233.37,2686.69,0],0,false,[[948,1,191.89],[3042,1,138.219]]],[[1761.11,6509.31,0],0,false,[[489,0,262.321]]], +[[3200.88,857.522,0],0,true,[[977,0,67.6582],[443,0,4.39868],[2210,0,5.58916]]],[[4126.78,5283.41,0],0,false,[[1488,1,4.58654],[2487,0,128.414]]],[[5006.28,4133.6,0],0,false,[[2290,0,21.4533],[1913,0,19.5416]]],[[3495.5,2124.69,0],0,true,[[962,0,53.5626],[107,0,13.2595],[1332,0,8.03471]]],[[5806.92,5899.16,0],0,true,[[2997,1,19.1199],[3884,1,5.47577],[2588,1,11.7387]]], +[[5318.42,2922.05,0],0,true,[[658,1,241.432],[3581,1,28.0614],[2118,1,9.84429]]],[[3023.5,2964.93,0],0,false,[[265,0,57.8783],[2490,0,244.107]]],[[8189.75,7331.84,0],0,false,[[2675,1,340.506]]],[[4485.1,8143.43,0],0,true,[[538,0,96.9849],[1935,0,140.566],[483,0,157.882]]],[[3038.71,7417.6,0],0,true,[[1371,0,90.8347],[2478,1,12.0451],[1522,1,18.7674]]], +[[3490.25,6724.58,0],0,false,[[504,1,141.322],[2145,1,33.9828]]],[[7455.82,994.308,0],0,false,[[332,0,230.233],[3649,0,163.26]]],[[2650.81,5414.33,0],0,false,[[1623,0,210.408],[3905,0,223.789]]],[[5746.9,8188.71,0],0,false,[[2876,1,252.648]]],[[3018.71,7115.66,0],0,false,[[970,0,161.111],[2978,0,203.677]]], +[[2574.06,2111.32,0],0,false,[[3274,0,235.343],[3060,0,65.6756]]],[[4981.99,1514.11,0],0,true,[[2974,1,140.351],[1044,1,22.7623],[2448,1,4.49987]]],[[4049.89,5520,0],0,true,[[3598,2,25.7572],[2047,2,60.4345],[1351,2,15.6914]]],[[1118.68,5698.33,0],0,false,[[3521,0,13.2844],[2843,0,154.919]]],[[7630.39,6592.11,0],0,true,[[1677,0,33.7855],[2776,0,20.9335],[895,0,10.6021]]], +[[3587.68,6682.5,0],0,false,[[3648,1,17.9054],[341,1,55.7419]]],[[2281.32,4590.58,0],0,false,[[899,0,113.231],[3413,0,144.227]]],[[7044.49,6631.21,0],0,false,[[3183,0,19.4724],[1122,0,199.281]]],[[4968.68,1512.98,0],0,false,[[1666,0,117.459],[2448,0,11.7499]]],[[1966.8,756.199,0],0,true,[[381,0,11.3101],[3111,2,18.4557],[1236,2,12.0731]]], +[[7579.85,486.021,0],0,true,[[3718,1,21.5492],[3785,1,59.6408],[173,1,6.81775]]],[[4096.08,3306.42,0],0,false,[[3311,1,77.2987],[1572,1,23.9344]]],[[1426.12,6755.1,0],0,false,[[1195,1,152.354],[3555,1,21.7034]]],[[5814.6,5908.04,0],0,true,[[2564,1,11.7387],[3327,1,43.8635],[3884,1,9.20675]]],[[6482.45,4213.9,0],0,true,[[1855,0,4.39211],[12,0,110.083],[3674,0,11.8073]]], +[[276.808,842.783,0],0,true,[[1897,1,52.4092],[2123,1,31.293],[3891,1,2.57011]]],[[5820.59,6406.25,0],0,false,[[2353,1,19.416],[1226,1,14.9587]]],[[347.6,3846.47,0],0,false,[[3394,0,180.366],[1320,0,67.7778]]],[[7996.06,4770.34,0],0,false,[[424,0,113.749],[1632,0,199.926]]],[[2932.11,6954.93,0],0,true,[[13,0,19.5951],[2870,0,18.9333],[2735,1,4.14457],[2742,1,18.0124]]], +[[6258.4,797.795,0],0,true,[[1777,0,163.692],[1170,0,19.534],[3567,0,45.6786]]],[[2463.15,7560.6,0],0,false,[[429,0,84.5855],[2623,0,192.616]]],[[7806.37,6515.74,0],0,false,[[2058,0,8.58094],[3512,0,75.3935]]],[[6766.84,1263.35,0],0,false,[[2627,0,309.527],[465,0,183.646]]],[[5132.13,4305.06,0],0,false,[[972,0,3.60651],[2512,0,120.976]]], +[[3456.66,6048.68,0],0,false,[[2142,0,251.807],[3286,0,54.7248]]],[[2405.02,6636.12,0],0,true,[[88,1,261.611],[1454,1,20.499],[606,1,8.96434],[2350,1,10.9695]]],[[1760.43,201.009,0],0,false,[[2541,0,100.207],[656,0,58.2881]]],[[2586.81,1680.53,0],0,false,[[755,1,252.252],[3114,1,26.0103]]],[[1826.29,7238.66,0],0,true,[[1642,1,29.7951],[471,1,36.8226],[3154,1,18.7715]]], +[[5933.28,4922.23,0],0,true,[[2520,1,45.5792],[887,1,18.6299],[1832,1,6.72281]]],[[6480.88,7400.94,0],0,false,[[2699,1,230.012],[1712,1,313.573]]],[[3149.17,7629.48,0],0,true,[[124,1,15.0312],[3411,1,190.26],[1461,1,6.59549]]],[[370.887,4762.97,0],0,false,[[3142,0,12.9127],[2527,0,159.69]]],[[7635.85,6624.85,0],0,true,[[1677,1,8.22791],[412,1,20.5094],[20,1,21.6046]]], +[[4537.8,4238.77,0],0,true,[[1430,1,166.662],[1651,1,25.4715],[2790,1,10.5567]]],[[5474.13,407.277,0],0,false,[[2381,0,172.276],[3356,0,20.485]]],[[6835.91,5339.22,0],0,true,[[1925,1,15.3029],[881,1,99.2769],[3272,1,7.56785]]],[[1342.11,5973.48,0],0,false,[[2269,1,6.83834],[2423,0,84.5559]]],[[4466.87,3719.05,0],0,false,[[2220,2,202.952],[1466,0,74.9604]]], +[[4429.23,6300.1,0],0,true,[[214,0,133.093],[400,0,6.77024],[1248,0,8.02302]]],[[137.015,4450.32,0],0,false,[[596,0,92.1645],[2425,0,122.203]]],[[5513.74,6691.06,0],0,true,[[1208,1,9.71554],[3587,1,68.5208],[1397,1,7.19199]]],[[5563.44,6675.93,0],0,false,[[1045,1,179.741],[1208,1,43.6144]]],[[271.988,6893.19,0],0,false,[[1325,0,78.5086],[2136,0,134.785]]], +[[7119.3,6099.09,0],0,true,[[1445,0,7.22771],[929,0,4.40898],[2387,0,1.59638]]],[[4610.45,2886.87,0],0,false,[[3296,1,70.7618],[2305,1,27.847]]],[[2741.59,7020.98,0],0,false,[[2040,0,174.483],[3239,0,20.6553]]],[[2394.17,7736.73,0],0,true,[[2596,0,192.616],[2344,0,29.3162],[2765,0,20.7495]]],[[2533.42,77.1185,0],0,true,[[2110,0,13.8006],[1184,0,10.4944],[3083,0,5.03845]]], +[[7309.46,6146.17,0],0,true,[[2904,1,14.6922],[2944,1,13.7821],[2418,1,17.6663]]],[[5112.29,2872.33,0],0,true,[[2644,1,23.4641],[3769,1,24.1986],[821,1,12.2186]]],[[6761.63,1571.72,0],0,false,[[3191,0,172.447],[2598,0,309.527]]],[[7602.58,6619.34,0],0,true,[[2953,1,42.7362],[115,1,12.546],[412,1,13.4905]]],[[4410.46,3204.31,0],0,true,[[2913,0,102.262],[1148,0,6.37406],[1355,0,11.3932]]], +[[3496.95,1578.47,0],0,true,[[1609,2,161.274],[197,2,30.273],[351,2,18.343],[1370,2,13.1692]]],[[1281.78,4049.31,0],0,true,[[2718,0,10.2974],[3026,0,65.3321],[2673,0,6.38064]]],[[1162.82,2099.86,0],0,true,[[1645,1,13.2546],[3325,0,159.119],[3436,1,17.8479],[460,0,22.1625]]],[[2003.16,3615.84,0],0,true,[[1260,0,7.63548],[2317,0,30.0171],[352,0,4.35298]]],[[1043.41,6036.29,0],0,true,[[784,1,290.051],[1453,1,20.841],[509,1,7.30629],[966,1,10.9185]]], +[[5567.62,2915.42,0],0,true,[[1812,1,20.0212],[2831,1,6.6218],[2682,1,4.50038],[658,1,8.10374]]],[[2083.71,6488.48,0],0,false,[[1695,0,132.828],[489,0,92.8935]]],[[6359.91,5443.26,0],0,true,[[3360,0,10.1373],[2169,0,22.7087],[607,0,4.8531]]],[[2902.43,1851.2,0],0,true,[[1373,1,4.60449],[52,1,94.5806],[1010,1,2.51198]]],[[5719.59,914.64,0],0,true,[[3051,0,237.515],[2029,1,10.0979],[2768,1,14.1008]]], +[[7721.28,6400.7,0.00012207],0,false,[[370,0,16.015]]],[[1491.36,8188.02,0],0,false,[[1335,1,189.653]]],[[3934.68,6714.85,0],0,false,[[1125,0,226.327],[375,0,198.453]]],[[1925.98,1998.85,-1.01509],0,false,[[3888,2,15.5972],[1579,2,3.45592]]],[[5135,2878.21,0],0,true,[[508,1,29.6967],[2626,1,23.4641],[3102,1,11.289]]], +[[4582.56,2742.68,0],0,false,[[2349,1,35.9465],[117,1,152.402]]],[[2914.29,1851.14,0],0,false,[[1373,1,8.13918],[952,0,38.5061]]],[[4728.68,2850.71,0],0,true,[[3203,0,108.141],[1231,0,17.234],[2119,0,11.9073],[2369,0,15.532]]],[[4460.63,4698.95,0],0,false,[[258,1,2.69367],[2795,0,4.38491]]],[[1202.35,2533.17,0],0,false,[[1099,1,9.2168],[346,0,324.292]]], +[[4090.79,5737.18,0],0,true,[[3252,0,4.5007],[2318,0,5.56118],[3144,2,4.67586]]],[[1339.22,3945.32,0],0,false,[[513,0,50.878],[2275,0,56.4233]]],[[3394.38,6078.81,0],0,true,[[1770,0,217.487],[2463,0,19.7293],[1367,0,9.98598],[3286,0,15.2049]]],[[7723.5,6375.5,0.000244141],0,false,[[2893,0,12.564]]],[[2855.59,3530.2,0],0,true,[[283,0,18.2919],[413,0,56.6898],[2213,1,24.1193],[2540,1,8.84569]]], +[[4213.72,3488.03,0],0,true,[[3859,0,19.8887],[2303,0,26.3155],[3833,0,4.07147],[1852,0,8.11812]]],[[4042.92,8003.84,0],0,false,[[1005,0,26.5634],[3269,0,306.492]]],[[4993.47,2753.42,0],0,true,[[1448,1,14.573],[2086,1,117.419],[3474,1,11.8787]]],[[1942.24,2005.61,0],0,false,[[3888,2,2.43611],[1095,1,13.6829]]],[[6609.63,5980.23,0],0,false,[[1600,0,131.022]]], +[[4286.04,4109.34,0],0,true,[[57,0,23.4121],[957,0,69.9824],[1648,0,108.343]]],[[1317.47,4302.13,0],0,true,[[1116,0,55.8784],[3580,0,25.5876],[380,0,10.8347]]],[[1246.85,7948.39,0],0,true,[[3612,0,22.9927],[35,0,31.1858]]],[[4379.78,4619.7,0],0,false,[[565,1,149.791],[1423,1,96.4191]]],[[7789.21,3901.55,0],0,false,[[904,0,91.6026],[3050,0,72.838]]], +[[3701.14,3151.02,0],0,true,[[241,0,20.8052],[534,0,20.6959],[3865,0,16.1906]]],[[4388.47,2921.5,0],0,true,[[1481,2,18.6056],[2525,2,23.245],[2194,2,9.95677]]],[[4214.01,4795.19,0],0,false,[[2092,2,225.393],[1884,2,82.9822]]],[[369.334,3476.08,0],0,true,[[357,1,139.841],[3860,1,21.2273],[3101,1,7.69348]]],[[4985.8,4109.78,0],0,false,[[356,1,27.8031],[2286,1,56.3876]]], +[[4191.97,4381.51,0],0,false,[[708,0,83.1437],[2308,1,3.77926]]],[[2336.9,302.989,0],0,false,[[3084,0,71.077]]],[[4319.36,4039.88,0],0,true,[[957,0,24.7023],[790,0,143.879],[1504,1,21.4359]]],[[1285.43,4044.08,0],0,true,[[2718,0,5.94081],[2161,0,77.1682],[2631,0,6.38064]]],[[6883.62,881.06,0],0,true,[[1693,1,128.506],[2834,1,23.7309],[1728,1,8.08326]]], +[[8019.14,7626.3,0],0,true,[[3441,1,31.3473],[2567,1,340.506],[1503,1,7.33558]]],[[5083.81,3903.65,0],0,true,[[3665,0,15.359],[718,0,21.1334],[1772,0,4.45863]]],[[1725.14,2907.82,0],0,false,[[737,0,96.9879]]],[[3507.41,2269.8,0],0,false,[[1049,0,24.789],[962,0,126.322]]],[[8113.04,4956.52,0],0,true,[[1785,0,14.9201],[1077,0,10.3451],[3062,0,12.9927]]], +[[1607.84,3240.07,0],0,false,[[2260,0,91.8827],[1769,0,17.3611]]],[[3279.74,3236.86,0],0,false,[[3586,0,149.712],[3749,1,9.65062]]],[[5571.04,2912.54,0],0,true,[[1599,0,151.655],[2635,1,4.50038],[1812,1,16.6677]]],[[4457.61,4177.07,0],0,false,[[790,0,85.9655],[2790,0,97.5232]]],[[46.5407,4473.31,0],0,true,[[1621,0,156.966],[795,0,25.2378],[596,0,9.31554]]], +[[6005.15,773.242,0],0,false,[[2225,0,172.872],[1808,0,143.372]]],[[4770.78,6558.83,0],0,false,[[3911,0,69.9663],[126,0,14.7308]]],[[2778.38,5303.37,1.39253],0,false,[[835,0,144.407],[2386,0,156.404]]],[[7093.32,5635.1,0],0,true,[[3086,0,10.621],[458,0,316.832],[750,0,13.0937]]],[[2817.7,6263.37,0],0,false,[[2927,0,96.6466],[2430,0,126.793]]], +[[6660.81,347.414,0],0,true,[[637,0,19.502],[3914,0,97.8999],[3591,0,2.7938]]],[[2144.09,3970.43,0],0,true,[[2441,0,2.43398],[3432,0,125.166],[1928,0,16.0821]]],[[3759.86,3487.71,0],0,true,[[1561,1,28.6095],[1366,1,10.3491],[2415,1,21.7094]]],[[4573.56,2241.03,0],0,false,[[1205,0,39.2867]]],[[278.2,1150.03,0],0,true,[[2749,0,69.8277],[14,0,20.6168],[1505,0,10.121],[507,0,21.3793]]], +[[5725.82,4410.95,0],0,false,[[3827,1,97.7017],[90,1,47.7081]]],[[5452.83,1246.87,0],0,false,[[2886,0,136.662],[427,0,45.5891]]],[[3834.14,3650.24,0],0,true,[[548,0,21.2683],[964,0,208.083],[3317,1,17.758]]],[[7915.35,6799.2,0],0,false,[[698,0,203.06],[234,0,274.176]]],[[6699.05,7328.56,0],0,false,[[1091,1,24.3933],[2606,1,230.012]]], +[[6860.26,4348.23,0],0,false,[[2046,0,22.9311],[2924,0,13.146]]],[[1772.57,4909.83,0],0,false,[[3295,0,66.3486]]],[[3275.59,6068.83,0],0,true,[[2217,0,44.7003],[2884,0,14.5559],[101,0,10.5238]]],[[494.867,4413.11,0],0,true,[[9,0,126.756],[248,0,25.0745],[2070,0,13.5076]]],[[336.297,4782.78,0],0,true,[[392,0,47.7457],[1344,0,4.03465],[3806,0,10.4993]]], +[[6887.64,6503.51,0],0,false,[[2347,1,151.578],[336,1,29.084]]],[[2915.31,7166,0],0,false,[[1258,0,126.051],[3688,0,246.893]]],[[2842.23,468.685,0],0,false,[[3117,0,32.5115]]],[[373.79,5038.94,0],0,true,[[3303,1,232.474],[3093,1,26.3908],[3863,1,12.1771],[2292,1,11.9273]]],[[438.479,1466.52,0],0,false,[[2376,0,137.704],[1019,0,79.7748]]], +[[1926.93,835.936,0],0,false,[[2407,0,102.802],[381,0,93.5765]]],[[5322.77,2814.96,0],0,false,[[2118,0,114.257]]],[[2702.29,183.85,0],0,false,[[2050,0,74.5034],[775,0,207.105]]],[[7640.42,453.781,0],0,true,[[2713,1,0.0671229],[2486,1,10.4897],[3785,1,9.46269],[3915,1,5.11272],[511,1,5.32168],[382,0,13.0428]]],[[3874.08,1116.91,0],0,true,[[2316,0,3.56],[3169,0,155.849],[87,0,5.65605]]], +[[3588.62,4339.57,0],0,true,[[2554,0,131.361],[2226,0,24.0388],[2772,0,10.4843]]],[[4023.6,3653.76,0],0,true,[[1304,1,9.72549],[530,0,130.65],[2072,1,11.8585]]],[[2641.67,6853.25,0],0,false,[[983,0,211.906],[2023,1,13.2191]]],[[1291.25,4045.27,0],0,true,[[3642,0,107.178],[2673,0,5.94081],[2631,0,10.2974]]],[[1501.83,3182.27,0],0,false,[[1702,0,164.757],[1793,0,108.095]]], +[[7157.08,518.066,0],0,false,[[49,1,180.676],[3791,1,179.325]]],[[6545.87,1071.12,0],0,false,[[156,1,33.8342],[2947,1,228.782]]],[[5148.43,3379.9,0],0,false,[[3589,0,18.9858],[1163,0,197.082]]],[[6294.62,4853.62,0],0,true,[[1228,0,14.1921],[3792,0,105.551],[3185,0,13.2826]]],[[5429.75,6810.55,0],0,true,[[1034,1,46.2591],[2737,1,27.2682],[3187,1,8.1292]]], +[[4240.26,6240.24,0],0,true,[[1890,0,79.3349],[600,0,10.0535],[1202,0,7.40225]]],[[2646.88,7492.75,0],0,true,[[2432,0,155.506],[2829,0,2.7231],[2734,0,5.68429]]],[[2160.54,7334.27,0],0,true,[[541,1,27.1585],[3189,1,128.553],[1733,1,15.2475]]],[[6482.1,2646.1,0],0,true,[[144,1,11.0204],[3546,1,114.802],[2839,1,26.8032]]],[[7859.38,7815.29,0],0,true,[[3689,0,21.8804],[3263,0,12.3434],[3659,1,7.18058]]], +[[578.984,8041.7,0],0,false,[[1292,0,21.8216]]],[[4988.19,729.145,0],0,false,[[573,0,150.492],[3072,0,131.551]]],[[5765.76,5397.32,0],0,false,[[2753,0,134.833],[1040,0,204.387]]],[[1577.53,6837.06,0],0,false,[[250,0,182.831],[3631,0,42.3795]]],[[2641.6,7490.65,0],0,true,[[2829,0,6.29655],[1923,0,138.361],[2726,0,5.68429]]], +[[2935.83,6953.09,0],0,true,[[1111,1,11.6268],[2742,1,21.8699],[2594,1,4.14457]]],[[4481.88,4696.5,0],0,true,[[2795,0,18.6635],[1480,1,11.0284],[3783,1,9.09465]]],[[5405.11,6822.08,0],0,false,[[2724,1,27.2682],[954,1,106.83]]],[[2972.03,4888.16,0],0,false,[[3234,0,87.6135],[1850,0,53.3057]]],[[3655.05,5119.42,0],0,true,[[85,1,12.9827],[1316,1,17.8661],[1558,1,13.5915],[520,1,7.79947]]], +[[2813.66,1790.14,0],0,true,[[2138,0,135.351],[755,1,3.77037],[2380,1,3.31468]]],[[5100.92,6811.73,0],0,true,[[1446,1,22.4147],[3388,1,17.8531],[1329,1,9.59629]]],[[2914.13,6955.76,0],0,true,[[2735,1,21.8699],[3468,1,148.542],[2594,1,18.0124]]],[[886.82,6075.26,0],0,true,[[353,1,1.82559],[3510,0,15.7468],[2198,1,6.47321],[1985,1,15.3657]]],[[8130.43,5053.37,0],0,false,[[3879,0,281.847],[1785,0,83.8344]]], +[[508.646,50.8679,0],0,false,[[1230,0,70.9707],[939,0,97.3103]]],[[6421.88,4330.24,0],0,false,[[2203,1,27.1278],[1976,1,48.9079]]],[[5073.5,6836.02,0],0,true,[[2862,2,33.2176],[931,2,16.6705],[2969,2,16.4238],[1991,2,25.8107],[1824,2,18.0614]]],[[378.551,3909.41,0],0,true,[[496,0,13.9353],[2394,0,184.304],[1320,0,10.6526]]],[[347.068,1139.1,0],0,false,[[2348,0,191.52],[2694,0,69.8277]]], +[[2105.4,3608.67,0],0,true,[[1260,0,97.8191],[1641,0,20.3411],[2945,0,5.76673]]],[[4359.51,5391.79,0],0,false,[[2487,0,134.48],[1246,0,81.9893]]],[[4894.45,6953.57,0],0,true,[[1826,0,3.31759],[3423,0,5.49051],[2206,0,1.614]]],[[5887.19,5415.69,0],0,false,[[3449,0,105.438],[2732,0,134.833]]],[[2593.08,6839.8,0],0,false,[[1530,0,7.91121],[88,1,16.1577]]], +[[4702.59,3284.59,0],0,false,[[1404,0,34.5012],[723,0,23.1744]]],[[5280,401.755,0],0,false,[[1945,0,45.4537],[1301,0,21.1825]]],[[6222.75,2169.7,0],0,true,[[1319,1,121.244],[1136,1,21.1769],[3106,1,6.29295]]],[[1962.89,192.945,0],0,true,[[2266,0,222.632],[2912,0,5.05208],[2334,0,4.97252]]],[[1034.53,4655.48,0],0,false,[[3904,0,262.326],[1672,0,115.87]]], +[[5518.03,4304.28,0],0,false,[[1161,0,141.167],[3061,0,18.8774]]],[[557.514,8188.59,0],0,false,[[3690,0,13.2083]]],[[7363.12,6352.58,0],0,true,[[3118,1,25.0485],[2991,1,79.7463],[2099,1,9.93422]]],[[4090.04,5271.72,0],0,false,[[1580,2,43.1899],[1500,2,52.8697]]],[[4629.22,2069.36,0],0,true,[[812,2,13.3767],[3139,2,52.5786],[2821,2,6.15262]]], +[[2406.54,7741.5,0],0,false,[[2623,0,20.7495],[1511,0,13.0941]]],[[8187.66,5397.55,0],0,false,[[874,0,9.87567]]],[[3891.98,3171.16,0],0,false,[[2534,0,193.315],[2429,0,148.602]]],[[5712.29,926.683,0],0,true,[[2029,1,23.5518],[1882,1,115.046],[2639,1,14.1008]]],[[7346.87,7913.89,0.000244141],0,false,[[614,0,26.4088],[3733,0,54.3803]]], +[[5086.22,4132.71,0],0,false,[[734,1,8.4281],[3022,1,8.4281]]],[[4784.85,4295.91,0],0,false,[[3842,0,186.91],[3244,0,19.3294]]],[[3581.19,4332.19,0],0,true,[[1924,0,50.4865],[2226,0,15.437],[2715,0,10.4843]]],[[1124.99,4834.9,0],0,true,[[678,1,22.4587],[289,1,174.646],[992,1,12.6013]]],[[1840.8,4914.1,0],0,true,[[1783,0,131.222],[3295,0,6.12853],[207,0,9.65222]]], +[[6410.62,614.199,0],0,false,[[1170,0,224.205],[1902,0,33.7845]]],[[7621.28,6573.28,0],0,true,[[2579,0,20.9335],[3344,0,80.109],[895,0,10.9727]]],[[4661.35,5080.29,0],0,true,[[3415,0,321.202],[3112,0,25.4066],[230,0,11.3189]]],[[2579.09,2040.02,0],0,true,[[3060,1,12.8765],[2939,1,93.3193],[1752,1,19.758]]],[[7744.44,4170.06,0],0,true,[[1087,0,8.23724],[3502,0,263.658],[2199,0,13.507]]], +[[5028.02,2197.55,0],0,false,[[417,1,308.275],[814,1,311.095]]],[[5610.64,3723.35,0],0,true,[[2889,0,29.789],[1937,0,111.982],[1517,0,15.3498]]],[[4185.19,5833.63,0],0,false,[[834,0,94.4184],[3092,0,199.674]]],[[3477.47,5534.39,0],0,true,[[3607,0,57.924],[294,0,158.76],[1538,0,75.8341]]],[[1812.69,1391.6,0],0,false,[[1835,1,59.4389],[3739,1,230.258]]], +[[946.067,1770.75,0],0,true,[[1683,1,35.3616],[3195,1,61.3048],[1218,1,17.8697]]],[[3728.92,5982.93,0],0,false,[[3605,0,63.0146]]],[[4108.04,2206.95,0],0,false,[[2024,0,96.6662],[1521,0,153.735]]],[[3437.15,6652.24,0],0,false,[[1667,1,104.424],[3318,1,64.1374]]],[[2838.72,1692.2,0],0,false,[[643,0,96.3581]]], +[[4539.11,4228.33,0],0,true,[[2683,0,97.5232],[2610,1,10.5567],[1651,1,15.6384]]],[[4826.22,4061.59,0],0,false,[[3293,0,178.025],[130,0,31.4126]]],[[7610.19,604.303,0],0,true,[[3630,0,129.406],[3623,0,117.776],[173,0,120.315]]],[[4709.4,1130.48,0],0,false,[[3841,0,17.8782],[986,0,16.2065]]],[[4026.92,4119.64,0],0,false,[[1744,1,4.72781],[2477,2,5.85392]]], +[[4464.5,4701.01,0],0,true,[[2648,0,4.38491],[2736,0,18.6635],[258,1,4.25241]]],[[7321.66,807.55,0],0,true,[[803,0,115.247],[332,0,13.7734],[1337,0,28.2716]]],[[881.887,3703.54,0],0,true,[[1916,0,175.391],[3058,0,7.09869],[1398,0,7.30879]]],[[2573.71,7386.39,0],0,true,[[2027,1,22.8671],[1217,1,195.762],[1679,1,11.0602]]],[[1265.69,8022.34,0],0,true,[[1072,1,183.289],[1700,1,30.0624],[3030,1,17.2618]]], +[[3232.34,1448.35,0],0,true,[[78,0,106.777],[108,0,10.9025],[1460,2,15.4039]]],[[3986.76,6449.96,0],0,true,[[3760,0,3.21803],[1972,0,14.6032],[2897,0,10.8573]]],[[4887.08,1858.78,0],0,false,[[2078,0,119.997],[1012,0,147.092]]],[[7162.59,4382.06,0],0,true,[[2304,1,14.4471],[259,1,14.3374],[1308,1,23.7139],[1239,1,24.8573],[1101,1,23.9542]]],[[6582.28,3669.64,0],0,true,[[3431,0,24.9208],[3120,0,288.156],[3165,0,13.3916],[1164,0,12.5801]]], +[[3559.35,6570.96,0],0,true,[[2543,1,10.2941],[2986,0,290.659],[3709,1,13.0178]]],[[4441.53,2978.37,0],0,true,[[2323,1,13.9116],[2101,1,7.72388],[3395,1,42.1644]]],[[6206.45,6594.16,0],0,true,[[1094,1,65.8906],[447,1,25.8052],[840,1,14.4306]]],[[6278.75,6608.88,0],0,true,[[2871,0,8.45051],[1094,1,8.42393],[2248,1,13.9357]]],[[1892.58,3254.64,0],0,true,[[1531,1,27.6054],[968,1,198.964],[2327,1,18.9666]]], +[[5908.97,5792.11,0],0,false,[[2158,1,212.355],[991,1,74.5514]]],[[764.153,1982.29,0],0,false,[[3414,0,123.807],[603,0,188.671]]],[[7098.47,4876.72,0],0,false,[[2041,0,394.122],[3838,0,223.724]]],[[5688.34,4346.26,0],0,false,[[1287,1,99.4382],[2037,1,56.2835]]],[[4104.96,5872.25,0],0,false,[[776,1,131.008],[2901,2,4.53323]]], +[[5438.33,6692.49,0],0,false,[[1356,0,19.0165],[610,0,95.7616]]],[[5664.17,2176.64,0],0,false,[[2413,0,17.7758],[3097,0,56.4326]]],[[4688.17,3531.97,0],0,false,[[2105,1,76.4164],[1880,1,96.1247]]],[[5089.31,3888.66,0],0,false,[[1163,0,315.346],[1772,0,14.8372]]],[[1780.05,4680.13,0],0,false,[[2501,1,27.6853],[2447,1,56.3957]]], +[[1134.18,3456.69,0],0,true,[[3755,0,220.093],[1150,0,27.6644],[664,1,18.6206]]],[[4634.17,2065.73,0],0,true,[[1424,0,62.5713],[2764,2,6.15262],[812,2,8.05153]]],[[7383.34,6033.42,0],0,false,[[2127,0,104.169],[1406,1,4.52011]]],[[4057.75,629.264,0],0,false,[[1317,0,245.792],[3351,0,142.839]]],[[7844.53,1371.67,0],0,false,[[766,0,95.5983],[3624,0,266.185]]], +[[627.099,7116.52,0],0,true,[[3830,0,14.9831],[3710,0,363.078],[3222,0,22.7895]]],[[8015.77,4540.81,0],0,true,[[2941,1,24.7515],[1299,1,24.9191],[419,1,14.2792]]],[[6049.09,7820.6,0],0,true,[[3477,1,14.6382],[3698,1,173.13],[1899,1,28.1394],[2033,1,20.2647]]],[[3552.34,2004.17,0],0,false,[[1411,0,56.2241],[2900,0,57.4184]]],[[2647.88,7490.22,0],0,true,[[2734,0,6.29655],[1033,0,34.1036],[2726,0,2.7231]]], +[[8177.42,5381.78,0],0,false,[[155,0,5.05942],[3879,0,51.6298]]],[[5561.85,2918.67,0],0,true,[[2635,1,6.6218],[1341,0,322.525],[658,1,3.55889]]],[[1281.15,4117.49,0],0,false,[[3253,0,36.1053],[2179,0,158.565]]],[[4797.27,6561.64,0],0,false,[[3637,2,98.6175],[1992,2,21.6997]]],[[6904.16,869.199,0],0,false,[[2674,1,23.7309],[1554,1,23.2803]]], +[[522.761,7154.63,0],0,true,[[666,0,21.8962],[3830,0,103.343],[206,0,11.2039]]],[[4020.46,4389.49,0],0,false,[[1955,0,17.5736],[880,2,9.08883]]],[[8017.58,6510.26,0],0,false,[[797,1,74.9138],[1399,1,24.4958]]],[[7049.54,6488.39,0],0,true,[[3794,0,12.7847],[3183,0,125.146],[2347,1,17.756]]],[[6485.21,2672.7,0],0,true,[[710,1,124.429],[2728,1,26.8032],[144,1,16.4599]]], +[[3825.68,5935.93,0],0,true,[[713,0,15.4668],[1865,0,15.4285],[2100,0,10.036]]],[[236.178,7385.69,0],0,false,[[74,0,143.83],[1568,0,37.1516]]],[[98.5749,7297.56,0],0,false,[[3256,0,89.3401],[2186,0,49.8892]]],[[1138.02,5836.01,0],0,false,[[2578,0,154.919],[966,0,241.5]]],[[6803.51,3762.64,0],0,false,[[3165,0,237.552],[338,0,70.1235]]], +[[2909.09,3748.05,0],0,false,[[2216,0,23.3866],[1907,0,282.867]]],[[7514.1,8188.66,0],0,false,[[3525,1,91.1604]]],[[4193.56,7645.83,0],0,false,[[685,0,120.677],[1005,0,382.209]]],[[8007.13,6362.61,0],0,true,[[1541,0,99.4195],[2517,0,24.8469],[3820,0,12.7454]]],[[7735.13,6247.04,0],0,false,[[3856,0,199.017],[3078,0,34.1071]]], +[[2447.98,4130.7,0],0,false,[[1594,1,33.772],[3206,1,200.562]]],[[5471.17,2694.19,0],0,false,[[768,0,273.875],[1599,0,131.735]]],[[5508.14,1279.47,0],0,false,[[316,0,8.08009],[3229,0,73.3706]]],[[4860.62,3993.61,0],0,false,[[1547,1,10.42],[1922,0,23.2684]]],[[1581.68,1202.83,0],0,true,[[3739,1,70.2787],[407,1,19.1672],[559,1,5.39884]]], +[[416.527,7303.22,0],0,false,[[434,0,83.5149],[331,0,79.7045]]],[[2280.85,952.521,0],0,false,[[2076,0,21.0683],[3346,0,179.905]]],[[6476.66,6035.95,0],0,true,[[2378,0,3.98559],[1600,0,55.1585],[432,0,10.2828]]],[[4497.37,928.184,0],0,false,[[1051,0,23.9159],[937,0,129.457]]],[[5065.2,4133.89,0],0,false,[[3473,0,19.4134],[734,0,12.6401]]], +[[3604.47,1959.32,0],0,false,[[3371,0,3.68932],[2994,0,96.9278]]],[[7077.11,5544.53,0],0,true,[[2173,0,4.56405],[799,0,4.66015],[3033,0,11.995]]],[[5092.08,6863.56,0],0,false,[[729,2,90.7641],[2747,2,33.2176]]],[[6389.3,4856.18,0],0,false,[[3185,0,81.7916]]],[[3922.13,6439.19,0],0,true,[[3052,0,8.24237],[2537,0,157.534],[1819,0,7.26455]]], +[[8177.08,6247.04,0],0,false,[[1839,1,37.2942],[3517,1,27.3773]]],[[7764.74,692.274,0],0,true,[[3623,0,62.3416],[2244,0,8.9676],[1039,0,19.8744]]],[[2893.63,4172.2,0],0,true,[[3823,0,16.3448],[1964,0,61.0956],[2218,0,6.85806]]],[[6033.99,5474.81,0],0,true,[[2233,1,256.571],[876,1,8.7032],[1162,1,18.1384]]],[[4351.84,1994.01,0],0,false,[[2872,0,13.6582],[3160,0,56.3884]]], +[[2944.24,6940.39,0],0,false,[[2594,0,18.9333],[2067,0,18.4917]]],[[6278.65,6600.49,0],0,true,[[3140,0,96.1146],[2808,0,8.45051],[1094,1,11.7536]]],[[4365.32,1991.91,0],0,false,[[1224,2,10.6248],[2869,0,13.6582]]],[[1555.63,6877.59,0],0,false,[[2254,1,48.2209],[1195,1,26.3319]]],[[5230.19,2907.05,0],0,false,[[3335,1,9.80316],[583,0,68.3623]]], +[[2116.47,3966.57,0],0,false,[[1412,0,227.314],[2441,0,26.6529]]],[[5798.92,7948.01,0],0,false,[[3698,1,108.098],[2573,1,252.648]]],[[3731.63,1845.99,0],0,true,[[2011,0,10.5988],[371,0,122.964],[3261,0,16.0439]]],[[1224.01,7970.71,0],0,true,[[148,1,14.9011],[1186,1,12.9836],[35,1,4.06542],[3767,1,6.67397]]],[[2793.01,1127.83,0],0,false,[[1063,1,151.142],[160,1,67.8002]]], +[[7383.54,5656.21,0],0,true,[[2548,1,10.3878],[3029,1,172.532],[3107,1,12.3032]]],[[4523.17,2340.84,0],0,true,[[2297,2,30.2341],[3908,2,15.6895],[2954,2,2.55274]]],[[1211.31,1142.6,0],0,false,[[670,1,220.92],[1083,1,29.6091]]],[[294.618,7325.31,0],0,true,[[950,0,9.71894],[743,0,5.06043],[73,0,10.0856]]],[[3289.26,6073.67,0],0,true,[[1934,0,23.7585],[101,0,24.9599],[1782,0,29.7319],[2702,0,14.5559]]], +[[2840.35,4417.28,0],0,true,[[3535,1,27.2838],[441,1,125.719],[3691,1,2.86725],[2519,1,7.89852]]],[[5330.54,1228.1,0],0,false,[[2696,0,136.662]]],[[3165.33,4957.02,0],0,false,[[1267,1,201.417],[3784,1,93.6215]]],[[7577.24,2772.97,0],0,false,[[2044,0,100.044]]],[[5617.83,3694.46,0],0,true,[[3138,0,155.856],[2781,0,29.789],[1517,0,14.4847]]], +[[4471.91,1467.97,0],0,false,[[2240,0,3.88384],[2229,0,115.057]]],[[3998.41,5388.55,0],0,false,[[1214,1,6.7226],[1364,0,66.7518]]],[[7587.85,4635.28,0],0,false,[[3838,0,330.368],[1977,0,195.364]]],[[7717.71,6364.35,0.000244141],0,false,[[820,0,16.3067],[2909,0,16.5549],[2653,0,12.564]]],[[6074.55,4.4787,0],0,false,[[2416,1,312.658]]], +[[454.62,7180.75,0],0,true,[[753,0,24.237],[666,0,51.6803],[293,0,12.682]]],[[518.927,4725.09,0],0,true,[[2527,0,7.85086],[365,0,46.8522],[2200,0,6.41139]]],[[3993.29,6458.54,0],0,true,[[3760,0,14.074],[1820,0,74.4085],[2801,0,10.8573]]],[[4036.97,4041.77,0],0,false,[[1353,2,18.1649],[366,2,125.762]]],[[2778.26,3896.33,0],0,false,[[3824,1,156.959],[3627,1,144.624]]], +[[3582.5,1958.6,0],0,false,[[2828,0,57.4184],[3371,0,19.2507]]],[[4109.25,5873.73,0],0,true,[[2337,2,90.6619],[3878,2,27.6262],[2814,2,4.53323]]],[[3641.96,3143.17,0],0,false,[[534,0,39.1502],[2363,0,168.069]]],[[5152.87,3340.96,0],0,true,[[894,0,340.95],[3589,0,20.2351],[3082,0,11.8945]]],[[7321.22,6137.37,0],0,false,[[681,1,14.8138],[2625,1,14.6922]]], +[[1458.46,3358.17,0],0,true,[[1403,1,28.7214],[569,1,12.5124],[435,1,5.20211]]],[[3564.83,718.28,0],0,false,[[2298,0,12.6328],[2914,1,2.85241]]],[[6971.18,1166,0],0,false,[[3894,0,93.1769],[1731,0,372.522]]],[[399.481,819.243,0],0,false,[[1306,0,240.466],[585,0,44.3328]]],[[7723.39,6348.8,0],0,false,[[820,0,18.9209],[3212,0,74.7058],[2893,0,16.5549]]], +[[8026.23,1717.18,0],0,true,[[1987,0,23.9962],[2284,0,209.926],[1115,0,12.4902]]],[[3027.87,7389.42,0],0,true,[[3688,0,10.2973],[2252,1,3.68611],[3320,1,6.79277],[1821,1,7.65513]]],[[1960.09,197.145,0],0,true,[[2758,0,5.05208],[1557,0,7.21884],[2334,0,2.3022]]],[[4482.65,3148.99,0],0,true,[[368,0,13.0564],[2629,0,102.262],[1392,2,17.1271]]],[[3564.3,721.081,0],0,true,[[3333,1,25.9269],[3063,1,314.916],[2906,1,2.85241],[2298,1,15.4085]]], +[[1999.1,5725.66,0],0,true,[[3493,1,17.0302],[1894,0,51.9059],[367,1,10.4783]]],[[7823.88,6550.71,0],0,false,[[2973,0,34.46],[1377,0,91.8647]]],[[3018.51,4873.15,0],0,true,[[3784,1,78.7382],[3851,1,11.7801],[2251,1,4.92326],[1850,1,6.67841]]],[[4903.56,6094.19,0],0,false,[[1711,0,102.229],[3825,0,283.055]]],[[1033.78,1812.71,0],0,true,[[3348,1,8.80061],[3447,1,6.6957],[1757,1,10.715]]], +[[5526.3,1847.63,0],0,false,[[3352,1,181.092],[339,1,189.788]]],[[4526.33,3240.1,0],0,false,[[1067,2,41.0168],[3542,2,22.7895]]],[[4906.68,4237.14,0],0,false,[[1222,0,103.686],[591,0,131.171]]],[[3702.83,4408.78,0],0,true,[[627,0,211.112],[700,0,6.12117],[2554,0,4.38132]]],[[6847.26,4350.1,0],0,true,[[2700,0,13.146],[2532,0,3.49194],[1200,0,4.62217]]], +[[2067.89,4626.51,0],0,true,[[1459,1,301.197],[3832,1,17.3686],[2272,1,16.9621]]],[[6792.43,7590.2,0],0,false,[[3048,0,5.42657],[220,0,87.127]]],[[2764.94,6338.69,0],0,false,[[2689,0,96.6466]]],[[4791.61,4343.11,0],0,false,[[644,0,24.6249],[2946,0,136.865]]],[[2842.03,1226.1,0],0,true,[[308,2,12.8776],[3357,2,31.4199],[3616,2,33.0745],[23,2,17.8304],[10,2,15.0193]]], +[[4500.4,4548.57,0],0,true,[[1980,1,76.9386],[1430,1,146.901],[1233,1,65.3303]]],[[584.04,4420.91,0],0,true,[[1327,0,11.5428],[379,0,18.5065],[3643,0,15.768],[3284,0,8.68432]]],[[2303.19,355.433,0],0,true,[[2975,0,202.061],[1877,0,20.6544],[1815,0,11.4685]]],[[3010.89,6922.45,0],0,false,[[3641,1,109.313],[2032,1,52.2204]]],[[3058.16,8188.59,0],0,false,[[89,0,261.691]]], +[[3148.79,7445.27,0],0,true,[[3560,0,122.957],[828,0,22.791],[1563,0,105.811]]],[[4497.22,2804.12,0],0,false,[[3564,1,93.674],[2391,1,91.9657]]],[[347.977,4447.11,0],0,true,[[998,0,12.4546],[3846,0,18.9455],[3750,0,0.751952],[2096,0,19.6062]]],[[5847.84,7269.94,0],0,false,[[2507,0,181.127],[442,0,44.7375]]],[[2663.64,2009.64,0],0,true,[[2778,1,93.3193],[2320,1,20.8907],[3094,1,44.8005]]], +[[2172.99,6038.73,0],0,true,[[3201,0,213.002],[2075,0,348.755],[1338,0,183.43]]],[[8039.96,4546.09,0],0,true,[[1215,1,29.3012],[2826,1,24.7515],[646,1,11.9158]]],[[2140.23,6338.98,0],0,false,[[2366,1,89.6666],[2008,1,29.3404]]],[[2495.33,7095.78,0],0,false,[[1993,0,83.9725],[2287,0,18.0002]]],[[7297.12,6152.3,0],0,true,[[2625,1,13.7821],[1445,0,180.809],[2418,1,5.70332]]], +[[2110.45,3611.39,0],0,true,[[3729,0,80.3051],[2750,0,5.76673],[1641,0,15.2209]]],[[4857.84,4460.58,0],0,true,[[2928,0,136.865],[18,0,9.4074],[736,0,5.87092]]],[[6744.96,958.497,0],0,true,[[2721,1,228.782],[3620,1,13.8766],[1693,1,30.6644]]],[[442.378,7672.62,0],0,false,[[980,0,74.2062],[2424,0,260.675]]],[[4747.3,1108.76,0],0,true,[[3370,0,25.0463],[3841,0,25.8132],[2329,0,3.67498]]], +[[3274.91,4238.07,0],0,true,[[1464,0,27.7646],[1431,0,254.425],[945,0,14.9527]]],[[4317.17,2878.62,0],0,true,[[1209,1,7.16947],[2154,1,12.0133],[684,1,10.9635]]],[[4160.19,6615.11,0],0,false,[[1820,0,205.989],[3236,0,251.974]]],[[7589.17,6579.07,0],0,false,[[1872,1,69.1345],[2628,1,42.7362]]],[[4525.6,2340.07,0],0,true,[[3903,1,13.3442],[3908,2,13.9827],[2881,2,2.55274]]], +[[4278.32,4019.56,0],0,true,[[1432,1,10.1381],[1560,1,13.3803],[1734,1,30.1568]]],[[2096.69,4597.08,0],0,true,[[3832,1,23.8661],[1000,1,23.5197],[667,1,7.38477]]],[[404.226,882.618,0],0,true,[[585,0,19.2851],[3614,1,9.39782],[1089,1,10.0141]]],[[4911.66,1034.79,0],0,true,[[1603,1,25.41],[1773,1,120.452],[781,1,14.6674]]],[[1515.2,3655.21,0],0,false,[[2324,0,160.461],[570,0,111.753]]], +[[6432.85,5188.64,0],0,false,[[1302,1,363.083],[372,1,26.9356],[912,0,7.43323]]],[[7060.46,3780.36,0],0,false,[[3672,0,59.166],[2445,1,4.82005]]],[[3561.9,6743.89,0],0,false,[[3373,0,325.889]]],[[2510.64,3190.29,0],0,true,[[2131,1,44.0647],[657,1,32.0967],[2192,1,10.0607]]],[[6984.85,4369.79,0],0,false,[[780,1,24.5476],[696,1,25.6207]]], +[[4223.18,2860.13,0],0,false,[[982,1,31.8805],[328,1,20.8884]]],[[2633.14,799.899,0],0,true,[[2451,0,83.9766],[3500,1,11.0335],[3610,1,14.3358]]],[[4300.96,3811.89,0],0,false,[[1466,0,121.832],[2552,0,84.9401]]],[[7786.89,7876.64,0],0,false,[[1755,0,25.7441],[3689,0,73.1722]]],[[5065.36,6821.77,0],0,true,[[1824,1,8.04165],[2747,2,16.4238],[1991,2,9.97753],[931,1,5.14191]]], +[[4735.22,2019.25,0],0,false,[[566,2,122.557],[812,2,104.481]]],[[1361.19,4282.41,0],0,false,[[579,0,51.0741],[380,0,46.2649]]],[[3445.9,4874.96,0],0,false,[[3728,0,116.084]]],[[7815.77,6517.22,0],0,false,[[3693,0,7.33737],[2916,0,34.46]]],[[4990.72,1652.04,0],0,true,[[321,1,9.09653],[2576,1,140.351],[229,1,8.05778]]], +[[2111.2,303.864,0],0,false,[[2334,0,189.346],[2932,0,202.061]]],[[4004.09,4573.53,0],0,true,[[3712,0,12.8937],[285,0,20.3693],[848,0,4.71414]]],[[3232.67,7206.43,0],0,false,[[459,0,37.8902],[149,0,27.176]]],[[3195.4,7213,0],0,false,[[2574,0,203.677],[1278,1,7.50987]]],[[6593.1,3087,0],0,false,[[3421,0,187.477],[3875,0,298.434]]], +[[5813.78,5881.64,0],0,false,[[991,1,100.055],[3884,1,17.5371]]],[[7165.97,5542.41,0],0,false,[[33,1,76.6382],[3107,1,242.01]]],[[2370.91,208.966,0],0,true,[[393,1,10.6965],[452,0,155.34],[1883,1,9.64133]]],[[4019.85,5457.19,0],0,false,[[909,1,19.8417],[669,1,66.971]]],[[4326.12,2992.91,0],0,false,[[826,1,21.5634],[3408,1,20.1426]]], +[[3054.73,5568.81,0],0,true,[[455,0,10.9268],[2375,0,169.779],[1168,0,15.5328]]],[[3380.08,6346.6,0],0,false,[[2805,0,290.659],[1908,0,44.9481]]],[[3002.77,3431.15,0],0,false,[[413,0,121.877],[3714,0,302.233]]],[[375.544,1247.95,0],0,true,[[1505,0,133.735],[811,0,22.0137],[1114,0,27.9443]]],[[466.796,2024.7,0],0,false,[[1573,0,21.5379],[3837,0,154.003]]], +[[5752.43,6349.74,0],0,false,[[836,0,82.267],[676,0,112.69]]],[[7437.17,6378.99,0],0,false,[[2762,1,79.7463],[911,1,133.796]]],[[3293.06,1885.23,0],0,false,[[39,0,185.838],[1551,0,306.275]]],[[5297.97,59.2458,0],0,false,[[2291,0,22.3139],[1401,0,297.856]]],[[3592.51,2047.58,0],0,false,[[2860,0,96.9278],[2055,0,50.2113]]], +[[7810.9,704.919,0],0,false,[[448,0,30.8998],[3639,0,35.3884]]],[[4706.35,2739.3,0],0,true,[[3334,1,230.564],[3233,1,12.2195],[824,1,3.33532],[3203,1,7.31444]]],[[5792.53,5886.61,0],0,false,[[2299,1,103.439],[2564,1,19.1199]]],[[5134.22,6964.72,0],0,true,[[3305,2,173.006],[729,2,18.98],[868,2,3.59857]]],[[5235.46,7701.8,0],0,false,[[1474,2,235.099],[216,2,19.8995]]], +[[6684.82,7927.16,0],0,true,[[220,0,292.284],[636,0,10.726],[1678,0,29.4493]]],[[7580.98,6499.81,0],0,true,[[1879,0,29.8174],[3344,0,8.27026],[3005,0,24.7269]]],[[123.801,7450.83,0],0,false,[[1484,0,118.342],[3533,0,125.94]]],[[3006.07,2511.96,0],0,false,[[84,0,28.9409],[604,0,126.162]]],[[7784.15,5799.77,0],0,true,[[314,0,4.44249],[1795,0,7.20313],[154,0,3.34025]]], +[[7604.23,6491.41,0],0,true,[[3001,0,24.7269],[3682,0,103.452],[3344,0,17.2627]]],[[4917.31,2016.43,0],0,false,[[3828,1,13.1682],[3321,2,8.93951]]],[[7092.91,4193.75,0],0,true,[[1524,0,130.766],[3600,1,10.6014],[1787,1,13.2096],[2538,0,15.5599]]],[[1550.21,5949.12,0],0,true,[[3569,0,230.139],[209,1,8.39431],[2039,1,10.886]]],[[7918.17,5826.83,0],0,false,[[1534,0,84.8888],[314,0,132.771]]], +[[4488.67,7991.73,0],0,false,[[274,0,15.4706],[186,0,120.849]]],[[5119.99,4873.7,0],0,false,[[45,1,252.929],[2459,1,12.9029]]],[[5958.99,3319.64,0],0,false,[[3547,0,242.371]]],[[4548.25,6536.63,0],0,true,[[2457,0,12.1367],[3911,0,168.553],[1933,0,7.71167]]],[[4685.99,3310.44,0],0,false,[[3077,1,25.1536],[2434,1,32.5428]]], +[[7495.15,1435.01,0],0,false,[[1350,0,234.93],[3892,0,160.448]]],[[2634.08,3677.46,0],0,true,[[93,1,156.502],[2401,1,13.3938],[1254,1,26.9213]]],[[2216.34,4018.05,0],0,true,[[1656,0,20.3455],[136,0,253.896],[3845,0,19.3242],[1291,0,26.7075]]],[[5095.04,5893.72,0],0,true,[[694,0,398.684],[722,0,172.795],[3267,0,117.07]]],[[4961.63,1995.65,0],0,false,[[480,1,22.6203],[3544,1,17.6664]]], +[[0.417723,7274.02,0],0,false,[[1194,0,78.9572]]],[[2909.64,4663.96,0],0,false,[[3851,1,229.201],[3207,1,90.1282]]],[[5094.6,4131.8,0],0,true,[[2495,1,146.541],[247,1,26.0398],[2770,1,8.4281]]],[[4198.98,4015.8,0.000183105],0,false,[[2094,0,35.3895],[146,0,19.5568]]],[[2261.1,7241.49,0],0,false,[[3264,0,112.483],[1167,0,137.063]]], +[[357.263,4117.99,0],0,true,[[263,0,140.289],[1942,0,25.049],[1439,0,9.83886]]],[[1217.6,4060,0],0,false,[[2631,0,65.3321],[3273,0,10.3177]]],[[4026.43,4055.61,0],0,false,[[1353,2,6.83753],[2196,1,18.8245]]],[[7381.43,6044.34,0],0,false,[[1406,1,13.5131],[681,1,96.5094]]],[[7376.02,5828.23,0],0,true,[[2880,1,172.532],[3782,1,20.8255],[1597,1,9.60374]]], +[[1257.27,8007.27,0],0,true,[[1700,1,13.5691],[225,0,30.3059],[2799,1,17.2618]]],[[2991.95,1122.15,0],0,true,[[1050,0,15.85],[493,0,174.17],[1415,0,9.26695]]],[[1164.62,3657.82,0],0,false,[[2,0,211.394],[2060,0,24.8222]]],[[7078.88,5556.37,0],0,true,[[799,0,8.08267],[3429,0,25.0679],[2861,0,11.995]]],[[5661.91,4416.48,0],0,true,[[3151,1,72.4288],[602,1,13.5622],[3342,1,14.7348]]], +[[1553.48,1453.11,0],0,false,[[855,0,243.24],[1960,0,252.584]]],[[5489.71,1274.85,0],0,true,[[2301,1,33.8593],[3397,1,69.1084],[699,1,15.9075]]],[[7522.43,3453.4,0],0,false,[[1532,0,251.363],[1591,0,78.4174]]],[[4137.61,1650.52,0],0,true,[[152,0,11.6768],[2406,0,80.9148],[3400,0,2.87272]]],[[4385.5,4911.8,0],0,true,[[2010,1,26.1293],[1582,1,95.3935],[3415,1,3.89815]]], +[[938.09,1578.56,0],0,false,[[1218,0,185.064],[1543,0,99.4441]]],[[808.174,1788.98,0],0,false,[[3520,1,30.0327],[1294,1,77.2556]]],[[1203.03,2552.02,0],0,false,[[2558,1,138.219],[1099,1,26.8093]]],[[4188.85,6251.43,0],0,false,[[1202,0,46.3108],[620,0,256.581]]],[[1072.63,7972.12,0],0,false,[[1737,1,128.301],[3767,1,146.772]]], +[[3261.97,5527.01,0],0,true,[[1538,0,157.528],[578,0,18.1235],[2550,0,6.04038]]],[[1548.7,2237.15,0],0,true,[[1941,0,101.099],[1482,0,216.856],[3345,0,195.882]]],[[1151.32,4672.45,0],0,true,[[1672,0,7.30526],[99,0,73.3327],[1765,0,7.10872]]],[[6796.87,7587.09,0],0,true,[[1265,0,276.248],[171,0,7.33626],[2926,0,5.42657]]],[[2458.51,441.458,0],0,false,[[3773,1,44.9854],[3500,1,388.335]]], +[[7857.94,3924.6,0],0,false,[[2664,0,72.838]]],[[5940.55,945.443,0],0,false,[[2639,0,237.515]]],[[3929.74,6436.06,0],0,true,[[932,0,13.7195],[1819,0,1.60486],[2864,0,8.24237],[720,0,10.919]]],[[1439.61,2817.92,0],0,false,[[3463,1,286.962],[948,1,93.8501]]],[[1731.1,7215.06,0],0,false,[[742,1,183.751],[1642,1,68.3804]]], +[[3.74777,6094.51,0],0,false,[[2373,1,37.7182]]],[[1852.68,6670.1,0],0,false,[[919,0,136.488],[250,0,140.893]]],[[7881.59,7799.65,0],0,true,[[3659,1,21.0089],[3258,1,97.7804],[3263,1,14.8677]]],[[877.383,3698.05,0],0,true,[[521,0,47.9052],[2797,0,7.09869],[1398,0,3.3388]]],[[6046.29,7709.04,0],0,false,[[1096,0,93.1331],[1382,0,119.984]]], +[[2571.83,2050.65,0],0,true,[[2575,0,65.6756],[2778,1,12.8765],[1752,1,9.22875]]],[[5518.26,4323.13,0],0,false,[[2760,0,18.8774],[628,0,10.2052]]],[[8102.58,4948.83,0],0,true,[[1077,0,22.7003],[424,0,138.237],[2679,0,12.9927]]],[[3739.52,974.503,0],0,true,[[2914,1,314.916],[3681,1,10.1008],[3626,1,6.00043]]],[[5576.92,5647.86,0],0,false,[[831,0,82.4162],[2295,1,7.60038]]], +[[6503.75,2225.51,0],0,true,[[3480,1,20.9239],[2068,1,86.6783],[3597,1,11.3813]]],[[4874.78,1598.12,0],0,false,[[1666,0,21.1359]]],[[7284.49,3776.13,0],0,false,[[752,1,51.0066],[1854,1,202.035]]],[[6935.37,4347.67,0],0,false,[[3199,0,23.9633],[450,0,25.8717]]],[[2835.96,1254.16,0],0,true,[[308,1,25.5689],[3595,1,5.8939],[2392,1,8.45541]]], +[[3958.24,5621.95,0],0,false,[[669,1,108.995],[2529,1,306.986]]],[[3245.15,5528.62,0],0,false,[[2550,0,10.8678],[1470,0,126.312]]],[[4901.51,807.881,0],0,true,[[2731,0,131.551],[2379,0,15.751],[1175,1,20.1116]]],[[4763.33,3651.36,0],0,false,[[1590,1,27.1216],[563,1,28.6851]]],[[6805.96,7234.52,0],0,true,[[525,1,341.023],[3292,1,25.5067],[516,1,11.166]]], +[[7784.56,7227.71,0],0,true,[[1052,0,13.1433],[1745,0,156.462],[1285,0,3.71639]]],[[5250.28,8057.59,0],0,false,[[575,0,130.77]]],[[4687.56,3335.53,0],0,false,[[645,1,20.2105],[3014,1,25.1536]]],[[7767.66,6257.28,0],0,false,[[3212,0,61.2544],[2849,0,34.1071]]],[[2388.02,3641.98,0],0,false,[[1641,0,278.132],[1160,0,230.933]]], +[[2276.95,922.623,0],0,true,[[1796,2,22.3008],[2146,2,26.0275],[1133,2,1.65769],[2076,2,9.10541]]],[[2989.1,1080.32,0],0,false,[[409,0,19.4689],[3402,0,150.341]]],[[5154.65,3352.72,0],0,true,[[3391,0,83.9539],[3589,0,9.27537],[2903,0,11.8945]]],[[2535.96,81.4653,0],0,true,[[71,0,11.2975],[164,0,14.4355],[1184,0,11.8278],[2624,0,5.03845]]],[[2402.49,288.914,0],0,false,[[157,1,1.81188],[2671,0,71.077]]], +[[5578.49,6956.08,0],0,false,[[269,0,26.0116]]],[[7088.31,5625.74,0],0,true,[[1751,0,24.9021],[2688,0,10.621],[750,0,4.02492]]],[[289.537,1364.25,0],0,false,[[3446,0,208.527],[1479,0,194.401]]],[[1508.4,2146.2,0],0,false,[[420,0,23.0328],[3633,0,169.327]]],[[5317.01,7535.17,0],0,false,[[1851,1,48.8377],[281,1,144.805]]], +[[6005.45,4864.23,0],0,true,[[1857,0,14.0705],[1228,0,275.785],[1478,0,19.53]]],[[6395.96,5456.04,0],0,false,[[1245,0,47.1624],[3360,0,28.3098]]],[[4358.45,5861.96,0],0,false,[[2782,0,199.674],[2149,0,292.283]]],[[347.454,5037.71,0],0,true,[[3863,1,14.8234],[1311,1,230.967],[2708,1,26.3908]]],[[2664.83,1968.05,0],0,true,[[2939,1,44.8005],[1416,1,14.9886],[295,1,8.17012]]], +[[3575.13,5377.46,0],0,false,[[294,0,26.225],[520,0,264.001]]],[[1270.42,6529.92,0],0,false,[[3555,1,261.139],[288,1,175.37]]],[[5708.92,2142.51,0],0,false,[[2816,0,56.4326],[185,0,85.4202]]],[[6102.58,903.113,0],0,true,[[2202,0,2.80223],[574,0,235.337],[1282,0,4.07265]]],[[5432.99,5449.56,0],0,true,[[1187,1,4.64322],[892,0,35.6708],[1486,1,6.34371]]], +[[3796.41,1909.44,0],0,false,[[1587,0,87.9674]]],[[363.899,3470.64,0],0,false,[[2668,1,7.69348],[1069,0,210.288]]],[[5144.8,2883.8,0],0,true,[[2644,1,11.289],[894,0,123.004],[508,1,19.2033]]],[[8167.52,6260.05,0],0,false,[[2205,0,14.0336],[3517,1,12.3731]]],[[6421.89,3366.83,0],0,true,[[3875,0,48.2334],[3896,0,15.2506],[707,0,15.8264]]], +[[1293.8,3961.25,0],0,true,[[513,0,4.88281],[396,0,59.5682],[2161,0,6.54327]]],[[6217.88,2165.73,0],0,true,[[1136,1,17.051],[1967,1,122.617],[2757,1,6.29295]]],[[7372.68,5650.44,0],0,true,[[2981,1,242.01],[2880,1,12.3032],[2548,1,20.2185]]],[[1250,6824.49,0],0,false,[[1300,0,193.737]]],[[4870.17,557.596,0],0,true,[[562,1,12.4551],[1668,1,295.458],[287,1,5.9708]]], +[[4042.73,5397.27,0],0,false,[[1607,2,20.8468],[201,2,26.2358]]],[[1950.53,747.507,0],0,true,[[1236,2,30.5286],[2182,2,138.977],[381,2,17.3977],[2584,2,18.4557]]],[[4682.91,5093.72,0],0,true,[[2777,0,25.4066],[702,0,185.015],[230,0,14.8935]]],[[8109.58,1610.82,0],0,true,[[1837,0,22.459],[1139,0,84.0657],[1746,0,12.3838]]],[[2561.65,1674.26,0],0,true,[[2603,1,26.0103],[2398,1,12.057],[735,1,28.3386],[3476,1,13.7873]]], +[[894.303,6082.51,0],0,true,[[83,1,77.1292],[353,1,8.61651],[3510,1,9.09051]]],[[2781.45,2101.59,0],0,false,[[1859,0,114.93],[3485,1,4.31734]]],[[2810.44,461.885,0],0,true,[[2211,0,25.8761],[2707,0,32.5115],[394,0,11.4251]]],[[7341.01,6340.82,0],0,true,[[1061,1,98.9123],[2762,1,25.0485],[2099,1,15.8672]]],[[4480.1,3099.79,0],0,false,[[262,1,16.8754],[1583,1,141.609]]], +[[6498.76,3941.67,0],0,true,[[2804,0,288.156],[802,0,6.82779],[162,0,16.0906]]],[[7446.4,4.04309,0],0,false,[[3811,1,173.485]]],[[6099.53,4563.57,0],0,false,[[2159,0,230.864],[587,0,193.325]]],[[932.304,4031.19,0],0,true,[[1492,0,10.1127],[838,0,13.8422],[3790,0,13.0174]]],[[4952.52,1993.01,0],0,false,[[3483,1,25.5714],[1586,1,16.874]]], +[[531.151,8038.01,0],0,false,[[960,0,20.2056]]],[[4767.6,3435.85,0],0,false,[[539,0,33.6679],[638,0,7.19084]]],[[1969.18,7454.66,0],0,true,[[1682,1,17.3771],[2399,1,25.7939],[1932,1,4.71032]]],[[5506.23,3430.73,0],0,false,[[3668,0,66.4846],[2115,0,174.295]]],[[5750.08,7442.01,0],0,false,[[3602,0,200.328],[1078,0,192.345]]], +[[3105.7,7528.65,0],0,false,[[1522,1,111.105],[1918,1,24.0331]]],[[5279.58,7449.95,0],0,true,[[36,2,18.9715],[3515,2,60.8814],[3437,2,35.0286]]],[[5538.58,6449.75,0],0,true,[[2246,1,169.723],[3379,1,22.2171],[2022,1,10.1768]]],[[4251.21,2973.32,0],0,true,[[121,1,77.1485],[1713,1,66.7592],[306,1,5.5401]]],[[2343.5,1640.97,0],0,false,[[735,1,194.254],[2017,1,29.6643]]], +[[2835.85,1969.39,0],0,false,[[3438,1,30.3731],[949,1,153.624]]],[[7352.54,3241.84,0],0,true,[[138,0,123.545],[1499,1,14.8318],[223,1,16.1111],[1532,0,21.0025]]],[[222.772,6108.77,0],0,true,[[453,1,17.3108],[2191,0,307.731],[3565,1,11.778]]],[[5656.02,3543.41,0],0,false,[[3322,0,306.256],[2889,0,155.856]]],[[4577.27,2067.54,0],0,false,[[2764,2,52.5786],[1224,2,215.996]]], +[[6278.51,6506.68,0],0,false,[[1564,0,48.6343],[2871,0,96.1146]]],[[2929.99,4375.56,0],0,false,[[313,0,18.8123],[1847,0,29.0302]]],[[358.057,4764.23,0],0,true,[[3806,0,18.6005],[1158,0,6.55108],[2608,0,12.9127],[1589,0,6.27552]]],[[2142.3,4071.01,0],0,false,[[1656,0,74.5068],[3380,0,111.84]]],[[4088.31,5741.14,0],0,true,[[3192,2,27.355],[2025,2,35.3766],[3252,2,7.09503],[2650,2,4.67586],[2318,2,5.49067]]], +[[1025.45,250.297,0],0,true,[[3876,2,134.46],[841,2,30.03],[3363,2,16.5776]]],[[4934.08,4114.43,0],0,true,[[3316,0,24.3602],[1982,0,26.5951],[591,0,11.5631]]],[[4035.25,5412.17,0],0,false,[[1607,2,6.43372],[1214,1,38.3975]]],[[3749.71,1427.34,0],0,true,[[222,1,295.011],[1433,1,21.2779],[558,1,8.20695]]],[[3732.46,6299.22,0],0,false,[[961,0,83.2176],[3575,0,21.5471]]], +[[4335.78,6029.27,0],0,false,[[2230,0,59.8261],[404,0,94.8218]]],[[5604.73,4375.34,0],0,false,[[3180,1,21.8642],[3034,1,72.4288]]],[[4061.63,4457.71,0],0,true,[[3470,2,20.8324],[880,2,74.8473],[1552,2,9.61774]]],[[5227.35,7265.54,0],0,true,[[260,2,101.117],[1680,2,17.2926],[2280,2,7.76414]]],[[1807.61,7236.94,0],0,true,[[406,0,88.2058],[1642,1,11.6511],[2604,1,18.7715]]], +[[5023.55,6839.44,0],0,false,[[997,1,23.1657],[715,1,132.082]]],[[4940.57,2402.54,0],0,false,[[1570,1,204.513],[317,1,198.581]]],[[4331.13,7109.14,0],0,false,[[2241,0,75.0747],[224,0,49.8379]]],[[2726.31,2490.64,0],0,false,[[2102,1,4.58835],[3450,0,46.8034]]],[[7539.12,3527.63,0],0,true,[[2235,0,237.702],[1591,0,14.0799],[3897,0,28.2717]]], +[[4296.57,2004.95,0],0,false,[[2869,0,56.3884],[3426,0,124.206]]],[[448.005,2680.51,0],0,false,[[21,0,157.929],[2002,0,349.26]]],[[4693.79,5860.37,0],0,true,[[2149,0,58.5993],[1322,0,3.98263],[3262,0,4.80425]]],[[2110.83,4322.91,0],0,false,[[616,0,171.655],[3735,0,165.341]]],[[492.191,7253.69,0],0,false,[[1698,0,111.149],[2468,0,84.8121]]], +[[6590.7,3659.25,0],0,true,[[2844,0,237.552],[3431,0,13.169],[2804,0,13.3916],[1164,0,12.5077]]],[[2800.16,3303.13,0],0,false,[[1166,1,60.0714],[1269,1,29.8588]]],[[7944.21,1540.64,0],0,true,[[177,0,9.64848],[1837,0,157.969],[1227,0,5.12029]]],[[8113.34,2181.81,0],0,true,[[425,0,15.6488],[810,0,351.538],[1606,0,14.2654]]],[[3943.83,1242.57,0],0,false,[[2714,0,155.849],[3516,0,111.435]]], +[[54.3995,6100.01,0],0,true,[[3759,1,9.05925],[2312,0,327.393],[2373,1,13.5444]]],[[6799.33,1083.24,0],0,true,[[3529,0,24.4684],[135,0,132.617],[188,0,13.7132]]],[[1504.11,3881.92,0],0,false,[[570,0,167.714],[3285,0,121.091]]],[[4702.33,3412.55,0],0,false,[[3384,1,58.7624],[645,1,58.4259]]],[[4695.64,2953.69,0],0,false,[[3296,1,73.6558]]], +[[7434.86,6343.23,0],0,false,[[3319,0,58.4672],[3625,0,53.1724]]],[[2694.95,2013.02,0],0,true,[[3485,1,127.629],[2320,1,11.0863],[655,1,8.70227]]],[[4033.77,4156.63,0],0,true,[[2013,2,33.0039],[3302,2,23.8721],[1307,2,15.6812]]],[[6956.78,838.471,0],0,true,[[30,0,10.7855],[97,1,14.7719],[1906,1,12.1209]]],[[7674.28,3294.1,0],0,false,[[557,0,304.104],[2243,0,218.607]]], +[[5583.37,4370.9,0],0,false,[[3509,1,25.1151],[3151,1,21.8642]]],[[4003.41,4535.43,0],0,true,[[3712,0,27.5494],[3900,0,6.41276],[1472,0,6.8084]]],[[4404.66,3223.16,0],0,true,[[1355,0,28.0822],[1944,0,61.1937],[1148,0,17.5652]]],[[7050.55,6612.75,0],0,true,[[2838,0,125.146],[2582,0,19.4724],[851,0,7.27867]]],[[2521.54,83.4107,0],0,true,[[3671,0,17.4487],[71,0,3.36856],[1184,0,2.94509]]], +[[6307.58,4856.51,0],0,true,[[1228,0,26.7711],[2863,0,81.7916],[2723,0,13.2826]]],[[473.989,8188.49,0],0,false,[[300,1,69.621]]],[[5426.62,6818.03,0],0,false,[[2724,1,8.1292],[693,0,81.7574]]],[[7600.01,3533.17,0],0,true,[[3786,0,5.54083],[1286,0,67.1587],[4,0,12.7607]]],[[2287.74,7343.85,0],0,false,[[2727,1,128.553],[17,1,80.9942]]], +[[5480.25,7891.16,0],0,false,[[384,0,49.372]]],[[6758.11,1743.64,0],0,true,[[418,0,15.5804],[2627,0,172.447],[891,0,13.2504]]],[[4092.98,5768.07,0],0,false,[[1646,2,19.1382],[3144,2,27.355]]],[[2789.22,1963.03,0],0,true,[[257,1,12.7652],[1271,0,25.0883],[3438,1,16.7969]]],[[1422.72,5583.41,0],0,false,[[3873,0,121.813],[2421,0,140.261]]], +[[1000.95,1797,0],0,false,[[2785,1,61.3048],[3491,2,4.45055]]],[[4580.57,3316.23,0],0,false,[[619,1,92.5841],[3424,1,49.5004]]],[[7414.15,2966.72,0],0,true,[[1225,1,151.896],[930,1,11.2958],[215,1,17.3765]]],[[308.777,7314.56,0],0,false,[[743,0,17.3234],[1898,0,104.814]]],[[6959.3,4348.55,0],0,false,[[993,0,22.409],[3068,0,23.9633]]], +[[3613.28,6659.75,0],0,false,[[3364,0,32.7906],[231,0,18.2163]]],[[2128.08,6246.1,0],0,false,[[3451,0,55.8334],[2940,0,213.002]]],[[462.328,7392.39,0],0,true,[[633,0,11.7134],[1698,0,31.3347],[2424,0,24.2444]]],[[4706.83,2746.59,0],0,true,[[824,0,4.79669],[2647,0,108.141],[2996,1,7.31444]]],[[1415.6,4772.28,0],0,false,[[1715,1,131.588],[1633,1,157.084]]], +[[3732.43,3085.51,0],0,false,[[241,0,77.3719],[1119,0,205.364]]],[[2529.1,3948.14,0],0,false,[[2850,1,200.562],[2137,1,67.2388]]],[[2864.41,4586.35,0],0,false,[[3021,1,90.1282],[127,1,24.8979]]],[[8186.76,1448.32,0],0,false,[[897,0,203.716]]],[[712.21,3044.38,0],0,false,[[54,0,101.313],[2404,0,189.292]]], +[[5440.52,7930.76,0],0,true,[[1086,1,28.5016],[1870,1,268.916],[384,1,11.554]]],[[3015.41,1994.78,0],0,false,[[2133,1,7.23514],[39,0,124.66]]],[[7789.72,6314.42,0],0,false,[[2909,0,74.7058],[3078,0,61.2544]]],[[2.26116,5246.27,0],0,false,[[918,0,211.545]]],[[556.022,5797.51,0],0,false,[[3694,0,301.141],[3484,0,28.3778]]], +[[361.581,4642.28,0],0,true,[[1917,0,7.95202],[2555,0,0.749812],[595,0,8.69717],[1180,0,13.562]]],[[1611.97,6933.25,0],0,false,[[1763,1,137.256],[2254,1,31.1926]]],[[1962.28,3396.02,0],0,true,[[717,0,4.55647],[2327,0,155.835],[470,0,11.6729]]],[[6881.33,4362.41,0],0,false,[[112,1,25.7867],[3385,1,24.8228]]],[[6109.48,1315.26,0],0,true,[[1966,1,302.34],[2553,1,5.00866],[3613,1,13.3154]]], +[[330.653,7603.88,0],0,false,[[2556,0,185.864],[2449,0,74.806]]],[[7202.61,6956.34,0],0,false,[[3469,1,231.453],[3748,1,118.582]]],[[624.038,7139.09,0],0,true,[[517,0,231.418],[3830,0,8.5126],[2825,0,22.7895]]],[[4567.17,2329.68,0],0,true,[[272,1,18.3688],[3903,1,29.602],[2014,1,28.7329]]],[[1012.02,3283.11,0],0,false,[[3692,0,187.442],[3755,0,71.9185]]], +[[2828.74,4468.19,0],0,true,[[3403,0,94.4366],[109,0,8.86387],[3816,1,8.95696]]],[[5627.83,7262.21,0],0,true,[[1729,0,10.2399],[2507,0,41.7083],[589,0,20.1092]]],[[8045.39,4563.38,0],0,true,[[630,0,44.349],[1632,0,13.6927],[3240,0,6.19763]]],[[6808.72,7653.99,0],0,false,[[171,0,60.6744]]],[[5490.5,1347.56,0],0,false,[[2852,0,73.3706]]], +[[5890.2,4353.63,0],0,false,[[2091,1,29.7593],[711,1,6.68087]]],[[741.889,6344.83,0],0,false,[[1912,0,190.189],[863,0,271.724]]],[[7662.16,2387.7,0],0,true,[[798,0,44.2741],[111,0,14.8682],[329,0,9.61832]]],[[4695.48,2744.72,0],0,true,[[824,1,9.71808],[2349,1,112.025],[2996,1,12.2195]]],[[2888.83,4861.19,0],0,false,[[2385,0,100.789],[2738,0,87.6135]]], +[[4082.05,4140.8,0],0,true,[[714,1,28.232],[3667,1,26.4036],[2036,1,26.8366]]],[[4276.73,6836.21,0],0,false,[[2952,0,251.974],[2081,0,114.007]]],[[2872.31,4193.12,0],0,false,[[275,1,10.6828],[3823,0,13.9338]]],[[7172.68,719.465,0],0,true,[[3456,0,143.276],[2103,1,13.2159],[732,1,16.2567]]],[[2759.23,7031.74,0],0,true,[[2622,0,20.6553],[2165,0,16.1263],[1778,0,14.8025],[1490,0,16.0348]]], +[[8049.27,4558.55,0],0,true,[[3227,0,6.19763],[646,0,7.67259],[1632,0,18.8893]]],[[1151.63,3475.17,0],0,true,[[1015,1,59.3265],[664,1,27.6581],[1150,1,18.6715]]],[[346.712,4524.06,0],0,true,[[3425,0,15.5845],[1595,0,17.1959],[1515,0,0.751409],[1113,0,17.8792]]],[[2188.9,5680.76,0],0,true,[[3561,0,126.357],[3868,0,6.21604],[2075,0,11.3226]]],[[4780.51,4314.55,0],0,true,[[2771,0,19.3294],[3407,0,5.45867],[644,0,6.42918]]], +[[2827.12,524.678,0],0,false,[[515,0,59.2797],[128,0,309.435]]],[[7641.72,7982.18,0],0,false,[[650,1,99.4592],[662,1,86.8808]]],[[6448.13,5201.42,0],0,false,[[444,1,8.74613],[372,1,8.74613]]],[[8015.24,1173.42,0],0,true,[[3487,0,16.5825],[1006,0,9.56884],[3624,0,11.302]]],[[5179.64,8103.26,0],0,false,[[198,0,68.2147]]], +[[558.209,5828.48,0],0,true,[[2497,0,13.0296],[1635,0,149.382],[3484,0,6.76427]]],[[6325.69,2.3186,0],0,false,[[1201,1,381.822]]],[[4087.52,5734.1,0],0,false,[[3144,2,7.09503],[2650,0,4.5007]]],[[1245.76,4120.37,0],0,true,[[2212,0,19.2482],[2832,0,36.1053],[2362,0,15.5865]]],[[149.979,5471.6,0],0,false,[[2153,0,187.786],[1624,0,132.933]]], +[[5917.99,4861.19,0],0,true,[[823,1,101.824],[3367,1,8.57497],[2520,1,17.508]]],[[81.2877,7214.17,0],0,false,[[845,0,138.917],[2842,0,89.3401]]],[[4426.62,3031.61,0],0,false,[[2112,2,51.5206],[485,2,13.4608]]],[[7951.21,7731.27,0],0,false,[[3057,1,97.7804],[3441,1,94.075]]],[[2178.61,5449.25,0],0,false,[[1588,0,34.6141],[1761,1,10.3182]]], +[[5102.62,2643.66,0],0,false,[[1958,0,199.761],[2307,0,140.824]]],[[3715.71,1844.85,0],0,true,[[1587,0,19.3652],[67,0,159.773],[2011,0,15.3491],[2877,0,16.0439]]],[[4695.99,5856.15,0],0,true,[[1322,0,6.83225],[1339,0,7.09697],[3162,0,4.80425]]],[[7869.16,7807.76,0],0,true,[[2729,0,12.3434],[3659,1,6.48056],[3057,1,14.8677]]],[[2168.75,7303.46,0],0,false,[[1733,0,32.0739],[3024,0,112.483]]], +[[5989.54,7767.52,0],0,false,[[1096,0,18.5057],[2526,0,144.892]]],[[1871.73,1441.55,0],0,true,[[1739,1,154.251],[1835,1,17.9229],[2166,1,8.1073]]],[[5041.88,5983.9,0],0,true,[[2258,0,209.037],[2124,0,197.285],[3018,0,117.07]]],[[1370.24,1843.01,0],0,false,[[2048,1,6.86647],[1358,2,3.54175]]],[[4312.34,8122.05,0],0,true,[[2656,0,306.492],[1171,0,29.2543],[16,0,15.6398]]], +[[4350.83,7329.74,0],0,false,[[1775,0,122.728],[2241,0,148.461]]],[[4795.61,5239.9,0],0,false,[[408,1,14.7726],[2236,1,45.2857]]],[[6832.4,5332.52,0],0,true,[[1925,1,9.50363],[2041,0,164.708],[2612,1,7.56785]]],[[1208.76,4065.15,0],0,true,[[3026,0,10.3177],[686,0,5.4642],[1451,0,6.30277]]],[[2475.02,2317.11,0],0,true,[[758,0,152.171],[2575,0,235.343],[1510,0,177.11]]], +[[5148.98,4958.18,0],0,false,[[3810,1,46.4302],[3697,1,258.882]]],[[2875.27,930.003,0],0,false,[[1273,0,158.951]]],[[2910.48,1856.6,0],0,false,[[1545,1,14.7032],[1373,1,5.13066]]],[[7249.2,4181.97,0],0,true,[[25,0,20.633],[800,0,18.4014],[1524,0,34.3052]]],[[6300.35,6859.77,0],0,false,[[1506,0,254.791]]], +[[5257.7,3372.2,0],0,false,[[1079,0,163.719],[3391,0,20.9297]]],[[476.428,1354.8,0],0,false,[[1064,0,47.6811],[1251,0,223.811]]],[[8113.58,6151.85,0],0,false,[[3635,0,160.584],[2205,0,108.521]]],[[1046.82,4296.19,0],0,false,[[1376,0,140.38],[3904,0,100.777]]],[[577.909,4427.04,0],0,true,[[1544,0,107.487],[1327,0,11.1428],[2931,0,8.68432]]], +[[1547.05,3988.86,0],0,false,[[3172,0,121.091],[3642,0,169.994]]],[[3406.29,6069.36,0],0,true,[[2600,0,54.7248],[1367,0,19.3725],[2652,0,15.2049],[2463,0,13.7316]]],[[7082.4,4143.48,0],0,false,[[3600,1,42.1952],[2460,1,133.362]]],[[2784.61,6142.63,0],0,true,[[292,0,14.0387],[1620,0,96.021],[1585,0,17.3603]]],[[4517.5,3192.47,0],0,false,[[625,1,5.78192],[286,2,4.50362]]], +[[1414.03,6768.42,0],0,false,[[1988,0,20.7741],[3822,0,115.603]]],[[1725.66,2392.37,0],0,true,[[1482,0,21.837],[1566,0,355.912],[1388,0,36.2137]]],[[6787.42,7252.04,0],0,false,[[3074,1,25.5067],[1091,1,93.0026]]],[[4666.79,3983.98,0],0,true,[[2791,0,178.025],[2333,1,14.7183],[3768,1,14.8665]]],[[527.443,3138.36,0],0,false,[[1514,0,32.8098],[1647,0,62.8145]]], +[[1838.75,4908.36,0],0,true,[[207,0,5.36506],[2701,0,66.3486],[2774,0,6.12853]]],[[4623.4,2956.43,0],0,true,[[2428,1,14.5205],[2621,1,70.7618],[3174,1,73.6558]]],[[1830.23,4668.25,0],0,true,[[2272,1,229.228],[599,1,11.1714],[2501,1,23.8972]]],[[4469.3,3102.66,0],0,false,[[1392,2,34.5319],[2112,2,31.3943]]],[[5485.04,6778,0],0,true,[[3587,1,25.6378],[1034,1,18.0224],[610,1,8.17568]]], +[[5577,4355.62,0],0,false,[[2018,1,27.2283],[1017,1,25.1186]]],[[2545.57,7416.43,0],0,false,[[1679,0,32.591],[1284,0,64.8977]]],[[4031.37,4132.9,0],0,true,[[3177,2,23.8721],[2477,2,18.3585],[1307,2,9.26916]]],[[588.576,4958.69,0],0,false,[[974,1,355.099],[2708,1,232.474]]],[[830.119,5231.28,0],0,false,[[1518,0,381.545],[1196,0,145.609]]], +[[5185.63,7129.84,0],0,false,[[1680,2,124.872],[2998,2,173.006]]],[[7656.38,7121.58,0],0,false,[[1745,0,67.3294]]],[[4369.89,2934.09,0],0,true,[[869,1,36.9612],[2194,1,16.666],[3615,1,26.6799]]],[[3483.37,7574.37,0],0,false,[[794,0,146.567]]],[[2017.34,7290.6,0],0,true,[[3740,1,131.669],[51,1,14.4649],[1800,1,19.4279]]], +[[3692.86,2609.65,0],0,false,[[1119,0,303.061],[1788,0,117.291]]],[[4089.66,3382.99,0],0,true,[[3732,1,25.9215],[2586,1,77.2987],[1179,1,11.1965]]],[[3832.57,5964.17,0],0,false,[[66,1,27.8377],[3807,1,189.641]]],[[2684.42,2757.67,0],0,false,[[1047,1,252.488],[374,1,229.38]]],[[354.16,4416.85,0],0,true,[[926,0,0.750435],[253,0,6.58581],[1559,0,10.4857],[586,0,6.16037]]], +[[5865.74,253.458,0],0,false,[[3387,0,105.65],[169,1,14.6785]]],[[4912.18,4103.79,0],0,true,[[130,0,64.3614],[3146,0,24.3602],[591,0,13.5396]]],[[3830.73,3632.89,0],0,true,[[1735,1,79.5941],[1108,1,35.582],[2697,1,17.758],[548,1,17.7571]]],[[3383.12,6686.77,0],0,true,[[2788,1,64.1374],[697,1,35.3778],[254,1,13.781]]],[[7378.84,6326.69,0],0,false,[[2099,0,35.08],[3175,0,58.4672]]], +[[3034.32,7387.29,0],0,true,[[2252,1,7.75693],[1574,1,179.101],[1821,1,14.4281],[3688,1,12.4873],[2911,1,6.79277]]],[[4908.43,2017.49,0],0,true,[[994,2,118.104],[566,2,99.3412],[3006,2,8.93951]]],[[5726.61,3245.47,0],0,true,[[3547,0,9.77143],[3138,0,306.256],[3330,0,21.086]]],[[5682.21,7703.27,0],0,false,[[1272,0,163.142]]],[[5865.92,7658.04,0],0,true,[[2526,0,21.2357],[902,0,18.9508],[1593,0,138.237]]], +[[1030.94,2187.08,0],0,false,[[2632,0,159.119]]],[[4090.66,5031.65,0],0,false,[[1495,0,127.612],[1140,0,172.585]]],[[5809.56,5950.33,0],0,true,[[2588,1,43.8635],[785,1,22.3761],[947,1,3.59973]]],[[4082.6,5339.32,0],0,false,[[3687,1,22.6621],[3737,1,42.6667]]],[[1553.34,534.848,0],0,true,[[1407,2,32.6652],[103,2,32.9882],[1476,2,4.84763],[1904,2,6.26496]]], +[[5731.87,3225.07,0],0,true,[[3519,0,335.431],[3322,0,21.086],[3547,0,12.3566]]],[[1348.15,1834.81,0],0,false,[[731,1,133.173],[1173,2,5.01793]]],[[4099.49,5813.53,0],0,false,[[3878,2,33.3931],[1646,2,26.8131]]],[[3560.25,695.484,0],0,false,[[3386,1,158.96],[2914,1,25.9269]]],[[4919.19,2657.03,0],0,true,[[3655,1,9.75315],[2996,1,230.564],[2086,1,6.99658]]], +[[5239.65,2904.64,0],0,true,[[3581,1,52.6972],[2500,1,25.0916],[2874,1,9.80316]]],[[3571.54,6593.31,0],0,true,[[1381,1,13.781],[2464,1,9.96707],[1141,1,1.90404],[484,1,12.9355]]],[[4033.28,4086.28,0],0,false,[[767,2,7.97924],[335,1,8.85074]]],[[7436.63,3120.82,0],0,false,[[2209,1,42.7402],[1225,1,4.19725]]],[[363.252,4718.27,0],0,true,[[2450,0,18.7798],[1343,0,0.749458],[245,0,19.4266],[334,0,16.0301]]], +[[5717.06,1895.18,0],0,false,[[1206,0,55.2973],[1688,0,80.0857]]],[[5756.62,2182.34,0],0,false,[[1969,1,153.393],[1176,1,76.231]]],[[5659.71,4431.04,0],0,true,[[90,1,21.4007],[2309,1,173.248],[3034,1,14.7348],[602,1,11.4906]]],[[7022.53,387.879,0],0,true,[[2479,0,13.3965],[80,0,83.3948],[3791,1,26.0886]]],[[7589.24,6499.97,0],0,true,[[2776,0,80.109],[3001,0,8.27026],[3005,0,17.2627]]], +[[1385.26,2322.33,0],0,false,[[3675,0,230.777],[3046,0,195.882]]],[[2304.14,1130.38,0],0,false,[[2856,0,179.905],[3472,0,257.582]]],[[3916.38,4574.69,0],0,false,[[3350,0,235.828],[3900,0,89.493]]],[[1025.15,1811,0],0,true,[[3460,1,7.02379],[2919,1,8.80061],[3787,2,8.30591]]],[[6088.3,899.781,0],0,true,[[479,0,125.419],[1282,0,14.3358],[1221,0,8.61356]]], +[[3742.56,4726.68,0],0,false,[[1878,0,368.557],[3347,0,235.828]]],[[4051.23,488.28,0],0,true,[[2823,0,142.839],[1070,0,211.692],[2001,0,110.616]]],[[5706.91,1842.54,0],0,false,[[1313,1,40.7093],[2920,1,181.092]]],[[7627.28,4437.03,0],0,true,[[1087,0,296.577],[3770,1,12.0039],[100,1,17.6051]]],[[646.573,46.4227,0],0,true,[[747,2,22.2092],[145,2,19.5067],[3646,2,12.6899]]], +[[7300.6,2590.19,0],0,true,[[37,0,9.25083],[1903,0,293.712],[2185,0,12.4055]]],[[5493.19,414.788,0],0,true,[[2611,0,20.485],[2314,0,201.296],[1578,0,255.889]]],[[2814.39,1211.16,0],0,true,[[10,2,17.0777],[42,2,72.3708],[23,2,14.4334],[2929,2,31.4199]]],[[5697.57,2874.2,0],0,false,[[1326,0,34.3004],[2341,0,145.337]]],[[879.68,4195.82,0],0,false,[[807,0,8.71164],[1376,0,77.3324]]], +[[6369.89,5445.05,0],0,false,[[3091,0,28.3098],[2637,0,10.1373]]],[[6239.76,937.248,0],0,false,[[3567,0,138.494],[2393,0,139.418]]],[[2914.19,4071.78,0],0,false,[[1964,0,53.3844],[989,0,150.579]]],[[1010.49,243.163,0],0,true,[[1118,0,15.1343],[841,2,13.4901],[3145,2,16.5776]]],[[3640.26,6641.12,0],0,false,[[454,0,172.66],[3200,0,32.7906]]], +[[2988.51,4325.81,0],0,true,[[682,0,11.7992],[1109,0,242.778],[326,0,17.1447]]],[[590.243,5982.39,0],0,false,[[2497,0,149.809],[462,0,143.111]]],[[5922.79,4868.3,0],0,true,[[3255,1,8.57497],[1478,0,64.0313],[2520,1,10.0675]]],[[849.183,8175.41,0],0,true,[[3766,1,299.014],[2465,1,21.6395],[60,1,15.5213]]],[[442.748,2012.76,0],0,false,[[973,0,78.4784],[439,0,20.1577]]], +[[4769.76,1097.68,0],0,true,[[3657,0,21.7181],[2949,0,25.0463],[1409,0,21.4278]]],[[3601.66,1956.93,0],0,true,[[2900,0,19.2507],[1297,0,18.0217],[2860,0,3.68932]]],[[2638.65,4424.08,0],0,false,[[1059,0,12.5497]]],[[3699.91,7022.27,0],0,true,[[2962,0,325.889],[1841,0,407.345],[2107,0,238.18]]],[[5668.95,2282.08,0],0,false,[[3531,0,74.4928]]], +[[4588.28,2333.47,0],0,true,[[1718,1,50.4838],[272,1,7.89893],[2014,1,13.7469]]],[[3965.45,5914.18,0],0,true,[[1255,1,78.3431],[2345,1,7.11738],[776,1,15.0877]]],[[820.172,1720.65,0],0,false,[[1251,0,286.83],[3457,0,60.9536]]],[[2891.93,4187.87,0],0,false,[[309,0,49.7467],[2218,0,11.996]]],[[5529.71,6470.12,0],0,false,[[3132,1,22.2171],[2172,1,93.8997]]], +[[2033.99,4079.94,0],0,false,[[3143,0,111.84]]],[[5073.56,5259.9,0],0,false,[[47,0,78.4717],[1936,1,5.45587]]],[[4370.56,2320.56,0],0,false,[[1528,0,9.5639],[256,0,9.5639]]],[[245.364,6060.96,0],0,false,[[2259,0,41.7963]]],[[4717.78,3469.19,0],0,false,[[3793,1,34.2746],[3173,1,58.7624]]], +[[6856.59,4360.69,0],0,true,[[3218,1,24.8228],[3444,1,22.4326],[1749,1,12.6443]]],[[3515.39,543.157,0],0,false,[[304,1,252.244],[3333,1,158.96]]],[[5776.69,240.917,0],0,false,[[3315,0,105.65]]],[[5083.29,6814.5,0],0,true,[[2741,1,17.8531],[1824,1,11.3844],[1329,1,10.6462]]],[[4946.26,4610.82,0],0,true,[[3501,0,49.1241],[1386,1,8.95197],[1650,0,13.5318],[1842,1,24.7054]]], +[[4158.09,6989.58,0],0,false,[[976,1,62.6555],[612,1,100.926]]],[[5237.1,3368.53,0],0,true,[[3280,0,20.9297],[3082,0,83.9539],[1352,0,134.566]]],[[4920.64,4616.02,0],0,false,[[1386,1,20.8003],[1940,1,151.127]]],[[5206.94,7682.48,0],0,false,[[1031,0,36.0252],[29,0,284.445]]],[[416.664,3706.17,0],0,false,[[1422,0,94.4492],[2592,0,180.366]]], +[[4476.76,2962.19,0],0,false,[[2806,1,42.1644]]],[[5369.27,7702.92,0],0,false,[[827,1,18.0382],[1086,1,210.736]]],[[5450.43,1331.66,0],0,false,[[3036,1,69.1084],[2045,1,249.156]]],[[2373.5,2915.51,0],0,false,[[951,0,135.873],[433,0,230.532]]],[[6082.42,6185.29,0],0,false,[[651,0,6.27033],[3761,0,172.818]]], +[[4140.48,1650.66,0],0,true,[[3038,0,2.87272],[2346,0,247.457],[152,0,10.879]]],[[4788.91,81.2375,0],0,true,[[1331,1,154.482],[564,1,16.1843],[183,1,11.5318]]],[[2965.84,932.202,0],0,false,[[3081,0,150.341],[310,0,101.356]]],[[2752.43,4523.57,0],0,false,[[3799,0,25.1133],[3225,0,94.4366]]],[[4944.2,1188.87,0],0,false,[[1044,1,308.451],[1603,1,132.309]]], +[[8088.27,1268.72,0],0,true,[[1204,0,10.8411],[1762,0,23.4304],[757,0,18.7667]]],[[4890.82,888.176,0],0,true,[[1773,1,27.9392],[1175,1,68.138],[1349,1,9.74789]]],[[4778.36,4319.55,0],0,true,[[1818,0,23.4986],[644,0,2.9635],[3244,0,5.45867]]],[[4332.39,2973.98,0],0,false,[[2984,1,20.1426],[1213,1,14.6749]]],[[3681.59,1124.88,0],0,false,[[1630,0,39.3614],[3882,0,14.8938]]], +[[2094.31,7500.44,0],0,true,[[906,0,25.7641],[3781,0,80.671],[50,0,43.7215]]],[[3324.6,7694.52,0],0,false,[[2607,1,190.26],[3532,1,179.621]]],[[2033.03,5701.63,0],0,false,[[3561,0,34.1464],[1362,1,12.3188]]],[[2149.34,4591.8,0],0,false,[[2581,0,144.227],[806,0,40.7691]]],[[663.997,2008.89,0],0,false,[[1771,0,180.494],[2811,0,123.807]]], +[[4386.13,4915.64,0],0,false,[[3039,1,3.89815],[2777,0,321.202]]],[[4686.94,3243.12,0],0,false,[[2434,1,34.8239],[661,1,21.9997]]],[[806.152,6091.47,0],0,false,[[3663,1,60.3721],[1440,1,201.277]]],[[4224.48,2895.04,0],0,true,[[2335,1,6.20392],[765,1,19.8359],[121,1,8.43048]]],[[155.338,7612.72,0],0,true,[[3826,0,12.9144],[659,0,17.7907],[3899,0,14.1445]]], +[[274.449,7370.62,0],0,true,[[1871,0,20.0825],[2556,0,65.2534],[1568,0,8.69702]]],[[6630.61,2903.32,0],0,true,[[3771,1,7.80484],[2979,0,187.477],[3632,1,13.199]]],[[1711.21,5861.23,0],0,false,[[468,0,142.873],[709,0,13.5119]]],[[4889.58,6951.05,0],0,true,[[2752,0,5.49051],[3809,0,142.793],[2206,0,6.26325]]],[[4559.51,3271.66,0],0,false,[[3196,1,49.5004],[924,1,33.8937]]], +[[344.212,4508.72,0],0,true,[[624,0,10.5838],[1515,0,14.8686],[1869,0,0.752986],[3242,0,15.5845]]],[[4181.24,2037.6,0],0,false,[[3160,0,124.206],[1276,0,147.909]]],[[2848.62,5945.85,0],0,false,[[469,0,141.682],[1585,0,199.035]]],[[3583.3,2384.23,0],0,false,[[1336,0,70.4592],[3719,1,6.11133]]],[[7082.81,5581.1,0],0,false,[[3033,0,25.0679],[750,0,41.9477]]], +[[2813.2,3656.63,0],0,true,[[1360,0,15.322],[1750,0,150.936],[105,1,18.5651],[3435,1,11.6275]]],[[6590.35,3646.09,0],0,true,[[3541,0,87.0602],[1164,0,16.772],[3165,0,13.169],[2804,0,24.9208]]],[[2135.79,3845.81,0],0,false,[[2691,0,125.166],[3729,0,157.296]]],[[1378.44,7473.47,0],0,false,[[305,1,135.911],[822,1,199.228]]],[[139.091,4678.6,0],0,false,[[795,0,200.045],[3730,0,168.867]]], +[[2816.72,3667.71,0],0,true,[[3627,1,89.9937],[3430,1,11.6275],[105,1,27.2789],[1360,1,15.9191]]],[[1168.77,2083.1,0],0,true,[[1645,1,16.3336],[3447,1,298.851],[460,1,16.6428],[2632,1,17.8479]]],[[5281.57,7484.92,0],0,true,[[2433,2,67.9798],[3131,2,35.0286],[36,2,16.726]]],[[2805.58,1966.82,0],0,true,[[257,1,27.522],[3135,1,30.3731],[3193,1,16.7969]]],[[2128.51,5205.62,0],0,false,[[72,1,106.459],[2285,1,259.672]]], +[[3629.03,6670.22,0],0,false,[[1973,1,27.4458],[3648,1,25.454]]],[[8003.62,7653.5,0],0,false,[[3258,1,94.075],[2675,1,31.3473]]],[[7549.66,6507.52,0],0,true,[[53,1,30.4975],[1879,1,7.25634],[1872,1,13.2029]]],[[5178.35,1978.79,0],0,false,[[1736,1,104.706],[1189,1,90.1123]]],[[6834.22,4359.18,0],0,true,[[3385,1,22.4326],[1357,1,251.711],[1749,1,10.5854]]], +[[378.996,1585.74,0],0,false,[[1971,0,265.485],[1989,0,16.0809]]],[[336.189,1566.47,0],0,false,[[1989,0,30.9348],[3087,0,208.527]]],[[1039.32,1816.47,0],0,true,[[3436,1,298.851],[2919,1,6.6957],[1757,1,7.07044]]],[[2963.5,1896.29,0],0,true,[[3757,1,11.4637],[2006,1,8.65578],[500,1,15.104]]],[[5984.74,5440.44,0],0,true,[[131,0,12.6937],[2753,0,105.438],[476,0,10.3048]]], +[[2680.38,2484.39,0],0,false,[[3158,0,46.8034]]],[[2111.64,6298.99,0],0,false,[[3201,0,55.8334],[2293,1,12.3364]]],[[4225.93,7486.66,0.000305176],0,false,[[1220,0,14.6755]]],[[7813.25,6503.71,0],0,true,[[244,0,73.0535],[2058,0,5.5411],[3693,0,6.4073]]],[[1854.94,894.95,0],0,true,[[1060,0,18.4429],[3,0,177.121],[2407,0,9.3587]]], +[[4932.77,7328.61,0],0,false,[[2280,0,299.939]]],[[7205.6,857.131,0],0,false,[[3238,0,143.276],[233,0,42.6052]]],[[875.103,1746.54,0],0,false,[[3377,0,60.9536],[226,0,21.8847]]],[[881.105,4054.26,0],0,false,[[1492,0,47.5299]]],[[3990.78,8066.12,0],0,true,[[1274,0,28.1811],[1210,0,17.6642],[3576,0,115.746],[1330,0,62.0669]]], +[[1018.75,1808.12,0],0,false,[[3348,1,7.02379],[3787,2,1.63236]]],[[7051.65,4347.46,0],0,true,[[3606,1,10.3008],[1787,1,146.462],[1008,1,14.3257]]],[[1933.37,7411.59,0],0,false,[[3498,0,46.4584],[1088,0,149.277]]],[[1302.89,3068.2,0],0,true,[[41,1,11.3837],[3053,1,286.962],[3814,1,26.3579]]],[[5499.45,2145.69,0],0,false,[[1688,0,253.465],[1921,0,83.2656]]], +[[7732.82,7836.82,0],0,false,[[1608,1,75.9815],[866,1,61.0283]]],[[5310.95,35.475,0],0,true,[[302,1,19.646],[2097,1,135.276],[2291,1,6.22156]]],[[5527.81,4935.24,0],0,false,[[1138,0,304.231],[1776,0,22.7946]]],[[2771.62,6920.6,0],0,false,[[2742,1,148.542],[1889,1,133.079]]],[[7414.08,6862.74,0],0,false,[[46,1,244.684],[3221,1,231.453]]], +[[4071.57,4476,0],0,true,[[3776,2,108.958],[3152,2,20.8324],[1552,2,11.7826]]],[[972.236,3465.51,0],0,false,[[3692,1,6.42274],[1659,1,6.42274]]],[[2451.59,1340.3,0],0,false,[[3346,0,257.582],[210,0,330.132]]],[[5045.8,4134.17,0],0,false,[[1913,0,20.0015],[2859,0,19.4134]]],[[4995.68,2765.07,0],0,true,[[1231,0,293.132],[1448,1,5.24267],[2657,1,11.8787]]], +[[3179.28,3196.39,0],0,true,[[3714,1,13.7114],[3702,1,290.752],[1523,1,22.4979]]],[[2550.73,1665.91,0],0,true,[[210,0,20.397],[2398,1,9.11653],[3114,1,13.7873]]],[[6049.77,7806,0],0,true,[[2033,0,26.9278],[1096,0,53.0212],[1899,1,25.0402],[2827,1,14.6382]]],[[2489.44,386.6,0],0,false,[[102,0,49.6217],[2211,0,303.997]]],[[3419.57,5870.83,0],0,false,[[2463,0,189.958],[3607,0,286.402]]], +[[6508.21,2245.89,0],0,true,[[3513,1,225.47],[3065,1,20.9239],[3597,1,10.3742]]],[[6757.68,2916.02,0],0,true,[[1263,1,17.371],[398,0,264.338],[3621,1,5.031]]],[[2597.34,4289.09,0],0,false,[[182,0,11.1947],[1262,0,114.951]]],[[4972.37,1977.13,0],0,false,[[1716,1,23.5494],[3124,1,25.5714]]],[[563.631,5824.81,0],0,true,[[3214,0,28.3778],[2497,0,14.08],[3250,0,6.76427]]], +[[2777.15,2101.96,0],0,true,[[2102,1,400.654],[3176,1,127.629],[3116,1,4.31734]]],[[2881.59,4131.02,0],0,false,[[1494,0,30.95]]],[[8012.58,1157.07,0],0,true,[[3624,0,27.128],[996,0,349.807],[3248,0,16.5825]]],[[5191.75,393.945,0],0,true,[[1516,0,3.90404],[1741,0,7.9239],[1106,0,0.398322]]],[[326.436,4835.53,0],0,true,[[3863,0,216.742],[392,0,7.39679],[3656,0,6.25135]]], +[[6054.47,4312.49,0],0,false,[[167,2,4.349],[1885,1,141.207]]],[[1004.38,1799.53,-1.4597],0,false,[[3787,2,15.585],[3195,2,4.45055]]],[[4785.75,3733.37,0],0,true,[[1887,1,17.5558],[1725,1,25.9424],[552,1,7.6805]]],[[2012.2,5714.78,0],0,true,[[367,1,27.0845],[3913,1,32.2602],[2915,1,17.0302],[1362,1,12.3188]]],[[2226.74,895.388,0],0,true,[[2146,2,31.1449],[1236,2,283.142],[1328,2,13.984],[1875,2,19.5968]]], +[[2855.49,4571.17,0],0,false,[[127,1,8.15871],[769,0,78.9088]]],[[4844.29,4073.62,0],0,false,[[1922,0,58.6068],[3842,0,44.0632]]],[[2389.01,3223.72,0],0,true,[[657,1,94.1067],[3511,1,25.6655],[2204,1,15.8125],[2357,1,17.0166]]],[[1970.39,7439.28,0],0,false,[[3462,0,46.4584],[2399,1,11.5752]]],[[8100.62,5357.41,0],0,true,[[2542,0,26.1],[3703,0,71.5018],[193,0,14.3256]]], +[[2625.84,791.643,0],0,true,[[3049,1,388.335],[3610,1,24.6909],[2966,1,11.0335]]],[[4922.82,4567.71,0],0,false,[[18,0,116.241],[3389,0,49.1241]]],[[7698.87,3912.45,0],0,true,[[2779,0,263.658],[1567,0,16.1622],[904,0,8.20686]]],[[4776.09,3463.9,0],0,false,[[878,0,20.8395]]],[[1610.54,3530.26,0],0,true,[[2324,0,5.43503],[1134,0,342.134],[1950,0,6.09083]]], +[[4402.86,2816.74,0],0,true,[[1862,2,24.0614],[3805,2,9.09614],[2391,2,4.58555]]],[[6195.88,1495.39,0],0,true,[[1408,0,11.3469],[1792,0,307.835],[2414,0,6.64453]]],[[5777.94,1837.46,0],0,true,[[3844,0,27.1016],[1206,0,28.8548],[833,1,10.9939]]],[[5609.73,7669.15,0],0,false,[[3609,0,246.918]]],[[5558.66,4366.59,0],0,false,[[1315,1,19.3189],[3180,1,25.1151]]], +[[890.219,6090.63,0],0,true,[[2743,0,15.7468],[872,0,51.3186],[353,1,14.1273],[3115,1,9.09051]]],[[2363.86,3228.71,0],0,true,[[2357,1,20.2999],[2255,1,155.416],[3497,1,25.6655],[2204,1,15.4401]]],[[7742.96,6552.71,0],0,false,[[2597,0,75.3935],[895,0,119.194]]],[[6470.62,2465.77,0],0,true,[[1553,1,28.348],[3480,1,225.47],[2188,1,16.8239]]],[[3270.38,2760.01,0],0,true,[[113,0,72.331],[503,0,90.9835],[3705,0,19.0548]]], +[[5266.76,7390.54,0],0,false,[[3131,2,60.8814],[260,2,30.0399]]],[[3914.77,1350.11,0],0,true,[[3169,0,111.435],[1238,0,8.92343],[995,0,5.53355]]],[[8166.71,6272.37,0],0,true,[[2865,1,27.3773],[5,1,181.405],[3103,1,12.3731]]],[[4002.43,4273.08,0],0,false,[[3540,1,53.0412],[1685,1,73.8806]]],[[5800.63,2898.65,0],0,false,[[1383,0,13.7194],[3330,0,335.431]]], +[[778.779,1794.7,0],0,true,[[2302,1,363.132],[3041,1,30.0327],[603,1,13.0181]]],[[1119.65,5685.3,0],0,true,[[3530,0,12.2806],[1028,0,17.2638],[2578,0,13.2844]]],[[2778.58,3175.42,0],0,true,[[2422,1,42.7069],[116,1,24.2793],[1426,1,21.0619]]],[[5331.39,4062.77,0],0,false,[[718,0,273.536],[1747,0,211.205]]],[[4044.57,4182.18,0],0,true,[[1471,1,19.9155],[2151,1,59.0985],[2013,2,10.0857]]], +[[7576.13,8122.25,0],0,false,[[2846,1,91.1604],[650,1,59.8793]]],[[4033.94,5429.51,0],0,false,[[909,1,11.7528],[1607,2,12.69]]],[[1620.91,8027.34,0],0,false,[[1956,0,179.343],[935,0,7.34492]]],[[4208.74,3931.71,0],0,false,[[2552,0,66.6435],[369,0,27.643]]],[[6775.21,1087.35,0],0,true,[[465,0,20.2584],[3171,0,24.4684],[188,0,11.3137]]], +[[1110.23,5693.15,0],0,false,[[1601,0,33.6242],[3521,0,12.2806]]],[[5650.66,2210.65,0],0,true,[[3871,1,17.7898],[3374,0,74.4928],[2515,1,16.2975],[2413,0,20.923]]],[[3427.65,7810.38,0],0,false,[[3411,1,179.621],[1270,1,263.557]]],[[138.556,7575.22,0],0,false,[[3002,0,125.94],[3899,0,27.59]]],[[8077.06,5346.25,0],0,false,[[32,0,38.467],[193,0,12.102]]], +[[2837.96,4444.3,0],0,true,[[701,1,16.3445],[2885,1,27.2838],[3816,1,27.44],[109,1,18.957]]],[[366.29,5148.65,0],0,false,[[2292,0,106.03],[1518,0,119.268]]],[[4501.36,6277.73,0],0,false,[[1248,0,73.2817],[3664,2,13.829]]],[[755.827,4700.85,0],0,false,[[2200,0,234.502]]],[[7534.5,2082.88,0],0,false,[[577,0,394.943],[2267,0,208.253]]], +[[4040.06,4305.5,0],0,false,[[1153,2,8.13828],[3518,1,53.0412]]],[[6617.71,3563.52,0],0,true,[[1708,0,18.2275],[3431,0,87.0602],[2289,0,9.50827]]],[[4521.1,3217.92,0],0,false,[[2921,2,22.7895],[286,2,28.2748]]],[[7411.82,1152.66,0],0,false,[[1743,0,133.566],[1007,0,37.7032]]],[[4946.05,2003.89,0],0,true,[[3019,1,17.6664],[3828,1,18.2134],[1586,1,6.59197]]], +[[2576.01,3923.78,0],0,false,[[3660,0,44.0853],[55,0,129.579]]],[[6469.81,2532.09,0],0,true,[[2728,1,114.802],[251,1,19.72],[174,1,12.8203]]],[[5732.13,3237.41,0],0,true,[[3322,0,9.77143],[3012,0,242.371],[3330,0,12.3566]]],[[2045.67,5517.81,0],0,false,[[360,0,327.133],[593,0,86.7988]]],[[5469.85,4491.14,0],0,true,[[2309,1,25.9005],[537,1,377.622],[522,1,10.8426]]], +[[5500.58,1256.49,0],0,true,[[120,0,12.2582],[699,0,10.0946],[427,0,3.7046],[2301,1,12.6293],[297,0,6.21284]]],[[5181.46,6209.98,0],0,true,[[3825,0,18.3704],[886,0,221.875],[925,0,10.497]]],[[3238.01,859.861,0],0,true,[[1507,0,5.06608],[825,0,87.2301],[2090,0,5.20289]]],[[1868.06,1424.86,0],0,false,[[2166,0,9.92437],[2374,0,44.6038]]],[[658.743,6657.48,0],0,true,[[3710,0,117.072],[2342,0,218.79],[863,0,58.2607]]], +[[1410.22,6740.51,0],0,true,[[2587,1,21.7034],[3096,1,261.139],[1988,1,8.66223]]],[[5469.49,4293.86,0],0,false,[[2489,1,56.4272],[2514,1,249.828]]],[[6957.1,2934.18,0],0,true,[[873,0,125.167],[166,1,9.08884],[205,1,9.53348]]],[[5437.7,3412.68,0],0,true,[[1341,0,188.381],[1079,0,20.9043],[3668,0,5.31413]]],[[7060.56,3788.66,0],0,false,[[2460,1,223.172],[2445,1,5.1416]]], +[[3190.88,7330.71,0],0,false,[[2168,0,82.7247],[2935,0,122.957]]],[[2064.44,5688.24,0],0,false,[[3412,0,34.1464],[3243,0,126.357]]],[[5688.4,432.865,0],0,false,[[2139,0,79.5464],[2314,0,44.2209]]],[[2.87673,5053.36,0],0,false,[[2053,0,73.9019]]],[[4586.76,2780.65,0],0,true,[[2349,1,3.97535],[2936,1,93.674],[704,1,10.525]]], +[[234.17,6105.8,0],0,true,[[988,1,26.5466],[453,1,28.2208],[2259,1,11.8764],[3137,1,11.778]]],[[748.112,7500.91,0],0,false,[[1537,0,68.2484],[517,0,188.592]]],[[6298.98,816.745,0],0,false,[[2595,0,45.6786],[3361,0,138.494]]],[[5516.04,4337.73,0],0,true,[[383,1,12.8785],[423,1,9.34378],[2489,1,7.72982],[628,1,4.60891]]],[[1545.15,5739.45,0],0,false,[[2421,0,163.556],[3008,0,230.139]]], +[[4418.5,3022.49,0],0,false,[[485,2,3.46017],[61,1,40.8796]]],[[4226.94,5138.8,0],0,false,[[2372,1,98.8389],[2214,1,123.351]]],[[4067.62,5331.59,0],0,true,[[24,2,18.995],[1580,2,20.7428],[1465,2,8.2877]]],[[3987.73,5372.07,0],0,false,[[1214,1,24.7923],[3590,1,295.214]]],[[4043.64,4245.34,0],0,false,[[1670,2,55.4577],[2013,2,56.3212]]], +[[3713.34,6289.33,0],0,true,[[3149,0,21.5471],[3585,1,7.52626],[805,1,12.9227]]],[[3945.02,8171.46,0],0,false,[[3459,0,115.746]]],[[4056.08,3293.75,0],0,false,[[3628,0,45.9944],[1994,0,61.4191]]],[[4540.91,3322.33,0],0,false,[[2220,2,204.163],[1067,2,42.5344]]],[[5877.84,1574.6,0],0,true,[[2356,0,109.885],[1613,0,21.4744],[580,0,11.4926]]], +[[1304.12,4280.32,0],0,true,[[380,0,16.4863],[2362,0,160.981],[2661,0,25.5876]]],[[5290.76,2917.34,0],0,false,[[2565,1,28.0614],[3335,1,52.6972]]],[[4920.24,2625.41,0],0,true,[[3655,1,22.5042],[1570,1,31.9673],[1444,1,17.4248]]],[[7616.62,1306.7,0],0,true,[[843,0,233.753],[3892,0,16.7655],[554,0,9.94285]]],[[2650.65,7665.92,0],0,false,[[1043,0,75.1864],[2432,0,20.2257]]], +[[3714.78,6281.95,0],0,true,[[1652,1,46.6398],[805,1,20.2838],[3575,1,7.52626]]],[[3272.53,3087.74,0],0,false,[[2363,0,241.789],[2681,0,149.712]]],[[5500.32,6758.03,0],0,false,[[2617,1,68.5208],[3299,1,25.6378]]],[[865.276,6067.52,0],0,false,[[242,0,18.9589],[1190,0,10.7203]]],[[5150.61,3361.06,0],0,true,[[3082,0,9.27537],[2722,0,18.9858],[2903,0,20.2351]]], +[[3799.67,5145.03,0],0,true,[[3573,1,295.214],[2239,1,6.5815],[106,1,15.0859],[2019,1,7.37921]]],[[6658.02,347.655,0],0,false,[[1110,0,14.9996],[2690,0,2.7938]]],[[5885.85,1055.64,0],0,false,[[1137,0,177.726],[479,0,131.796]]],[[8099.39,6517.03,0],0,false,[[472,0,73.377],[482,0,28.9212]]],[[4814.81,1079.51,0],0,true,[[2095,0,100.647],[3657,0,26.8628],[546,0,17.2516]]], +[[2831.86,1249.93,0],0,true,[[10,1,28.4684],[3069,1,5.8939],[2392,1,13.6583]]],[[3655.02,1102.17,0],0,false,[[1151,0,28.7987],[1584,0,113.682]]],[[6509,2235.58,0],0,true,[[3065,1,11.3813],[143,0,246.588],[3480,1,10.3742]]],[[4054.13,5545.34,0],0,true,[[2025,2,163.529],[2577,2,25.7572],[1351,2,11.5288]]],[[4235.56,7002.66,0],0,false,[[1156,0,57.7441],[976,1,16.4629]]], +[[7086.33,4185.45,0],0,true,[[2538,1,14.3429],[3287,1,42.1952],[3007,1,10.6014],[1787,1,20.4277]]],[[1500.59,3336,0],0,true,[[3854,1,53.1794],[1144,1,9.52435],[1403,1,19.3709]]],[[5840.06,7620.91,0],0,false,[[902,0,26.3584],[3129,0,200.328]]],[[411.885,1849.4,0],0,true,[[1706,1,64.2357],[2302,1,10.3051],[727,1,3.42587],[1971,1,6.73831]]],[[3962.65,2574.33,-0.0399323],0,false,[[2461,2,8.68949],[2089,2,15.6]]], +[[3786.89,5959.01,0],0,false,[[2786,0,63.0146],[2470,0,22.3668]]],[[7045.88,4355.99,0],0,true,[[3461,1,10.3008],[691,0,18.2486],[1008,1,5.37275]]],[[3452.99,5586.73,0],0,false,[[3479,0,286.402],[2783,0,57.924]]],[[1922.77,2833.34,0],0,true,[[3886,0,220.826],[1616,0,27.8813],[2171,0,24.4417]]],[[5369.1,7685.75,0],0,true,[[3862,0,5.50043],[3508,0,246.918],[827,1,5.14428]]], +[[2636.76,813.751,0],0,true,[[3500,1,24.6909],[110,1,28.0085],[2966,1,14.3358]]],[[4185.49,4356.54,0],0,false,[[1674,1,35.7569],[2308,1,26.0163]]],[[1261.62,7930.96,0],0,false,[[184,0,70.1407],[2662,0,22.9927]]],[[6121.11,1308.78,0],0,true,[[3219,1,13.3154],[349,1,105.296],[2553,1,9.9611]]],[[412.335,887.369,0],0,true,[[689,1,221.603],[1089,1,19.1993],[2957,1,9.39782]]], +[[4370.57,2958.99,0],0,true,[[3307,1,26.6799],[1655,1,32.8832],[668,1,16.599]]],[[2871.09,1241.89,0],0,true,[[320,2,154.642],[2929,2,33.0745],[308,2,21.0674]]],[[1025.52,3839.96,0],0,true,[[1402,0,112.415],[2389,0,11.2311],[1916,0,24.7152],[1152,0,22.9985]]],[[5862.65,308.598,0],0,true,[[169,1,41.2402],[1986,1,24.6073],[1931,1,9.3868]]],[[1400.65,5955.67,0],0,false,[[2039,1,139.704],[2269,1,57.0762]]], +[[6758.29,954.673,0],0,true,[[2947,1,13.8766],[188,0,131.988],[3756,0,9.44561],[1693,1,17.4557]]],[[6754.33,2912.27,0],0,true,[[1263,1,20.746],[3632,1,111.251],[3481,1,5.031]]],[[8186.74,2135.94,0],0,false,[[1606,0,72.6535]]],[[7714.36,655.649,0],0,false,[[2792,0,117.776],[2866,0,62.3416]]],[[8011.75,1184.16,0],0,true,[[2824,0,266.185],[3487,0,27.128],[3248,0,11.302]]], +[[7481.92,6367.79,0],0,false,[[3175,0,53.1724],[914,0,50.8256]]],[[3740.62,980.4,0],0,true,[[3681,1,5.24081],[705,0,5.15811],[3063,1,6.00043]]],[[2789.76,3753.47,0],0,false,[[2899,1,144.624],[3435,1,89.9937]]],[[4093.92,3289.24,0],0,false,[[1572,1,7.6271],[3577,0,45.9944]]],[[280.498,8022.75,0],0,true,[[123,0,168.677],[1165,0,180.601],[975,0,72.4414]]], +[[7483.41,621.021,0],0,false,[[1337,0,231.501],[2792,0,129.406]]],[[1541.75,6859.55,0],0,false,[[2733,0,42.3795],[1195,1,4.65427]]],[[6643.68,2901.52,0],0,true,[[3621,1,111.251],[3771,1,20.0225],[3421,1,13.199]]],[[1353.82,2144.03,0],0,false,[[3088,0,169.327],[461,0,78.0256]]],[[8187.56,4986.49,0],0,false,[[1077,0,70.2996]]], +[[7983.26,6086.83,0],0,false,[[2517,0,271.988],[3282,0,160.584]]],[[6840.63,2034.52,0],0,true,[[1789,0,13.2921],[875,0,320.56],[2513,0,14.286]]],[[4867.73,6630.63,0],0,false,[[2546,2,246.777],[2833,2,98.6175]]],[[8044.14,5359.8,0],0,false,[[1405,0,47.1545],[2542,0,30.5959]]],[[7791.39,675.457,0],0,false,[[2995,0,35.3884],[1041,0,57.2653]]], +[[4000.36,4473.63,0],0,true,[[1472,0,55.7652],[414,0,31.8039],[1552,0,66.8228]]],[[3103.62,6864.63,0],0,false,[[1502,1,153.431],[2933,1,109.313]]],[[1391.17,4010.32,0],0,false,[[3285,0,169.994],[2718,0,107.178]]],[[586.083,4405.28,0],0,true,[[2219,0,72.93],[1327,0,17.3533],[2931,0,15.768]]],[[4013.94,4685.84,0],0,false,[[1140,0,185.583],[2504,0,89.6141]]], +[[3302.9,6442.11,0],0,false,[[1435,0,337.306],[239,0,82.2295]]],[[636.998,38.0955,0],0,true,[[523,0,60.1699],[145,2,7.72425],[3354,2,12.6899]]],[[2853.94,3225.89,0],0,true,[[2232,0,0.615165],[1345,0,20.4538],[1340,0,12.1374],[1895,0,21.1953],[890,0,21.1988]]],[[3605.08,6678.51,0],0,true,[[3440,1,25.454],[2580,1,17.9054],[3685,1,4.99107]]],[[7549.31,1126.67,0],0,false,[[2571,0,163.26],[2496,0,11.9788]]], +[[5697.6,382.145,0],0,false,[[2314,0,18.5814],[1827,0,148.87]]],[[1847.08,4895.96,0],0,false,[[1132,0,5.26755],[1354,0,232.235]]],[[4453.71,7893.38,0],0,false,[[971,0,94.662]]],[[4524.14,2284.57,0],0,false,[[179,0,33.9173]]],[[8187.71,3070.66,0],0,false,[[672,1,322.989]]], +[[4922.35,2647.8,0],0,true,[[2086,1,12.4076],[3582,1,22.5042],[3334,1,9.75315]]],[[321.603,4831.58,0],0,true,[[3730,0,104.239],[392,0,4.1319],[3489,0,6.25135]]],[[4789.75,1089.19,0],0,false,[[3594,0,26.8628],[3370,0,21.7181]]],[[2857.99,2550.12,0],0,false,[[604,0,112.246],[3679,0,129.165]]],[[7862.8,7808.98,0],0,true,[[1997,1,19.2319],[3057,1,21.0089],[3263,1,6.48056],[2729,1,7.18058]]], +[[2572.58,3879.83,0],0,false,[[1833,0,19.1073],[3545,0,44.0853]]],[[6726.77,6560.55,0],0,false,[[336,1,141.948],[2201,1,267.367]]],[[3403.82,6701.25,0],0,false,[[2390,1,22.6042],[254,1,28.2764]]],[[865.112,6078.49,0],0,true,[[2198,1,15.6236],[3417,1,60.3721],[1190,1,9.28356]]],[[4494.21,6265.9,0],0,true,[[1513,2,26.3406],[276,2,181.068],[3537,2,13.829]]], +[[5072.7,3893.06,0],0,false,[[2132,0,205.668],[2676,0,15.359]]],[[2054.63,7300.41,0],0,true,[[1800,1,19.1613],[541,1,84.2501],[271,1,14.1322]]],[[4098.39,4161.53,0],0,true,[[3235,1,26.4036],[2151,1,11.9237],[3866,1,25.535]]],[[5441.98,3415.82,0],0,false,[[3558,0,5.31413],[3128,0,66.4846]]],[[4798.15,5489.33,0],0,false,[[1843,0,133.15],[694,0,135.139]]], +[[4458.8,4767.24,0],0,true,[[252,1,26.6571],[492,1,45.4106],[1615,1,6.7162],[467,1,11.4771]]],[[2521.19,100.474,0],0,false,[[452,0,74.6519],[3184,0,17.4487]]],[[7001.62,3776.47,0],0,false,[[2256,0,121.119],[2961,0,59.166]]],[[4295.3,6074.59,0],0,true,[[1025,2,57.8075],[837,2,19.5006],[2230,2,12.4432]]],[[6471.59,4218.52,0],0,true,[[15,0,134.153],[1855,0,9.53598],[2589,0,11.8073]]], +[[1156.19,2318.61,0],0,false,[[1758,1,8.14453],[3345,0,230.777]]],[[1740.39,7164.27,0],0,false,[[761,0,12.6383]]],[[7493.69,5835.98,0],0,false,[[598,0,208.764],[748,0,25.711]]],[[5983.61,4903.37,0],0,false,[[1832,0,50.795]]],[[2738.07,2536.17,0],0,true,[[3658,0,129.165],[1100,0,18.3034],[374,1,18.255]]], +[[3549.46,2901.05,0],0,false,[[2352,0,216.024],[1577,0,220.455]]],[[3737.15,984.321,0],0,true,[[3063,1,10.1008],[1798,1,54.6942],[3626,1,5.24081],[705,1,9.54022]]],[[7702.95,6460.69,0],0,true,[[3005,0,103.452],[1147,0,12.782],[2409,0,15.2566]]],[[1272.68,7949.35,0],0,false,[[225,0,66.1096]]],[[6080.08,4309.53,0],0,false,[[532,1,105.705],[2536,2,6.279]]], +[[3600.12,6678.11,0],0,false,[[231,0,13.1093],[3648,1,4.99107]]],[[7535.53,5929.19,0],0,false,[[748,0,123.847]]],[[4068.67,5357.18,0],0,false,[[1042,1,5.73412],[3328,1,22.6621]]],[[3024.37,7379.74,0],0,true,[[2706,0,246.893],[2911,0,10.2973],[3320,1,12.4873]]],[[7842.13,7828.76,0],0,false,[[2968,0,73.1722],[2729,0,21.8804]]], +[[554.67,8175.97,0],0,true,[[2761,0,13.2083],[300,1,18.6553],[3906,0,22.418],[3766,1,7.61507]]],[[2843.15,4417.88,0],0,false,[[2519,0,10.299],[2885,1,2.86725]]],[[966.738,3462.19,0],0,false,[[3224,0,187.442],[3471,1,6.42274],[787,0,9.88703]]],[[7814.38,6510.02,0],0,true,[[3453,0,6.4073],[2973,0,7.33737],[2058,0,2.82381]]],[[451.569,5523.25,0],0,false,[[3808,0,41.1604],[3214,0,301.141]]], +[[3434.36,2344.64,0],0,true,[[1919,0,8.29842],[340,0,302.398],[2545,0,7.56609]]],[[6519.88,5684.42,0],0,false,[[359,0,247.124],[502,0,21.9933]]],[[5312.25,5143.13,0],0,false,[[3275,1,258.882],[739,1,66.2928]]],[[5892.72,7894.83,0],0,false,[[2827,1,173.13],[2876,1,108.098]]],[[6936.54,1054.21,0],0,true,[[1728,0,181.25],[1004,0,15.9334],[135,0,15.0957],[3894,0,24.4425]]], +[[6493.97,2078.22,0],0,false,[[6,0,23.6219],[1663,0,221.186]]],[[6505,3390.93,0],0,false,[[3896,0,74.518],[2319,0,117.835]]],[[2893.94,3172,0],0,false,[[3475,1,290.752],[202,1,24.9739]]],[[8166.38,5384.34,0],0,true,[[3499,0,71.5018],[155,0,9.63846],[874,0,15.2677]]],[[2844.6,7022.89,0],0,true,[[1490,0,70.0372],[984,0,30.9451],[970,0,36.4361]]], +[[3267.01,2748.62,0],0,false,[[3514,0,19.0548],[1681,0,79.8141]]],[[3794.07,3515.93,5.1396],0,true,[[1561,1,15.8407],[1489,1,18.1751],[3734,1,11.0181],[1223,1,11.8022]]],[[6450.39,2057.12,0],0,true,[[1501,1,2.76548],[322,0,8.90612],[2261,1,6.9157]]],[[4082.79,3494,0],0,false,[[2167,1,8.37276],[3833,0,139.925]]],[[3551.49,6581.34,0],0,true,[[2543,1,21.512],[1667,1,30.1678],[2805,1,13.0178]]], +[[691.13,6769.58,0],0,false,[[2825,0,363.078],[3554,0,117.072]]],[[7148.67,7038.92,0],0,false,[[1380,0,63.8762],[2296,0,186.615]]],[[4007.8,4561.2,0],0,true,[[848,0,16.4153],[3181,0,27.5494],[2976,0,12.8937]]],[[7726.67,6702.3,0],0,true,[[859,1,8.40369],[20,1,100.184],[1185,1,8.90381]]],[[3189.31,3205.72,0],0,true,[[2987,0,302.233],[3475,1,13.7114],[1523,1,9.72514]]], +[[2549.83,3831.08,0],0,false,[[1831,0,18.9843],[1638,0,87.6684]]],[[6231.23,6493.11,0],0,true,[[1564,0,4.62295],[2435,0,59.1526],[2113,0,5.97744]]],[[2245.98,3954.46,0],0,false,[[3845,0,64.2699]]],[[7561.28,496.895,0],0,false,[[299,1,117.121],[2585,1,21.5492]]],[[3588.57,2381.13,0],0,true,[[387,1,77.0376],[1669,1,68.2176],[3428,1,6.11133]]], +[[2597.17,6861.27,0],0,true,[[1530,0,14.2124],[2040,0,44.2415],[1321,0,7.40649]]],[[1377.47,4690.91,0],0,false,[[464,0,122.534]]],[[2392.14,3260.33,0],0,false,[[348,0,398.881],[2357,0,23.9593]]],[[879.417,3598.48,0],0,false,[[2358,0,92.0047],[2397,0,125.721]]],[[7755.13,7915.78,0],0,true,[[1946,0,25.3603],[1755,0,24.7066],[2108,0,11.6525]]], +[[7489.01,2966.09,0],0,true,[[2207,1,214.755],[1581,1,11.8928],[640,1,7.22008]]],[[2894.84,3301.43,0],0,true,[[3726,0,0],[2325,0,22.6744],[2325,0,22.7382],[883,0,22.7427],[883,0,22.7427]]],[[5028.62,2591.35,0],0,false,[[2307,0,159.696],[1444,0,140.637]]],[[3496.42,4786.45,0],0,false,[[2972,0,116.084],[778,0,105.763]]],[[2106.6,3691.52,0],0,false,[[3432,0,157.296],[2945,0,80.3051]]], +[[217.886,4825.89,0],0,false,[[3434,0,168.867],[3656,0,104.239]]],[[3543.81,2310.59,0],0,true,[[2384,0,4.5423],[1049,0,30.0316],[387,1,8.02636]]],[[4087.05,3408.72,0],0,false,[[2402,1,48.8111],[3311,1,25.9215]]],[[7401.25,7913.55,0],0,false,[[1104,0,79.1716],[2769,0,54.3803]]],[[3785.05,3509.6,0],0,false,[[3706,1,11.0181],[1561,1,4.88246]]], +[[1948.71,4317.81,0],0,false,[[3163,0,165.341],[1995,0,235.636]]],[[6588.55,869.144,0],0,false,[[343,0,60.5586],[907,0,122.049]]],[[4107.5,5304.67,0],0,false,[[3328,1,42.6667],[1488,1,31.2483]]],[[1416.92,6979.18,0],0,false,[[2510,0,75.5429],[1421,0,219.767]]],[[1643.7,1235.84,0],0,false,[[2784,1,230.258],[2854,1,70.2787]]], +[[1890.54,7255.9,0],0,true,[[471,1,29.75],[3309,1,131.669],[3839,1,11.5618]]],[[2288.64,7485.45,0],0,false,[[3781,0,121.278],[2156,0,207.148]]],[[863.816,449.865,0],0,false,[[1123,0,202.321],[2144,0,179.047]]],[[4735.76,3535.29,0],0,false,[[987,1,58.3609],[3793,1,34.2858]]],[[6382.59,5887.1,0],0,false,[[2340,0,133.434],[178,0,63.9759]]], +[[754.652,7579.62,0],0,true,[[1703,0,157.441],[1537,0,11.6032],[544,0,11.3287]]],[[7812.4,731.09,0],0,false,[[477,0,20.8899],[2082,0,20.1123]]],[[3050.99,2544.65,0],0,true,[[1681,0,237.178],[84,0,26.7047],[34,0,21.5655]]],[[7093.46,7002.65,0],0,true,[[3221,1,118.582],[525,1,31.5555],[440,1,18.3753]]],[[3278.06,3246.35,0],0,true,[[786,1,256.904],[140,1,24.3509],[2681,1,9.65062]]], +[[347.642,4446.44,0],0,true,[[998,0,11.7765],[2937,0,0.751952],[888,0,12.4545],[3846,0,19.6056]]],[[5134.65,4902.99,0.624527],0,false,[[2459,0,19.9355],[3810,1,11.241]]],[[4707.44,3340.24,0],0,false,[[723,0,32.8929],[592,0,29.3023]]],[[4420.6,1218.4,0],0,false,[[1058,0,218.035],[716,0,160.244]]],[[2141.71,5506.79,0],0,false,[[1379,1,22.8764],[1198,1,48.8069]]], +[[1061.95,3258.5,0],0,false,[[3224,0,71.9185],[2820,0,220.093]]],[[6762.59,946.277,0],0,true,[[2518,0,44.0717],[3620,0,9.44561],[1693,1,9.49947]]],[[2964.71,1884.89,0],0,true,[[1707,1,24.0075],[3448,1,11.4637],[500,1,25.3384]]],[[5837.99,6376.21,0],0,true,[[1536,0,21.8433],[65,0,252.12],[836,0,9.87336]]],[[62.98,6097.11,0],0,true,[[453,1,143.213],[3170,1,9.05925],[2373,1,21.577]]], +[[3984.75,6447.49,0],0,true,[[2801,0,3.21803],[2897,0,14.074],[1972,0,11.3855]]],[[6236.25,6263.13,0],0,false,[[3399,0,172.818],[2411,0,152.562]]],[[7256.35,3569.62,0],0,true,[[1854,1,7.5526],[2235,0,48.7325],[98,1,7.80318]]],[[2606.35,6841.37,0],0,false,[[2023,1,25.3001],[88,1,26.9736]]],[[6909.68,4145.4,0],0,false,[[2419,0,111.109]]], +[[2569.93,3849.49,0],0,false,[[267,1,7.56252],[1833,0,11.3648]]],[[560.427,8171,0],0,true,[[300,1,22.7145],[3368,1,299.014],[3906,1,19.4546],[3690,1,7.61507]]],[[1218.21,7967.43,0],0,true,[[3044,1,146.772],[1186,1,8.11839],[2878,1,6.67397]]],[[4670.81,3969.67,0],0,true,[[2333,1,29.0719],[1062,1,205.081],[3293,1,14.8665]]],[[5091.54,2860.02,0],0,false,[[2626,1,24.1986],[1640,1,28.2266]]], +[[7615.28,4436.97,0],0,true,[[3353,1,12.0039],[2030,1,150.67],[100,1,28.9702]]],[[6623.76,2899.59,0],0,true,[[3421,1,7.80484],[1596,1,102.998],[3632,1,20.0225]]],[[7846.58,3554.34,0],0,false,[[2223,0,192.492]]],[[2441.81,399.694,0],0,false,[[1856,1,26.1425],[3049,1,44.9854]]],[[3448.64,2270.28,0],0,true,[[1121,1,14.2572],[3818,0,20.9968],[1237,1,9.27205]]], +[[2731.42,3027.68,0],0,false,[[1426,1,137.743],[1047,1,22.9868]]],[[4118.61,4574.05,0],0,false,[[1884,2,158.731],[3470,2,108.958]]],[[4341.26,2316.82,0],0,false,[[1528,0,20.6358],[2024,0,232.886]]],[[2806.98,7382.11,0],0,false,[[1427,0,57.3823],[3789,1,12.8474]]],[[3670.87,7889.74,0],0,false,[[846,0,133.026]]], +[[3759.26,1714.92,0],0,true,[[941,1,49.5823],[371,1,11.6496],[2544,2,11.1475],[1425,2,14.0998]]],[[2171.33,7507.42,0],0,false,[[3410,0,80.671],[3741,0,121.278]]],[[7377.66,5848.95,0],0,false,[[3029,1,20.8255],[1406,1,186.579]]],[[4481.83,4705.59,0],0,true,[[492,1,20.4887],[1480,1,19.6537],[2736,1,9.09465]]],[[3092.65,4898.7,0],0,false,[[2887,1,93.6215],[2917,1,78.7382]]], +[[7631.26,455.987,0],0,true,[[2585,1,59.6408],[2486,1,19.1841],[3915,1,9.00739],[2713,1,9.43051],[2713,1,9.46269]]],[[7594.7,3534.74,0],0,true,[[3897,0,28.0189],[3188,0,5.54083],[4,0,11.5359]]],[[1017.7,1807.61,-0.980843],0,true,[[3348,2,8.30591],[3491,2,15.585],[3460,2,1.63236]]],[[4242.6,1899.62,0],0,false,[[1714,0,28.4732],[152,0,260.259]]],[[2794.4,7384.67,0],0,true,[[1217,1,25.5164],[1886,1,23.6755],[3778,1,12.8474]]], +[[929.094,4043.8,0],0,true,[[2007,0,89.2241],[838,0,26.8313],[3123,0,13.0174]]],[[7044.03,402.617,0],0,true,[[2720,1,179.325],[2012,1,20.5032],[2479,1,15.4883],[3343,1,26.0886]]],[[6308.85,4749.1,0],0,false,[[2723,0,105.551],[512,0,349.755]]],[[4727.06,3502.16,0],0,true,[[3743,1,34.2858],[3384,1,34.2746],[1280,1,10.2577]]],[[7047.96,6475.7,0],0,true,[[2838,0,12.7847],[2347,1,11.4631],[1730,1,10.1754]]], +[[7748.93,6704.4,0],0,false,[[26,1,119.095],[1185,1,14.14]]],[[4500.24,2470.84,0],0,true,[[1876,2,24.7868],[1965,2,74.1326],[2028,2,14.5135]]],[[5440.23,6608.58,0],0,false,[[1704,0,71.8812],[1356,0,66.0492]]],[[5196.58,4309.28,0],0,false,[[1264,0,160.617],[972,0,64.1787]]],[[2736.22,4542.74,0],0,false,[[1822,0,321.894],[3403,0,25.1133]]], +[[3202.1,2218.34,0],0,false,[[494,0,125.26],[901,0,23.253]]],[[5073.39,4130.47,0.000183105],0,false,[[734,0,5.44906],[247,0,5.44906]]],[[1027.93,6165.09,0],0,false,[[288,1,275.664],[83,1,80.9111]]],[[7058.29,4374.96,0],0,true,[[1239,1,79.6851],[783,1,26.1203],[200,1,14.6271]]],[[2949.39,4377.6,0],0,false,[[1893,0,19.7398],[326,0,48.0578]]], +[[4406.5,2808.41,0],0,false,[[3505,2,9.09614],[1192,2,160.824]]],[[343.075,4774.77,0],0,true,[[2704,0,10.4993],[3142,0,18.6005],[1344,0,7.83964]]],[[3767.4,6141.89,0],0,false,[[3312,1,189.641],[1652,1,103.185]]],[[441.225,5483.48,0],0,false,[[3694,0,41.1604],[2511,0,16.6344]]],[[4751.85,6982.78,0],0,false,[[3423,0,142.793],[1724,0,268.88]]], +[[5139.13,4913.19,0],0,false,[[3751,1,11.241],[3275,1,46.4302]]],[[7446.84,167.905,0],0,false,[[3121,1,173.485],[3915,1,340.614]]],[[348.095,4560.9,0],0,true,[[1113,0,19.0181],[2178,0,19.2815],[2282,0,0.749458],[774,0,19.8962]]],[[668.86,2436.47,0],0,false,[[1654,0,183.562],[759,0,14.4183]]],[[1287.63,3089.66,0],0,true,[[1441,1,114.13],[3463,1,26.3579],[41,1,16.4101]]], +[[343.281,4609.72,0],0,true,[[571,0,12.914],[1177,0,15.7355],[2475,0,0.748841],[2098,0,16.4843]]],[[2837.02,4471.57,0],0,true,[[127,1,94.1801],[3535,1,27.44],[3225,1,8.95696],[109,1,8.64103],[701,1,11.4465]]],[[4504.25,1709.59,0],0,false,[[2229,0,140.86],[2125,0,306.095]]],[[3440.78,2289.42,0],0,false,[[3774,0,20.9968],[1919,0,48.8478]]],[[4304.3,4662.19,0],0,false,[[1649,0,153.829],[1676,0,145.005]]], +[[7996.93,6354.98,0],0,true,[[2517,0,12.857],[244,0,226.296],[2848,0,12.7454]]],[[5313.48,7064.92,0],0,false,[[589,0,359.029],[1804,0,219.64]]],[[1417.51,6883.83,0],0,false,[[3290,0,115.603],[2510,0,19.8993]]],[[2880.68,4182.02,0],0,true,[[3237,0,13.9338],[2218,0,9.49052],[2867,0,16.3448]]],[[2813.39,4049.11,0],0,false,[[999,1,92.8534],[2899,1,156.959]]], +[[5163.71,6205.26,0],0,true,[[2918,0,283.055],[3551,0,18.3704],[925,0,9.61617]]],[[157.363,7625.4,0],0,true,[[3419,0,12.9144],[123,0,254.151],[3899,0,26.4537]]],[[5819.22,4382.35,0],0,false,[[2498,1,46.03],[2695,1,97.7017]]],[[4929.53,2011.54,0],0,true,[[3544,1,18.2134],[3006,1,13.1682],[1586,1,12.6988]]],[[2753.29,1981.38,0],0,true,[[655,1,57.988],[2237,1,18.7341],[257,1,27.6122]]], +[[622.42,7130.74,0],0,true,[[2835,0,103.343],[3222,0,8.5126],[2825,0,14.9831]]],[[4708.93,1948.86,0],0,false,[[1012,0,57.7057],[1244,0,110.63]]],[[2079.41,4613.52,0],0,false,[[2925,1,17.3686],[2956,1,23.8661]]],[[4211.77,3491.6,0],0,true,[[3708,0,139.925],[1852,0,5.78902],[2655,0,4.07147]]],[[5625.67,7270.51,0],0,true,[[1078,0,22.0381],[589,0,18.9928],[1729,0,9.7167]]], +[[4815.48,3699.78,0],0,false,[[1032,0,33.5912],[2132,0,159.802]]],[[236.679,1157.53,0],0,true,[[507,0,20.8445],[3852,0,21.4023],[1479,0,20.3955],[2439,0,8.47028]]],[[504.77,2173.11,0],0,false,[[2989,0,154.003],[635,0,221.14]]],[[7289.28,4767.19,0],0,false,[[2812,0,223.724],[2892,0,330.368]]],[[1880.16,7250.83,0],0,true,[[471,1,18.5214],[1348,1,28.7016],[3740,1,11.5618]]], +[[2875.48,3737.69,0],0,false,[[1216,0,33.3009],[2533,0,86.4868]]],[[4724.72,1121.27,0],0,false,[[2949,0,25.8132],[2793,0,17.8782]]],[[4832.5,4116.01,0],0,false,[[3496,0,44.0632],[2771,0,186.91]]],[[5811.27,2879.1,0],0,true,[[446,1,374.643],[3895,1,25.7418],[1383,1,12.2335]]],[[5800.24,1822.08,0],0,false,[[2452,0,196.659],[3507,0,27.1016]]], +[[2204.57,4002.82,0],0,true,[[1656,0,19.3792],[3717,0,64.2699],[3017,0,19.3242]]],[[347.098,4465.99,0],0,true,[[2937,0,18.9455],[2096,0,0.752656],[3750,0,19.6056],[1575,0,13.8089]]],[[3.60985,5652.48,0],0,false,[[2153,0,71.9718]]],[[7060.58,5574.69,0],0,false,[[879,0,22.5753],[1751,0,63.5319]]],[[7002.11,1902.27,0],0,false,[[1810,0,281.176],[959,0,101.471]]], +[[5464.86,6279.13,0],0,false,[[22,0,48.6369],[2177,0,59.5396]]],[[3008.46,4866.99,0],0,false,[[2917,1,11.7801],[3021,1,229.201]]],[[215.758,1161.82,0],0,false,[[3836,0,21.4023],[119,0,244.045]]],[[5553.21,1629.57,0],0,true,[[2365,1,27.5702],[940,1,29.3524],[139,1,22.6927]]],[[1552.63,3325.19,0],0,false,[[2270,1,81.7565],[3601,1,53.1794]]], +[[2264.69,856.571,0],0,false,[[1875,0,40.1043]]],[[7539.7,6210.12,0],0,false,[[495,0,236.017],[2849,0,199.017]]],[[4442.64,4810.57,0],0,true,[[1582,1,22.1297],[252,1,19.803],[1684,1,5.66244]]],[[2145.89,6823.62,0],0,true,[[2104,0,273.564],[1828,0,51.7787],[2273,0,25.189]]],[[4222.05,3506.06,0],0,true,[[1363,0,163.943],[1852,0,12.0285],[2655,0,19.8887]]], +[[348.21,3478.03,0],0,false,[[2668,1,21.2273],[1690,1,349.95]]],[[6714.3,2628.62,0],0,false,[[144,0,232.229],[1846,0,239.561]]],[[5363.68,7684.79,0],0,true,[[763,0,11.7201],[3609,0,5.50043],[827,1,0.927976]]],[[362.105,5035.55,0],0,true,[[3093,1,14.8234],[3489,0,216.742],[2292,0,7.33024],[2708,1,12.1771]]],[[1831.27,1942.74,0],0,true,[[1026,1,25.0232],[1579,1,106.908],[1097,1,6.51117]]], +[[3693.93,3136.56,0],0,false,[[2665,0,16.1906],[2352,0,60.9973]]],[[4113.57,4182.06,0],0,true,[[2151,1,14.5704],[1930,1,28.2213],[2227,1,4.16849],[3667,1,25.535],[1571,1,12.8732]]],[[3049.34,2876.33,0],0,false,[[1372,0,85.5609],[3880,0,24.3323]]],[[2191.22,5675,0],0,true,[[2075,0,17.2824],[933,0,85.6517],[3243,0,6.21604]]],[[8011.71,5852.03,0],0,true,[[237,1,18.1455],[1996,1,209.207],[1534,1,13.2984]]], +[[6650.13,228.076,0],0,true,[[3914,0,22.5563],[1201,1,15.1179],[232,1,9.9133]]],[[5659.48,2195.25,0],0,true,[[1176,1,21.966],[3531,1,17.7898],[2413,1,8.94369],[2515,1,21.8934]]],[[3752.87,1055.97,0],0,false,[[1798,1,22.8765],[222,1,78.2796]]],[[1317.9,5624.72,0],0,false,[[68,0,59.6403],[3194,0,121.813]]],[[1786.01,149.007,0],0,true,[[856,0,21.2585],[2505,0,178.54],[656,0,8.56871]]], +[[6433.81,3320.13,0],0,false,[[2979,0,298.434],[3104,0,48.2334]]],[[1143.89,313.943,0],0,false,[[2547,2,398.23],[3145,2,134.46]]],[[7847.7,762.908,0],0,true,[[601,0,10.392],[422,0,10.9504],[1767,0,13.9736]]],[[4104.37,5846.55,0],0,false,[[2901,2,27.6262],[3332,2,33.3931]]],[[8175.76,5330.46,0],0,false,[[2830,0,51.6298],[2744,0,281.847]]], +[[3072.89,2870.28,0],0,false,[[3867,0,24.3323],[1496,0,13.7866]]],[[2924.39,3361.72,0],0,true,[[1525,0,13.0896],[2083,0,17.9228],[2083,0,17.9228],[1525,0,13.0896],[3881,0,0]]],[[3696.42,1126.21,0],0,false,[[3409,0,14.8938]]],[[2716.62,972.722,0],0,true,[[110,1,150.166],[1063,1,21.9119],[2187,1,12.6028]]],[[5812.4,5899.11,0],0,true,[[2980,1,17.5371],[2564,1,5.47577],[2588,1,9.20675]]], +[[5705.14,6533.48,0],0,true,[[1226,1,158.716],[1045,1,24.5749],[1626,1,10.9388]]],[[2109.48,2944.7,0],0,false,[[1016,0,330.106],[3608,0,220.826]]],[[4753.73,3663.78,0],0,false,[[1590,1,37.5191],[648,1,28.834]]],[[1940.38,2004.87,-1.21945],0,true,[[1095,2,15.7225],[2643,2,15.5972],[2658,2,2.43611]]],[[1361.71,5532.32,0],0,false,[[68,0,83.8951]]], +[[4070.7,3511.83,0],0,false,[[1304,1,141.436],[2167,1,23.8325]]],[[277.719,840.379,0],0,false,[[2590,1,2.57011],[1691,0,11.5147]]],[[7603.55,1317.08,0],0,true,[[3015,0,160.448],[3583,0,16.7655],[554,0,25.4587]]],[[395.616,1298.92,0],0,false,[[1279,0,30.6642],[811,0,35.5429]]],[[6942.68,1077.81,0],0,true,[[3699,0,24.4425],[2907,0,93.1769],[135,0,15.1452],[1004,0,13.3069]]], +[[5786.34,2885.45,0],0,true,[[1383,1,14.2208],[1692,1,93.0659],[3843,1,25.7418]]],[[6436.08,3372.35,0],0,true,[[3104,0,15.2506],[3701,0,74.518],[707,0,30.5993]]],[[7567.37,3528.83,0],0,true,[[3159,0,28.2717],[3786,0,28.0189],[1591,0,15.4392]]],[[5508.03,5727.86,0],0,true,[[1268,0,171.203],[2157,0,246.781],[831,0,26.6543]]],[[147.639,7601.05,0],0,true,[[3533,0,27.59],[3419,0,14.1445],[3826,0,26.4537]]], +[[3997.31,4537.44,0],0,true,[[3347,0,89.493],[3181,0,6.41276],[1472,0,10.5347]]],[[73.6124,5097.11,0],0,true,[[1605,1,17.2097],[898,1,10.5766],[428,1,24.6305],[279,1,6.9214]]],[[4979.07,265.283,0],0,false,[[652,0,182.672],[687,0,177.734]]],[[4538.7,2337.58,0],0,true,[[3223,1,29.602],[2954,1,13.3442],[3908,2,13.4614]]],[[1037.77,4395.78,0],0,false,[[3283,0,100.777],[2759,0,262.326]]], +[[2680.8,5627.58,0],0,false,[[2572,0,223.789],[469,0,236.678]]],[[551.303,8153.82,0],0,true,[[300,1,19.2739],[147,0,99.8781],[3766,1,19.4546],[3690,0,22.418]]],[[2827.38,3551.69,0],0,false,[[1458,0,39.4852],[283,0,17.3278]]],[[4530.49,2326.99,0],0,true,[[2954,2,13.9827],[1181,2,27.5798],[2881,2,15.6895],[179,2,11.5387],[3903,2,13.4614]]],[[1387.36,7272.39,0],0,false,[[927,0,122.339],[1618,0,13.562]]], +[[5810.98,650.492,0],0,false,[[150,1,18.8769],[2029,1,269.954]]],[[4701.36,6563.42,0],0,false,[[3013,0,168.553],[2686,0,69.9663]]],[[655.968,628.128,0],0,false,[[1123,0,155.933],[2052,0,317.66]]],[[2032.25,5689.51,0],0,false,[[3493,1,32.2602],[430,1,43.5414]]],[[6650.03,250.524,0],0,false,[[2690,0,97.8999],[3870,0,22.5563]]], +[[7637.59,449.599,0],0,true,[[3811,1,340.614],[2486,1,10.7546],[3785,1,9.00739],[2713,1,5.04624],[2713,1,5.11272]]],[[4221,7518.31,0],0,false,[[685,0,19.2752],[1628,0,26.697],[1754,0,12.2355],[1220,0,19.5572]]] +]; \ No newline at end of file diff --git a/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/onPlayerRespawn.sqf b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/onPlayerRespawn.sqf new file mode 100644 index 0000000000..0d38ff4d19 --- /dev/null +++ b/A3A/addons/maps/Antistasi_SPE_Mortain.SPE_Mortain/onPlayerRespawn.sqf @@ -0,0 +1 @@ +_this call A3A_fnc_onPlayerRespawn; diff --git a/A3A/addons/maps/Antistasi_SPE_Normandy.SPE_Normandy/mission.sqm b/A3A/addons/maps/Antistasi_SPE_Normandy.SPE_Normandy/mission.sqm index d5776dc356..ba5f7606a7 100644 --- a/A3A/addons/maps/Antistasi_SPE_Normandy.SPE_Normandy/mission.sqm +++ b/A3A/addons/maps/Antistasi_SPE_Normandy.SPE_Normandy/mission.sqm @@ -274,6 +274,7 @@ class Mission assetType="Free"; class Intel { + briefingName=$STR_antistasi_mission_info_SPE_Normandy_mapname_text; resistanceWest=0; timeOfChanges=1800.0002; startWeather=0.30000001; diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/PIC.jpg b/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/PIC.jpg new file mode 100644 index 0000000000..6a6b6749b1 Binary files /dev/null and b/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/PIC.jpg differ diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/whiteboard.jpg b/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/whiteboard.jpg new file mode 100644 index 0000000000..b8f454483b Binary files /dev/null and b/A3A/addons/maps/Antistasi_pulau.pulau/Pictures/Mission/whiteboard.jpg differ diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/cba_settings.sqf b/A3A/addons/maps/Antistasi_pulau.pulau/cba_settings.sqf new file mode 100644 index 0000000000..1d06e32420 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/cba_settings.sqf @@ -0,0 +1 @@ +#include "\x\A3A\Addons\core\Includes\cba_settings.sqf" diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/description.ext b/A3A/addons/maps/Antistasi_pulau.pulau/description.ext new file mode 100644 index 0000000000..3eb5901602 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/description.ext @@ -0,0 +1,41 @@ +#include "..\missionDescription\master.hpp" + +OnLoadName = $STR_antistasi_mission_info_pulau_mapname_short_text; +OnLoadMission = $STR_antistasi_mission_info_pulau_blurb_text; +briefingName = $STR_antistasi_mission_info_pulau_mapname_text; +overviewText = $STR_antistasi_mission_info_pulau_description_text; +loadScreen = "Pictures\Mission\pic.jpg"; // NB, this will resolve from root +overviewPicture = "Pictures\Mission\pic.jpg"; // NB, this will resolve from root + +class CfgNotifications +{ + #include "..\missionDescription\CfgNotificationsContents.hpp" +}; + +class CfgDebriefing { + #include "..\missionDescription\CfgDebriefingContents.hpp" + class End1 + { + title = "V I C T O R Y"; + subtitle = "Pulau is Ours!"; + description = "The population of Pulau loves you!
The SDK brave soldiers have proven their valour, and Petros, Paluas new Prime Minister, could at last to have a nice holiday. A deserved rest in a Greek island with drinks and fine food."; + picture = "n_inf"; + pictureColor[] = {0.0,0.5,0.0,1}; + }; + class petrosDead + { + title = "Petros is Dead"; + subtitle = "Petros is Dead"; + description = "Congratulations!: Petros is Dead. Now with Syndikat without a leader, you may think about joining them, and free Pulau"; + picture = "b_unknown"; + pictureColor[] = {0.5,0.0,0.0,1}; + }; + class destroyedSites + { + title = "Pulau is Destroyed"; + subtitle = "Pulau got Destroyed by OPFOR"; + description = "One third of the population in Pulau has been murdered by OPFOR.
Pulau no longer exists, nobody wants to live here."; + picture = "b_unknown"; + pictureColor[] = {0.5,0.0,0.0,1}; + }; +}; diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/initPlayerLocal.sqf b/A3A/addons/maps/Antistasi_pulau.pulau/initPlayerLocal.sqf new file mode 100644 index 0000000000..8c79a66d7b --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/initPlayerLocal.sqf @@ -0,0 +1 @@ +_this call A3A_fnc_initClient; \ No newline at end of file diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/initServer.sqf b/A3A/addons/maps/Antistasi_pulau.pulau/initServer.sqf new file mode 100644 index 0000000000..bc311d07b9 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/initServer.sqf @@ -0,0 +1 @@ +call A3A_fnc_initServer; diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/mapInfo.hpp b/A3A/addons/maps/Antistasi_pulau.pulau/mapInfo.hpp new file mode 100644 index 0000000000..4d79f78d59 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/mapInfo.hpp @@ -0,0 +1,50 @@ +class pulau { + population[] = { + {"DefaultKeyPoint1",38}, + {"DefaultKeyPoint2",59}, + {"DefaultKeyPoint3",76}, + {"DefaultKeyPoint4",41}, + {"DefaultKeyPoint5",57}, + {"DefaultKeyPoint7",43}, + {"DefaultKeyPoint8",28}, + {"DefaultKeyPoint10",47}, + {"DefaultKeyPoint15",31}, + {"DefaultKeyPoint19",33}, + {"DefaultKeyPoint20",64}, + {"DefaultKeyPoint21",34}, + {"DefaultKeyPoint22",27}, + {"DefaultKeyPoint23",58}, + {"DefaultKeyPoint24",30}, + {"DefaultKeyPoint25",38}, + {"DefaultKeyPoint26",33}, + {"DefaultKeyPoint27",59}, + {"DefaultKeyPoint28",52}, + {"DefaultKeyPoint32",31}, + {"Loholoho",233} + }; + disabledTowns[] = {"DefaultKeyPoint6","DefaultKeyPoint9","DefaultKeyPoint11","DefaultKeyPoint12","DefaultKeyPoint13","DefaultKeyPoint14","DefaultKeyPoint16","DefaultKeyPoint17","DefaultKeyPoint18","DefaultKeyPoint29","DefaultKeyPoint30","DefaultKeyPoint31"}; + antennas[] = { + {6004.48,6269.15,-7.62939e-006},{5367.93,8981.39,0.00322723},{7329.88,2402.91,0.0544472},{1907,7127.88,0.0916786},{9409.2,3129.01,0.885342},{7075.77,1006.8,7.62939e-005},{2626.32,1945.44,0.00999451} + }; + antennasBlacklistIndex[] = {}; + banks[] = { + {5934.3,5828.19,0} + }; + garrison[] = { + {},{"seaport_1","outpost_1","outpost_18"},{},{"control_0","control_1","control_2","control_10","control_11"} + }; + fuelStationTypes[] = { + "Land_FuelStation_Feed_F","Land_fs_feed_F","Land_FuelStation_01_pump_malevil_F","Land_FuelStation_01_pump_F","Land_FuelStation_02_pump_F","Land_FuelStation_03_pump_F" + }; + climate = "tropical"; + buildObjects[] = { + // Large vanilla tropical structures + {"Land_BagBunker_01_large_green_F", 300}, {"Land_HBarrier_01_tower_green_F", 300}, {"Land_BagBunker_01_small_green_F", 60}, + {"Land_Shed_09_F", 120}, {"Land_Shed_10_F", 140}, + // vanilla tropical sandbag walls + {"Land_BagFence_01_short_green_F", 10}, {"Land_BagFence_01_round_green_F", 10}, {"Land_BagFence_01_long_green_F", 10}, + // Non-camo vanilla stuff + {"Land_SandbagBarricade_01_half_F", 20}, {"Land_SlumWall_01_s_2m_F", 5}, {"Land_PillboxBunker_01_hex_F", 200}, + {"Land_Barricade_01_4m_F", 30}, {"Land_GuardBox_01_brown_F", 80}, {"Land_Tyres_F", 10} + }; +}; diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/mission.sqm b/A3A/addons/maps/Antistasi_pulau.pulau/mission.sqm new file mode 100644 index 0000000000..0d815d3d0e --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/mission.sqm @@ -0,0 +1,36193 @@ +version=54; +class EditorData +{ + moveGridStep=1; + angleGridStep=0.2617994; + scaleGridStep=1; + autoGroupingDist=10; + toggles=1025; + class ItemIDProvider + { + nextID=1919; + }; + class MarkerIDProvider + { + nextID=2; + }; + class LayerIndexProvider + { + nextID=886; + }; + class Camera + { + pos[]={5332.084,88.804512,8978.8359}; + dir[]={0.6963504,-0.62435031,0.35399988}; + up[]={0.55656821,0.78113359,0.28293842}; + aside[]={0.45317739,1.7767888e-008,-0.89144021}; + }; +}; +binarizationWanted=0; +sourceName="Antistasi_pulau"; +addons[]= +{ + "A3_Characters_F", + "A3_Weapons_F", + "A3_Structures_F_Exp_Military_Flags", + "A3_Weapons_F_Ammoboxes", + "A3_Props_F_Enoch_Military_Camps", + "A3_Structures_F_EPC_Civ_InfoBoards", + "A3_Modules_F", + "A3_Modules_F_Curator_Curator", + "A3_Modules_F_Hc", + "A3_Ui_F", + "A3_Structures_F_Ind_Cargo", + "A3_Structures_F_Enoch_Industrial_Sawmills", + "A3_Structures_F_Exp_Infrastructure_Airports", + "A3_Structures_F_Mil_Helipads", + "A3_Structures_F_Exp_Military_Fortifications", + "A3_Structures_F_Enoch_Military_Barracks", + "A3_Structures_F_Ind_Transmitter_Tower", + "A3_Structures_F_Exp_Military_ContainerBases", + "A3_Structures_F_Civ_Camping", + "A3_Structures_F_Enoch_Military_Camps", + "A3_Structures_F_Mil_BagBunker", + "A3_Structures_F_Mil_Cargo", + "A3_Structures_F_Argo_Military_Fortifications", + "A3_Structures_F_Walls", + "A3_Structures_F_Argo_Signs_Warnings", + "A3_Structures_F_Civ_Constructions", + "A3_Structures_F_Argo_Military_Bunkers", + "A3_Structures_F_Mil_BagFence", + "A3_Props_F_Enoch_Military_Garbage", + "A3_Structures_F_Civ_Garbage", + "A3_Structures_F_Argo_Civilian_Garbage", + "A3_Props_F_Enoch_Civilian_Garbage", + "A3_Structures_F_Oldman_Decals", + "A3_Props_F_Exp_Civilian_Garbage", + "A3_Structures_F_Items_Vessels", + "A3_Structures_F_Ind_WindPowerPlant", + "A3_Structures_F_Exp_Infrastructure_WaterSupply", + "A3_Structures_F_EPC_Civ_Accessories", + "A3_Structures_F_Mil_TentHangar", + "A3_Props_F_Exp_Commercial_Market" +}; +class AddonsMetaData +{ + class List + { + items=17; + class Item0 + { + className="A3_Characters_F"; + name="Arma 3 Alpha - Characters and Clothing"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item1 + { + className="A3_Weapons_F"; + name="Arma 3 Alpha - Weapons and Accessories"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item2 + { + className="A3_Structures_F_Exp"; + name="Arma 3 Apex - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item3 + { + className="A3_Props_F_Enoch"; + name="Arma 3 Contact Platform - Decorative and Mission Objects"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item4 + { + className="A3_Structures_F_EPC"; + name="Arma 3 Win Episode - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item5 + { + className="A3_Modules_F"; + name="Arma 3 Alpha - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item6 + { + className="A3_Modules_F_Curator"; + name="Arma 3 Zeus Update - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item7 + { + className="A3_Ui_F"; + name="Arma 3 - User Interface"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item8 + { + className="A3_Structures_F_Ind"; + name="Arma 3 - Industrial Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item9 + { + className="A3_Structures_F_Enoch_Industrial"; + name="Arma 3 Contact Platform - Industrial Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item10 + { + className="A3_Structures_F_Exp_Infrastructure"; + name="Arma 3 Apex - Infrastructure Objects"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item11 + { + className="A3_Structures_F_Mil"; + name="Arma 3 - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item12 + { + className="A3_Structures_F_Enoch_Military"; + name="Arma 3 Contact Platform - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item13 + { + className="A3_Structures_F"; + name="Arma 3 - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item14 + { + className="A3_Structures_F_Argo"; + name="Arma 3 Malden - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item15 + { + className="A3_Structures_F_Oldman"; + name="Arma 3 Old Man - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item16 + { + className="A3_Props_F_Exp"; + name="Arma 3 Apex - Decorative and Mission Objects"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + }; +}; +dlcs[]= +{ + "Expansion", + "Contact", + "Enoch", + "Orange", + "Argo", + "Oldman" +}; +randomSeed=9715782; +class Mission +{ + class Intel + { + briefingName=$STR_antistasi_mission_info_pulau_mapname_text; + resistanceWest=0; + year=2035; + month=6; + hour=10; + minute=0; + }; + class Entities + { + items=3; + class Item0 + { + dataType="Layer"; + name="Antistasi-Porting-Kit-V5"; + class Entities + { + items=6; + class Item0 + { + dataType="Layer"; + name="Antistasi assets"; + class Entities + { + items=8; + class Item0 + { + dataType="Layer"; + name="HQ assets"; + class Entities + { + items=23; + class Item0 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1860.5667,8.4564056,5427.0732}; + angles[]={0,2.2023785,0}; + }; + side="Independent"; + flags=7; + class Attributes + { + name="petros"; + }; + id=4; + type="I_G_officer_F"; + class CustomAttributes + { + class Attribute0 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute1 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=2; + }; + }; + }; + class Attributes + { + }; + id=3; + }; + class Item1 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=38; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1870.8977,9.0521021,5425.8184}; + }; + side="Independent"; + flags=7; + class Attributes + { + name="commanderX"; + description="Default Commander"; + isPlayer=1; + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=6; + type="I_G_Soldier_TL_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + singleType="STRING"; + value="Male04GRE"; + }; + }; + }; + class Attribute1 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=2; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.6926,9.4411516,5423.1152}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=7; + type="I_G_Soldier_TL_F"; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.8313,9.2372618,5425.3506}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=8; + type="I_G_Soldier_TL_F"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.7737,9.0752888,5427.6836}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=9; + type="I_G_Soldier_TL_F"; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.6106,8.9301491,5429.998}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=10; + type="I_G_Soldier_TL_F"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.5696,8.7409878,5432.4512}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=11; + type="I_G_Soldier_TL_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.384,8.5110579,5434.7676}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=12; + type="I_G_Soldier_F"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.177,8.2794027,5436.6631}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=13; + type="I_G_Soldier_F"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1878.052,9.4156675,5423.2383}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=14; + type="I_G_Soldier_F"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1878.051,9.2858829,5425.5781}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=15; + type="I_G_Soldier_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1877.9446,9.1841412,5427.9512}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=16; + type="I_G_Soldier_F"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1877.886,9.094986,5430.1504}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=17; + type="I_G_Soldier_F"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1877.6829,8.9377794,5432.5732}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=18; + type="I_G_Soldier_F"; + atlOffset=-9.5367432e-007; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1877.4954,8.7055254,5434.9043}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=19; + type="I_G_Soldier_F"; + atlOffset=-9.5367432e-007; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1880.1604,9.4215937,5423.2744}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=20; + type="I_G_Soldier_AR_F"; + atlOffset=9.5367432e-007; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1880.3225,9.3464632,5425.7148}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=21; + type="I_G_Soldier_AR_F"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1879.9221,9.278019,5428.1289}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=22; + type="I_G_Soldier_AR_F"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1879.8987,9.2440653,5430.2783}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=23; + type="I_G_Soldier_AR_F"; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1879.6985,9.1133862,5432.5195}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=24; + type="I_G_Soldier_AR_F"; + atlOffset=-9.5367432e-007; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1879.6116,8.8864346,5434.9785}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=25; + type="I_G_Soldier_AR_F"; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1882.2493,9.5298815,5423.3535}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=26; + type="I_G_Soldier_GL_F"; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1882.1194,9.4776478,5425.6719}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=27; + type="I_G_Soldier_GL_F"; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1881.9954,9.4639473,5428.416}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=28; + type="I_G_Soldier_GL_F"; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1881.8215,9.4280081,5430.4248}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=29; + type="I_G_Soldier_GL_F"; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1881.7522,9.3182993,5432.6094}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=30; + type="I_G_Soldier_GL_F"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1881.6467,9.0736761,5435.0996}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=31; + type="I_G_Soldier_GL_F"; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.7766,9.658865,5423.4316}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=32; + type="I_G_medic_F"; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.6008,9.6310101,5425.7109}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=33; + type="I_G_medic_F"; + atlOffset=9.5367432e-007; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.5588,9.650898,5428.583}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=34; + type="I_G_medic_F"; + atlOffset=-9.5367432e-007; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.4709,9.6385736,5430.3896}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=35; + type="I_G_medic_F"; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.2874,9.5118237,5432.749}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=36; + type="I_G_medic_F"; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.2981,9.2492485,5435.1602}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=37; + type="I_G_medic_F"; + atlOffset=-9.5367432e-007; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1885.5784,9.8754787,5423.5967}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=38; + type="I_G_engineer_F"; + atlOffset=9.5367432e-007; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1885.6018,9.8881416,5425.8965}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=39; + type="I_G_engineer_F"; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1885.3596,9.8845825,5428.6875}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=40; + type="I_G_engineer_F"; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1885.1047,9.8581257,5430.6348}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=41; + type="I_G_engineer_F"; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1884.9094,9.7374458,5432.8711}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=42; + type="I_G_engineer_F"; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1884.8049,9.4228544,5435.3398}; + }; + side="Independent"; + flags=5; + class Attributes + { + isPlayable=1; + class Inventory + { + map="ItemMap"; + }; + }; + id=43; + type="I_G_engineer_F"; + }; + }; + class Attributes + { + }; + id=5; + atlOffset=9.5367432e-007; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1868.9709,12.170611,5432.1816}; + }; + side="Empty"; + flags=5; + class Attributes + { + name="flagX"; + }; + id=44; + type="Flag_Syndikat_F"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1869.6545,10.192405,5423.5215}; + angles[]={0.11285125,0,0.02999169}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="boxX"; + }; + id=45; + type="IG_supplyCrate_F"; + class CustomAttributes + { + class Attribute0 + { + property="ammoBox"; + expression="[_this,_value] call bis_fnc_initAmmoBox;"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1865.7961,9.4428635,5426.3242}; + angles[]={0.11285178,0,0.02999169}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="fireX"; + }; + id=46; + type="Land_TentSolar_01_olive_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1863.0286,9.2276754,5430.1567}; + angles[]={0.1325518,5.6506429,0.043306526}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="mapX"; + }; + id=48; + type="MapBoard_seismic_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={1863.9934,10.16639,5419.0527}; + }; + name="garrison"; + id=49; + type="Logic"; + atlOffset=0.6405468; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={1871.2522,10.742958,5413.1328}; + }; + name="killZones"; + id=50; + type="Logic"; + atlOffset=0.6405468; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={1871.97,10.786733,5412.1406}; + }; + name="pathfinding"; + id=51; + type="Logic"; + atlOffset=0.6405468; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={1867.6555,10.498289,5416.3008}; + }; + name="roadsX"; + id=52; + type="Logic"; + atlOffset=0.6405468; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={1862.4192,9.9675121,5420.4648}; + }; + name="server"; + id=53; + type="Logic"; + atlOffset=0.64054871; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={1870.3411,10.695947,5413.9648}; + }; + name="sidesX"; + id=54; + type="Logic"; + atlOffset=0.6405468; + }; + class Item12 + { + dataType="Logic"; + class PositionInfo + { + position[]={1865.7805,10.339442,5417.6318}; + }; + name="spawner"; + id=55; + type="Logic"; + atlOffset=0.64054585; + }; + class Item13 + { + dataType="Logic"; + class PositionInfo + { + position[]={1869.0715,10.620647,5415.2168}; + }; + name="timer"; + id=56; + type="Logic"; + atlOffset=0.6405468; + }; + class Item14 + { + dataType="Logic"; + class PositionInfo + { + position[]={1858.1868,9.6356812,5417.7646}; + }; + name="hc"; + isPlayable=1; + id=57; + type="HeadlessClient_F"; + atlOffset=0.64054966; + }; + class Item15 + { + dataType="Logic"; + class PositionInfo + { + position[]={1859.2151,9.8533001,5416.7803}; + }; + name="hc_1"; + isPlayable=1; + id=58; + type="HeadlessClient_F"; + atlOffset=0.64055061; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={1860.1604,10.036128,5415.958}; + }; + name="hc_2"; + isPlayable=1; + id=59; + type="HeadlessClient_F"; + atlOffset=0.6405468; + }; + class Item17 + { + dataType="Logic"; + class PositionInfo + { + position[]={1848.7717,7.0647569,5412.9404}; + }; + id=60; + type="ModuleCurator_F"; + atlOffset=0.6405468; + class CustomAttributes + { + class Attribute0 + { + property="ModuleCurator_F_Owner"; + expression="_this setVariable ['Owner',_value,true];"; + class Value + { + class data + { + singleType="STRING"; + value="#adminLogged"; + }; + }; + }; + class Attribute1 + { + property="ModuleCurator_F_Forced"; + expression="_this setVariable ['Forced',_value,true];"; + class Value + { + class data + { + singleType="SCALAR"; + value=0; + }; + }; + }; + class Attribute2 + { + property="ModuleCurator_F_Name"; + expression="_this setVariable ['Name',_value,true];"; + class Value + { + class data + { + singleType="STRING"; + value=""; + }; + }; + }; + class Attribute3 + { + property="ModuleCurator_F_Addons"; + expression="_this setVariable ['Addons',_value,true];"; + class Value + { + class data + { + singleType="SCALAR"; + value=3; + }; + }; + }; + nAttributes=4; + }; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={1852.7043,8.121521,5419.8916}; + }; + name="HC_commanderX"; + id=61; + type="HighCommand"; + atlOffset=0.6405468; + }; + class Item19 + { + dataType="Logic"; + class PositionInfo + { + position[]={1856.1047,9.0678968,5419.7979}; + }; + id=62; + type="HighCommandSubordinate"; + atlOffset=0.64054775; + }; + class Item20 + { + dataType="Marker"; + position[]={1860.4883,9.1175776,5426.7695}; + name="Synd_HQ"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorPink"; + a=50; + b=50; + id=63; + atlOffset=0.64024258; + }; + class Item21 + { + dataType="Marker"; + position[]={1861.8213,2.7037606e+012,5428.9482}; + name="respawn_guerrila"; + text="Your Headquarters"; + type="hd_flag"; + colorName="ColorGUER"; + id=64; + atlOffset=2.7037606e+012; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1869.5566,9.4253998,5428.2935}; + angles[]={0.12927523,0,0.02666023}; + }; + side="Empty"; + flags=4; + class Attributes + { + name="vehicleBox"; + }; + id=490; + type="Land_CargoBox_V1_F"; + class CustomAttributes + { + class Attribute0 + { + property="ammoBox"; + expression="[_this,_value] call bis_fnc_initAmmoBox;"; + class Value + { + class data + { + singleType="STRING"; + value="[[[[],[]],[[],[]],[[],[]],[[],[]]],false]"; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=2; + atlOffset=6.7594014e+011; + }; + class Item1 + { + dataType="Layer"; + name="seaspawn"; + class Entities + { + items=22; + class Item0 + { + dataType="Marker"; + position[]={8970.6846,-16.104736,3128.7461}; + name="seaSpawn"; + type="mil_objective"; + id=66; + atlOffset=3.6775703; + }; + class Item1 + { + dataType="Marker"; + position[]={7339.0771,0,3334.262}; + name="seaSpawn_1"; + type="mil_objective"; + id=384; + atlOffset=2.8900807; + }; + class Item2 + { + dataType="Marker"; + position[]={4466.249,-0.70855761,304.76367}; + name="seaSpawn_2"; + type="mil_objective"; + id=385; + atlOffset=5.0355906; + }; + class Item3 + { + dataType="Marker"; + position[]={1575.0479,1.1376953,1055.009}; + name="seaSpawn_3"; + type="mil_objective"; + id=386; + atlOffset=2.9894335; + }; + class Item4 + { + dataType="Marker"; + position[]={1259.0642,1.8166299,4568.1436}; + name="seaSpawn_4"; + type="mil_objective"; + id=387; + atlOffset=4.1406784; + }; + class Item5 + { + dataType="Marker"; + position[]={1336.3134,2.19311,6276.8423}; + name="seaSpawn_5"; + type="mil_objective"; + id=388; + atlOffset=3.4933743; + }; + class Item6 + { + dataType="Marker"; + position[]={2446.4092,-5.4554443,5846.54}; + name="seaSpawn_6"; + type="mil_objective"; + id=389; + atlOffset=3.9246731; + }; + class Item7 + { + dataType="Marker"; + position[]={3368.1321,1.5785863,8908.9648}; + name="seaSpawn_7"; + type="mil_objective"; + id=390; + atlOffset=5.5044069; + }; + class Item8 + { + dataType="Marker"; + position[]={2207.4727,-4.2517371,8738.9688}; + name="seaSpawn_8"; + type="mil_objective"; + id=391; + atlOffset=2.1825547; + }; + class Item9 + { + dataType="Marker"; + position[]={2196.105,-5.7089844,8661.1084}; + name="seaSpawn_9"; + type="mil_objective"; + id=392; + atlOffset=3.235096; + }; + class Item10 + { + dataType="Marker"; + position[]={4558.6338,2.59729,10273.297}; + name="seaSpawn_10"; + type="mil_objective"; + id=393; + atlOffset=3.7051048; + }; + class Item11 + { + dataType="Marker"; + position[]={7956.771,-4.930542,1160.3137}; + name="seaSpawn_11"; + type="mil_objective"; + id=394; + atlOffset=4.2875414; + }; + class Item12 + { + dataType="Marker"; + position[]={7926.9912,-5.9974222,1143.7947}; + name="seaSpawn_12"; + type="mil_objective"; + id=395; + atlOffset=4.6891108; + }; + class Item13 + { + dataType="Marker"; + position[]={3937.5564,0.80402541,1408.3125}; + name="seaSpawn_13"; + type="mil_objective"; + id=396; + atlOffset=3.6540253; + }; + class Item14 + { + dataType="Marker"; + position[]={3621.573,-6.1806965,300.9939}; + name="seaSpawn_14"; + type="mil_objective"; + angle=95.189934; + id=491; + atlOffset=13.585218; + }; + class Item15 + { + dataType="Marker"; + position[]={4464.1001,-0.03335971,2867.2017}; + name="seaSpawn_15"; + type="mil_objective"; + id=618; + atlOffset=4.1482835; + }; + class Item16 + { + dataType="Marker"; + position[]={3237.2788,0,4814.7266}; + name="seaSpawn_16"; + type="mil_objective"; + id=619; + atlOffset=2.9937427; + }; + class Item17 + { + dataType="Marker"; + position[]={7495.3687,0,7178.604}; + name="seaSpawn_17"; + type="mil_objective"; + id=620; + atlOffset=1.6764892; + }; + class Item18 + { + dataType="Marker"; + position[]={5612.9053,-0.0015485211,9930.002}; + name="seaSpawn_18"; + type="mil_objective"; + id=621; + atlOffset=2.9464006; + }; + class Item19 + { + dataType="Marker"; + position[]={3566.3401,0,7893.1641}; + name="seaSpawn_19"; + type="mil_objective"; + angle=261.45639; + id=622; + atlOffset=1.2313209; + }; + class Item20 + { + dataType="Marker"; + position[]={7355.8701,0,5127.208}; + name="seaSpawn_20"; + type="mil_objective"; + angle=130.25769; + id=623; + atlOffset=4.2251563; + }; + class Item21 + { + dataType="Marker"; + position[]={3411.0647,9.6121492,137.4624}; + name="seaSpawn_21"; + type="mil_objective"; + angle=187.12495; + id=1076; + atlOffset=14.065229; + }; + }; + id=65; + atlOffset=22.118429; + }; + class Item2 + { + dataType="Layer"; + name="seaSpawnAttack"; + class Entities + { + items=14; + class Item0 + { + dataType="Marker"; + position[]={11497.589,-6.394043,3649.2959}; + name="seaAttackSpawn"; + type="mil_ambush"; + angle=268.62189; + id=68; + atlOffset=15.886242; + }; + class Item1 + { + dataType="Marker"; + position[]={9872.5381,-7.0241718,815.50928}; + name="seaAttackSpawn_1"; + type="mil_ambush"; + angle=298.90369; + id=461; + atlOffset=12.463905; + }; + class Item2 + { + dataType="Marker"; + position[]={5480.562,-6.9950676,202.71021}; + name="seaAttackSpawn_2"; + type="mil_ambush"; + angle=9.865777; + id=462; + atlOffset=13.002151; + }; + class Item3 + { + dataType="Marker"; + position[]={434.44531,-7.7149544,336.75}; + name="seaAttackSpawn_3"; + type="mil_ambush"; + angle=42.97863; + id=463; + atlOffset=13.002151; + }; + class Item4 + { + dataType="Marker"; + position[]={208.5733,-6.640625,4128.4277}; + name="seaAttackSpawn_4"; + type="mil_ambush"; + angle=92.077164; + id=464; + atlOffset=11.877453; + }; + class Item5 + { + dataType="Marker"; + position[]={148.15729,-4.8366947,7066.1719}; + name="seaAttackSpawn_5"; + type="mil_ambush"; + angle=100.42178; + id=465; + atlOffset=13.002151; + }; + class Item6 + { + dataType="Marker"; + position[]={489.83948,-4.6467056,9266.1348}; + name="seaAttackSpawn_6"; + type="mil_ambush"; + angle=111.39836; + id=466; + atlOffset=16.315031; + }; + class Item7 + { + dataType="Marker"; + position[]={1352.158,-13.796875,11710.701}; + name="seaAttackSpawn_7"; + type="mil_ambush"; + angle=112.73495; + id=467; + atlOffset=8.1478481; + }; + class Item8 + { + dataType="Marker"; + position[]={4883.2861,-2.0433712,11891.925}; + name="seaAttackSpawn_8"; + type="mil_ambush"; + angle=193.62199; + id=468; + atlOffset=13.002151; + }; + class Item9 + { + dataType="Marker"; + position[]={6886.5811,-8.5944824,11814.877}; + name="seaAttackSpawn_9"; + type="mil_ambush"; + angle=212.00531; + id=469; + atlOffset=15.530396; + }; + class Item10 + { + dataType="Marker"; + position[]={9616.8887,-11.43396,11772.644}; + name="seaAttackSpawn_10"; + type="mil_ambush"; + angle=219.17772; + id=470; + atlOffset=12.886177; + }; + class Item11 + { + dataType="Marker"; + position[]={11220.379,-4.5310059,10005.614}; + name="seaAttackSpawn_11"; + type="mil_ambush"; + angle=254.05453; + id=471; + atlOffset=24.045198; + }; + class Item12 + { + dataType="Marker"; + position[]={10836.62,-5.0158844,7174.0537}; + name="seaAttackSpawn_12"; + type="mil_ambush"; + angle=274.36517; + id=472; + atlOffset=14.740885; + }; + class Item13 + { + dataType="Marker"; + position[]={10507.582,-9.2493896,5776.001}; + name="seaAttackSpawn_13"; + type="mil_ambush"; + angle=281.12146; + id=473; + atlOffset=5.7720165; + }; + }; + id=67; + atlOffset=8.6671944; + }; + class Item3 + { + dataType="Layer"; + name="controls"; + class Entities + { + items=23; + class Item0 + { + dataType="Marker"; + position[]={5102.6958,6.7672167,5070.0322}; + name="control_0"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=140.20238; + id=70; + }; + class Item1 + { + dataType="Marker"; + position[]={9604.2383,22.202883,3087.1626}; + name="control_1"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=147.61929; + id=403; + }; + class Item2 + { + dataType="Marker"; + position[]={9044.2813,29.822401,2893.1814}; + name="control_2"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=157.95219; + id=404; + }; + class Item3 + { + dataType="Marker"; + position[]={8826.7021,44.406605,8640.7402}; + name="control_3"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=405; + }; + class Item4 + { + dataType="Marker"; + position[]={9111.9414,31.464451,9208.2119}; + name="control_4"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=406; + }; + class Item5 + { + dataType="Marker"; + position[]={7651.5562,31.087238,9995.0977}; + name="control_5"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=407; + }; + class Item6 + { + dataType="Marker"; + position[]={5152.6685,54.615734,8053.394}; + name="control_6"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=408; + atlOffset=-3.8146973e-006; + }; + class Item7 + { + dataType="Marker"; + position[]={5528.2412,20.256016,9296.335}; + name="control_7"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=409; + }; + class Item8 + { + dataType="Marker"; + position[]={4231.249,13.836199,9635.9102}; + name="control_8"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=410; + }; + class Item9 + { + dataType="Marker"; + position[]={2208.8743,23.786671,7904.8887}; + name="control_9"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=411; + }; + class Item10 + { + dataType="Marker"; + position[]={6896.1758,21.568048,1097.5071}; + name="control_10"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=412; + }; + class Item11 + { + dataType="Marker"; + position[]={7229.835,33.366203,716.5752}; + name="control_11"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=413; + }; + class Item12 + { + dataType="Marker"; + position[]={1232.9753,20.936609,4107.853}; + name="control_12"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1751; + atlOffset=-1.9073486e-006; + }; + class Item13 + { + dataType="Marker"; + position[]={2319.3347,10.335981,3572.2903}; + name="control_13"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1752; + }; + class Item14 + { + dataType="Marker"; + position[]={2243.0945,15.810839,2068.1865}; + name="control_14"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1753; + atlOffset=-3.8146973e-006; + }; + class Item15 + { + dataType="Marker"; + position[]={1201.6405,4.9240994,1345.2224}; + name="control_15"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1754; + }; + class Item16 + { + dataType="Marker"; + position[]={4185.7383,15.024762,878.15186}; + name="control_16"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1755; + atlOffset=-3.8146973e-006; + }; + class Item17 + { + dataType="Marker"; + position[]={3941.5308,10.37741,3065.833}; + name="control_17"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1756; + atlOffset=-3.8146973e-006; + }; + class Item18 + { + dataType="Marker"; + position[]={1838.8727,5.2078304,6894.2393}; + name="control_18"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1757; + }; + class Item19 + { + dataType="Marker"; + position[]={2342.2324,8.3653812,4326.4741}; + name="control_19"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1758; + }; + class Item20 + { + dataType="Marker"; + position[]={6876.4951,32.090893,3009.9272}; + name="control_20"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1759; + }; + class Item21 + { + dataType="Marker"; + position[]={5772.9468,29.472195,6972.6011}; + name="control_21"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=188.94269; + id=1760; + }; + class Item22 + { + dataType="Marker"; + position[]={5857.4907,24.387711,4047.8826}; + name="control_22"; + markerType="RECTANGLE"; + type="rectangle"; + a=40; + b=40; + angle=136.68939; + id=1761; + }; + }; + id=69; + atlOffset=-34.702805; + }; + class Item4 + { + dataType="Marker"; + position[]={10928.564,-9.6616211,1115.1128}; + name="CSAT_carrier"; + type="flag_CSAT"; + id=71; + atlOffset=10.943974; + }; + class Item5 + { + dataType="Marker"; + position[]={1117.41,-19.238001,10970.235}; + name="NATO_carrier"; + type="flag_NATO"; + id=72; + atlOffset=2.0288525; + }; + class Item6 + { + dataType="Layer"; + name="detectPlayer"; + class Entities + { + items=2; + class Item0 + { + dataType="Marker"; + position[]={5770.9961,59.029995,6640.4326}; + name="detectPlayer"; + markerType="RECTANGLE"; + type="rectangle"; + a=47.467529; + b=208.45703; + id=74; + atlOffset=-3.8146973e-006; + }; + class Item1 + { + dataType="Marker"; + position[]={1134.6318,7.3200002,2732.1626}; + name="detectPlayer_1"; + markerType="RECTANGLE"; + type="rectangle"; + a=25.541889; + b=349.14902; + angle=269.51541; + id=400; + atlOffset=-1.1309505; + }; + }; + id=73; + atlOffset=39.016197; + }; + class Item7 + { + dataType="Layer"; + name="seaPatrol"; + class Entities + { + items=24; + class Item0 + { + dataType="Marker"; + position[]={9025.4531,-15.978638,3696.6731}; + name="seaPatrol"; + type="Empty"; + id=76; + atlOffset=4.1891193; + }; + class Item1 + { + dataType="Marker"; + position[]={7264.0713,-0.95899105,1774.3923}; + name="seaPatrol_1"; + type="Empty"; + id=474; + atlOffset=6.048521; + }; + class Item2 + { + dataType="Marker"; + position[]={8142.665,-13.907349,487.3103}; + name="seaPatrol_2"; + type="Empty"; + id=475; + atlOffset=3.9496307; + }; + class Item3 + { + dataType="Marker"; + position[]={3723.0901,-13.495773,267.29443}; + name="seaPatrol_3"; + type="Empty"; + id=476; + atlOffset=6.048521; + }; + class Item4 + { + dataType="Marker"; + position[]={1304.3008,-3.9005156,876.20288}; + name="seaPatrol_4"; + type="Empty"; + id=477; + atlOffset=6.048521; + }; + class Item5 + { + dataType="Marker"; + position[]={355.90005,-13.325678,2710.511}; + name="seaPatrol_5"; + type="Empty"; + id=478; + atlOffset=6.048521; + }; + class Item6 + { + dataType="Marker"; + position[]={5425,-10.194876,2921.1335}; + name="seaPatrol_6"; + type="Empty"; + id=479; + }; + class Item7 + { + dataType="Marker"; + position[]={4105.9253,-0.74093246,3775.8655}; + name="seaPatrol_7"; + type="Empty"; + id=480; + atlOffset=19.984629; + }; + class Item8 + { + dataType="Marker"; + position[]={4239.1553,0,4759.5308}; + name="seaPatrol_8"; + type="Empty"; + id=481; + atlOffset=11.123667; + }; + class Item9 + { + dataType="Marker"; + position[]={3274.4348,-0.86078024,7766.0347}; + name="seaPatrol_9"; + type="Empty"; + id=482; + atlOffset=6.048521; + }; + class Item10 + { + dataType="Marker"; + position[]={2175.9536,-13.912176,7665.5635}; + name="seaPatrol_10"; + type="Empty"; + id=483; + atlOffset=6.048521; + }; + class Item11 + { + dataType="Marker"; + position[]={3184.4832,-13.477408,6095.9653}; + name="seaPatrol_11"; + type="Empty"; + id=484; + atlOffset=9.1473207; + }; + class Item12 + { + dataType="Marker"; + position[]={3134.8374,0.43478537,11045.033}; + name="seaPatrol_12"; + type="Empty"; + id=485; + atlOffset=6.048521; + }; + class Item13 + { + dataType="Marker"; + position[]={8473.6777,-19.907591,9461.2627}; + name="seaPatrol_13"; + type="Empty"; + id=486; + atlOffset=6.048521; + }; + class Item14 + { + dataType="Marker"; + position[]={7128.3242,-1.335844,8984.4287}; + name="seaPatrol_14"; + type="Empty"; + id=487; + atlOffset=6.048521; + }; + class Item15 + { + dataType="Marker"; + position[]={7962.7842,-8.239213,6268.1758}; + name="seaPatrol_15"; + type="Empty"; + id=488; + atlOffset=6.048521; + }; + class Item16 + { + dataType="Marker"; + position[]={5305.3467,-14.417795,1494.9514}; + name="seaPatrol_16"; + type="Empty"; + id=489; + atlOffset=3.7159309; + }; + class Item17 + { + dataType="Marker"; + position[]={10275.759,-16.562359,11097.351}; + name="seaPatrol_17"; + type="Empty"; + id=511; + atlOffset=6.048521; + }; + class Item18 + { + dataType="Marker"; + position[]={704.46594,-14.031879,11224.968}; + name="seaPatrol_18"; + type="Empty"; + id=512; + atlOffset=6.048521; + }; + class Item19 + { + dataType="Marker"; + position[]={10694.061,-15.476957,6822.1729}; + name="seaPatrol_19"; + type="Empty"; + id=513; + atlOffset=6.048521; + }; + class Item20 + { + dataType="Marker"; + position[]={11268.337,-15.831572,4191.8398}; + name="seaPatrol_20"; + type="Empty"; + id=514; + atlOffset=6.048521; + }; + class Item21 + { + dataType="Marker"; + position[]={9843.1348,-10.75158,2062.415}; + name="seaPatrol_21"; + type="Empty"; + id=515; + atlOffset=8.811799; + }; + class Item22 + { + dataType="Marker"; + position[]={179.81665,-13.483521,6212.4478}; + name="seaPatrol_22"; + type="Empty"; + id=516; + atlOffset=6.0485201; + }; + class Item23 + { + dataType="Marker"; + position[]={853.0564,-10.304321,9036.752}; + name="seaPatrol_23"; + type="Empty"; + id=517; + atlOffset=9.7873917; + }; + }; + id=75; + atlOffset=-2.6540775; + }; + }; + id=1; + atlOffset=5.2807823e+009; + }; + class Item1 + { + dataType="Layer"; + name="factories"; + class Entities + { + items=2; + class Item0 + { + dataType="Layer"; + name="factory_1"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={4033.3113,1.8520179,10363.721}; + name="fact_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=16.20537; + id=80; + }; + class Item1 + { + dataType="Marker"; + position[]={4035.1604,1.2621473,10339.157}; + name="factory_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBrown"; + a=41.747002; + b=76.987488; + angle=110.21442; + id=81; + atlOffset=-0.11720335; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={4042.814,11.634769,10344.688}; + angles[]={0,5.0058222,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=793; + type="Land_Sawmill_01_illuminati_tower_F"; + atlOffset=0.0099755526; + }; + }; + id=78; + atlOffset=0.059996367; + }; + class Item1 + { + dataType="Layer"; + name="factory_2"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={6376.4233,2.2786915,9025.9229}; + name="fact_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=50.673534; + id=84; + }; + class Item1 + { + dataType="Marker"; + position[]={6366.1978,3.017329,9072.6367}; + name="factory_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBrown"; + a=41.747002; + b=41.750999; + angle=143.52429; + id=85; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6341.8623,14.747879,9042.1064}; + angles[]={0,4.1580524,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=794; + type="Land_Airport_01_controlTower_F"; + atlOffset=4.7683716e-007; + }; + }; + id=82; + atlOffset=-0.01619482; + }; + }; + id=77; + atlOffset=-3.6821055; + }; + class Item2 + { + dataType="Layer"; + name="outposts"; + class Entities + { + items=16; + class Item0 + { + dataType="Layer"; + name="outpost_3"; + class Entities + { + items=20; + class Item0 + { + dataType="Marker"; + position[]={5478.5088,40.33353,8999.3408}; + name="outp_3_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=125; + }; + class Item1 + { + dataType="Marker"; + position[]={5438.7529,41.343292,8985.8711}; + name="outp_3_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=3; + b=5; + angle=351.49686; + id=127; + }; + class Item2 + { + dataType="Marker"; + position[]={5422.0684,41.6814,8979.9805}; + name="outpost_3"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=106.07708; + b=61.875999; + id=128; + atlOffset=0.23017502; + }; + class Item3 + { + dataType="Marker"; + position[]={5449.1665,41.178585,8986.7578}; + name="outp_3_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=6; + b=5; + angle=352.11288; + id=417; + }; + class Item4 + { + dataType="Marker"; + position[]={5488.5015,38.17033,8945.7334}; + name="outp_3_vehicle_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=3; + b=5; + angle=311.0773; + id=419; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={5421.438,41.633045,8996.293}; + angles[]={6.2798514,1.3355085,6.249867}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=416; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={5432.1899,40.096169,9018.0361}; + angles[]={6.2432065,2.8286359,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=508; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={5515.1426,41.448269,8947.3789}; + angles[]={6.2299018,5.6678858,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=509; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={5331.147,41.554131,8968.5537}; + angles[]={0.004580488,1.5163343,6.264782}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=510; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={5522.0161,44.682579,8973.0645}; + angles[]={0,4.7771297,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=795; + type="Land_ControlTower_01_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={5367.5117,65.200272,8981.3633}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1491; + type="Land_TTowerBig_2_F"; + atlOffset=-3.8146973e-006; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={5475.7197,40.48019,8983.6289}; + angles[]={0.043305151,0.32797471,6.2199373}; + }; + areaSize[]={10.743164,0,4.8740234}; + flags=1; + id=1910; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.25362778; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item12 + { + dataType="Logic"; + class PositionInfo + { + position[]={5348.1665,42.021011,8988.5488}; + angles[]={0.19097751,4.7965994,6.2698536}; + }; + areaSize[]={2.0703125,0,7.0453305}; + flags=1; + id=1911; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.21219635; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item13 + { + dataType="Logic"; + class PositionInfo + { + position[]={5408.0479,41.671345,8974.877}; + angles[]={6.2000442,1.4408062,6.2465348}; + }; + areaSize[]={2.0703125,0,5}; + flags=1; + id=1912; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item14 + { + dataType="Logic"; + class PositionInfo + { + position[]={5394.1743,41.901192,8968.1143}; + angles[]={6.2232571,4.7965994,6.1934285}; + }; + areaSize[]={2.0703125,0,5}; + flags=1; + id=1913; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item15 + { + dataType="Logic"; + class PositionInfo + { + position[]={5404.8745,40.342293,9008.9619}; + angles[]={0.19097751,4.7965994,6.2698536}; + }; + areaSize[]={2.0703125,0,2.5109773}; + flags=1; + id=1914; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.46186829; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item16 + { + dataType="Logic"; + class PositionInfo + { + position[]={5451.6714,39.357201,9016.1201}; + angles[]={0.21336791,4.7965994,0}; + }; + areaSize[]={2.0703125,0,2.5109773}; + flags=1; + id=1915; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item17 + { + dataType="Logic"; + class PositionInfo + { + position[]={5475.8008,40.371071,9010.877}; + angles[]={0.0033296358,4.7965994,6.2798557}; + }; + areaSize[]={2.0703125,0,2.5109773}; + flags=1; + id=1916; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={5495.9482,40.048618,8977.2021}; + angles[]={0.02666023,4.7965994,6.2698536}; + }; + areaSize[]={2.0703125,0,2.5109773}; + flags=1; + id=1917; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Logic"; + class PositionInfo + { + position[]={5344.2334,40.197361,8994.9463}; + angles[]={6.2579236,4.7965994,6.2758126}; + }; + areaSize[]={2.0703125,0,1.563015}; + flags=1; + id=1918; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.48529434; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=124; + atlOffset=-2.1507149; + }; + class Item1 + { + dataType="Layer"; + name="outpost_4"; + class Entities + { + items=19; + class Item0 + { + dataType="Marker"; + position[]={6073.1938,66.855003,4593.2622}; + name="outp_4_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=16; + b=5; + angle=39.06599; + id=131; + atlOffset=0.11392975; + }; + class Item1 + { + dataType="Marker"; + position[]={6122.3271,57.27182,4690.6621}; + name="outpost_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=55.866604; + b=53.909142; + angle=209.76678; + id=132; + atlOffset=0.79220581; + }; + class Item2 + { + dataType="Marker"; + position[]={6150.1416,55.967587,4695.5713}; + name="outp_4_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3.2353516; + id=133; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={6120.3462,56.775448,4691.7236}; + angles[]={6.2465348,2.1781168,6.1375575}; + }; + areaSize[]={30.624069,0,28.146606}; + areaIsRectangle=1; + flags=1; + id=401; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.033615112; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Layer"; + name="Layer 657"; + class Entities + { + items=29; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={6170.8911,56.913219,4700.8003}; + angles[]={6.0857906,2.181787,0.06324815}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1607; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={6129.2251,60.798824,4659.0322}; + angles[]={6.2033553,0.56504196,6.2665229}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1612; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6123.5791,61.093788,4659.9624}; + angles[]={6.1934285,5.2757115,6.2265782}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1614; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={6107.5029,61.043011,4669.2363}; + angles[]={0.1325509,2.1388216,6.1277814}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1616; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={6096.3877,60.928234,4676.9248}; + angles[]={0.019996032,2.1964099,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1617; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6090.3418,66.096291,4718.7212}; + angles[]={6.2133002,5.299458,6.1835165}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1618; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6108.9092,58.44532,4746.813}; + angles[]={6.1506348,5.1342287,6.0634575}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1619; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={6095.6855,64.969696,4721.2339}; + angles[]={0.016666256,0.58241826,6.0132713}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1622; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6103.043,61.996883,4718.0415}; + angles[]={6.0986423,0.31058422,6.0350728}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1625; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6114.4102,59.643887,4733.8438}; + angles[]={0.1325518,2.0034091,6.1934271}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1626; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6114.6831,60.22496,4727.2568}; + angles[]={0.02999169,0.55224174,6.2432079}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1627; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6110.8057,60.870903,4714.3354}; + angles[]={6.1310372,3.8180134,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1628; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6152.397,57.454441,4700.7734}; + angles[]={6.2133002,0.69046062,6.1835175}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1629; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6145.9155,56.654961,4692.269}; + angles[]={6.1703339,3.7494111,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1630; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6146.6113,57.413582,4698.6787}; + angles[]={6.1934271,2.2287688,0.096367389}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1631; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6101.0898,60.201408,4684.1558}; + angles[]={0.016662678,5.2951722,6.2166181}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1632; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={6097.6558,61.096455,4700.8101}; + angles[]={6.2232571,0.64157963,6.1736255}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1633; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={6145.5835,58.105083,4705.8818}; + angles[]={6.1180367,0.6011886,0.19418859}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1636; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={6138.9331,56.75893,4697.1479}; + angles[]={6.2199354,3.8180134,0.056607127}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1637; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={6126.1865,57.392834,4698.3232}; + angles[]={0.053283807,0.53687,6.1769204}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1638; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={6116.4468,58.615387,4688.02}; + angles[]={6.2531939,0.56860298,6.1310363}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1640; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={6132.7949,56.830215,4697.877}; + angles[]={6.2398791,2.178304,6.2398777}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1642; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={6112.8823,59.538097,4708.5713}; + angles[]={6.1245303,5.440239,6.1703334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1643; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={6108.1421,59.448673,4689.187}; + angles[]={0.06324815,6.0330925,6.2166181}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1644; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={6120.9224,57.789352,4680.7568}; + angles[]={0.046631888,1.3235856,6.1802182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1645; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={6132.0176,57.72226,4714.6797}; + angles[]={6.0825868,3.5882959,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1646; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={6126.2817,57.071491,4704.6787}; + angles[]={6.2531939,5.2538967,6.111557}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1647; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={6110.2861,59.408195,4677.0449}; + angles[]={0.13255225,1.646819,6.1245303}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1648; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={6142.2842,60.727856,4652.3198}; + angles[]={0.18776202,2.1720393,0.19097783}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1657; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.4018364; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=1658; + atlOffset=-0.26671982; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={6105.1758,63.189037,4740.1309}; + angles[]={0,2.1485572,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1655; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={6139.5947,64.721756,4655.9873}; + angles[]={0,5.3003392,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1656; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={6116.7852,58.931839,4733.1504}; + angles[]={0.1325518,3.6754031,6.1934271}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1599; + type="Land_TentDome_F"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={6122.0029,59.035557,4730.002}; + angles[]={0.09966857,3.6754031,6.2365537}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1600; + type="Land_TentDome_F"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={6130.6348,59.395485,4724.4219}; + angles[]={6.1703339,3.6754031,0.049959254}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1601; + type="Land_TentDome_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={6138.1689,58.065891,4720.2622}; + angles[]={6.183517,3.6754031,6.2265782}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1602; + type="Land_TentDome_F"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={6151.3677,58.248974,4712.9087}; + angles[]={6.2398791,3.6754031,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1603; + type="Land_TentDome_F"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={6159.3311,56.961975,4708.606}; + angles[]={5.9554467,3.6754031,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1604; + type="Land_TentDome_F"; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={6105.5894,60.112411,4673.6377}; + angles[]={0.15214813,5.3797474,6.1277828}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1651; + type="Land_TentDome_F"; + atlOffset=3.8146973e-006; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={6103.2144,60.749805,4670.0532}; + angles[]={0.12271336,5.4296246,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1652; + type="Land_TentDome_F"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={6097.9277,60.812126,4704.604}; + angles[]={6.1342955,2.1601312,6.1604719}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1653; + type="Land_TentDome_F"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={6099.9224,60.895214,4707.5879}; + angles[]={6.1050935,2.3051414,6.111557}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1654; + type="Land_TentDome_F"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={6089.2422,61.134598,4682.7197}; + angles[]={0.016666256,0.59688514,6.2365522}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1593; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={6116.1045,61.434944,4664.5161}; + angles[]={0.026662467,3.6835575,0.1029669}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1595; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=129; + atlOffset=1.2055168; + }; + class Item2 + { + dataType="Layer"; + name="outpost_5"; + class Entities + { + items=11; + class Item0 + { + dataType="Marker"; + position[]={4687.9868,36.870056,6271.228}; + name="outp_5_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=338.17545; + id=136; + }; + class Item1 + { + dataType="Marker"; + position[]={4800.7002,58.739777,6314.0264}; + name="outpost_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=52.546318; + b=64.046898; + id=137; + atlOffset=-0.82749939; + }; + class Item2 + { + dataType="Marker"; + position[]={4803.0176,59.855324,6309.7046}; + name="outp_5_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=138; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={4749.9712,53.479603,6289.0581}; + angles[]={6.2398806,1.319482,0.28839558}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1589; + type="Land_BagBunker_01_small_green_F"; + atlOffset=0.047119141; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4804.7593,53.487164,6376.5317}; + angles[]={0.26371098,2.9764636,0.063249089}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1590; + type="Land_BagBunker_01_small_green_F"; + atlOffset=0.040939331; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={4767.752,57.289455,6303.6479}; + angles[]={6.2731848,0,0.21336904}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1903; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={4818.6401,56.328804,6302.5591}; + angles[]={0.02999169,0,6.0666356}; + }; + areaSize[]={5,0,6.2138672}; + flags=1; + id=1904; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.024456024; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={4798.4082,54.379986,6365.8999}; + angles[]={0.24811287,2.8885584,6.2299027}; + }; + areaSize[]={6.9866099,0,3.3199809}; + flags=1; + id=1905; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.22514725; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={4773.4053,56.022648,6282.5068}; + angles[]={6.1277828,0,6.2665229}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1906; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={4811.1919,55.841133,6282.167}; + angles[]={6.0922089,0,6.2598572}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1907; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={4766.4199,55.150612,6349.6855}; + angles[]={0.08314155,0,0.2512435}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=1908; + type="ModuleHideTerrainObjects_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=134; + atlOffset=-2.0102425; + }; + class Item3 + { + dataType="Layer"; + name="outpost_6"; + class Entities + { + items=12; + class Item0 + { + dataType="Marker"; + position[]={4823.4966,8.9522448,8714.3877}; + name="outp_6_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=193.90536; + id=141; + atlOffset=9.5367432e-007; + }; + class Item1 + { + dataType="Marker"; + position[]={4857.9834,32.792725,8538.8857}; + name="outpost_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=77.344398; + b=101.32799; + angle=151.90387; + id=142; + atlOffset=2.0001354; + }; + class Item2 + { + dataType="Marker"; + position[]={4846.9302,37.59293,8571.3965}; + name="outp_6_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=143; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={4889.4619,42.412155,8611.0156}; + angles[]={0.039217547,3.5518148,0.0073652891}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=796; + type="Land_BagBunker_Small_F"; + atlOffset=12.255146; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4793.0054,39.38446,8590.2832}; + angles[]={0.0014235723,1.9629103,0.013129323}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=798; + type="Land_BagBunker_Small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4824.2539,36.400272,8496.1426}; + angles[]={6.2464337,0.28461239,6.267652}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=801; + type="Land_BagBunker_Small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={4886.0166,46.518822,8445.3018}; + angles[]={0.0081266416,0.48179802,6.2796984}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=802; + type="Land_BagBunker_Small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={4914.5483,39.618393,8536.3613}; + angles[]={0.08314155,4.4539051,6.2398791}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=805; + type="Land_BagBunker_Small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={4865.4639,42.602512,8599.0625}; + angles[]={0,4.9058461,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=804; + type="Land_Cargo_HQ_V3_F"; + atlOffset=3.8146973e-006; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={4915.3467,39.648907,8538.7178}; + angles[]={0,6.02842,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=812; + type="Land_SandbagBarricade_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={4905.7119,40.035328,8542.5557}; + angles[]={0,2.8657734,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=814; + type="Land_SandbagBarricade_01_hole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={4895.7202,40.662788,8546.1553}; + angles[]={0,2.8862684,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=815; + type="Land_SandbagBarricade_01_hole_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=139; + atlOffset=-0.20903015; + }; + class Item4 + { + dataType="Layer"; + name="outpost_7"; + class Entities + { + items=10; + class Item0 + { + dataType="Marker"; + position[]={3499.4978,2.6103125,10669.573}; + name="outp_7_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=16.475231; + b=5; + angle=202.21385; + id=146; + atlOffset=0.52884269; + }; + class Item1 + { + dataType="Marker"; + position[]={3482.1433,5.9478445,10618.411}; + name="outpost_7"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=98.793259; + b=79.494347; + angle=25.616747; + id=147; + atlOffset=-1.6993089; + }; + class Item2 + { + dataType="Marker"; + position[]={3500.7451,4.1687794,10629.684}; + name="outp_7_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=148; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3594.4175,8.4132099,10618.374}; + angles[]={0,5.0944195,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=501; + type="Land_BarGate_01_open_F"; + atlOffset=-0.11763668; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3346.6318,5.9001093,10657.216}; + angles[]={0,3.9492764,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=505; + type="Land_BarGate_01_open_F"; + atlOffset=0.243608; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3594.2302,6.2124505,10611.315}; + angles[]={0,5.170342,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=504; + type="Land_SignM_WarningMilitaryArea_english_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3341.0146,3.470758,10660.029}; + angles[]={0,0.89857364,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=506; + type="Land_SignM_WarningMilitaryArea_english_F"; + atlOffset=0.81378484; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3545.7622,5.0909019,10620.817}; + angles[]={0.056606073,4.8005714,6.2465348}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=528; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3400.7788,13.269557,10572.652}; + angles[]={0.023328418,1.5283805,6.2698579}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=529; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3502.8718,11.275468,10586.076}; + angles[]={0,1.5398197,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=530; + type="Land_BagBunker_01_small_green_F"; + atlOffset=-0.038145065; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=144; + atlOffset=2.5843883; + }; + class Item5 + { + dataType="Layer"; + name="outpost_8"; + class Entities + { + items=10; + class Item0 + { + dataType="Marker"; + position[]={1845.71,36.71106,3058.8135}; + name="outp_8_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=9.0073681; + b=4.3732052; + angle=262.34888; + id=152; + atlOffset=0.011058807; + }; + class Item1 + { + dataType="Marker"; + position[]={1795.6313,37.311359,3094.3088}; + name="outpost_8"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=142.1532; + b=86.0812; + id=153; + atlOffset=2.3867989; + }; + class Item2 + { + dataType="Marker"; + position[]={1864.0856,36.382416,3025.9727}; + name="outp_8_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=9; + b=5; + angle=230.25949; + id=414; + atlOffset=3.8146973e-006; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={1715.004,34.001179,3127.9219}; + angles[]={0.033321146,5.423173,0.056607127}; + }; + areaSize[]={3.1683455,0,3.1306152}; + flags=1; + id=817; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.0083236694; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1715.699,35.154644,3126.804}; + angles[]={0.033318337,2.0122075,0.056601029}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=818; + type="Land_BagBunker_01_small_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1937.28,55.287788,3067.0659}; + angles[]={0.0066671576,4.3989453,6.1637526}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=846; + type="Land_BagBunker_01_small_green_F"; + atlOffset=-3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={1943.9796,53.015701,3068.5039}; + angles[]={6.2498641,5.423173,6.1736255}; + }; + areaSize[]={3.1683455,0,3.1306152}; + flags=1; + id=847; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1878.7052,60.952713,3080.5291}; + angles[]={0,1.7582654,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1515; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item8 + { + dataType="Layer"; + name="Layer 656"; + state=1; + class Entities + { + items=45; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1733.9768,35.388817,3088.1394}; + angles[]={6.2465348,4.7764788,0.056605019}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1526; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={1751.0599,35.684013,3088.7012}; + angles[]={6.2798738,4.7764788,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1527; + type="Land_HBarrier_01_line_3_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1819.1857,37.70575,3075.9238}; + angles[]={0,1.1910301,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1544; + type="Land_HBarrier_01_line_3_green_F"; + atlOffset=1.8544388; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1813.2358,37.818535,3111.2058}; + angles[]={0,1.5898287,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1557; + type="Land_HBarrier_01_line_3_green_F"; + atlOffset=1.6827087; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1790.7042,35.873974,3112.5444}; + angles[]={6.249866,5.6961536,6.2765174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1517; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1778.2428,35.708416,3104.3704}; + angles[]={6.2798738,5.6961536,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1518; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1773.4341,35.691864,3101.1025}; + angles[]={6.2798557,5.6961536,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1519; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1782.4869,35.903557,3111.9875}; + angles[]={6.2598572,0.9604122,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1520; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1778.8173,35.937801,3113.9619}; + angles[]={6.2598572,5.6961536,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1521; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1774.0562,35.809956,3110.8606}; + angles[]={6.2498641,5.6961536,0.013332055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1522; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1769.2234,35.716038,3107.7166}; + angles[]={6.2765174,5.6961536,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1523; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1750.9296,35.61697,3084.0076}; + angles[]={6.2798557,4.7215347,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1524; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1733.8892,35.218616,3083.5422}; + angles[]={6.2798557,4.7215347,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1525; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1749.1957,35.666721,3128.5095}; + angles[]={0.010000871,4.2895994,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1538; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1792.5704,35.95015,3116.3713}; + angles[]={6.2598572,4.119432,6.2731848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1539; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1812.9408,35.34288,3083.3801}; + angles[]={6.2465348,1.0053928,0.026662467}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1540; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1817.1854,37.321346,3080.0176}; + angles[]={0,1.076064,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1541; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.914978; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1820.7882,37.663387,3071.6572}; + angles[]={0,1.1685491,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1542; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.0955391; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1827.3125,39.007984,3080.4514}; + angles[]={0,1.1499422,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1548; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.4008217; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1825.2762,38.904369,3085.7537}; + angles[]={0,1.1807004,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1549; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.5641441; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1823.301,38.706276,3091.0972}; + angles[]={0,1.2430009,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1550; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.4907379; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1820.4883,38.662189,3096.1123}; + angles[]={0,0.90763402,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1551; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.7460098; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1816.5146,38.079597,3101.5122}; + angles[]={0,1.0521183,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1552; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.7014618; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1814.0652,37.839081,3106.5884}; + angles[]={0,1.3063411,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1553; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.7416878; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1812.9788,38.350216,3118.5115}; + angles[]={0,1.6748275,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1555; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.7181816; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1813.4731,38.958782,3124.136}; + angles[]={0,1.6850268,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1556; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.8314743; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1806.7083,35.520256,3095.4648}; + angles[]={6.2698536,5.7208529,6.2765174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1528; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1800.156,35.620544,3104.7759}; + angles[]={0,5.7208529,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1529; + type="Land_HBarrier_01_line_1_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1803.5194,35.579655,3100.3423}; + angles[]={6.2798557,2.5219791,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1530; + type="Land_HBarrier_01_line_1_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1783.5333,35.618389,3079.9712}; + angles[]={6.2698579,5.7208529,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1531; + type="Land_HBarrier_01_line_1_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1776.9811,35.668839,3089.2822}; + angles[]={0,5.7208529,6.2798738}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1532; + type="Land_HBarrier_01_line_1_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1780.3445,35.650455,3084.8486}; + angles[]={6.2798557,2.5219791,6.2798557}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1533; + type="Land_HBarrier_01_line_1_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1815.5708,37.485817,3083.0642}; + angles[]={0,1.1500593,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1546; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=2.10186; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1813.2545,37.764084,3113.4893}; + angles[]={0,1.5173388,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1558; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=1.6115341; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1812.8794,38.249069,3114.9092}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1559; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=2.0590363; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1818.3588,38.398403,3098.647}; + angles[]={0,0.86373985,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1560; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=1.8723297; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1813.8997,38.736385,3127.7917}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1561; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=1.5185623; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1813.7253,38.68182,3129.29}; + angles[]={0,1.3554022,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1562; + type="Land_HBarrier_01_line_1_green_F"; + atlOffset=1.4171638; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1738.7742,35.391167,3124.1443}; + angles[]={0.0066592805,3.4601269,0.043303773}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1516; + type="Land_HBarrier_01_wall_corridor_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={1853.6257,36.692188,3060.0083}; + angles[]={6.2798691,2.8695481,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1570; + type="Land_Bricks_V1_F"; + atlOffset=-0.0002822876; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1854.8741,36.789879,3052.8862}; + angles[]={0.023328418,2.9588902,0.059928458}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1567; + type="Land_Bricks_V2_F"; + atlOffset=-0.00070571899; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={1853.9797,36.683746,3057.5596}; + angles[]={6.2798738,3.0161297,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1569; + type="Land_Bricks_V3_F"; + atlOffset=-0.0002746582; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1852.8481,36.801651,3065.2456}; + angles[]={6.2498641,2.8877409,0.013332055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1572; + type="Land_Bricks_V3_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1854.4762,36.761505,3055.0881}; + angles[]={0.010000871,2.9164419,0.10955887}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1568; + type="Land_Bricks_V4_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1853.2578,36.742397,3062.6921}; + angles[]={6.2665229,2.9543116,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + createAsLocalObject=1; + disableSimulation=1; + }; + id=1571; + type="Land_Bricks_V4_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=1565; + atlOffset=0.026760101; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={1863.7119,36.64994,3025.8638}; + angles[]={6.1868186,2.4552906,0}; + }; + areaSize[]={5.0156488,0,8.9388094}; + areaIsRectangle=1; + flags=1; + id=1750; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.26597977; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=149; + atlOffset=-1.2594109; + }; + class Item6 + { + dataType="Layer"; + name="outpost_9"; + class Entities + { + items=6; + class Item0 + { + dataType="Marker"; + position[]={2607.2029,30.8479,2037.0859}; + name="outp_9_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=155; + atlOffset=21.48737; + }; + class Item1 + { + dataType="Marker"; + position[]={2665.042,2.6314538,2059.0381}; + name="outp_9_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=57.569996; + id=157; + }; + class Item2 + { + dataType="Marker"; + position[]={2614.2922,30.446218,1947.0948}; + name="outpost_9"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=80.112274; + b=56.582863; + angle=53.681423; + id=158; + atlOffset=0.43730545; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2626.4382,54.166779,1946.1326}; + angles[]={0,2.6300879,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=848; + type="Land_TTowerBig_2_F"; + atlOffset=3.8146973e-006; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={2624.7034,29.910378,1951.0452}; + }; + areaSize[]={8.7758789,0,6.1298218}; + flags=1; + id=908; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.67715073; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Layer"; + name="Layer 540"; + state=1; + class Entities + { + items=53; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2599.1653,28.251095,1958.7705}; + angles[]={0,5.2279382,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=858; + type="Land_Bunker_01_blocks_3_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2601.5068,27.466784,1963.4222}; + angles[]={0,5.1379709,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=859; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.2841358; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2604.2329,27.154448,1967.9053}; + angles[]={0,5.4946866,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=860; + type="Land_Bunker_01_blocks_3_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2607.9907,27.232439,1971.4188}; + angles[]={0,5.5156355,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=861; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.5208511; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2612.7686,16.324162,1898.4408}; + angles[]={0,3.4353979,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=870; + type="Land_Bunker_01_blocks_3_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2607.9949,16.831894,1900.3883}; + angles[]={0,3.571456,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=871; + type="Land_Bunker_01_blocks_3_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2603.6682,17.565079,1903.129}; + angles[]={0,3.6171155,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=872; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.3737888; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2604.5947,23.767229,1921.5298}; + angles[]={0,3.6513002,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=873; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.66704941; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2600.4368,23.724251,1924.601}; + angles[]={0,3.9250596,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=874; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.78804398; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2597.4094,23.725042,1928.7274}; + angles[]={0,4.224576,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=875; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.54472923; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2632.8657,23.854898,1910.1346}; + angles[]={0,3.0873435,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=876; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.66703415; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2627.71,23.840536,1910.5077}; + angles[]={0,3.3611031,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=877; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.7880249; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2622.9456,23.8508,1912.377}; + angles[]={0,3.6606195,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=878; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.54471016; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2633.0134,28.939182,1926.0608}; + angles[]={0,3.0336747,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=879; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.66706657; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2627.8452,28.916691,1926.1567}; + angles[]={0,3.3074343,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=880; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.78806114; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2622.9875,28.681608,1927.7677}; + angles[]={0,3.6069508,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=881; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.54475021; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2645.8464,28.762642,1947.559}; + angles[]={0,1.3775281,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=882; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.02286911; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2646.1914,29.323753,1942.4012}; + angles[]={0,1.6512874,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=883; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.78815079; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={2645.0005,29.650103,1937.424}; + angles[]={0,1.9508039,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=884; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.54483795; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={2644.5229,26.043118,1918.6959}; + angles[]={6.112668,1.9341583,0.065521896}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=885; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.39075279; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={2641.9683,24.974831,1914.3723}; + angles[]={6.1389575,2.2551484,0.1187765}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=886; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.41099739; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={2637.895,24.180748,1911.2063}; + angles[]={6.2433543,2.7430797,0.094797164}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=887; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.5447731; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={2642.6445,25.788395,1962.1332}; + angles[]={0,0.18318292,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=904; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=-0.4650383; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={2648.2378,26.218128,1951.8176}; + angles[]={0,1.960866,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=905; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=-0.46420479; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={2647.9856,25.850031,1956.2365}; + angles[]={0,1.0842547,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=906; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=-0.1193428; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={2646.2341,25.867842,1959.5156}; + angles[]={0,1.0842547,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=907; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.017665863; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={2613.7397,29.28717,1935.0153}; + angles[]={0,3.7538788,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=910; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.77073479; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={2609.9182,29.264679,1938.496}; + angles[]={0,4.0276384,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=911; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.82273483; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={2607.3293,29.201439,1942.9106}; + angles[]={0,4.3271546,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=912; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.70324707; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={2632.4253,28.785845,1970.7722}; + angles[]={0,0.53938287,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=913; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=2.8630466; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={2636.4902,28.691002,1967.5791}; + angles[]={0,0.81314248,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=914; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=2.4987583; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={2639.3938,28.656113,1963.3647}; + angles[]={0,1.1126586,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=915; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.0706062; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={2621.0735,27.688423,1971.4333}; + angles[]={0.2104577,1.0632653,0.11908072}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=917; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.0315952; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={2621.9678,28.567987,1966.6569}; + angles[]={0.15921953,1.721759,0.064359695}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=919; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.56808281; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={2612.8281,15.095742,2002.9935}; + angles[]={0,5.4467025,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=920; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=-0.071809769; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={2623.5962,15.014934,2002.2479}; + angles[]={0,0.9411999,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=921; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.044940948; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={2620.178,15.137824,2004.5748}; + angles[]={0,0.064588621,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=922; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.81073666; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={2616.4673,15.155635,2004.7998}; + angles[]={0,0.064588621,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=923; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.71887016; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={2579.0598,15.099479,1990.6632}; + angles[]={0,4.8172722,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=924; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.79113102; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={2588.2031,15.01867,1996.3994}; + angles[]={0,0.3117696,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=925; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.058349609; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={2584.0703,15.141561,1996.2682}; + angles[]={0,5.7183437,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=926; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.093683243; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={2580.9382,15.159371,1994.2656}; + angles[]={0,5.7183437,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=927; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.34171486; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={2583.6646,21.799671,1938.3602}; + angles[]={0,4.4423695,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=932; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.6159172; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={2582.0881,21.841753,1947.0352}; + angles[]={0,4.5840135,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=934; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=0.45831871; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={2582.5789,21.859564,1943.3502}; + angles[]={0,4.5840135,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=935; + type="Land_Bunker_01_blocks_3_F"; + atlOffset=1.5733547; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={2614.2478,28.525635,1972.817}; + angles[]={0,2.5874867,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=862; + type="Land_Bunker_01_big_F"; + atlOffset=0.80358696; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={2641.1577,29.422335,1929.2971}; + angles[]={0,5.4852171,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=864; + type="Land_Bunker_01_big_F"; + atlOffset=0.80153847; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={2639.812,29.576197,1953.9714}; + angles[]={0,4.2212944,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=891; + type="Land_Bunker_01_big_F"; + atlOffset=0.15758133; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={2594.0837,25.060083,1935.0225}; + angles[]={0,1.2524502,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=854; + type="Land_Bunker_01_small_F"; + atlOffset=0.85931969; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={2597.0286,28.168238,1953.158}; + angles[]={0,1.7845471,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=855; + type="Land_Bunker_01_small_F"; + atlOffset=0.75286674; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={2598.1577,18.525331,1906.819}; + angles[]={0,0.60468835,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=865; + type="Land_Bunker_01_small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={2618.3496,18.28993,1897.6023}; + angles[]={0,6.2653236,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=866; + type="Land_Bunker_01_small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={2619.3767,29.329802,1932.5797}; + angles[]={0,0.48287672,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=909; + type="Land_Bunker_01_small_F"; + atlOffset=-0.19973755; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=936; + atlOffset=-1.1919231; + }; + }; + id=154; + atlOffset=-3.9600468; + }; + class Item7 + { + dataType="Layer"; + name="outpost_10"; + class Entities + { + items=6; + class Item0 + { + dataType="Marker"; + position[]={1656.0411,22.789261,1347.0784}; + name="outp_10_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15.017031; + b=5; + angle=43.459793; + id=161; + atlOffset=12.979109; + }; + class Item1 + { + dataType="Marker"; + position[]={1556.3878,24.301346,1330.0161}; + name="outpost_10"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=41.747002; + b=64.747581; + id=162; + atlOffset=7.6293945e-006; + }; + class Item2 + { + dataType="Marker"; + position[]={1557.7462,25.10832,1337.7585}; + name="outp_10_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=163; + atlOffset=-1.9073486e-006; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={1655.3386,9.8460178,1346.1357}; + angles[]={0,0.74425071,0}; + }; + areaSize[]={15,0,5}; + areaIsRectangle=1; + flags=1; + id=937; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.016888618; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={1553.8875,24.341379,1333.6583}; + angles[]={0,4.9678354,0}; + }; + areaSize[]={42.70816,0,7.2183471}; + areaIsRectangle=1; + flags=1; + id=938; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.13253593; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Layer"; + name="Layer 541"; + state=1; + class Entities + { + items=77; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1549.0668,30.230692,1286.173}; + angles[]={0,0.061332863,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=940; + type="Land_ControlTower_01_F"; + atlOffset=0.2244606; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={1562.1353,30.757753,1373.3719}; + angles[]={0,3.3410411,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=941; + type="Land_ControlTower_01_F"; + atlOffset=0.32450867; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1589.7256,21.780968,1320.3508}; + angles[]={6.2265792,1.5640298,6.1703334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=965; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1591.683,21.655552,1328.3907}; + angles[]={0.0099949092,4.9515543,5.9886737}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=967; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1592.953,21.156345,1336.7942}; + angles[]={0.016662678,4.9515543,5.9494829}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=968; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1594.4893,20.338856,1345.3533}; + angles[]={0.033321146,4.9515543,5.9258771}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=969; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1594.9336,19.846123,1353.9043}; + angles[]={0.023328418,1.3947668,5.8940878}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=970; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1591.151,21.262493,1360.4337}; + angles[]={0.003311686,0.43787888,5.9084392}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=971; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1579.0934,24.360992,1369.5549}; + angles[]={0.016662678,2.3329377,6.1440897}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=972; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1582.1437,23.70343,1377.1783}; + angles[]={0.086450629,1.4847624,6.0922084}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=973; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1571.6212,24.125198,1379.7012}; + angles[]={0.10955941,2.1473804,0.046631888}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=974; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1578.0393,23.530766,1383.3912}; + angles[]={0.14236349,0.18933122,6.2033553}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=975; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1564.3588,23.777218,1378.2047}; + angles[]={0.13909611,0.12259194,0.099667974}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=976; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1589.6698,21.207546,1311.6808}; + angles[]={6.2000442,1.5675603,6.1901212}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=978; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1582.1876,19.535339,1283.3328}; + angles[]={6.0825868,3.5020621,6.0444913}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=982; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1580.4575,18.583939,1276.1221}; + angles[]={6.0444913,3.5860353,5.9947901}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=983; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1589.9183,20.203362,1302.855}; + angles[]={6.1670437,1.5188006,6.1180367}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=979; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1587.9257,18.427124,1286.4584}; + angles[]={6.0793877,2.2179143,5.9494839}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=981; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1590.3883,18.984795,1294.2909}; + angles[]={6.1440897,1.4865538,5.9465108}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=980; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1572.6996,20.701599,1276.6012}; + angles[]={6.1440892,5.9788628,6.0413465}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1000; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1565.2288,24.447861,1322.0028}; + angles[]={6.2232571,1.7024239,6.1571898}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1001; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1565.0952,25.343697,1330.7467}; + angles[]={6.1408219,4.5584431,6.2133002}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1002; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1569.1715,25.989948,1336.5299}; + angles[]={6.105093,6.08076,6.1934271}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1003; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1565.2924,24.157524,1313.5021}; + angles[]={6.276526,1.591941,6.1277828}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1004; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1566.0245,23.931973,1304.7494}; + angles[]={6.2299027,1.3540487,6.0954237}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1005; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1569.9086,22.634796,1297.8793}; + angles[]={6.1670442,3.5398624,6.1147952}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1006; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1560.4841,24.84901,1305.0026}; + angles[]={6.2765174,6.2304454,6.1375575}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1014; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1551.942,25.555603,1305.4492}; + angles[]={0.0066682254,3.3360486,6.249866}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1015; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1562.1472,26.557083,1338.8441}; + angles[]={6.1637564,4.1588669,0.016666256}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1016; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1556.2679,26.664009,1341.9501}; + angles[]={6.183517,2.701339,0.08314155}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1017; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1551.075,25.652164,1336.149}; + angles[]={6.1835093,4.8098307,0.096359625}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1018; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1559.5865,24.970631,1320.6947}; + angles[]={6.2465348,3.3816681,6.2465348}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1020; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1536.8339,23.08535,1323.3557}; + angles[]={0.013332055,4.9092603,0.17809334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1021; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1535.1669,23.102966,1314.7644}; + angles[]={0.010000871,4.8697023,0.25748795}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1022; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1534.5736,22.894356,1306.3411}; + angles[]={6.2598572,4.5480204,0.30364406}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1023; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1535.5444,22.806808,1297.5343}; + angles[]={6.2133002,4.8098226,0.27918026}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1024; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1556.1987,22.993279,1275.9972}; + angles[]={6.2332273,6.0748606,6.2166171}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1025; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1564.8782,22.012066,1275.8969}; + angles[]={6.223258,0.27908379,6.134295}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1026; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1544.3712,22.970936,1276.3702}; + angles[]={6.2033553,3.484431,0.093063653}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1027; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={1541.949,23.091751,1282.86}; + angles[]={6.2465348,4.8098226,0.12599599}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1028; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1542.8103,23.721241,1291.6006}; + angles[]={6.1901226,4.8098226,0.11285178}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1029; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={1534.4877,22.098083,1288.6436}; + angles[]={6.2432065,4.8098226,0.21336848}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1030; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1536.5042,21.467674,1274.993}; + angles[]={6.0476398,2.6679912,0.2323909}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1031; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1530.1013,19.505184,1275.8307}; + angles[]={6.0288177,0.87367237,0.3689594}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1032; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1531.7813,22.24205,1324.4594}; + angles[]={6.2798557,3.371736,0.14888947}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1033; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={1523.5496,20.775696,1326.4277}; + angles[]={6.2299027,3.3689799,0.25436836}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1034; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={1521.6,20.497475,1332.4901}; + angles[]={0.013336525,4.8539219,0.29756171}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1035; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={1532.4495,22.58585,1337.0388}; + angles[]={6.1999731,4.8319468,0.15362917}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1036; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.38101387; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={1535.0826,23.69453,1342.0764}; + angles[]={6.2365508,0.090761781,0.21018289}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1037; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={1532.2581,24.528465,1336.9221}; + angles[]={6.2290211,4.8537178,0.0077142888}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1038; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.2187328; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={1524.0249,20.989544,1340.9696}; + angles[]={0.089758366,1.9742147,0.26681599}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1040; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={1531.1722,22.207092,1328.5992}; + angles[]={6.1999731,4.8319468,0.15362917}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1043; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.048519135; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={1530.9808,24.149708,1328.4825}; + angles[]={6.2290211,4.8537178,0.0077142888}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1044; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9227219; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={1538.5601,23.65435,1331.9336}; + angles[]={0.013332055,4.9092603,0.17809334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1045; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=0.18466568; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={1557.5219,23.278576,1375.6316}; + angles[]={0.1325509,5.0424013,0.12599552}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1054; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.0517578e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={1552.4856,22.373363,1376.6687}; + angles[]={0.15214813,3.0190187,0.16839033}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1055; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={1546.9753,21.991814,1372.7866}; + angles[]={0.13909611,4.8535819,0.1909772}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1056; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={1545.035,22.907566,1364.3673}; + angles[]={0.15865518,4.9550209,0.17809334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1057; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.7166138e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={1555.1969,24.050697,1367.3365}; + angles[]={0.14236391,4.9434161,0.12927477}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1058; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=5.7220459e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={1571.9805,25.15213,1365.1285}; + angles[]={0.063249089,2.9319015,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1059; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.1444092e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={1585.1672,23.250153,1357.6809}; + angles[]={0.019996032,5.5340219,5.9947896}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1060; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=6.8664551e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={1583.2341,24.058018,1349.666}; + angles[]={0.039977662,1.3550264,5.9978566}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1061; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.0054321e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={1579.3806,25.001278,1351.4919}; + angles[]={0.076516926,5.3315902,6.0319424}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1062; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={1572.9878,26.63171,1348.4447}; + angles[]={0.083140828,0.34672803,6.1147957}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1063; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={1551.2305,25.031105,1322.6752}; + angles[]={0.019999012,3.3816681,0.019999012}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1064; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={1541.0695,24.460464,1338.3864}; + angles[]={6.1835175,1.4329363,0.16839033}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1065; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=2.0980835e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={1543.0361,23.962852,1356.0427}; + angles[]={0.18131967,4.9965858,0.20059876}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1066; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={1538.6079,23.953682,1351.0117}; + angles[]={0.18776233,3.2218666,0.23554493}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1067; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={1530.5031,21.447437,1353.0944}; + angles[]={0.15865593,0.4923676,0.27609655}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1068; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={1523.6923,19.988834,1347.5726}; + angles[]={0.14562868,0.56597477,0.39194757}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1069; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.1444092e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={1560.3602,27.327297,1348.415}; + angles[]={0.0033296358,1.8099885,0.033319358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1070; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={1584.0217,24.141148,1340.7958}; + angles[]={6.2731905,4.7223816,5.9795418}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1071; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.7166138e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={1583.5553,23.653034,1332.3429}; + angles[]={6.1277814,4.7892556,6.1506343}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1072; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=2.8610229e-005; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={1574.8674,25.096199,1334.6508}; + angles[]={6.0922084,1.3438888,6.1802182}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1074; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-006; + class CustomAttributes + { + class Attribute0 + { + property="DoorStates"; + expression="['init',_this,_value] call bis_fnc_3DENAttributeDoorStates;"; + class Value + { + class data + { + singleType="ARRAY"; + class value + { + items=3; + class Item0 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item1 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + class Item2 + { + class data + { + singleType="SCALAR"; + value=43690; + }; + }; + }; + }; + }; + }; + class Attribute1 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={1553.2729,27.965229,1313.996}; + angles[]={0,0.23247632,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=946; + type="Land_Cargo_HQ_V4_F"; + atlOffset=1.9073486e-006; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={1526.8792,25.426027,1330.4266}; + angles[]={0,1.7622348,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=947; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={1584.8203,25.756956,1318.7958}; + angles[]={0,4.8792953,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=948; + type="Land_Cargo_Patrol_V4_F"; + }; + }; + id=1075; + atlOffset=-1.8564777; + }; + }; + id=159; + atlOffset=-1.944416; + }; + class Item8 + { + dataType="Layer"; + name="outpost_12"; + class Entities + { + items=9; + class Item0 + { + dataType="Marker"; + position[]={2022.8086,15.706732,4238.5645}; + name="outp_12_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=229.37695; + id=171; + atlOffset=9.5367432e-007; + }; + class Item1 + { + dataType="Marker"; + position[]={1937.2944,35.909603,4191.5942}; + name="outpost_12"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=87.795113; + b=64.609238; + angle=226.3493; + id=172; + atlOffset=0.42568207; + }; + class Item2 + { + dataType="Marker"; + position[]={1892.792,35.9408,4188.5874}; + name="outp_12_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=173; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={2015.9777,15.281361,4232.7422}; + angles[]={0.020001473,2.3948362,0}; + }; + areaSize[]={28.998838,0,27.229374}; + areaIsRectangle=1; + flags=1; + id=1077; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.10945702; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=7; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={1918.027,38.362396,4193.7632}; + angles[]={0,1.5557342,0}; + }; + areaSize[]={7.4260001,0,22.688}; + areaIsRectangle=1; + flags=1; + id=1100; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.83778763; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=11; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={1916.715,24.069229,4192.7983}; + angles[]={0,4.9384789,0}; + }; + areaSize[]={51.316002,0,78.141266}; + flags=1; + id=1394; + type="ModuleHideTerrainObjects_F"; + atlOffset=-13.149475; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=7; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Layer"; + name="b o x"; + state=1; + class Entities + { + items=26; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2014.0011,16.728142,4257.0317}; + angles[]={0,5.4757452,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1193; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=-9.5367432e-007; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2011.7112,17.178431,4255.9512}; + angles[]={0,5.4757452,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=1183; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.52226925; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2008.9109,17.216461,4253.0732}; + angles[]={0,5.4757452,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=1184; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.38233185; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2016.355,16.980995,4256.0532}; + angles[]={0,0.76334614,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1186; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2019.2526,17.392317,4253.3203}; + angles[]={0,0.76334614,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1187; + type="Land_Mil_WallBig_4m_F"; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={2041.2661,16.451284,4226.7485}; + angles[]={0,0.89971662,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1198; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=-9.5367432e-007; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2040.4626,16.221172,4229.3164}; + angles[]={0,0.89971662,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1199; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2037.9489,16.140001,4232.4307}; + angles[]={0,0.89971662,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1200; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2040.0558,16.661245,4224.5225}; + angles[]={0,2.4705029,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1201; + type="Land_Mil_WallBig_4m_F"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2036.9344,16.785324,4222.0439}; + angles[]={0,2.4705029,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1202; + type="Land_Mil_WallBig_4m_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2022.1765,17.605944,4250.5869}; + angles[]={0,0.76334614,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1203; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2025.0199,17.560932,4247.7373}; + angles[]={0,0.80757999,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1204; + type="Land_Mil_WallBig_4m_F"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2027.7675,17.326096,4244.8452}; + angles[]={0,0.8505981,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1205; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2030.3583,16.956417,4241.7715}; + angles[]={0,0.86701035,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1206; + type="Land_Mil_WallBig_4m_F"; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2032.923,16.544485,4238.6973}; + angles[]={0,0.91261375,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1207; + type="Land_Mil_WallBig_4m_F"; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2035.4208,16.247305,4235.5845}; + angles[]={0,0.88755161,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1208; + type="Land_Mil_WallBig_4m_F"; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2019.004,15.580117,4200.1885}; + angles[]={0,2.4289148,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1246; + type="Land_Mil_WallBig_Corner_F"; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2021.5363,15.097354,4201.0981}; + angles[]={0,2.4289148,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1247; + type="Land_Mil_WallBig_4m_F"; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={2024.5433,15.016183,4203.7397}; + angles[]={0,2.4289148,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1248; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.21486473; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={2016.7296,16.208242,4201.3057}; + angles[]={0,3.9997013,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1249; + type="Land_Mil_WallBig_4m_F"; + atlOffset=9.5367432e-007; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={2014.1235,17.158188,4204.3208}; + angles[]={0,3.9997013,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1250; + type="Land_Mil_WallBig_4m_F"; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1990.9839,20.813484,4234.1582}; + angles[]={0,3.9490509,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1255; + type="Land_Mil_WallBig_Corner_F"; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1991.9624,21.595221,4231.8228}; + angles[]={0,3.9490509,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=1256; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.5222702; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1994.7141,21.516968,4228.8984}; + angles[]={0,3.9490509,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=1257; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.38232803; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1992.0652,20.275185,4236.4663}; + angles[]={0,5.5198374,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1258; + type="Land_Mil_WallBig_4m_F"; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1994.9232,19.060638,4239.2407}; + angles[]={0,5.5198374,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1259; + type="Land_Mil_WallBig_4m_F"; + }; + }; + id=1197; + atlOffset=-0.027822495; + }; + class Item7 + { + dataType="Layer"; + name="tower box"; + state=1; + class Entities + { + items=13; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1917.5891,38.670887,4201.8931}; + angles[]={0,0.015265178,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1111; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={1913.5748,38.815639,4201.9878}; + angles[]={0,0.015265178,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1112; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1909.5997,38.829346,4202.0557}; + angles[]={0,0.015265178,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1113; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1920.8231,38.699501,4198.5586}; + angles[]={0,1.5860515,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1114; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1917.6222,38.906651,4191.3882}; + angles[]={0,3.1568484,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1117; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055870056; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1909.6626,38.911068,4191.5093}; + angles[]={0,3.1568484,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1119; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1913.6736,38.9613,4191.4541}; + angles[]={0,3.1568484,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1118; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055862427; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1920.8352,38.816151,4194.625}; + angles[]={0,1.5860515,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1115; + type="Land_Mil_WallBig_4m_F"; + atlOffset=0.055866241; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1919.9391,38.739502,4200.9497}; + angles[]={0,0.015265178,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1110; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=0.18770599; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1907.2883,38.846001,4192.4556}; + angles[]={0,3.1568661,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1160; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=0.0063667297; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1907.4839,38.8512,4201.2168}; + angles[]={0,4.7276621,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1166; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=0.050037384; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1919.9413,38.847431,4192.2407}; + angles[]={0,1.5860691,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1116; + type="Land_Mil_WallBig_Corner_F"; + atlOffset=0.055862427; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1914.0916,50.190926,4195.8716}; + angles[]={0,0.0018250355,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1101; + type="Land_Cargo_Tower_V4_F"; + atlOffset=3.8146973e-006; + }; + }; + id=1455; + atlOffset=-0.071792603; + }; + class Item8 + { + dataType="Layer"; + name="Layer 600"; + state=1; + class Entities + { + items=116; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={2004.4047,16.418997,4253.3252}; + angles[]={0.079829417,2.3220699,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1078; + type="Land_BagBunker_01_small_green_F"; + atlOffset=-0.053587914; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={2035.4037,15.373093,4217.1138}; + angles[]={6.2132993,5.8948684,6.2498641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1081; + type="Land_BagBunker_01_small_green_F"; + atlOffset=0.076694489; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2012.9126,15.617258,4258.7852}; + angles[]={0.06988623,2.3526678,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1084; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2042.248,15.685711,4224.4312}; + angles[]={0.069885373,5.5802288,6.2465363}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1093; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={2016.7295,15.249972,4199.1113}; + angles[]={0.013332055,0.82872856,6.0539536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1245; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1989.1842,20.309856,4233.1479}; + angles[]={0.16839033,0.87313479,6.1571898}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1252; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={2038.6879,15.79837,4221.7769}; + angles[]={6.2698536,5.6612821,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1082; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={2009.7074,15.663858,4255.5342}; + angles[]={0.079830162,2.3407421,0.013332055}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1083; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={2016.2343,15.946877,4257.0786}; + angles[]={0.069885373,3.8616226,0.093063653}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1085; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=-9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2020.4717,16.507359,4253.3184}; + angles[]={0.019996032,3.8616226,0.063249089}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1086; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2024.723,16.628756,4249.3682}; + angles[]={6.2698579,3.9309731,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1087; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={2028.6899,16.322868,4245.3237}; + angles[]={6.2432065,3.9310331,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1088; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={2032.394,15.727086,4240.9844}; + angles[]={6.2332263,4.0640001,6.1670442}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1089; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={2035.7931,15.215896,4236.4521}; + angles[]={0.0033296358,4.0642729,6.1539102}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1090; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2039.3512,15.088191,4231.9365}; + angles[]={0.096367389,0.90909594,6.183517}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1091; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2042.8414,15.346435,4227.4546}; + angles[]={0.11614174,0.89311606,6.2265792}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1092; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2043.1001,11.231201,4170.1768}; + angles[]={0.02999169,2.4442086,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1094; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2044.3523,11.073595,4174.1411}; + angles[]={0.019999012,3.9648945,6.2432065}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1095; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1925.8052,8.8888063,4296.3218}; + angles[]={0.039977662,0.84235406,0.096367389}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1096; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1921.812,8.3695498,4297.4785}; + angles[]={0.016662678,2.3676598,0.13909568}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1097; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={2013.9294,16.04236,4202.5581}; + angles[]={6.2232571,0.90711749,6.0288172}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1242; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={2024.1079,13.964373,4202.3179}; + angles[]={6.2299027,2.4479134,6.1310368}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1243; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=0.18343925; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={2019.775,14.494232,4198.644}; + angles[]={0.02666023,2.4286902,6.0889969}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1244; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1992.2906,20.390079,4229.8027}; + angles[]={0.17162789,0.86167389,6.1310377}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1251; + type="Land_HBarrier_01_line_5_green_F"; + atlOffset=-1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1991.0355,19.486542,4236.3911}; + angles[]={0.16838962,2.3804507,6.1670442}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1253; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1994.9789,17.881126,4240.4585}; + angles[]={0.17162754,2.3357406,6.1212816}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1254; + type="Land_HBarrier_01_line_5_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1869.9924,33.298725,4208.5317}; + angles[]={0.15540366,1.8504102,0.16514829}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1371; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1874.6025,32.610821,4215.2783}; + angles[]={0.24497849,2.464432,0.14888987}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1372; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1882.0233,33.535431,4215.8877}; + angles[]={0.25124326,3.379935,0.13909654}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1373; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1890.4779,35.083649,4214.0986}; + angles[]={0.23554544,0.24050155,0.11942901}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1374; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1898.0896,35.592415,4215.3994}; + angles[]={0.26060224,5.4530988,0.099669769}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1375; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1905.3536,35.335354,4218.333}; + angles[]={0.29145628,0.077207275,0.043306526}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1376; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1913.5167,35.416107,4218.3638}; + angles[]={0.28532985,6.2211924,6.2565231}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1377; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1921.988,35.053722,4217.5869}; + angles[]={0.25124228,0.32428178,6.1967354}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1378; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1926.848,34.066021,4219.3208}; + angles[]={0.29451194,1.5183699,6.1736274}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1379; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1926.5106,36.078415,4210.9189}; + angles[]={0.17809334,1.67098,6.1736255}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1380; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1931.7416,36.10915,4207.2397}; + angles[]={0.1521493,6.2644649,6.1703334}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1381; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1940.1473,33.126156,4216.8047}; + angles[]={0.25124276,6.2752843,6.1440897}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1382; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1936.5753,31.991436,4222.1494}; + angles[]={0.333702,4.6006079,6.1506338}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1383; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={1944.9347,33.588459,4211.7891}; + angles[]={0.181321,4.1710634,6.134295}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1384; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1950.4094,33.763027,4205.4839}; + angles[]={0.12599505,0.6394648,6.1083241}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1385; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={1946.7916,28.648891,4158.4634}; + angles[]={5.9317408,0.96569353,6.0986428}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1386; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1936.6691,28.297058,4153.1938}; + angles[]={5.8883944,1.1737006,6.134295}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1387; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1941.7428,24.901131,4147.4839}; + angles[]={5.8383789,0.3724958,6.1018653}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1388; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1953.3726,25.76553,4154.832}; + angles[]={5.8686786,0.10408769,6.0444913}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1389; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={1949.6984,22.571922,4145.9912}; + angles[]={5.816875,0.056130316,6.0666351}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1390; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={1961.2921,24.852386,4157.6499}; + angles[]={5.8770871,5.6579037,6.0040054}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1391; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={1958.369,21.176655,4147.7432}; + angles[]={5.8222084,5.9909406,6.0040054}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1392; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={1966.179,20.746784,4152.25}; + angles[]={5.8410978,5.6496396,5.9026794}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1393; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={1955.2554,33.562592,4198.52}; + angles[]={0.066569164,1.3461498,6.0922093}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1395; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={1962.1808,31.693417,4183.624}; + angles[]={6.1703339,5.0092888,6.0101767}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1397; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={1958.5924,31.372746,4175.7871}; + angles[]={6.0539536,5.2591634,6.060286}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1398; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={1953.2263,30.902504,4169.2173}; + angles[]={6.0009284,5.5715823,6.063458}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1399; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={1946.4926,30.653996,4164.0088}; + angles[]={5.9886732,5.7791977,6.105093}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1400; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={1933.6694,34.007957,4168.9976}; + angles[]={6.0319424,5.750864,6.1670442}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1401; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={1926.2513,33.687645,4165.5889}; + angles[]={6.0070891,6.0195632,6.2332263}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1402; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={1941.0186,34.187023,4173.8701}; + angles[]={6.0793881,5.6203461,6.134295}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1403; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={1930.043,29.924446,4155.0508}; + angles[]={5.9229541,6.0752378,6.1736259}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1404; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={1921.5377,30.000809,4154.3594}; + angles[]={5.9055557,0.053431004,6.2798381}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1405; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={1912.8572,29.877163,4154.4614}; + angles[]={5.8998084,0.005929851,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1406; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={1921.1525,33.494396,4164.5244}; + angles[]={6.0009284,1.3447326,6.2765174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1407; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={1945.1008,34.251953,4177.3477}; + angles[]={6.1083236,0.5154919,6.1245303}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1408; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={1957.0828,33.022739,4184.0532}; + angles[]={6.1769204,0.31761068,6.0507951}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1409; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={1916.8934,34.834232,4169.2671}; + angles[]={6.022583,3.0644608,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1410; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={1911.0981,35.570507,4172.3179}; + angles[]={6.0382066,1.418282,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1411; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={1909.7601,32.501797,4161.8828}; + angles[]={5.9584379,0.021499455,0.036649179}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1412; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={1901.4004,32.783943,4163.9023}; + angles[]={5.9465108,3.694628,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1413; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={1893.4139,32.841797,4166.0381}; + angles[]={5.9795413,3.0705118,0.079830915}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1414; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={1897.9963,27.489365,4151.4414}; + angles[]={5.852047,2.4082472,0.11285178}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1416; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={1884.3925,28.049927,4156.7856}; + angles[]={5.8714747,0.96569353,0.15214813}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1417; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={1890.7253,26.764309,4151.8579}; + angles[]={5.8410978,0.25009888,0.13909568}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1418; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={1884.2048,33.055183,4171.0356}; + angles[]={6.0319424,1.5392592,0.14236349}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1420; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={1903.2119,35.823708,4174.6621}; + angles[]={6.0761929,4.7243462,0.053282689}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1422; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={1904.0364,33.846825,4166.7314}; + angles[]={5.9765091,1.0597517,0.049959254}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1423; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={1910.3226,37.210705,4180.6797}; + angles[]={6.1245303,1.4995105,0.02666023}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1425; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={1915.3375,37.688229,4183.7036}; + angles[]={6.1506352,3.1325407,6.2765174}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1426; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={1923.6211,35.679699,4173.2437}; + angles[]={6.0793867,5.5106478,6.2498641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1427; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={1929.8425,36.460239,4179.4414}; + angles[]={6.1506348,2.2456706,6.1901226}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1428; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={1949.0452,34.830692,4186.6577}; + angles[]={6.2099833,0.30351132,6.1180367}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1432; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={1893.231,36.608097,4208.5986}; + angles[]={0.15865479,5.2188454,0.1029669}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1433; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={1889.3971,37.127918,4200.6489}; + angles[]={0.076516926,5.0830894,0.11942901}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1434; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={1885.7727,35.859703,4184.002}; + angles[]={6.1408215,4.6829367,0.11942802}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1435; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={1886.7758,36.823982,4192.6035}; + angles[]={6.2265782,4.956646,0.11942951}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1436; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.5834,34.236126,4176.3667}; + angles[]={6.0793881,5.2739935,0.14236264}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1437; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={1903.0692,36.491623,4213.3706}; + angles[]={0.23554416,4.3536634,0.056607127}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1438; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={1891.2184,36.08482,4181.4058}; + angles[]={6.1212816,2.9914176,0.099669769}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1439; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={1899.5037,36.739643,4180.9248}; + angles[]={6.1212826,3.4055085,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1440; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.0049,36.42609,4199.2383}; + angles[]={0.033321146,3.4516773,0.13909654}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1441; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={1878.0292,35.568096,4201.1387}; + angles[]={0.093063012,5.0027165,0.14889027}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1442; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={1868.2811,33.277531,4183.6909}; + angles[]={6.1277823,4.5978746,0.16190405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1443; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Object"; + class PositionInfo + { + position[]={1871.2631,32.355427,4176.292}; + angles[]={6.0698166,0.96569353,0.15865555}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1444; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item91 + { + dataType="Object"; + class PositionInfo + { + position[]={1870.9219,34.385532,4189.3618}; + angles[]={6.196734,6.1325388,0.15865631}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1445; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item92 + { + dataType="Object"; + class PositionInfo + { + position[]={1864.9084,33.224113,4204.1851}; + angles[]={0.041201238,3.2971258,0.14316781}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1446; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item93 + { + dataType="Object"; + class PositionInfo + { + position[]={1862.3157,32.955154,4189.4219}; + angles[]={6.2033563,3.2498319,0.17162824}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1447; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item94 + { + dataType="Object"; + class PositionInfo + { + position[]={1872.0931,34.82663,4197.9053}; + angles[]={0.053282689,3.0377188,0.15865518}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1449; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item95 + { + dataType="Object"; + class PositionInfo + { + position[]={1893.2338,37.608425,4196.4468}; + angles[]={6.2631893,3.2851563,0.08314155}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1450; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item96 + { + dataType="Object"; + class PositionInfo + { + position[]={1917.1582,36.392429,4213.6914}; + angles[]={0.21336904,4.8481979,6.2132983}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1451; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item97 + { + dataType="Object"; + class PositionInfo + { + position[]={1945.1671,34.889114,4203.2852}; + angles[]={0.1325518,5.3657699,6.1277814}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1456; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item98 + { + dataType="Object"; + class PositionInfo + { + position[]={1899.1633,33.575691,4222.6831}; + angles[]={0.30364406,4.3090067,0.079829417}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1457; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item99 + { + dataType="Object"; + class PositionInfo + { + position[]={1957.7611,32.361069,4205.8057}; + angles[]={0.11942901,5.596734,6.0857902}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1458; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item100 + { + dataType="Object"; + class PositionInfo + { + position[]={1944.3724,21.358673,4141.4033}; + angles[]={5.8010459,1.9210757,6.0825863}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1459; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item101 + { + dataType="Object"; + class PositionInfo + { + position[]={1933.3861,26.056061,4147.1636}; + angles[]={5.8410978,2.7441707,6.1506343}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1460; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item102 + { + dataType="Object"; + class PositionInfo + { + position[]={1925.1493,25.633137,4144.584}; + angles[]={5.82757,2.9610279,6.2398791}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1461; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item103 + { + dataType="Object"; + class PositionInfo + { + position[]={1900.647,25.818649,4147.2207}; + angles[]={5.838378,3.4725635,0.11285178}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1462; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item104 + { + dataType="Object"; + class PositionInfo + { + position[]={1908.2748,25.627575,4145.3042}; + angles[]={5.838378,3.1922486,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1463; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item105 + { + dataType="Object"; + class PositionInfo + { + position[]={1916.6956,25.565426,4144.248}; + angles[]={5.8438244,3.2715421,0.036650803}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1464; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item106 + { + dataType="Object"; + class PositionInfo + { + position[]={1912.3267,23.325935,4139.9902}; + angles[]={5.814219,1.6378157,0.053283807}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1465; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item107 + { + dataType="Object"; + class PositionInfo + { + position[]={1963.5338,31.34766,4203.853}; + angles[]={0.11614174,0.99070394,6.057117}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1466; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item108 + { + dataType="Object"; + class PositionInfo + { + position[]={1968.5974,30.563919,4196.8184}; + angles[]={0.0066682254,0.93306178,6.0101767}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1467; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item109 + { + dataType="Object"; + class PositionInfo + { + position[]={1972.2238,29.303234,4189.1841}; + angles[]={6.2166162,1.2391983,5.9704618}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1468; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item110 + { + dataType="Object"; + class PositionInfo + { + position[]={1965.2467,26.439342,4164.9707}; + angles[]={5.9494829,1.8646973,5.9435444}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1469; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item111 + { + dataType="Object"; + class PositionInfo + { + position[]={1968.4664,27.771042,4172.9336}; + angles[]={5.9978566,2.1253684,5.9346819}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1470; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item112 + { + dataType="Object"; + class PositionInfo + { + position[]={1972.157,28.177132,4180.5894}; + angles[]={6.1018658,1.8945326,5.9317408}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1471; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item113 + { + dataType="Object"; + class PositionInfo + { + position[]={1975.3655,28.474457,4195.4063}; + angles[]={0.0066592805,2.5855885,5.9346819}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1472; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item114 + { + dataType="Object"; + class PositionInfo + { + position[]={1900.3243,37.503807,4186.2319}; + angles[]={6.1736255,1.7112346,0.06656827}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1473; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item115 + { + dataType="Object"; + class PositionInfo + { + position[]={1876.2324,34.90493,4186.5742}; + angles[]={6.1604719,4.6675816,0.14562827}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1474; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=1454; + atlOffset=-3.9597702; + }; + }; + id=169; + atlOffset=-5.5688782; + }; + class Item9 + { + dataType="Layer"; + name="outpost_13"; + class Entities + { + items=9; + class Item0 + { + dataType="Marker"; + position[]={3620.1707,5.0055079,3546.0027}; + name="outp_13_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=7.2682543; + b=5; + angle=50.744572; + id=176; + }; + class Item1 + { + dataType="Marker"; + position[]={3636.5244,5.0682425,3525.7795}; + name="outpost_13"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=41.747002; + b=41.204979; + angle=230.63261; + id=177; + atlOffset=-0.016732216; + }; + class Item2 + { + dataType="Marker"; + position[]={3633.1428,5.0871582,3529.7671}; + name="outp_13_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=178; + }; + class Item3 + { + dataType="Marker"; + position[]={3655.1599,5,3502.9219}; + name="outp_13_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=7.2682543; + b=5; + angle=50.744572; + id=525; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3660.3782,7.1991844,3522.7012}; + angles[]={6.2498641,5.5384851,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=526; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.7219,7.2624464,3544.0039}; + angles[]={6.2698488,2.4587758,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=527; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3647.1848,9.9583664,3510.8308}; + angles[]={0,5.5757799,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=787; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=4.7683716e-007; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.0139,10.150312,3534.6987}; + angles[]={0,2.4558923,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=788; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item8 + { + dataType="Layer"; + name="Layer 658"; + class Entities + { + items=43; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={3664.4802,5.6986928,3496.8845}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1703; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={3661.4922,5.6986928,3494.9634}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1704; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3658.1841,5.700923,3493.1492}; + angles[]={0.0033296358,0,6.2798557}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1705; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3654.2354,5.8144398,3491.6431}; + angles[]={0.016666256,0,6.2365522}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1706; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-6.9141388e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3648.8181,6.1082444,3493.5789}; + angles[]={0.033321146,0,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1707; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-7.4863434e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3644.2932,6.2934761,3497.0479}; + angles[]={0.039979152,0,6.2199364}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1708; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-1.0490417e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3604.9995,7.1247668,3538.0049}; + angles[]={0.13582505,1.7616284,6.1310368}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1709; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.017762661; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3606.2954,6.3942189,3542.1013}; + angles[]={0.12927523,1.761753,6.1703339}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1710; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0081005096; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3607.5833,5.8648582,3546.9407}; + angles[]={0.076516926,1.7625548,6.2365537}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1711; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00063371658; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3605.6816,7.6379838,3533.0171}; + angles[]={0.096366771,1.7652185,6.1083231}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1712; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0059814453; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={3612.165,5.6926546,3553.1135}; + angles[]={0,1.7701676,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1713; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0060381889; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.2092,5.6940618,3555.553}; + angles[]={0,1.7678512,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1714; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0046310425; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3619.9363,6.2570682,3570.6389}; + angles[]={6.2698488,2.5134168,0.16190368}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1715; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0057315826; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3621.2615,6.4392943,3576.2261}; + angles[]={0.046633169,2.5131323,0.1358255}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1716; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.011814117; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.3999,6.6827269,3582.021}; + angles[]={0.12271385,2.518944,0.093063653}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1718; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.012485027; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.2761,5.6427598,3582.7097}; + angles[]={0.16838998,2.5247869,6.0793877}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1720; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0060963631; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.0737,5.8745966,3552.699}; + angles[]={6.2398791,2.5134168,0.14888987}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1721; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0039153099; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3683.7908,5.6986928,3503.823}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1722; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3680.8027,5.6986928,3501.9019}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1723; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3677.4946,5.6986928,3500.0876}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1724; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3686.1321,5.6985373,3506.8259}; + angles[]={0,2.346761,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1725; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00015544891; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={3688.0698,5.6952295,3511.0403}; + angles[]={0.003311686,2.346622,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1726; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={3689.4604,5.2013712,3515.7927}; + angles[]={0.17162824,2.3478425,6.1967349}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1727; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.012946129; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.5801,6.6794987,3532.8191}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1681; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={3636.4944,6.6794987,3530.4756}; + angles[]={0,4.0233068,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1682; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3638.4109,6.6940522,3528.1958}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1683; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={3640.2764,6.6940522,3525.9785}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1684; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.7832,6.6630325,3523.9434}; + angles[]={0,2.4613152,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1685; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3637.6458,6.6630325,3522.0935}; + angles[]={0,2.4444366,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1686; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3647.3076,7.3172083,3518.4075}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1687; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={3645.3562,7.3172083,3520.5774}; + angles[]={0,4.0079002,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1688; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.7573,6.7765102,3529.2966}; + angles[]={0,4.0511827,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1689; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.6487,6.7765102,3526.9282}; + angles[]={0,0.94472629,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1690; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={3641.1372,6.6410995,3517.1045}; + angles[]={0,3.9760959,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1691; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={3643.177,6.6410995,3514.9487}; + angles[]={0,0.81095684,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1692; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={3652.2874,7.9492359,3526.6006}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1693; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={3654.2041,7.9492359,3524.3894}; + angles[]={0,0.88048148,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1694; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.6511,7.8753934,3535.595}; + angles[]={0,0.88665569,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1695; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={3640.6897,7.8753934,3537.8506}; + angles[]={0,3.9919853,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1696; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={3646.1997,8.7259083,3538.2817}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1697; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={3648.0532,8.7259083,3536.0837}; + angles[]={0,0.86956608,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1698; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={3654.0173,8.3289127,3542.4749}; + angles[]={0,4.0178766,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1699; + type="Land_BagFence_Long_F"; + atlOffset=0.81589794; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={3655.9009,8.3289127,3540.3274}; + angles[]={0,0.83907932,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1700; + type="Land_BagFence_Long_F"; + atlOffset=0.97120619; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=1747; + atlOffset=0.74597597; + }; + }; + id=174; + atlOffset=-0.23580074; + }; + class Item10 + { + dataType="Layer"; + name="outpost_14"; + class Entities + { + items=8; + class Item0 + { + dataType="Marker"; + position[]={5598.438,14.498236,3481.9089}; + name="outp_14_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=257.70401; + id=181; + }; + class Item1 + { + dataType="Marker"; + position[]={5564.0557,12.092425,3475.7463}; + name="outpost_14"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=18.733721; + b=58.196159; + angle=341.49634; + id=182; + atlOffset=3.0603857; + }; + class Item2 + { + dataType="Marker"; + position[]={5564.3228,8.895956,3473.9114}; + name="outp_14_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=183; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={5565.1582,8.967452,3474.1584}; + angles[]={6.2000442,0,0.089758366}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=524; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={5544.4414,13.956886,3499.3816}; + angles[]={0,4.4198084,0}; + }; + areaSize[]={5,0,9.7683287}; + flags=1; + id=1578; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={5581.7222,15.751527,3437.4343}; + angles[]={6.2698488,5.804306,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1573; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={5558.0273,13.586267,3525.4807}; + angles[]={0.033321146,2.9110644,0.016662678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1574; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={5544.499,13.938406,3499.5139}; + angles[]={0,1.2116787,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1577; + type="Land_Bunker_01_big_F"; + atlOffset=0.77512932; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=179; + atlOffset=-0.75110531; + }; + class Item11 + { + dataType="Layer"; + name="outpost_15"; + class Entities + { + items=30; + class Item0 + { + dataType="Marker"; + position[]={3640.7849,1.5204786,7866.7744}; + name="outp_15_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=9; + b=5; + angle=74.580002; + id=186; + }; + class Item1 + { + dataType="Marker"; + position[]={3624.363,1.8605371,7886.2598}; + name="outpost_15"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=55.434483; + b=65.694; + angle=345.7731; + id=187; + atlOffset=0.33421385; + }; + class Item2 + { + dataType="Marker"; + position[]={3629.4434,1.8906006,7918.2051}; + name="outp_15_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=188; + }; + class Item3 + { + dataType="Marker"; + position[]={3668.5645,1.5059766,7864.793}; + name="outp_15_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=9; + b=5; + angle=345.20923; + id=500; + }; + class Item4 + { + dataType="Layer"; + name="Trash and Decor"; + class Entities + { + items=37; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={3532.542,2.9935522,7915.1528}; + angles[]={0,1.4151479,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=559; + type="Land_BurntGarbage_01_F"; + atlOffset=0.0020000935; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={3618.2498,2.0271463,7888.9634}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=588; + type="Land_Garbage_square5_F"; + atlOffset=3.528595e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3614.051,2.0327871,7891.939}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=589; + type="Land_Garbage_square5_F"; + atlOffset=0.43674719; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3624.9216,2.1050577,7900.0864}; + angles[]={6.2698536,0,6.2798557}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=560; + type="Land_GarbageBags_F"; + atlOffset=-1.1920929e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.6919,2.3774076,7907.0693}; + angles[]={6.2731905,0,0.033319358}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=591; + type="Land_GarbageBags_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3617.5991,2.378495,7881.376}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=581; + type="Land_GarbageBarrel_02_buried_F"; + atlOffset=0.5150001; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.936,6.4376779,7905.2988}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=561; + type="Land_GarbageBarrel_01_english_F"; + atlOffset=4.2915344e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3611.72,2.1716564,7897.7881}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=539; + type="Land_GarbageBin_03_F"; + atlOffset=0.003000021; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3648.4561,2.0748317,7903.8311}; + angles[]={0,1.8916402,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=590; + type="Land_Decal_Garbage_01_F"; + atlOffset=0.0050001144; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3646.1421,1.983484,7894.1079}; + angles[]={6.2431998,4.2453737,0.020001473}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=583; + type="Land_GarbagePallet_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.8601,2.6245298,7927.752}; + angles[]={6.2698507,4.3584533,0.0033335788}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=587; + type="Land_GarbageWashingMachine_F"; + atlOffset=-2.3841858e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={3623.2444,2.1956251,7905.7324}; + angles[]={6.2765174,3.553721,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=596; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.7957,1.9332606,7872.6514}; + angles[]={0,4.5275817,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=600; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.7783,1.9258558,7859.7041}; + angles[]={0,1.4758453,0.003311686}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=604; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3633.3813,1.9608501,7857.2212}; + angles[]={6.2798557,4.4236336,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=609; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.6414,1.9300843,7863.4053}; + angles[]={6.2798557,4.5335999,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=610; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3629.7588,1.9332606,7869.0063}; + angles[]={0,1.4387231,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=611; + type="Land_GarbageHeap_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.3145,2.475168,7891.7993}; + angles[]={0,6.0272512,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=612; + type="Land_GarbageHeap_01_F"; + atlOffset=0.028535366; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.5024,2.4409709,7890.9883}; + angles[]={0,2.8639579,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=613; + type="Land_GarbageHeap_01_F"; + atlOffset=3.516674e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3642.7056,2.4132471,7894.1421}; + angles[]={0,4.3884034,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=585; + type="Land_GarbageHeap_02_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.3416,1.5498239,7869.3726}; + angles[]={0,1.453863,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=601; + type="Land_GarbageHeap_02_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.7007,1.5397775,7856.5845}; + angles[]={6.2798557,1.1467947,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=605; + type="Land_GarbageHeap_02_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={3644.699,2.8704963,7886.6016}; + angles[]={0,4.5146122,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=563; + type="Land_GarbageHeap_03_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={3637.884,2.870496,7911.4951}; + angles[]={0,4.6069808,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=593; + type="Land_GarbageHeap_03_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.175,2.8569591,7904.6177}; + angles[]={6.276526,0.70956862,0.023328418}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=595; + type="Land_GarbageHeap_03_F"; + atlOffset=0.49835026; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3626.5681,2.8704963,7904.0742}; + angles[]={0,4.3026175,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=597; + type="Land_GarbageHeap_03_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={3625.5044,2.8704965,7908.1885}; + angles[]={0,1.1941241,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=598; + type="Land_GarbageHeap_03_F"; + atlOffset=2.3841858e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={3632.2844,2.0070732,7865.4404}; + angles[]={0,1.3721092,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=602; + type="Land_GarbageHeap_03_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3631.1086,2.0513868,7867.7041}; + angles[]={0,4.9347725,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=607; + type="Land_GarbageHeap_03_F"; + atlOffset=0.044313669; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3643.9077,2.8556998,7890.626}; + angles[]={0,1.2428546,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=558; + type="Land_GarbageHeap_04_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={3639.3892,2.8556998,7907.585}; + angles[]={0,4.1744428,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=594; + type="Land_GarbageHeap_04_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={3627.2109,2.8556998,7900.6021}; + angles[]={0,1.181334,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=599; + type="Land_GarbageHeap_04_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={3632.7195,1.9887854,7862.2329}; + angles[]={6.2798557,1.5383919,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=603; + type="Land_GarbageHeap_04_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={3630.6604,2.0365906,7870.6025}; + angles[]={0,3.6786401,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=606; + type="Land_GarbageHeap_04_F"; + atlOffset=1.1920929e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={3634.5093,2.026113,7856.8384}; + angles[]={6.2798557,1.4944817,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=608; + type="Land_GarbageHeap_04_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.6382,2.9912639,7891.4609}; + angles[]={0,2.8466961,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=615; + type="Land_GarbageHeap_04_F"; + atlOffset=0.1849277; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={3628.1919,1.9544735,7890.9702}; + angles[]={6.2731848,0,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=580; + type="Land_BarrelTrash_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=617; + atlOffset=0.28015399; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={3627.7903,3.6245832,7894.0156}; + angles[]={0,4.4014683,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=533; + type="Land_SandbagBarricade_01_F"; + atlOffset=2.3841858e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={3615.468,3.2734354,7885.7656}; + angles[]={0,4.4552708,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=571; + type="Land_SandbagBarricade_01_F"; + atlOffset=3.516674e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={3618.7363,3.2734356,7886.6123}; + angles[]={0,1.2913513,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=572; + type="Land_SandbagBarricade_01_F"; + atlOffset=3.5405159e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={3611.5591,3.2815998,7896.4741}; + angles[]={0,5.9986725,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=536; + type="Land_SandbagBarricade_01_hole_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={3616.1338,3.2815995,7897.7012}; + angles[]={0,5.9986725,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + disableSimulation=1; + }; + id=537; + type="Land_SandbagBarricade_01_hole_F"; + atlOffset=0.35690713; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={3617.303,3.2756066,7885.4551}; + angles[]={0,2.8446074,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=573; + type="Land_SandbagBarricade_01_hole_F"; + atlOffset=0.47000003; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.6865,2.4048338,7880.2222}; + angles[]={0,6.0368381,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=550; + type="Land_BagFence_End_F"; + atlOffset=0.51140225; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={3610.1021,2.4030337,7895.9214}; + angles[]={0,6.1037621,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=556; + type="Land_BagFence_End_F"; + atlOffset=0.43945825; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={3617.6128,2.403034,7897.8218}; + angles[]={0,2.8554029,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=557; + type="Land_BagFence_End_F"; + atlOffset=0.35036552; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={3609.8723,2.4126835,7894.856}; + angles[]={0,1.3117306,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=540; + type="Land_BagFence_Long_F"; + atlOffset=0.4540875; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={3610.7915,2.412684,7891.9141}; + angles[]={0,1.2636789,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=541; + type="Land_BagFence_Long_F"; + atlOffset=3.5762787e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={3611.6204,2.4069867,7888.998}; + angles[]={0,1.3117306,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=542; + type="Land_BagFence_Long_F"; + atlOffset=1.1920929e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={3612.4863,2.4069867,7886.1904}; + angles[]={0,1.3117306,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=543; + type="Land_BagFence_Long_F"; + atlOffset=1.1920929e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={3613.3354,2.4144845,7882.9355}; + angles[]={0,1.3117306,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=544; + type="Land_BagFence_Long_F"; + atlOffset=0.54800749; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={3614.2146,2.4144855,7879.7134}; + angles[]={0,1.3117306,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=545; + type="Land_BagFence_Long_F"; + atlOffset=8.3446503e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={3616.1479,2.4144855,7878.853}; + angles[]={0,5.9817052,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=546; + type="Land_BagFence_Long_F"; + atlOffset=8.3446503e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={3619.011,2.4144835,7879.6909}; + angles[]={0,5.9817052,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=548; + type="Land_BagFence_Long_F"; + atlOffset=0.52052724; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.769,2.4144845,7881.6685}; + angles[]={0,4.44627,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=549; + type="Land_BagFence_Long_F"; + atlOffset=0.49925506; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={3622.1387,2.414485,7885.3486}; + angles[]={0,4.44627,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=551; + type="Land_BagFence_Long_F"; + atlOffset=3.5762787e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.9622,2.4069862,7888.6318}; + angles[]={0,4.44627,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=552; + type="Land_BagFence_Long_F"; + atlOffset=0.43679595; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={3620.0349,2.4069867,7891.5396}; + angles[]={0,4.3916416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=553; + type="Land_BagFence_Long_F"; + atlOffset=1.1920929e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={3619.1887,2.4126835,7894.4204}; + angles[]={0,4.44627,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=554; + type="Land_BagFence_Long_F"; + atlOffset=0.3944267; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={3618.3655,2.412684,7897.2905}; + angles[]={0,4.44627,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=555; + type="Land_BagFence_Long_F"; + atlOffset=3.5762787e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={3646.1699,2.7627344,7898.314}; + angles[]={0,4.4297447,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=531; + type="Land_BagFence_Round_F"; + atlOffset=0.4297291; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={3646.0759,3.5251546,7898.334}; + angles[]={0,4.4297447,0}; + }; + side="Empty"; + class Attributes + { + disableSimulation=1; + }; + id=532; + type="Land_BagFence_Round_F"; + atlOffset=0.76241994; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=184; + atlOffset=0.29345679; + }; + class Item12 + { + dataType="Layer"; + name="outpost_16"; + class Entities + { + items=6; + class Item0 + { + dataType="Marker"; + position[]={4874.3218,9.7889996,4373.6719}; + name="outp_16_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=46.484993; + id=191; + atlOffset=0.06441021; + }; + class Item1 + { + dataType="Marker"; + position[]={4938.7158,20.652599,4435.9702}; + name="outpost_16"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=77.466286; + b=41.750999; + angle=240.76921; + id=192; + atlOffset=-0.15583801; + }; + class Item2 + { + dataType="Marker"; + position[]={4900.8472,18.443762,4490.2529}; + name="outp_16_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=193; + atlOffset=1.9073486e-006; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={4919.9551,20.453438,4483.4189}; + angles[]={0.033318337,3.1127248,6.2332339}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1579; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={4972.9238,21.679182,4396.791}; + angles[]={6.2033563,5.4523325,6.2299018}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1581; + type="Land_BagBunker_01_small_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={4926.6396,24.059999,4435.7437}; + }; + side="Empty"; + flags=1; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1580; + type="Land_Bunker_01_HQ_F"; + atlOffset=0.3493309; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=189; + atlOffset=-0.5079155; + }; + class Item13 + { + dataType="Layer"; + name="outpost_17"; + class Entities + { + items=17; + class Item0 + { + dataType="Marker"; + position[]={1822.437,10.379,7237.5952}; + name="outp_17_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=16; + b=5; + angle=118.815; + id=196; + atlOffset=5.3789997; + }; + class Item1 + { + dataType="Marker"; + position[]={1937.4047,11.02401,7143.7446}; + name="outpost_17"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=70.71759; + b=67.500221; + angle=153.4231; + id=197; + atlOffset=3.9344769; + }; + class Item2 + { + dataType="Marker"; + position[]={1948.8313,6.6147413,7127.0513}; + name="outp_17_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=22.58902; + id=198; + atlOffset=1.5991602; + }; + class Item3 + { + dataType="Layer"; + name="hide marker"; + state=3; + class Entities + { + items=6; + class Item0 + { + dataType="Logic"; + class PositionInfo + { + position[]={1910.5786,9.710063,7201.6338}; + angles[]={6.1473603,1.0768205,6.223258}; + }; + areaSize[]={16.858341,0,47.292839}; + areaIsRectangle=1; + flags=1; + id=655; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.048270226; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item1 + { + dataType="Logic"; + class PositionInfo + { + position[]={1840.1199,5,7226.5356}; + angles[]={0,2.0385392,0}; + }; + areaSize[]={16.858341,0,16.064989}; + areaIsRectangle=1; + flags=1; + id=624; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.0015478134; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={1995.3394,8.764185,7174.0566}; + angles[]={0,2.6443412,0}; + }; + areaSize[]={16.858341,0,80.093956}; + areaIsRectangle=1; + flags=1; + id=656; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.3991776; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={1883.5977,10.157244,7116.6748}; + angles[]={0,2.6820977,0}; + }; + areaSize[]={16.858341,0,80.093956}; + areaIsRectangle=1; + flags=1; + id=701; + type="ModuleHideTerrainObjects_F"; + atlOffset=1.399147; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={1970.5674,5,7090.4111}; + angles[]={0,4.2413349,0}; + }; + areaSize[]={16.858341,0,47.292839}; + areaIsRectangle=1; + flags=1; + id=702; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={1965.6571,7.1168036,7169.73}; + angles[]={6.1868181,1.0768205,0.049958061}; + }; + areaSize[]={16.858341,0,17.235287}; + areaIsRectangle=1; + flags=1; + id=723; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + }; + id=707; + atlOffset=1.7847123; + }; + class Item4 + { + dataType="Layer"; + name="Walls"; + state=1; + class Entities + { + items=103; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={1887.365,6.0791178,7173.6377}; + angles[]={6.2531939,5.7092481,6.2033553}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=730; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0020580292; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={1866.2902,8.3028994,7160.0713}; + angles[]={6.1769204,5.7068658,6.0539536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=731; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0016999245; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1861.3938,9.0861683,7157.6069}; + angles[]={6.1604714,5.7068658,6.0825868}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=732; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00011444092; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={1890.9116,5.8678284,7176.1455}; + angles[]={6.2398791,5.7068658,6.2299027}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=733; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00019741058; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={1854.2904,9.4522448,7184.2207}; + angles[]={0.10955941,0.99548596,6.1802173}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=734; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-9.5367432e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1856.8489,9.56108,7180.7031}; + angles[]={0.099669173,0.99304575,6.1802173}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=735; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-8.4877014e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1872.5165,9.250411,7194.2471}; + angles[]={6.0444913,1.0147938,0.076516926}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=736; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00033187866; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.0812,8.4320984,7190.6548}; + angles[]={6.0444913,1.0043193,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=737; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0029420853; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1869.4928,10.338092,7200.8843}; + angles[]={6.1440897,4.9620171,0.096367389}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=738; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0020771027; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1870.2542,10.826658,7205.061}; + angles[]={6.223258,4.9499006,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=739; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0064592361; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1844.0931,11.13568,7166.0405}; + angles[]={0.039979152,2.9879956,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=740; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00022029877; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1839.8119,11.232165,7165.085}; + angles[]={0.043305151,2.9782577,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=741; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00016975403; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1960.8657,5.9198351,7239.9946}; + angles[]={6.2631865,1.0147938,6.1637559}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=742; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-1.0967255e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1963.4304,5.575036,7236.4023}; + angles[]={6.2731905,1.0043193,6.1703343}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=743; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-8.1062317e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={2033.5482,7.6622949,7118.4541}; + angles[]={0.046633169,2.7781501,0.049959254}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=746; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00093412399; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={2029.5417,7.5049052,7116.6235}; + angles[]={6.276526,2.7678289,0.039977662}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=747; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00019407272; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={2025.9215,7.091773,7106.2388}; + angles[]={6.2299027,1.1799685,0.076516926}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=748; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-3.7670135e-005; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={2027.865,6.9889698,7102.2725}; + angles[]={6.2066684,1.1705298,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=749; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1910.9518,17.20682,7055.6709}; + angles[]={6.1342959,1.3616418,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=750; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1912.1532,16.444294,7051.4214}; + angles[]={6.063458,1.3488165,6.2665191}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=751; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1898.3424,15.814228,7060.7749}; + angles[]={6.1571898,2.6404777,0.39194757}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=752; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1894.8146,13.845347,7058.2402}; + angles[]={6.0954232,2.6408122,0.47425726}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=753; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.0083198547; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1976.9688,5.4571915,7222.5786}; + angles[]={0.17486261,0,6.183517}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=758; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1991.2263,7.874486,7195.5308}; + angles[]={0.086450629,0,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=759; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1970.0177,5.6986928,7070.606}; + angles[]={0,3.1299419,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=760; + type="Land_CzechHedgehog_01_old_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1965.6138,5.7341175,7070.2686}; + angles[]={0.013327583,3.1205032,6.2598572}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=761; + type="Land_CzechHedgehog_01_old_F"; + atlOffset=-0.00025510788; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1910.6952,17.927135,7062.415}; + angles[]={6.2066693,0.018768553,0.010000871}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=705; + type="Land_HBarrier_01_line_3_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1901.8185,17.471233,7066.4727}; + angles[]={6.1967349,1.0709302,0.24183863}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=706; + type="Land_HBarrier_01_line_3_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1857.8184,10.442212,7174.873}; + angles[]={0.063249089,5.7921729,6.1506343}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=637; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Object"; + class PositionInfo + { + position[]={1880.9919,8.053401,7186.9561}; + angles[]={6.0602851,5.7921729,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=640; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1888.5493,8.9540386,7190.8984}; + angles[]={5.9765091,5.7921729,6.2033553}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=641; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1896.2725,9.8892384,7194.8818}; + angles[]={5.9765091,5.7921729,0.036650803}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=642; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1904.0099,10.930614,7198.623}; + angles[]={6.0857897,5.7921729,6.2166181}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=643; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1911.733,10.858013,7202.6064}; + angles[]={6.2498641,5.7921729,6.2166171}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=644; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1919.5438,10.617586,7206.7144}; + angles[]={6.2798557,5.7921729,6.2498641}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=645; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1927.267,10.154762,7210.6978}; + angles[]={0.010000871,5.7921729,6.1901217}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=646; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1934.9916,9.1133442,7214.7178}; + angles[]={0.043306526,5.7921729,6.1506338}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=647; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=2.3841858e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1942.7147,8.0709686,7218.7012}; + angles[]={0.043306526,5.7921729,6.1736259}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=648; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1950.3389,6.7084961,7222.9263}; + angles[]={0.049958061,5.7921729,6.1506343}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=649; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={1958.062,6.3147092,7226.9097}; + angles[]={6.2798557,5.7921729,6.256525}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=650; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1990.0364,9.2633886,7183.1362}; + angles[]={0.013332055,4.2528811,6.2432079}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=657; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={1986.2582,9.1520119,7190.9619}; + angles[]={0.06988623,4.2478848,6.2033544}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=658; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1982.3473,8.6246195,7198.7949}; + angles[]={0.10626491,4.2464743,6.2432079}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=659; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1973.0388,8.8322277,7199.3022}; + angles[]={0.11285178,4.2487659,6.2798381}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=660; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1974.8275,7.482861,7214.2798}; + angles[]={0.13909611,4.246562,6.2132993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=661; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={1971.0493,6.4871731,7222.105}; + angles[]={0.16190368,4.2322788,6.2365537}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=662; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={1993.5366,8.8293114,7175.5488}; + angles[]={6.1868181,1.1719748,6.2265792}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=663; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={1997.1493,7.8217001,7168.0479}; + angles[]={6.1901217,1.1176965,6.2199364}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=664; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={2000.985,7.1216183,7160.1777}; + angles[]={6.2000446,1.1206216,6.276526}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=665; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={2004.6882,6.7803292,7152.3164}; + angles[]={6.2132993,1.1250442,0.06988623}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=666; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={2008.3563,6.4271464,7144.6221}; + angles[]={6.2265792,1.1200167,0.033321146}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=667; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={2012.0594,6.4598389,7136.7612}; + angles[]={0.049959254,1.1215938,0.076516926}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=668; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={2015.7128,7.1400886,7129.7207}; + angles[]={0.033321146,1.0809283,0.11285125}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=669; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={2019.7151,7.6363821,7122.1948}; + angles[]={0.0066682254,1.0760083,0.06656827}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=670; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={2014.8881,6.8857036,7110.3574}; + angles[]={6.2432079,2.6906025,0.10626491}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=672; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={2007.2123,6.2107086,7106.6509}; + angles[]={0,2.6857855,0.003311686}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=673; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={1992.348,6.2100005,7099.2192}; + angles[]={0,2.6466975,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=675; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={1984.8423,6.21,7095.1792}; + angles[]={0,2.6417773,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=676; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={1976.941,6.2100005,7091.5654}; + angles[]={0,2.7458003,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=677; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={1969.1674,6.210001,7088.0688}; + angles[]={0,2.6642573,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=678; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={1961.2264,6.3390822,7084.5405}; + angles[]={0.016666256,2.7711668,6.1868181}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=679; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={1953.4359,8.5737877,7081.2813}; + angles[]={0.17162824,2.6963704,5.9435439}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=680; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={1946.257,12.225783,7077.7432}; + angles[]={0.18776169,2.6195636,5.8799043}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=681; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={1939.0902,15.4318,7073.8394}; + angles[]={0.066567369,2.75228,6.0070882}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=682; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={1931.1832,17.251686,7070.6553}; + angles[]={6.2598572,2.7497997,6.1018653}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=683; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={1923.1079,18.035721,7067.4468}; + angles[]={6.1637564,2.7432878,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=684; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={1915.8544,18.192852,7064.2373}; + angles[]={6.1802173,2.6961024,6.2033553}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=685; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={1887.7789,12.581133,7094.1143}; + angles[]={0.093063012,1.1250442,0.28532943}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=687; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={1891.447,14.832598,7086.4199}; + angles[]={0.14889027,1.1200167,0.43113855}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=688; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={1895.1501,17.147503,7078.5591}; + angles[]={6.2565274,1.1215938,0.3947911}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=689; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={1898.8035,17.704777,7071.5186}; + angles[]={6.1571894,1.0809283,0.30060622}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=690; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={1868.6683,6.3114305,7131.6406}; + angles[]={6.2598572,1.1250442,6.1736259}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=692; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={1872.3364,6.6946249,7123.9463}; + angles[]={0.11942901,1.1200167,0.14236349}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=693; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={1876.0396,8.5741024,7116.0854}; + angles[]={0.18131967,1.1215938,0.16190405}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=694; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={1879.6929,10.025049,7109.0449}; + angles[]={0.06656827,1.0809283,0.13582505}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=695; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.6952,11.095201,7101.519}; + angles[]={0.073202357,1.0760083,0.15214851}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=696; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={1857.7374,10.067032,7154.9956}; + angles[]={6.1604714,1.1250442,6.0793881}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=697; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={1861.4055,8.3082275,7147.3013}; + angles[]={6.1637568,1.1200167,6.0539536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=698; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={1865.1086,7.0521188,7139.4404}; + angles[]={6.2432065,1.1215938,6.1115575}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=699; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={1854.1453,11.040111,7162.498}; + angles[]={6.2698536,1.1250442,6.1473603}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=700; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={1945.3992,6.3658915,7122.1494}; + angles[]={0.010000871,1.1219249,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=719; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={1951.2645,6.21,7122.4878}; + angles[]={0,2.6772187,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=720; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={1953.5018,6.21,7129.2607}; + angles[]={0,4.2688532,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=721; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={1949.1426,6.339798,7133.3169}; + angles[]={6.2598572,2.7002358,6.2066684}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=722; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={1969.3315,7.9715724,7207.251}; + angles[]={0.059928458,4.2487659,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=755; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={1987.8784,7.2718434,7206.4966}; + angles[]={0.14562827,4.2487659,6.1901217}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=756; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={1983.979,6.4480848,7214.3994}; + angles[]={0.16839033,4.2487659,6.1571898}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=757; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={1863.3845,8.9516325,7177.8047}; + angles[]={0.073203169,4.2124424,6.1083231}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=708; + type="Land_HBarrier_01_wall_corridor_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={1875.2866,7.3774786,7184.0146}; + angles[]={6.256525,4.2124424,6.2199364}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=709; + type="Land_HBarrier_01_wall_corridor_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={2001.7378,5.7619085,7103.7725}; + angles[]={0,4.2124424,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=710; + type="Land_HBarrier_01_wall_corridor_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Object"; + class PositionInfo + { + position[]={1997.7241,5.7619085,7101.5796}; + angles[]={0,4.2124424,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=711; + type="Land_HBarrier_01_wall_corridor_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item91 + { + dataType="Object"; + class PositionInfo + { + position[]={2010.9857,5.7664084,7096.1904}; + angles[]={0,1.1278051,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=713; + type="Land_HBarrier_01_wall_corner_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item92 + { + dataType="Object"; + class PositionInfo + { + position[]={1999.828,5.7664084,7089.7056}; + angles[]={0,2.6728461,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=714; + type="Land_HBarrier_01_wall_corner_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item93 + { + dataType="Object"; + class PositionInfo + { + position[]={1872.1725,7.2066026,7162.6611}; + angles[]={6.2099824,4.2903538,6.1018653}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=726; + type="Land_HBarrier_01_wall_corner_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item94 + { + dataType="Object"; + class PositionInfo + { + position[]={1883.463,6.3039355,7168.9116}; + angles[]={6.2365537,5.8353829,6.1934271}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=727; + type="Land_HBarrier_01_wall_corner_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item95 + { + dataType="Object"; + class PositionInfo + { + position[]={1874.4542,6.4648337,7158.4893}; + angles[]={6.1901217,2.8301325,6.1147952}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=762; + type="Land_HBarrier_01_wall_corner_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item96 + { + dataType="Object"; + class PositionInfo + { + position[]={2005.874,5.7634072,7092.9644}; + angles[]={0,2.7054427,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=712; + type="Land_HBarrier_01_wall_6_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item97 + { + dataType="Object"; + class PositionInfo + { + position[]={1877.3503,6.6510925,7165.7798}; + angles[]={6.2199364,5.8680325,6.183517}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=725; + type="Land_HBarrier_01_wall_6_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item98 + { + dataType="Object"; + class PositionInfo + { + position[]={1851.8572,12.341297,7169.9604}; + angles[]={0.0066682254,1.7875861,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=633; + type="Land_HBarrier_01_big_tower_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item99 + { + dataType="Object"; + class PositionInfo + { + position[]={1966.0438,7.0938139,7228.1616}; + angles[]={0.039979152,3.5461581,6.2332263}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=634; + type="Land_HBarrier_01_big_tower_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item100 + { + dataType="Object"; + class PositionInfo + { + position[]={2021.2137,8.7826061,7114.5068}; + angles[]={6.2598572,5.1129303,0.069885373}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=636; + type="Land_HBarrier_01_big_tower_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item101 + { + dataType="Object"; + class PositionInfo + { + position[]={1906.4166,19.568199,7065.5059}; + angles[]={6.2099824,0.29225677,0.076517709}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=703; + type="Land_HBarrier_01_big_tower_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item102 + { + dataType="Object"; + class PositionInfo + { + position[]={1963.5515,6.7582736,7163.0942}; + angles[]={6.2698536,1.1284918,0.0066592805}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=724; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=770; + atlOffset=4.1863132; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={1962.9761,9.9050007,7091.4536}; + angles[]={0,5.9051638,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=764; + type="Land_Cargo_Patrol_V1_F"; + atlOffset=4.7683716e-007; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={1872.9703,9.9409714,7134.0386}; + angles[]={0,1.0801107,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=765; + type="Land_Cargo_Patrol_V1_F"; + atlOffset=-4.7683716e-007; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={1914.9926,14.274193,7198.8599}; + angles[]={0,2.6223063,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=766; + type="Land_Cargo_Patrol_V1_F"; + atlOffset=-9.5367432e-007; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={1990.5328,13.775154,7145.2666}; + angles[]={0,4.3381653,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=767; + type="Land_Cargo_Patrol_V1_F"; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={2000.1501,6.3745632,7129.3096}; + angles[]={0,4.2919359,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=769; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={2004.6232,6.3935795,7118.6162}; + angles[]={6.2731848,4.2919359,0.036650803}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=771; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={1982.8268,6.3745632,7106.2524}; + angles[]={0,5.8333778,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=772; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1972.2693,6.3745632,7101.4673}; + angles[]={0,5.8333778,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=773; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1943.8503,7.3190403,7175.3345}; + angles[]={6.2365522,5.8333778,0.02999169}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=777; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1931.0417,7.6799164,7168.895}; + angles[]={0.043306526,5.8333778,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=778; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1910.124,20.094837,7083.7915}; + angles[]={6.2665229,5.8333778,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=779; + type="Land_MedicalTent_01_NATO_tropic_generic_open_F"; + class CustomAttributes + { + class Attribute0 + { + property="SolarPanel2_Hide"; + expression="_this animateSource ['SolarPanel2_Hide',_value,true]"; + class Value + { + class data + { + singleType="SCALAR"; + value=1; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1905.671,33.694256,7129.4658}; + angles[]={0,1.7331294,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1490; + type="Land_TTowerBig_2_F"; + }; + }; + id=194; + atlOffset=1.1404858; + }; + class Item14 + { + dataType="Layer"; + name="outpost_18"; + class Entities + { + items=9; + class Item0 + { + dataType="Marker"; + position[]={7083.8647,38.960323,944.74731}; + name="outpost_18"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=80.080933; + b=71.423523; + angle=188.64183; + id=201; + atlOffset=0.0057525635; + }; + class Item1 + { + dataType="Logic"; + class PositionInfo + { + position[]={7083.7529,38.960922,944.82703}; + angles[]={0,0.085402399,0.003311686}; + }; + areaSize[]={5,0,9.5253687}; + flags=1; + id=823; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.0072593689; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item2 + { + dataType="Logic"; + class PositionInfo + { + position[]={7075.5493,44.343449,1006.1026}; + angles[]={0.0033161256,0.085398965,0}; + }; + areaSize[]={9.3389997,0,8.6784468}; + areaIsRectangle=1; + flags=1; + id=1494; + type="ModuleHideTerrainObjects_F"; + atlOffset=-0.0028762817; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=8; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={7073.1558,39.185349,958.75519}; + angles[]={0.013327583,4.8719201,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1498; + type="Land_BagBunker_Small_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={7079.4429,39.62426,961.68005}; + angles[]={0,3.3277733,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=1507; + type="Land_SignM_forSale_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={7080.8306,39.746777,961.54974}; + angles[]={0,3.2992871,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=1508; + type="Land_SignM_WarningMilAreaSmall_english_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={7152.4858,73.568192,892.94263}; + }; + side="Empty"; + flags=5; + class Attributes + { + disableSimulation=1; + }; + id=1497; + type="Land_wpp_Turbine_V1_F"; + atlOffset=-3.8146973e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={7075.7676,63.628754,1006.8505}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1493; + type="Land_TTowerBig_1_F"; + atlOffset=3.8146973e-006; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={7078.4692,46.054047,1005.84}; + angles[]={0,4.7810793,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1496; + type="Land_TBox_F"; + }; + }; + id=199; + atlOffset=0.88063812; + }; + class Item15 + { + dataType="Layer"; + name="outpost_1"; + class Entities + { + items=10; + class Item0 + { + dataType="Marker"; + position[]={7375.1143,20.962288,2367.9697}; + name="outp_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15.002832; + b=5; + angle=125.95449; + id=204; + atlOffset=1.4337978; + }; + class Item1 + { + dataType="Marker"; + position[]={7364.3765,15.841803,2332.8513}; + name="outpost_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGUER"; + a=91.67804; + b=80.413429; + angle=139.9104; + id=205; + atlOffset=-6.3141785; + }; + class Item2 + { + dataType="Marker"; + position[]={7413.2686,16.903555,2374.1802}; + name="outp_1_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=206; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={7377.1094,19.715193,2365.6208}; + angles[]={0.046842393,3.7817957,0.095656097}; + }; + areaSize[]={6.7174029,0,15.57935}; + areaIsRectangle=1; + flags=1; + id=397; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={7331.2798,43.046375,2403.6807}; + angles[]={0,2.4288676,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1492; + type="Land_TTowerBig_2_F"; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={7409.8809,19.632298,2394.9165}; + angles[]={0,2.255204,0}; + }; + areaSize[]={3.6726003,0,1.7135757}; + areaIsRectangle=1; + flags=1; + id=1582; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.5284481; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={7281.395,18.8995,2316.5615}; + angles[]={0,3.8372512,0}; + }; + areaSize[]={3.6726003,0,1.7135757}; + areaIsRectangle=1; + flags=1; + id=1583; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.5284481; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={7328.6177,19.961744,2402.96}; + angles[]={0.016666256,2.6515429,0.023330973}; + }; + areaSize[]={6.7174029,0,15.57935}; + areaIsRectangle=1; + flags=1; + id=1584; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={7281.4883,19.385212,2317.0688}; + angles[]={0.12599505,1.5104429,0.10626491}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1585; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={7410.7827,20.114981,2394.4094}; + angles[]={0.11942901,3.492429,6.1506338}; + }; + side="Empty"; + flags=4; + class Attributes + { + disableSimulation=1; + }; + id=1586; + type="Land_BagBunker_01_small_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=202; + atlOffset=-1.6707153; + }; + }; + id=118; + atlOffset=5.5586586; + }; + class Item3 + { + dataType="Layer"; + name="resources"; + class Entities + { + items=11; + class Item0 + { + dataType="Layer"; + name="resource_2"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={3669.2939,6.2527695,9004.0723}; + name="reso_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=72.890602; + id=214; + atlOffset=1.7966905; + }; + class Item1 + { + dataType="Marker"; + position[]={3694.2478,3.760376,8985.2441}; + name="resource_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=45.05965; + b=41.750999; + angle=159.51039; + id=215; + atlOffset=-0.11175776; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3735.3994,10.074234,8989.4385}; + angles[]={6.223258,1.5230032,0.096366771}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=832; + type="Land_WaterTank_F"; + atlOffset=-2.0027161e-005; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3732.9294,13.335302,8989.2129}; + angles[]={0,1.5396974,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=831; + type="Land_WaterTower_01_F"; + }; + }; + id=212; + atlOffset=2.6276689; + }; + class Item1 + { + dataType="Layer"; + name="resource_4"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={1833.926,5.0855217,6289.4712}; + name="reso_4_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=127.74052; + id=222; + atlOffset=0.55442572; + }; + class Item1 + { + dataType="Marker"; + position[]={1874.4697,4.2171335,6308.6704}; + name="resource_4"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + angle=220.31863; + id=223; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={1897.922,8.9961243,6284.2202}; + angles[]={0,2.3597341,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=780; + type="Land_WaterTower_01_F"; + atlOffset=-0.0052199364; + }; + }; + id=220; + atlOffset=0.35599804; + }; + class Item2 + { + dataType="Layer"; + name="resource_5"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={3895.0081,4.99718,2037.4229}; + name="reso_5_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=241.01466; + id=226; + }; + class Item1 + { + dataType="Marker"; + position[]={3927.3633,3.3956497,2082.2793}; + name="resource_5"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + angle=232.49857; + id=227; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3944.9929,15.138031,2092.1658}; + angles[]={0,5.6410151,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=790; + type="Land_Sawmill_01_illuminati_tower_F"; + atlOffset=0.0063409805; + }; + }; + id=224; + atlOffset=1.1075983; + }; + class Item3 + { + dataType="Layer"; + name="resource_7"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={5564.9722,31.484177,7178.4263}; + name="reso_7_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=172.6196; + id=230; + }; + class Item1 + { + dataType="Marker"; + position[]={5514.5386,28.117022,7158.7144}; + name="resource_7"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=55.118187; + id=231; + atlOffset=-0.020746231; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={5511.272,30.622215,7171.1157}; + angles[]={0,3.0732601,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=826; + type="Land_LifeguardTower_01_F"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={5510.6392,36.469173,7206.2026}; + angles[]={0,2.9419348,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=827; + type="Land_Sawmill_01_illuminati_tower_F"; + }; + }; + id=228; + atlOffset=1.5282784; + }; + class Item4 + { + dataType="Layer"; + name="resource_8"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={7236.0161,1.8551025,5215.959}; + name="resource_8"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=62.021423; + b=153.09277; + angle=285.97696; + id=235; + atlOffset=0.94433784; + }; + class Item1 + { + dataType="Object"; + class PositionInfo + { + position[]={7269.0112,4.6487856,5228.3115}; + angles[]={0,2.920541,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=824; + type="Land_LifeguardTower_01_F"; + atlOffset=-2.3841858e-007; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={7127.0957,4.8485518,5189.5649}; + angles[]={0,0.56593132,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=825; + type="Land_LifeguardTower_01_F"; + atlOffset=2.3841858e-007; + }; + }; + id=232; + atlOffset=3.2604628; + }; + class Item5 + { + dataType="Layer"; + name="resource_9"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={4435.3242,9.2667923,7981.7505}; + name="reso_9_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=357.32986; + id=238; + }; + class Item1 + { + dataType="Marker"; + position[]={4419.7798,9.5053854,7975.6963}; + name="resource_9"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=51.812279; + id=239; + atlOffset=-0.65816402; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={4417.832,17.310492,8023.8486}; + angles[]={0,3.0978744,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=833; + type="Land_Sawmill_01_illuminati_tower_F"; + atlOffset=-4.7683716e-007; + }; + }; + id=236; + atlOffset=0.12996387; + }; + class Item6 + { + dataType="Layer"; + name="resource_10"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={5996.4541,15.670869,3594.7969}; + name="reso_10_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=37.613506; + id=242; + }; + class Item1 + { + dataType="Marker"; + position[]={6042.2422,14.799614,3601.5449}; + name="resource_10"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + angle=217.62682; + id=243; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={6032.6001,23.028114,3616.041}; + angles[]={0,0.50169855,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=821; + type="Land_Sawmill_01_illuminati_tower_F"; + atlOffset=-0.064776421; + }; + }; + id=240; + atlOffset=0.17867947; + }; + class Item7 + { + dataType="Layer"; + name="resource_11"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={7397.7681,1.1965333,7588.7285}; + name="reso_11_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=272.4025; + id=246; + }; + class Item1 + { + dataType="Marker"; + position[]={7400.3506,1.213042,7601.0874}; + name="resource_11"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + angle=275.9715; + id=247; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={7402.9165,5.9676318,7576.4424}; + angles[]={0,0.062499519,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=834; + type="Land_GuardTower_01_F"; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={7376.5,7.1603594,7633.6777}; + angles[]={0,3.2447469,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=835; + type="Land_GuardTower_01_F"; + atlOffset=4.7683716e-007; + }; + }; + id=244; + atlOffset=0.61113608; + }; + class Item8 + { + dataType="Layer"; + name="resource_12"; + class Entities + { + items=4; + class Item0 + { + dataType="Marker"; + position[]={3016.082,8.1710815,1436.2813}; + name="reso_12_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=6.1088519; + id=250; + atlOffset=1.6196861; + }; + class Item1 + { + dataType="Marker"; + position[]={3026.6514,6.6786408,1417.4976}; + name="resource_12"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + id=251; + atlOffset=-4.7683716e-007; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3030.1152,6.5510402,1440.5399}; + angles[]={6.2698536,1.6608385,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=791; + type="Land_WaterTank_F"; + atlOffset=-1.9550323e-005; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={2993.022,11.077024,1386.917}; + angles[]={0,3.0933528,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=792; + type="Land_WaterTower_01_F"; + atlOffset=9.5367432e-007; + }; + }; + id=248; + atlOffset=-0.31054688; + }; + class Item9 + { + dataType="Layer"; + name="resource_13"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={2291.9827,6.3905163,4723.7637}; + name="reso_13_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=150.2888; + id=254; + }; + class Item1 + { + dataType="Marker"; + position[]={2292.6394,6.5211573,4755.9863}; + name="resource_13"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=41.747002; + b=41.750999; + angle=329.27768; + id=255; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={2286.0549,16.915466,4796.2813}; + angles[]={0,2.5974724,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=782; + type="Land_Sawmill_01_illuminati_tower_F"; + atlOffset=9.5367432e-007; + }; + }; + id=252; + atlOffset=0.0972929; + }; + class Item10 + { + dataType="Layer"; + name="resource_6"; + class Entities + { + items=3; + class Item0 + { + dataType="Marker"; + position[]={3115.637,5,3247.7583}; + name="reso_6_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=5; + b=5; + angle=358.00485; + id=273; + }; + class Item1 + { + dataType="Marker"; + position[]={3091.3503,5,3245.0771}; + name="resource_6"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorOrange"; + a=66.362343; + b=41.750999; + angle=342.53149; + id=274; + }; + class Item2 + { + dataType="Object"; + class PositionInfo + { + position[]={3095.2798,14.970751,3246.0662}; + angles[]={0,2.8672106,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=789; + type="Land_Sawmill_01_illuminati_tower_F"; + }; + }; + id=271; + }; + }; + id=207; + atlOffset=-1.5785017; + }; + class Item4 + { + dataType="Layer"; + name="airports"; + class Entities + { + items=2; + class Item0 + { + dataType="Layer"; + name="airport_1"; + class Entities + { + items=17; + class Item0 + { + dataType="Marker"; + position[]={5712.8013,59.029999,6242.374}; + name="airp_1_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=332; + }; + class Item1 + { + dataType="Marker"; + position[]={5832.7881,59.029999,6362.0298}; + name="airp_1_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=25.107788; + b=5; + angle=269.7598; + id=335; + }; + class Item2 + { + dataType="Marker"; + position[]={5862.1836,59.029999,6252.1582}; + name="airport_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=158.96259; + b=189.44412; + id=336; + atlOffset=2.9107094; + }; + class Item3 + { + dataType="Marker"; + position[]={5807.0503,59.029999,6304.2109}; + name="spawnPoint_1"; + type="hd_start"; + angle=92.187752; + id=337; + }; + class Item4 + { + dataType="Marker"; + position[]={5994.0938,59.029999,6247.2261}; + name="airp_1_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=380; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={5959.6006,71.916206,6271.2739}; + angles[]={0,3.2230074,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=837; + type="Land_Cargo_Tower_V4_F"; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={5712.6572,71.916206,6241.9673}; + angles[]={0,4.685914,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=838; + type="Land_Cargo_Tower_V4_F"; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={5833.5571,63.119965,6429.4126}; + angles[]={0,3.6254551,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1483; + type="Land_TentHangar_V1_F"; + }; + class Item8 + { + dataType="Object"; + class PositionInfo + { + position[]={5986.8428,59.029999,6248.8711}; + angles[]={0,4.8031287,0}; + }; + side="Empty"; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1749; + type="Land_HelipadEmpty_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={5944.4077,63.91029,6161.3818}; + angles[]={6.2772555,0.10804248,0.0040706405}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1893; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={5811.5991,63.934998,6437.2368}; + angles[]={0,3.1221542,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1894; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={5848.4741,64.084999,6108.9463}; + angles[]={0,0.10804248,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1895; + type="Land_Cargo_Patrol_V4_F"; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={5848.0137,59.898121,6105.1333}; + angles[]={6.1571894,0.10803588,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1897; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.10848999; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={5853.772,59.604832,6108.1177}; + angles[]={0.016666256,1.6470784,6.1375575}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1898; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.87997818; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={5842.8857,59.891956,6109.042}; + angles[]={0.0084202671,1.5958856,0.093064293}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1899; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.23270416; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={5843.1289,59.299866,6117.5488}; + angles[]={0.1787235,4.7426147,0.043307904}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1900; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.2978363; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={5854.2056,58.72102,6116.2773}; + angles[]={0.20286052,4.7890306,6.0350728}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1901; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-0.70828629; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + }; + id=331; + atlOffset=-0.38412857; + }; + class Item1 + { + dataType="Layer"; + name="airport_2"; + class Entities + { + items=149; + class Item0 + { + dataType="Marker"; + position[]={1152.2169,7.3200002,2619.4102}; + name="airp_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=20.201836; + b=5; + angle=0.76185262; + id=342; + }; + class Item1 + { + dataType="Marker"; + position[]={1064.5605,7.3200002,2575.8882}; + name="airport_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorEAST"; + a=414.94565; + b=136.29861; + id=343; + atlOffset=-0.013617992; + }; + class Item2 + { + dataType="Marker"; + position[]={1107.0669,8.0728483,2570.1899}; + name="spawnPoint_2"; + type="hd_start"; + angle=179.30391; + id=344; + }; + class Item3 + { + dataType="Marker"; + position[]={1082.7599,8.8206005,2544.1592}; + name="airp_2_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=345; + }; + class Item4 + { + dataType="Marker"; + position[]={1056.7656,7.3200002,2627.5364}; + name="airp_2_plane"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=358.59793; + id=346; + }; + class Item5 + { + dataType="Marker"; + position[]={1225.3772,7.3200002,2611.9966}; + name="airp_2_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=398; + }; + class Item6 + { + dataType="Marker"; + position[]={1082.2754,7.3801756,2590.8098}; + name="airp_2_vehicle_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=20.201836; + b=5; + angle=90.1325; + id=399; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={997.7207,30.16641,2527.241}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=839; + type="Land_Cargo_Tower_V4_F"; + }; + class Item8 + { + dataType="Marker"; + position[]={1036.1453,7.3200002,2627.7454}; + name="airp_2_plane_1"; + markerType="RECTANGLE"; + type=""; + colorName="ColorCIV"; + a=8; + b=8; + angle=358.59793; + id=1475; + }; + class Item9 + { + dataType="Object"; + class PositionInfo + { + position[]={1204.5192,7.3200002,2633.5537}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1477; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item10 + { + dataType="Object"; + class PositionInfo + { + position[]={1242.8275,7.3200002,2632.9924}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1478; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item11 + { + dataType="Object"; + class PositionInfo + { + position[]={978.67596,7.3200002,2631.9993}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1479; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item12 + { + dataType="Object"; + class PositionInfo + { + position[]={1008.384,7.3200002,2632.2534}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1480; + type="Land_HelipadCircle_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item13 + { + dataType="Object"; + class PositionInfo + { + position[]={1222.1515,7.7393117,2612.1604}; + angles[]={0,4.7252851,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1662; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item14 + { + dataType="Object"; + class PositionInfo + { + position[]={1225.3644,7.7393117,2615.769}; + angles[]={0,3.0744665,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1664; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item15 + { + dataType="Object"; + class PositionInfo + { + position[]={1228.7714,7.7393117,2612.7144}; + angles[]={0,4.7252851,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1666; + type="Land_BagFence_Long_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item16 + { + dataType="Object"; + class PositionInfo + { + position[]={1222.7368,7.7393117,2614.8562}; + angles[]={0,2.2209074,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1663; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item17 + { + dataType="Object"; + class PositionInfo + { + position[]={1228.0868,7.7393117,2615.3005}; + angles[]={0,3.8614464,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1665; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item18 + { + dataType="Object"; + class PositionInfo + { + position[]={1222.7855,7.7393117,2609.5645}; + angles[]={0,0.70903438,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1668; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item19 + { + dataType="Object"; + class PositionInfo + { + position[]={1228.6998,7.7342834,2610.3176}; + angles[]={0,1.6295439,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1669; + type="Land_BagFence_Short_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item20 + { + dataType="Object"; + class PositionInfo + { + position[]={1224.2118,7.7296619,2608.9473}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1670; + type="Land_BagFence_End_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item21 + { + dataType="Object"; + class PositionInfo + { + position[]={1083.2006,9.1438179,2547.6104}; + angles[]={0.079830162,3.5570168,0.016662678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1671; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item22 + { + dataType="Object"; + class PositionInfo + { + position[]={1084.9678,9.2329607,2545.3721}; + angles[]={0.0066592805,4.4297838,0.016662678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1672; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item23 + { + dataType="Object"; + class PositionInfo + { + position[]={1084.5131,9.2593117,2542.8921}; + angles[]={0,5.3289695,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1673; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item24 + { + dataType="Object"; + class PositionInfo + { + position[]={1080.7904,8.9655151,2547.1663}; + angles[]={0.14888987,5.9802318,0.089758366}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1674; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item25 + { + dataType="Object"; + class PositionInfo + { + position[]={1082.396,9.264185,2541.2563}; + angles[]={0.019999012,2.2209074,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1675; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item26 + { + dataType="Object"; + class PositionInfo + { + position[]={1078.4575,8.5865278,2546.3469}; + angles[]={0.096367389,2.2209074,0.25124326}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1676; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item27 + { + dataType="Object"; + class PositionInfo + { + position[]={1080.5236,9.2693119,2540.4646}; + angles[]={0,0.54083842,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1677; + type="Land_BagFence_Round_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item28 + { + dataType="Object"; + class PositionInfo + { + position[]={1079.1178,8.7299061,2546.0144}; + angles[]={0.096359625,1.0089749,0.25124016}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsSimpleObject=1; + disableSimulation=1; + }; + id=1680; + type="Land_WoodenCrate_01_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item29 + { + dataType="Logic"; + class PositionInfo + { + position[]={1081.1853,8.8205786,2542.5103}; + angles[]={0.019999012,0,0}; + }; + areaSize[]={1.846,0,2.0855713}; + areaIsRectangle=1; + flags=1; + id=1659; + type="ModuleHideTerrainObjects_F"; + atlOffset=0.00078392029; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=7; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item30 + { + dataType="Object"; + class PositionInfo + { + position[]={1170.0505,19.455549,2527.856}; + angles[]={0,4.5688543,0}; + }; + side="Empty"; + class Attributes + { + }; + id=1763; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=0.32880306; + }; + class Item31 + { + dataType="Object"; + class PositionInfo + { + position[]={1256.3859,8.5300007,2635.4148}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1765; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={1255.1029,8.5300007,2627.1887}; + angles[]={0,5.1102586,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1766; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={1250.7631,8.5300007,2619.7549}; + angles[]={0,5.4071712,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1767; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={1245.6157,8.5300007,2613.0374}; + angles[]={0,5.2983103,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1768; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={1240.9896,8.5300007,2605.7937}; + angles[]={0,2.09497,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1769; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={1235.8378,8.5300007,2599.04}; + angles[]={0,2.2605753,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1770; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={1230.1814,8.5300007,2592.4463}; + angles[]={0,2.2500868,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1771; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={1210.4358,8.5300007,2591.156}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1772; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={1205.1466,8.5300007,2590.8264}; + angles[]={0,5.8510742,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1773; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={1209.9664,8.5300007,2599.9106}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1774; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={1196.7585,8.5300007,2588.6863}; + angles[]={0,3.0583031,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1775; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={1187.6708,8.5300007,2588.2671}; + angles[]={0,3.1327205,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1776; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={1179.2622,8.5335855,2588.3311}; + angles[]={0.0066682254,3.1420825,6.2798557}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1777; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={1170.4943,8.5323305,2588.6504}; + angles[]={0.0066592805,3.1349576,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1778; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={1167.163,8.561203,2583.1511}; + angles[]={0.010000871,1.5777769,0.016666256}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1779; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={1223.1056,8.5300007,2587.1094}; + angles[]={0,2.9736943,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1780; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={1214.3627,8.5300007,2585.9678}; + angles[]={0,3.0218387,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1781; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={1205.6404,8.5300007,2586.5403}; + angles[]={0,0.20460719,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1782; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.7792,12.266848,2560.2939}; + angles[]={0.13909568,4.6809416,6.1868181}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1783; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.2817,10.68345,2568.9338}; + angles[]={0.23239063,4.6809416,6.2398791}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1784; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.9254,8.9289188,2577.407}; + angles[]={0.11942901,4.8893671,0.02999169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1785; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={1197.3269,8.5474377,2584.9102}; + angles[]={0.010000871,5.6621499,0.019996032}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1786; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={968.16852,8.5206776,2619.2031}; + angles[]={6.2798738,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1787; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={976.69397,8.5300007,2618.9329}; + angles[]={0,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1788; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={985.26843,8.5354042,2618.6472}; + angles[]={0.0033296358,0.023606321,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1789; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={993.99054,8.5452366,2618.2144}; + angles[]={0.0066592805,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1790; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={1002.516,8.547039,2617.9441}; + angles[]={0.0066592805,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1791; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item58 + { + dataType="Object"; + class PositionInfo + { + position[]={1011.0905,8.5441704,2617.6584}; + angles[]={0.0033296358,0.023606321,6.2798557}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1792; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item59 + { + dataType="Object"; + class PositionInfo + { + position[]={1019.8793,8.535326,2617.4023}; + angles[]={0.003311686,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1793; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item60 + { + dataType="Object"; + class PositionInfo + { + position[]={1028.4048,8.5362263,2617.1321}; + angles[]={0.003311686,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1794; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item61 + { + dataType="Object"; + class PositionInfo + { + position[]={1036.9792,8.5300007,2616.8464}; + angles[]={0,0.023606321,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1795; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item62 + { + dataType="Object"; + class PositionInfo + { + position[]={1020.0684,8.5300007,2622.6948}; + angles[]={0,4.7916894,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1796; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item63 + { + dataType="Object"; + class PositionInfo + { + position[]={1020.5381,8.5300007,2631.2578}; + angles[]={0,4.7529678,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1797; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item64 + { + dataType="Object"; + class PositionInfo + { + position[]={993.12787,8.5300007,2623.9863}; + angles[]={0,4.7916894,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1798; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item65 + { + dataType="Object"; + class PositionInfo + { + position[]={993.61084,8.5300007,2632.4463}; + angles[]={0,4.7529678,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1799; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item66 + { + dataType="Object"; + class PositionInfo + { + position[]={965.55914,8.5300007,2624.5054}; + angles[]={0,4.7916894,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1800; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item67 + { + dataType="Object"; + class PositionInfo + { + position[]={966.10327,8.5300007,2632.9907}; + angles[]={0,4.7529678,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1801; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item68 + { + dataType="Object"; + class PositionInfo + { + position[]={1055.2786,8.5300007,2616.4983}; + angles[]={0,3.1827543,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1802; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item69 + { + dataType="Object"; + class PositionInfo + { + position[]={1046.252,8.5300007,2616.646}; + angles[]={0,3.1440327,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1803; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item70 + { + dataType="Object"; + class PositionInfo + { + position[]={1064.073,8.5300007,2616.219}; + angles[]={0,3.1827543,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1804; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item71 + { + dataType="Object"; + class PositionInfo + { + position[]={1069.588,8.5300007,2619.3821}; + angles[]={0,4.7849917,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1805; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item72 + { + dataType="Object"; + class PositionInfo + { + position[]={1070.351,8.5300007,2627.8831}; + angles[]={0,4.7966099,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1806; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item73 + { + dataType="Object"; + class PositionInfo + { + position[]={1145.214,10.103321,2529.6445}; + angles[]={0,4.7033529,0.046633169}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1807; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item74 + { + dataType="Object"; + class PositionInfo + { + position[]={1145.1663,10.188175,2521.012}; + angles[]={0.010000871,4.7033529,0.10955941}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1808; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item75 + { + dataType="Object"; + class PositionInfo + { + position[]={1142.275,10.093348,2512.9219}; + angles[]={0.02999169,2.1614878,0.039979152}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1809; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item76 + { + dataType="Object"; + class PositionInfo + { + position[]={1136.765,9.853735,2505.9741}; + angles[]={0,2.2890778,0.02666023}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1810; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item77 + { + dataType="Object"; + class PositionInfo + { + position[]={1132.2789,9.6991081,2498.6685}; + angles[]={6.276526,5.0591879,0.016662678}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1811; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item78 + { + dataType="Object"; + class PositionInfo + { + position[]={1130.1039,9.5887699,2490.2634}; + angles[]={6.2765174,4.9328341,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1812; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item79 + { + dataType="Object"; + class PositionInfo + { + position[]={1128.3468,9.5426731,2481.8018}; + angles[]={6.2798738,4.902482,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1813; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item80 + { + dataType="Object"; + class PositionInfo + { + position[]={1125.7534,9.415204,2473.2971}; + angles[]={6.2731848,5.1664829,6.2066693}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1814; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item81 + { + dataType="Object"; + class PositionInfo + { + position[]={1120.9565,9.3983173,2466.1479}; + angles[]={6.2798557,5.4573922,6.256525}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1815; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item82 + { + dataType="Object"; + class PositionInfo + { + position[]={1113.8464,9.3086634,2462.0122}; + angles[]={6.2232571,6.0794034,6.2099833}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1816; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item83 + { + dataType="Object"; + class PositionInfo + { + position[]={1105.1466,9.4215145,2462.0769}; + angles[]={6.2698536,0.24221316,0.0033296358}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1817; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item84 + { + dataType="Object"; + class PositionInfo + { + position[]={1108.7405,8.9796638,2455.9111}; + angles[]={6.134295,4.8024068,6.2332273}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1818; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item85 + { + dataType="Object"; + class PositionInfo + { + position[]={1107.2389,7.8589735,2447.2129}; + angles[]={6.1769204,4.9707537,6.1703339}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1819; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item86 + { + dataType="Object"; + class PositionInfo + { + position[]={1102.3606,7.8795485,2440.6309}; + angles[]={0.056606073,5.7979817,6.2332273}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1820; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item87 + { + dataType="Object"; + class PositionInfo + { + position[]={1094.0046,8.0824804,2439.2236}; + angles[]={0.093063653,0.080056153,0.0066682254}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1821; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item88 + { + dataType="Object"; + class PositionInfo + { + position[]={1085.4817,7.7296152,2440.9866}; + angles[]={0.14562868,0.28661835,0.036650803}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1822; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item89 + { + dataType="Object"; + class PositionInfo + { + position[]={1077.0352,7.4219203,2442.9172}; + angles[]={0.11614174,0.15212032,6.2531939}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1823; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item90 + { + dataType="Object"; + class PositionInfo + { + position[]={1068.3501,7.594419,2443.0781}; + angles[]={0.13255134,6.1904407,0.023328418}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1824; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item91 + { + dataType="Object"; + class PositionInfo + { + position[]={1059.8988,7.0246406,2441.8481}; + angles[]={0.14888987,6.1227679,0.11285178}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1825; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item92 + { + dataType="Object"; + class PositionInfo + { + position[]={1054.3291,6.0905404,2446.0273}; + angles[]={0.046631888,4.2685394,0.096367389}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1826; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item93 + { + dataType="Object"; + class PositionInfo + { + position[]={992.92383,12.765145,2451.4771}; + angles[]={6.2798557,3.0501015,6.2365537}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1827; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item94 + { + dataType="Object"; + class PositionInfo + { + position[]={984.29242,12.600312,2451.0771}; + angles[]={6.1440892,3.1217642,0.06656827}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1828; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item95 + { + dataType="Object"; + class PositionInfo + { + position[]={975.30267,12.976964,2451.1079}; + angles[]={6.1440902,3.1774807,6.2232571}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1829; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item96 + { + dataType="Object"; + class PositionInfo + { + position[]={998.21936,12.195563,2455.0454}; + angles[]={0.10626435,4.7033529,6.1342955}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1830; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item97 + { + dataType="Object"; + class PositionInfo + { + position[]={998.01752,10.10859,2469.2671}; + angles[]={0.059927464,1.4719779,6.1670442}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1831; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item98 + { + dataType="Object"; + class PositionInfo + { + position[]={997.41083,10.352493,2477.6841}; + angles[]={6.1868181,1.4108071,6.1934271}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1832; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item99 + { + dataType="Object"; + class PositionInfo + { + position[]={970.01288,13.404536,2454.7395}; + angles[]={6.2731848,4.7033529,0.036650803}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1833; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item100 + { + dataType="Object"; + class PositionInfo + { + position[]={969.16888,12.636979,2463.0713}; + angles[]={0.1973958,4.4286437,0.066567369}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1834; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item101 + { + dataType="Object"; + class PositionInfo + { + position[]={967.40491,10.894588,2471.1353}; + angles[]={0.15214813,1.472612,0.1358255}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1835; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=9.5367432e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item102 + { + dataType="Object"; + class PositionInfo + { + position[]={970.05518,10.873201,2477.0195}; + angles[]={6.2598572,6.1537828,0.10955941}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1836; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item103 + { + dataType="Object"; + class PositionInfo + { + position[]={991.65045,11.388256,2480.4922}; + angles[]={6.1083231,6.1908221,6.2033553}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1837; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item104 + { + dataType="Object"; + class PositionInfo + { + position[]={1064.8649,8.5300007,2611.0752}; + angles[]={0,5.1333904,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1838; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item105 + { + dataType="Object"; + class PositionInfo + { + position[]={1060.4946,8.5300007,2603.7349}; + angles[]={0,5.4060726,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1839; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item106 + { + dataType="Object"; + class PositionInfo + { + position[]={1056.3182,8.5864563,2595.7771}; + angles[]={0.013332055,5.0291057,6.2731905}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1840; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item107 + { + dataType="Object"; + class PositionInfo + { + position[]={1054.6823,8.7837429,2587.083}; + angles[]={0.036649179,4.8074479,6.2199373}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1841; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item108 + { + dataType="Object"; + class PositionInfo + { + position[]={1056.3588,8.9336395,2578.5159}; + angles[]={0.016666256,4.2235012,6.196734}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1842; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item109 + { + dataType="Object"; + class PositionInfo + { + position[]={1058.9186,8.7244854,2570.3652}; + angles[]={0.0099949092,4.5836015,6.183517}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1843; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=-4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item110 + { + dataType="Object"; + class PositionInfo + { + position[]={1074.7004,8.5300007,2616.0217}; + angles[]={0,3.1927164,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1844; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item111 + { + dataType="Object"; + class PositionInfo + { + position[]={1083.3506,8.5300007,2615.3057}; + angles[]={0,3.2562854,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1845; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item112 + { + dataType="Object"; + class PositionInfo + { + position[]={1084.1035,8.9930992,2561.0623}; + angles[]={0.049958061,2.5900762,0.059928458}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1846; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item113 + { + dataType="Object"; + class PositionInfo + { + position[]={1076.6964,8.5621395,2556.6917}; + angles[]={6.2698579,2.5781629,0.023328418}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1847; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item114 + { + dataType="Object"; + class PositionInfo + { + position[]={1068.7594,8.2625694,2556.5784}; + angles[]={6.2066679,0.49544793,0.076517709}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1848; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item115 + { + dataType="Object"; + class PositionInfo + { + position[]={1062.187,8.4837446,2562.3208}; + angles[]={6.2598543,0.88692874,6.2631865}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1849; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item116 + { + dataType="Object"; + class PositionInfo + { + position[]={978.55377,16.693523,2463.4563}; + angles[]={0,0.010706601,0}; + }; + side="Empty"; + class Attributes + { + }; + id=1852; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=0.34899712; + }; + class Item117 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.4999,8.5300007,2627.3704}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1856; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item118 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.358,8.5300007,2636.147}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1857; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item119 + { + dataType="Object"; + class PositionInfo + { + position[]={1201.0067,8.5300007,2621.5962}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1860; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item120 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.4884,8.5300007,2622.0249}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1861; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item121 + { + dataType="Object"; + class PositionInfo + { + position[]={1244.9023,8.5300007,2620.0591}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1862; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item122 + { + dataType="Object"; + class PositionInfo + { + position[]={1236.1528,8.5300007,2620.4436}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1863; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item123 + { + dataType="Object"; + class PositionInfo + { + position[]={1227.5593,8.5300007,2620.8516}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1864; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item124 + { + dataType="Object"; + class PositionInfo + { + position[]={1209.3643,8.5300007,2621.0586}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1865; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item125 + { + dataType="Object"; + class PositionInfo + { + position[]={1128.9333,8.5300007,2610.1221}; + angles[]={0,4.7240925,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1866; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item126 + { + dataType="Object"; + class PositionInfo + { + position[]={1129.3081,8.5300007,2618.9343}; + angles[]={0,4.7240925,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1867; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item127 + { + dataType="Object"; + class PositionInfo + { + position[]={1129.665,8.5300007,2627.624}; + angles[]={0,4.7240925,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1868; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item128 + { + dataType="Object"; + class PositionInfo + { + position[]={1123.5865,8.5300007,2613.676}; + angles[]={0,0.026243329,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1869; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item129 + { + dataType="Object"; + class PositionInfo + { + position[]={1114.9053,8.5300007,2613.8376}; + angles[]={0,6.2412977,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1870; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item130 + { + dataType="Object"; + class PositionInfo + { + position[]={1128.7552,8.6198034,2601.4338}; + angles[]={0.023328418,4.7240925,6.2698579}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1871; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item131 + { + dataType="Object"; + class PositionInfo + { + position[]={1135.1344,8.9356184,2577.9255}; + angles[]={0.0099949092,3.1706872,6.2698536}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1874; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item132 + { + dataType="Object"; + class PositionInfo + { + position[]={1126.662,9.0226917,2578.217}; + angles[]={0.013332055,3.1630673,6.276526}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1875; + type="Land_HBarrier_01_big_4_green_F"; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item133 + { + dataType="Object"; + class PositionInfo + { + position[]={1184.058,8.5300007,2622.4258}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1876; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item134 + { + dataType="Object"; + class PositionInfo + { + position[]={1178.7231,8.5300007,2622.6846}; + angles[]={0,4.686101,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1877; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item135 + { + dataType="Object"; + class PositionInfo + { + position[]={1225.5586,8.5300007,2634.4219}; + angles[]={0,1.5640423,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1878; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item136 + { + dataType="Object"; + class PositionInfo + { + position[]={1225.5547,8.5300007,2639.8625}; + angles[]={0,6.2779059,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1879; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item137 + { + dataType="Object"; + class PositionInfo + { + position[]={1256.5541,8.5300007,2640.8926}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1880; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item138 + { + dataType="Object"; + class PositionInfo + { + position[]={1192.323,8.5300007,2641.9163}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1881; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item139 + { + dataType="Object"; + class PositionInfo + { + position[]={1187.345,12.553804,2637.0894}; + angles[]={0,3.1596258,0}; + }; + side="Empty"; + class Attributes + { + }; + id=1882; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=0.32880402; + }; + class Item140 + { + dataType="Object"; + class PositionInfo + { + position[]={1183.7687,8.5300007,2642.1946}; + angles[]={0,0.036502298,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1883; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item141 + { + dataType="Object"; + class PositionInfo + { + position[]={1178.3309,8.5300007,2639.1016}; + angles[]={0,1.5982345,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1884; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item142 + { + dataType="Object"; + class PositionInfo + { + position[]={1270.0598,8.5300007,2627.3245}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1885; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item143 + { + dataType="Object"; + class PositionInfo + { + position[]={1261.3586,8.5300007,2627.4214}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1886; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item144 + { + dataType="Object"; + class PositionInfo + { + position[]={1283.942,8.5300007,2630.4214}; + angles[]={0,4.6809416,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1887; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item145 + { + dataType="Object"; + class PositionInfo + { + position[]={1283.7977,8.5300007,2635.8132}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1888; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item146 + { + dataType="Object"; + class PositionInfo + { + position[]={1278.6268,8.5300007,2627.2422}; + angles[]={0,6.279932,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1889; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item147 + { + dataType="Object"; + class PositionInfo + { + position[]={1275.2506,8.5300007,2636.1543}; + angles[]={0,3.1796787,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + createAsLocalObject=1; + disableSimulation=1; + }; + id=1890; + type="Land_HBarrier_01_big_4_green_F"; + atlOffset=4.7683716e-007; + class CustomAttributes + { + class Attribute0 + { + property="allowDamage"; + expression="_this allowdamage _value;"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=1; + }; + }; + class Item148 + { + dataType="Object"; + class PositionInfo + { + position[]={1279.1595,12.225,2631.573}; + angles[]={0,4.7423167,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=1891; + type="Land_Cargo_Patrol_V4_F"; + }; + }; + id=339; + atlOffset=0.00032663345; + }; + }; + id=330; + atlOffset=42.368561; + }; + class Item5 + { + dataType="Layer"; + name="seaports"; + class Entities + { + items=2; + class Item0 + { + dataType="Layer"; + name="seaport_1"; + class Entities + { + items=8; + class Item0 + { + dataType="Marker"; + position[]={9206.7607,3.3,3136.5205}; + name="seaport_1"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=233.51723; + b=84.733047; + angle=339.23199; + id=283; + atlOffset=0.019999981; + }; + class Item1 + { + dataType="Marker"; + position[]={9171.5918,3.1784937,3154.7422}; + name="seap_1_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=339.23199; + id=284; + }; + class Item2 + { + dataType="Marker"; + position[]={9192.708,3.263767,3160.8699}; + name="seap_1_mortar_1"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + angle=339.23199; + id=383; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={9172.0049,3.1813354,3154.8711}; + angles[]={0.0099949092,0,0.0099949092}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=382; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={9192.7451,3.2643871,3160.6838}; + angles[]={0.003311686,0,0}; + }; + areaSize[]={5,-1,5}; + flags=1; + id=381; + type="ModuleHideTerrainObjects_F"; + class CustomAttributes + { + class Attribute0 + { + property="#filter"; + expression="_this setVariable [""#filter"",_value]"; + class Value + { + class data + { + singleType="SCALAR"; + value=15; + }; + }; + }; + class Attribute1 + { + property="#hideLocally"; + expression="_this setVariable [""#hideLocally"",_value]"; + class Value + { + class data + { + singleType="BOOL"; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item5 + { + dataType="Object"; + class PositionInfo + { + position[]={9410.5039,33.750984,3133.5632}; + angles[]={0,2.7301626,0}; + }; + side="Empty"; + flags=1; + class Attributes + { + }; + id=820; + type="Land_TTowerBig_2_F"; + atlOffset=0.39834213; + }; + class Item6 + { + dataType="Object"; + class PositionInfo + { + position[]={9363.3545,10.655792,3229.6567}; + angles[]={0,2.7836139,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1587; + type="Land_ControlTower_01_F"; + atlOffset=2.3841858e-007; + }; + class Item7 + { + dataType="Object"; + class PositionInfo + { + position[]={9190.6201,16.15621,3124.7346}; + angles[]={0,4.4354906,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=1588; + type="Land_Cargo_Tower_V4_F"; + atlOffset=4.7683716e-007; + }; + }; + id=280; + atlOffset=0.83559251; + }; + class Item1 + { + dataType="Layer"; + name="seaport_2"; + class Entities + { + items=5; + class Item0 + { + dataType="Marker"; + position[]={3189.9961,20.37767,455.96915}; + name="seap_2_vehicle"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorGreen"; + a=15; + b=5; + angle=164.93237; + id=287; + atlOffset=5.2979975; + }; + class Item1 + { + dataType="Marker"; + position[]={3448.002,4.7979736,317.8374}; + name="seaport_2"; + markerType="RECTANGLE"; + type="rectangle"; + colorName="ColorBlue"; + a=128.20149; + b=141.71005; + angle=53.451748; + id=288; + atlOffset=2.2859621; + }; + class Item2 + { + dataType="Marker"; + position[]={3517.9739,6.3204265,399.42773}; + name="seap_2_mortar"; + markerType="ELLIPSE"; + type="ellipse"; + colorName="ColorYellow"; + a=3; + b=3; + id=289; + atlOffset=2.2394304; + }; + class Item3 + { + dataType="Object"; + class PositionInfo + { + position[]={3344.9541,2.9128542,367.01404}; + angles[]={0.09966857,2.8505361,0.029989703}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=495; + type="Land_BagBunker_Small_F"; + atlOffset=2.3841858e-007; + }; + class Item4 + { + dataType="Object"; + class PositionInfo + { + position[]={3502.2144,2.3575258,426.11197}; + angles[]={0.053282689,2.5732224,0.12927477}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=499; + type="Land_BagBunker_Small_F"; + atlOffset=1.1920929e-007; + }; + }; + id=285; + atlOffset=10.112212; + }; + }; + id=279; + atlOffset=27.376495; + }; + }; + id=379; + atlOffset=1.6502448e+008; + }; + class Item1 + { + dataType="Comment"; + class PositionInfo + { + position[]={8032.6821,52.181,1224.809}; + }; + title="funny haha town"; + id=460; + atlOffset=0.00043106079; + }; + class Item2 + { + dataType="Comment"; + class PositionInfo + { + position[]={2206.9521,14.575871,7271.8667}; + }; + title="Radio tower"; + id=1099; + atlOffset=4.9818077; + }; + }; + class Connections + { + class LinkIDProvider + { + nextID=39; + }; + class Links + { + items=39; + class Item0 + { + linkID=0; + item0=61; + item1=62; + class CustomData + { + type="Sync"; + }; + }; + class Item1 + { + linkID=1; + item0=6; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item2 + { + linkID=2; + item0=7; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item3 + { + linkID=3; + item0=8; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item4 + { + linkID=4; + item0=9; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item5 + { + linkID=5; + item0=10; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item6 + { + linkID=6; + item0=11; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item7 + { + linkID=7; + item0=12; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item8 + { + linkID=8; + item0=13; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item9 + { + linkID=9; + item0=14; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item10 + { + linkID=10; + item0=15; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item11 + { + linkID=11; + item0=16; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item12 + { + linkID=12; + item0=17; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item13 + { + linkID=13; + item0=18; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item14 + { + linkID=14; + item0=19; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item15 + { + linkID=15; + item0=20; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item16 + { + linkID=16; + item0=21; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item17 + { + linkID=17; + item0=22; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item18 + { + linkID=18; + item0=23; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item19 + { + linkID=19; + item0=24; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item20 + { + linkID=20; + item0=25; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item21 + { + linkID=21; + item0=26; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item22 + { + linkID=22; + item0=27; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item23 + { + linkID=23; + item0=28; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item24 + { + linkID=24; + item0=29; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item25 + { + linkID=25; + item0=30; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item26 + { + linkID=26; + item0=31; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item27 + { + linkID=27; + item0=32; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item28 + { + linkID=28; + item0=33; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item29 + { + linkID=29; + item0=34; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item30 + { + linkID=30; + item0=35; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item31 + { + linkID=31; + item0=36; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item32 + { + linkID=32; + item0=37; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item33 + { + linkID=33; + item0=38; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item34 + { + linkID=34; + item0=39; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item35 + { + linkID=35; + item0=40; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item36 + { + linkID=36; + item0=41; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item37 + { + linkID=37; + item0=42; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + class Item38 + { + linkID=38; + item0=43; + item1=61; + class CustomData + { + type="Sync"; + }; + }; + }; + }; +}; diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/navGrid.sqf b/A3A/addons/maps/Antistasi_pulau.pulau/navGrid.sqf new file mode 100644 index 0000000000..d701fbcc70 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/navGrid.sqf @@ -0,0 +1,130 @@ +/*{"systemTimeUCT_G":"2024-04-06 04:23:12","worldName":"pulau","StreetArtist_Config":{"_flatMaxDrift":-1,"_juncMergeDistance":-1,"_humanEdited": true}}*/ +navGrid = [ +[[2067.73,5427.99,0],0,false,[[151,0,359.203],[479,0,139.614]]],[[6785.45,5249.22,0],1,true,[[436,0,24.7399],[186,0,254.898],[368,0,7.69403]]],[[5098.54,7190.27,0],1,false,[[327,0,382.218],[494,0,179.528]]],[[5457.66,8447.93,0],1,false,[[374,0,110.489],[372,0,192.824]]],[[1623.86,6731.25,0],0,false,[[91,0,338.871],[461,0,34.9171]]], +[[1499.14,2811.39,0],0,true,[[159,0,23.31],[259,0,221.88],[473,0,16.1521]]],[[6316.72,3318.84,0],1,false,[[499,0,286.251],[468,0,344.084]]],[[3240.72,10442.4,0],1,false,[[606,0,177.845],[204,0,67.2214]]],[[6111.85,8670.46,0],1,false,[[554,0,356.758],[329,0,184.374]]],[[1438.92,4535.71,0],0,false,[[352,0,58.7282],[246,0,50.4861]]], +[[2625.63,2153.05,0],0,true,[[456,0,314.625],[195,0,12.4917],[17,0,12.7299]]],[[3473.97,8929.74,0],1,true,[[394,0,53.1066],[450,0,23.7976],[191,0,16.3031]]],[[2732.9,3111.39,0],0,false,[[181,0,218.225],[93,0,231.248]]],[[2335.52,3212.1,0],0,true,[[517,0,45.8833],[486,0,12.2516],[269,0,7.77694]]],[[2469.34,4263.82,0],0,true,[[173,0,26.7035],[65,0,197.526],[217,0,171.511]]], +[[2162.16,6097.66,0],0,true,[[431,0,73.4933],[287,0,5.68333],[417,0,14.4906]]],[[2160.97,6122.93,0],0,false,[[280,0,328.316],[287,0,22.2555]]],[[2616.24,2161.55,0],0,true,[[195,0,24.0773],[175,0,175.824],[10,0,12.7299]]],[[3697.76,7899.18,0],1,true,[[142,0,277.953],[64,0,26.3655],[611,0,17.4223]]],[[2772.05,1922.7,0],0,false,[[398,0,107.493],[195,0,262.442]]], +[[5538.79,8227.08,0],1,false,[[507,0,89.2185],[70,0,135.919]]],[[3468.92,8820.15,0],1,false,[[55,0,22.6335],[616,0,27.7746]]],[[7204.17,3246.4,0],1,false,[[203,0,79.2969],[32,0,71.8236]]],[[7399.37,2385.21,0],1,false,[[224,0,142.654],[231,0,227.858]]],[[1011.63,3030.48,0],0,false,[[259,0,357.903],[559,0,207.551]]], +[[1835.72,3062.45,0],0,true,[[501,0,57.5531],[240,0,26.1199],[428,0,33.2995]]],[[4583.51,8704.4,0],1,true,[[98,0,25.4993],[86,0,239.988],[493,0,300.587]]],[[6187.94,5621.58,0],1,false,[[452,0,284.522],[174,0,194.498]]],[[5648.12,4935.78,0],1,false,[[547,0,368.513],[386,0,345.837]]],[[3590.85,2519.17,0],0,false,[[85,0,175.907],[318,0,258.959]]], +[[5201.34,9575.94,0],1,false,[[323,0,272.948],[261,0,270.258]]],[[6966.8,3536.4,0],1,true,[[492,0,134.577],[88,0,19.3728],[426,0,5.25374],[413,0,22.907]]],[[7232.87,3181.86,0],1,false,[[22,0,71.8236],[524,0,44.8095]]],[[1399.43,4582.5,0],0,true,[[601,0,151.545],[246,0,12.1135],[516,0,12.6649],[58,0,15.9369]]],[[1908.71,7351.75,0],0,false,[[582,0,254.126],[378,0,195.685]]], +[[1596.85,1097.39,0],0,false,[[575,0,53.8731],[233,0,50.2886]]],[[1523.11,5093.1,0],0,false,[[375,0,135.279],[587,0,192.835]]],[[7062.48,5482.88,0],1,true,[[241,0,9.13707],[345,0,26.2808],[89,0,16.6221]]],[[4543.67,1001.15,0],0,false,[[296,0,376.899],[608,0,235.054]]],[[5834.54,7179.02,0],1,false,[[213,0,338.023],[59,0,341.041]]], +[[5592.75,9689.73,0],1,false,[[381,0,22.2616],[289,0,52.7766]]],[[4904.3,7240.78,0],1,true,[[49,0,321.446],[546,0,18.6749],[110,0,15.841]]],[[6132.86,4563.58,0],1,true,[[386,0,268.051],[183,0,23.3085],[225,0,8.43822]]],[[3608.56,8188.58,0],1,true,[[164,0,183.059],[142,0,25.1456],[350,0,291.328]]],[[5199.53,4025,0],1,true,[[615,0,20.8633],[504,0,139.462],[497,0,13.0234]]], +[[3656.55,7870.74,0],1,false,[[611,0,46.367]]],[[2196.5,7338.5,0],0,false,[[378,0,143.206],[404,0,233.528]]],[[7188.14,7093.19,0],1,true,[[82,0,131.366],[124,0,113.943],[400,0,111.107]]],[[5064.62,6134.97,0],1,false,[[514,0,307.542],[291,0,284.574]]],[[4888.84,7546.16,0],1,false,[[509,0,391.826],[41,0,321.446]]], +[[4646.35,5776.52,0],1,true,[[212,0,311.22],[220,0,27.5378],[515,0,15.1002]]],[[2107.43,5986.65,0],0,false,[[253,0,137.644],[431,0,69.6498]]],[[6751.99,4103.73,0],1,false,[[495,0,38.0175],[500,0,125.602]]],[[6284.25,3839.69,0],1,false,[[366,0,49.4724],[513,0,11.8126]]],[[6500.32,3529.01,0],1,false,[[604,0,30.2501],[541,0,260.248]]], +[[3463.13,8842.02,0],1,false,[[180,0,58.1464],[21,0,22.6335]]],[[7141.65,3319.2,0],1,true,[[480,0,22.904],[577,0,78.948],[624,0,13.3966]]],[[7265.75,3214.48,0],1,false,[[126,0,64.2193],[342,0,24.7134]]],[[1415.26,4584.29,0],0,true,[[246,0,9.46221],[266,0,34.3302],[33,0,15.9369]]],[[5497.06,7163.78,0],1,true,[[39,0,341.041],[327,0,22.7395],[196,0,9.42989]]], +[[5343.11,7555.62,0],1,false,[[222,0,164.492],[279,0,284.488]]],[[2537.01,3355.99,0],0,false,[[157,0,207.288],[107,0,211.48]]],[[5475.98,7187.03,0],1,false,[[196,0,23.2954],[222,0,247.492]]],[[1507.17,5563.39,0],0,false,[[313,0,355.564],[238,0,80.2284]]],[[3705.39,7873.94,0],1,true,[[18,0,26.3655],[359,0,46.7733],[611,0,9.1201]]], +[[2387.91,4439.01,0],0,false,[[14,0,197.526],[383,0,215.62]]],[[5651.87,9682.23,0],1,false,[[384,0,17.8118],[381,0,37.9221]]],[[3735.31,3419.61,0],0,true,[[235,0,26.8099],[432,0,91.9729],[462,0,80.047]]],[[3265.04,482.457,0],0,false,[[271,0,255.17],[620,0,244.155]]],[[1442.79,5870.04,0],0,false,[[534,0,307.139],[79,0,187.067]]], +[[5417.19,8203.42,0],1,false,[[20,0,135.919]]],[[3450.81,8911.45,0],1,true,[[308,0,12.321],[440,0,12.2672],[180,0,12.8057]]],[[3483.88,8883.66,0],1,false,[[450,0,23.3809],[272,0,42.7362]]],[[7195.33,3349.45,0],1,true,[[202,0,24.8714],[316,0,23.7685],[543,0,13.9475]]],[[3327.64,10637,0],1,true,[[567,0,60.4348],[606,0,41.3003],[395,0,22.7801]]], +[[2503.17,2649.37,0],0,true,[[258,0,109.992],[293,0,19.8207],[444,0,11.8199],[121,0,21.1533]]],[[5609.29,8679.46,0],1,false,[[370,0,138.418],[130,0,73.4714]]],[[3258.67,2517.95,0],0,false,[[288,0,165.344],[112,0,159.193]]],[[2327.63,4649.6,0],0,false,[[383,0,22.1987],[302,0,303.721]]],[[1409.67,6052.55,0],0,false,[[69,0,187.067],[91,0,378.396]]], +[[4118.2,2769.53,0],0,false,[[84,0,184.716],[609,0,366.237]]],[[3002.04,3244.54,0],0,false,[[570,0,28.2454],[198,0,281.23]]],[[7311.94,7070.48,0],1,true,[[328,0,86.9127],[161,0,27.0455],[47,0,131.366]]],[[3232.27,2312.07,0],0,false,[[456,0,350.517],[288,0,144.192]]],[[4300.44,2793.29,0],0,false,[[286,0,20.4586],[80,0,184.716]]], +[[3730.38,2580.03,0],0,false,[[609,0,84.7574],[29,0,175.907]]],[[4633.59,8480.68,0],1,false,[[26,0,239.988],[418,0,60.9817]]],[[4618.62,5437.78,0],1,false,[[464,0,46.2062],[299,0,261.956]]],[[6953.85,3550.8,0],1,true,[[31,0,19.3728],[564,0,66.8387],[426,0,14.2235]]],[[7062.27,5499.49,0],1,true,[[133,0,12.7153],[241,0,20.2417],[37,0,16.6221]]], +[[3346.84,4032.04,0],0,false,[[320,0,129.653],[585,0,309.093]]],[[1508.42,6416.57,0],0,false,[[79,0,378.396],[4,0,338.871]]],[[7376.77,7258.8,0],1,true,[[550,0,31.3496],[306,0,16.0382],[392,0,9.71467]]],[[2938.72,3177.4,0],0,false,[[12,0,231.248],[197,0,82.3835]]],[[1613.18,3163.09,0],0,false,[[602,0,54.1398],[106,0,358.32]]], +[[4867.44,4399.88,0],1,false,[[523,0,248.743],[438,0,280.078]]],[[4656.28,10151.3,0],1,true,[[576,0,271.136],[325,0,33.7753],[351,0,15.1799]]],[[4478.7,2296.41,0],0,false,[[226,0,20.1214],[249,0,15.4605]]],[[4572.89,8727.58,0],1,false,[[122,0,166.042],[26,0,25.4993]]],[[5487.47,5700.64,0],1,false,[[519,0,229.822],[292,0,277.268]]], +[[4135.77,8993.41,0],1,false,[[349,0,231.351],[122,0,357.773]]],[[3911.55,1109.53,0],0,false,[[379,0,183.711],[363,0,137.849]]],[[4630.93,8130.42,0],1,false,[[418,0,315.901],[509,0,265.943]]],[[1759.43,3824.68,0],0,false,[[380,0,232.959],[127,0,117.787]]],[[5820.24,6367.74,0],1,false,[[539,0,164.876],[242,0,44.9828]]], +[[3395.96,3264.94,0],0,false,[[536,0,373.823],[462,0,298.386]]],[[1517.35,2819.42,0],0,false,[[94,0,358.32],[473,0,16.5235]]],[[2457.9,3551.35,0],0,false,[[61,0,211.48],[158,0,341.851]]],[[6843.08,3739.77,0],1,false,[[324,0,130.925],[248,0,64.4889]]],[[2358.85,3228.72,0],0,false,[[486,0,22.1929],[304,0,47.3162]]], +[[4894.72,7228.17,0],1,true,[[494,0,30.1986],[214,0,34.0109],[41,0,15.841],[546,0,7.97153]]],[[3288.8,4294.76,0],0,true,[[389,0,276.891],[227,0,19.2116],[156,0,11.6569]]],[[3235.6,2669.58,0],0,false,[[77,0,159.193],[170,0,180.283]]],[[7335.76,6937.95,0],1,false,[[435,0,46.4204],[317,0,56.4188]]],[[4560.41,10087.3,0],1,false,[[414,0,90.8518],[529,0,299.127]]], +[[6772.57,7117.09,0],1,false,[[399,0,18.662],[146,0,104.053]]],[[7283.08,8041.57,0],1,false,[[530,0,327.765],[260,0,361.359]]],[[6660.19,8740.56,0],1,false,[[263,0,184.696],[285,0,308.66]]],[[5983.29,9015.16,0],1,false,[[162,0,139.29],[412,0,341.518]]],[[4433.67,6469.2,0],1,true,[[247,0,29.5221],[243,0,153.59],[382,0,70.0698]]], +[[1481.02,4604.33,0],0,false,[[447,0,37.0153],[614,0,66.3558]]],[[2484.95,2659.58,0],0,true,[[444,0,15.5367],[330,0,107.454],[293,0,1.85012],[75,0,21.1533]]],[[4444.43,8824.19,0],1,false,[[100,0,357.773],[98,0,166.042]]],[[6794.82,4195.22,0],1,false,[[508,0,79.4528],[437,0,109.928]]],[[7079.67,7124.01,0],1,false,[[47,0,113.943],[399,0,296.311]]], +[[7227.54,3281.29,0],1,false,[[342,0,52.2951],[202,0,50.5578]]],[[7279.56,3151.99,0],1,false,[[625,0,27.3337],[57,0,64.2193]]],[[1653.12,3833.02,0],0,false,[[103,0,117.787],[178,0,200.648]]],[[1418.34,4669.51,0],0,false,[[167,0,67.3697],[140,0,79.7928]]],[[7353.18,7022.5,0],1,false,[[317,0,29.9142],[239,0,78.8199]]], +[[5553,8634.6,0],1,false,[[76,0,73.4714],[374,0,135.486]]],[[1571.83,1139.58,0],0,false,[[233,0,106.047],[595,0,30.5059]]],[[5971.9,4372.76,0],1,false,[[583,0,270.064],[179,0,131.631]]],[[7070.42,5509.25,0],1,true,[[241,0,32.7149],[484,0,304.685],[89,0,12.7153]]],[[2070.46,2594.75,0],0,false,[[478,0,217.371],[558,0,296.388]]], +[[5971.41,6047.47,0],1,true,[[136,0,271.726],[252,0,22.4915],[427,0,8.45736]]],[[6231.6,6117.62,0],1,false,[[597,0,276.114],[135,0,271.726]]],[[3951.69,1747.35,0],0,false,[[571,0,175.146],[598,0,234.227]]],[[2855.81,3534.59,0],0,false,[[198,0,67.8377],[356,0,118.134]]],[[1878.05,1016.32,0],0,true,[[420,0,14.9962],[416,0,19.9436],[449,0,2.66453]]], +[[1447.75,4595.45,0],0,true,[[128,0,79.7928],[475,0,11.5992],[266,0,10.5479]]],[[6469.12,7991.52,0],1,false,[[429,0,342.345],[560,0,120.417]]],[[3615.11,8164.34,0],1,false,[[43,0,25.1456],[18,0,277.953]]],[[4473.23,2319.26,0],0,true,[[234,0,23.294],[319,0,24.149],[249,0,8.69065],[284,0,3.40731],[589,0,7.92032]]],[[2815.69,584.65,0],0,false,[[512,0,175.901],[271,0,243.939]]], +[[5116.1,5709.25,0],1,false,[[315,0,145.092],[297,0,83.986]]],[[6714.83,7033.63,0],1,false,[[115,0,104.053],[262,0,230.323]]],[[6840.94,4022.68,0],1,false,[[437,0,69.3536],[163,0,117.963]]],[[7274.99,7266.41,0],1,false,[[334,0,42.938]]],[[2559.53,4995.15,0],0,false,[[474,0,164.085],[360,0,249.15]]], +[[3938.56,1570.57,0],0,true,[[232,0,190.755],[221,0,19.6483],[331,0,9.68029]]],[[2149.66,5080.4,0],0,false,[[422,0,160.971],[0,0,359.203]]],[[4577.99,9312.85,0],1,false,[[522,0,207.948]]],[[3440.19,10381.8,0],1,false,[[395,0,257.545],[377,0,393.807]]],[[6297.61,2845.35,0],1,false,[[341,0,169.829],[396,0,398.745]]], +[[3435.53,1100.81,0],0,false,[[228,0,16.4335],[282,0,119.551]]],[[3282.75,4284.8,0],0,true,[[227,0,9.83445],[171,0,401.137],[111,0,11.6569]]],[[2518.14,3157.75,0],0,true,[[607,0,26.4388],[61,0,207.288],[562,0,11.8857],[181,0,10.4481]]],[[2281.21,3842.61,0],0,false,[[107,0,341.851],[265,0,326.367]]],[[1515.88,2795.36,0],0,true,[[283,0,197.119],[5,0,23.31],[473,0,8.59651]]], +[[7025.46,5415.75,0],1,false,[[185,0,22.889],[593,0,105.539]]],[[7314.24,7097.43,0],1,false,[[82,0,27.0455],[588,0,49.1806]]],[[5871.16,8936.45,0],1,true,[[526,0,25.1411],[118,0,139.29],[554,0,10.6905]]],[[6876.17,3910.16,0],1,false,[[147,0,117.963],[409,0,133.604]]],[[3565.66,8366.52,0],1,false,[[603,0,322.948],[43,0,183.059]]], +[[4002.93,8297.77,0],1,true,[[565,0,7.41914],[367,0,11.3334],[552,0,2.14609]]],[[7136.13,3445.34,0],1,false,[[316,0,90.4524],[340,0,29.2858]]],[[1392.9,4638.87,0],0,false,[[516,0,47.5765],[128,0,67.3697]]],[[4308.9,2810.64,0],0,false,[[533,0,389.706],[286,0,20.6478]]],[[4505.12,2031.24,0],0,false,[[434,0,272.363],[540,0,176.632]]], +[[3103.99,2748.55,0],0,false,[[112,0,180.283],[402,0,346.836]]],[[2916.41,4425.36,0],0,false,[[156,0,401.137],[217,0,319.006]]],[[5627.67,3405.94,0],1,false,[[439,0,312.962],[333,0,379.418]]],[[2471.61,4237.21,0],0,false,[[357,0,398.976],[14,0,26.7035]]],[[6043.85,5751.3,0],1,true,[[27,0,194.498],[427,0,315.056],[267,0,132.212]]], +[[2583.17,2332.66,0],0,false,[[17,0,175.824],[258,0,257.746]]],[[4835.64,7024.6,0],1,false,[[218,0,117.613],[268,0,397.263]]],[[3743.89,2135.37,0],0,false,[[598,0,264.264],[318,0,383.924]]],[[1609.83,4018.18,0],0,false,[[127,0,200.648],[630,0,164.762]]],[[6067.47,4459.75,0],1,false,[[132,0,131.631],[225,0,123.816]]], +[[3450.06,8898.67,0],1,true,[[440,0,23.9612],[55,0,58.1464],[71,0,12.8057]]],[[2525.84,3150.69,0],0,true,[[562,0,14.0065],[12,0,218.225],[157,0,10.4481]]],[[7372.1,7343.95,0],1,true,[[355,0,19.3639],[373,0,55.7374],[369,0,11.9457]]],[[6153.34,4552.68,0],1,true,[[42,0,23.3085],[321,0,409.191],[225,0,15.2721]]],[[7378.48,7178.04,0],1,false,[[239,0,79.2826],[306,0,65.1116]]], +[[7039.72,5433.64,0],1,false,[[345,0,28.5084],[160,0,22.889]]],[[6988.03,5401.53,0],1,false,[[1,0,254.898],[590,0,36.0479]]],[[1200.6,3975.78,0],0,true,[[630,0,282.338],[433,0,7.9599],[353,0,7.45149]]],[[6085.83,3952.5,0],1,false,[[513,0,227.248],[583,0,337.364]]],[[3449.13,1095.76,0],0,true,[[448,0,32.6236],[273,0,243.499],[228,0,14.576]]], +[[4836.06,4928.58,0],1,false,[[299,0,300.674],[523,0,308.32]]],[[3487.47,8920.71,0],1,true,[[308,0,25.5627],[365,0,257.669],[450,0,15.9556],[11,0,16.3031]]],[[7291.05,6883.2,0],1,false,[[348,0,49.5717],[250,0,71.7851]]],[[3934.93,7780.52,0],1,false,[[470,0,181.595],[503,0,231.907]]],[[1849.77,3336.47,0],0,false,[[208,0,31.0785],[312,0,140.055]]], +[[2628.45,2140.91,0],0,true,[[19,0,262.442],[17,0,24.0773],[10,0,12.4917]]],[[5488.49,7167.63,0],1,true,[[59,0,9.42989],[62,0,23.2954],[327,0,14.4874]]],[[3008.8,3219.44,0],0,false,[[93,0,82.3835],[536,0,22.9724]]],[[2841.29,3470.4,0],0,false,[[81,0,281.23],[138,0,67.8377]]],[[1594.74,4535.41,0],0,false,[[457,0,274.148],[352,0,135.524]]], +[[5602.57,7862.18,0],1,false,[[279,0,131.767]]],[[4320,8462.63,0],1,false,[[367,0,361.16]]],[[7205.35,3326.68,0],1,true,[[125,0,50.5578],[73,0,24.8714],[543,0,10.9686]]],[[7157.8,3310.34,0],1,true,[[624,0,21.1698],[22,0,79.2969],[480,0,15.506]]],[[3236.42,10375.4,0],1,false,[[7,0,67.2214],[441,0,361.297]]], +[[7332.85,2830.87,0],1,false,[[231,0,242.316],[625,0,304.249]]],[[1394.09,5125.59,0],0,false,[[600,0,349.633],[610,0,25.1272]]],[[5591.48,9728.13,0],1,false,[[518,0,26.5867],[617,0,66.4328]]],[[1822.67,3350.24,0],0,false,[[618,0,8.70901],[194,0,31.0785]]],[[4265.56,423.457,0],0,false,[[245,0,364.875],[481,0,236.223]]], +[[5651.09,9694.3,0],1,false,[[384,0,21.0722],[518,0,41.9794]]],[[5492.45,8970.43,0],1,false,[[612,0,122.281],[338,0,69.1569]]],[[4586.65,6080.1,0],1,false,[[243,0,267.075],[50,0,311.22]]],[[6169.36,7172.16,0],1,false,[[591,0,25.5703],[39,0,338.023]]],[[4860.97,7223.92,0],1,false,[[110,0,34.0109],[257,0,304.301]]], +[[3490.06,8820.18,0],1,false,[[272,0,21.2193],[616,0,31.5672]]],[[2380.73,6664.21,0],0,true,[[335,0,165.128],[407,0,14.5184],[555,0,14.9581]]],[[2630.62,4304.38,0],0,false,[[171,0,319.006],[14,0,171.511]]],[[4863.26,7137.25,0],1,false,[[546,0,93.3133],[176,0,117.613]]],[[6693.77,4745.79,0],1,false,[[551,0,222.073],[295,0,340.108]]], +[[4637.8,5750.4,0],1,true,[[50,0,27.5378],[464,0,283.008],[515,0,14.2257]]],[[3955.01,1581.32,0],0,true,[[150,0,19.6483],[354,0,82.0702],[331,0,12.7409]]],[[5399.88,7416.43,0],1,false,[[62,0,247.492],[60,0,164.492]]],[[3430.81,8977.74,0],1,false,[[310,0,27.6854],[440,0,57.424]]],[[7288.89,2308.68,0],1,false,[[460,0,390.541],[23,0,142.654]]], +[[6139.09,4557.92,0],1,true,[[179,0,123.816],[42,0,8.43822],[183,0,15.2721]]],[[4479.66,2276.31,0],0,false,[[540,0,70.2242],[97,0,20.1214]]],[[3286.47,4275.69,0],0,true,[[111,0,19.2116],[320,0,145.83],[156,0,9.83445]]],[[3439.59,1085,0],0,true,[[155,0,16.4335],[448,0,18.1399],[189,0,14.576]]],[[1646.68,1122.14,0],0,false,[[595,0,46.4084],[544,0,48.7179]]], +[[6957.67,3616.23,0],1,false,[[409,0,173.756],[413,0,57.5637]]],[[7423.26,2607.07,0],1,false,[[23,0,227.858],[205,0,242.316]]],[[3810.86,1430.03,0],0,false,[[273,0,263.906],[150,0,190.755]]],[[1548.23,1110.25,0],0,false,[[35,0,50.2886],[131,0,106.047]]],[[4477.14,2342.23,0],0,true,[[465,0,336.137],[143,0,23.294],[589,0,15.3858]]], +[[3718.7,3440.65,0],0,false,[[585,0,397.616],[67,0,26.8099]]],[[3880.08,9448.81,0],1,false,[[458,0,208.67],[349,0,300.84]]],[[2646.21,1821.75,0],0,false,[[343,0,259.405],[451,0,183.218]]],[[1427.4,5567.22,0],0,true,[[63,0,80.2284],[534,0,6.23782],[466,0,20.721]]],[[7371.27,7099.1,0],1,false,[[129,0,78.8199],[184,0,79.2826]]], +[[1837.12,3088.45,0],0,false,[[25,0,26.1199],[476,0,87.5224]]],[[7053.49,5481.26,0],1,true,[[581,0,32.9814],[37,0,9.13707],[133,0,32.7149],[89,0,20.2417]]],[[5820.4,6412.53,0],1,false,[[104,0,44.9828]]],[[4499.77,6330.66,0],1,false,[[119,0,153.59],[212,0,267.075]]],[[2492.38,2622.47,0],0,false,[[558,0,201.602],[444,0,23.6669]]], +[[3949.66,592.19,0],0,false,[[363,0,402.747],[209,0,364.875]]],[[1409.93,4576.47,0],0,true,[[9,0,50.4861],[58,0,9.46221],[33,0,12.1135],[516,0,17.2579]]],[[4420.96,6495.83,0],1,false,[[443,0,398.962],[119,0,29.5221]]],[[6825.85,3801.77,0],1,false,[[108,0,64.4889],[556,0,152.846]]],[[4477.75,2311.84,0],0,true,[[97,0,15.4605],[284,0,8.66949],[143,0,8.69065]]], +[[7303.73,6953.45,0],1,false,[[192,0,71.7851],[328,0,30.4206]]],[[7310.02,7421.56,0],1,false,[[373,0,68.0737]]],[[5951.46,6057.72,0],1,true,[[427,0,18.5245],[539,0,233.658],[135,0,22.4915]]],[[2078.36,5888.68,0],0,false,[[479,0,346.715],[51,0,137.644]]],[[1983.62,3134.82,0],0,false,[[312,0,111.108],[599,0,83.0307]]], +[[5671.35,8796.74,0],1,true,[[376,0,30.8963],[526,0,228.61],[370,0,20.5014]]],[[2203.91,3480,0],0,false,[[401,0,146.247],[419,0,209.752]]],[[4562.78,7179.3,0],1,false,[[214,0,304.301],[454,0,259.461]]],[[2588.41,2584.74,0],0,false,[[175,0,257.746],[75,0,109.992]]],[[1359.9,2961.77,0],0,false,[[5,0,221.88],[24,0,357.903]]], +[[7102.06,8352.08,0],1,false,[[116,0,361.359],[337,0,46.5578]]],[[4946.25,9489.55,0],1,false,[[30,0,270.258],[522,0,219.849]]],[[6588.62,6856.87,0],1,false,[[146,0,230.323],[622,0,260.577]]],[[6795.52,8615.5,0],1,false,[[337,0,358.059],[117,0,184.696]]],[[1701.29,1065.93,0],0,false,[[416,0,163.778],[575,0,55.3543]]], +[[2098.15,4107.95,0],0,false,[[158,0,326.367],[457,0,401.721]]],[[1449.58,4585.06,0],0,true,[[58,0,34.3302],[475,0,1.76568],[140,0,10.5479]]],[[5938.08,5681.54,0],1,false,[[292,0,184.831],[174,0,132.212]]],[[4954.07,6652.58,0],1,false,[[176,0,397.263],[514,0,226.627]]],[[2331.01,3218.41,0],0,true,[[13,0,7.77694],[401,0,167.244],[486,0,9.57351]]], +[[5440.2,8817.92,0],1,true,[[489,0,327.895],[496,0,21.6379],[612,0,118.531]]],[[3027.75,467.587,0],0,false,[[144,0,243.939],[68,0,255.17]]],[[3490.14,8841.39,0],1,false,[[72,0,42.7362],[215,0,21.2193]]],[[3632.23,1248.03,0],0,false,[[189,0,243.499],[232,0,263.906]]],[[2354.92,3115.18,0],0,false,[[330,0,372.758],[336,0,28.9834]]], +[[1838.13,3360.32,0],0,false,[[455,0,294.006],[618,0,26.3499]]],[[1533.36,1920.28,0],0,false,[[586,0,332.407],[537,0,267.894]]],[[5493.66,4213.84,0],1,false,[[583,0,339.527],[497,0,355.35]]],[[7318.8,6862.07,0],1,true,[[361,0,10.696],[348,0,13.6262],[322,0,4.92764]]],[[5545.1,7749.89,0],1,false,[[60,0,284.488],[200,0,131.767]]], +[[2228.46,6430.58,0],0,false,[[407,0,265.272],[16,0,328.316]]],[[1236.17,1720.04,0],0,true,[[408,0,21.0927],[430,0,333.356],[586,0,37.259]]],[[3386.71,1208.93,0],0,false,[[155,0,119.551],[557,0,271.41]]],[[1640.1,2647.1,0],0,false,[[485,0,48.133],[159,0,197.119]]],[[4476.44,2320.41,0],0,true,[[249,0,8.66949],[589,0,6.77029],[143,0,3.40731]]], +[[6444.36,8960.62,0],1,false,[[117,0,308.66],[490,0,308.65]]],[[4320.82,2793.78,0],0,true,[[168,0,20.6478],[465,0,176.16],[84,0,20.4586]]],[[2166.21,6101.61,0],0,true,[[16,0,22.2555],[417,0,15.942],[15,0,5.68333]]],[[3350.95,2387.16,0],0,true,[[318,0,95.1547],[77,0,165.344],[83,0,144.192]]],[[5544.67,9711.49,0],1,false,[[40,0,52.7766],[323,0,132.818]]], +[[1418.69,2571.44,0],0,false,[[511,0,342.134],[485,0,236.976]]],[[5159.13,5872.7,0],1,false,[[48,0,284.574],[619,0,167.044]]],[[5758.55,5685.08,0],1,false,[[99,0,277.268],[267,0,184.831]]],[[2485.5,2657.86,0],0,false,[[75,0,19.8207],[121,0,1.85012]]],[[2846.05,1821.16,0],0,true,[[385,0,271.988],[398,0,18.926],[574,0,6.3486]]], +[[6717.86,5082.64,0],1,false,[[219,0,340.108],[436,0,157.772]]],[[4520.5,631.245,0],0,false,[[481,0,196.017],[38,0,376.899]]],[[5196.79,5688.15,0],1,false,[[145,0,83.986],[519,0,71.2497]]],[[6319.55,7520.91,0],1,false,[[560,0,390.407],[538,0,355.734]]],[[4709.96,5199.24,0],1,false,[[87,0,261.956],[190,0,300.674]]], +[[3413.29,9066.37,0],1,false,[[301,0,396.369],[605,0,32.9199]]],[[3336.81,9454.38,0],1,false,[[459,0,291.914],[300,0,396.369]]],[[2161.43,4897.51,0],0,false,[[78,0,303.721],[422,0,22.5861]]],[[3982.21,7111,0],1,true,[[472,0,19.0962],[443,0,359.157],[626,0,6.00951]]],[[2370.04,3185.65,0],0,false,[[109,0,47.3162],[314,0,40.5841]]], +[[3059.96,4857.83,0],0,false,[[442,0,397.924],[389,0,347.195]]],[[7380.06,7243.1,0],1,true,[[184,0,65.1116],[392,0,25.4063],[92,0,16.0382]]],[[4184.45,7747.77,0],1,false,[[424,0,156.272]]],[[3462.56,8915.17,0],1,false,[[71,0,12.321],[191,0,25.5627]]],[[7107.88,3421.99,0],1,false,[[340,0,45.8274],[623,0,39.5469]]], +[[3424.52,9004.71,0],1,false,[[605,0,29.8174],[223,0,27.6854]]],[[4631.03,1409.26,0],0,false,[[608,0,188.993],[434,0,365.34]]],[[1927.53,3227.08,0],0,false,[[194,0,140.055],[254,0,111.108]]],[[1848.84,5621.57,0],0,false,[[479,0,188.542],[63,0,355.564]]],[[2377.86,3146.18,0],0,true,[[304,0,40.5841],[607,0,128.405],[336,0,40.9833]]], +[[4978.02,5679.35,0],1,false,[[621,0,190.764],[145,0,145.092]]],[[7185.47,3371.08,0],1,true,[[73,0,23.7685],[166,0,90.4524],[469,0,54.6619]]],[[7347.42,6993.15,0],1,false,[[113,0,56.4188],[129,0,29.9142]]],[[3427.6,2330.98,0],0,true,[[177,0,383.924],[288,0,95.1547],[29,0,258.959]]],[[4468.27,2295.63,0],0,false,[[143,0,24.149],[563,0,25.9782]]], +[[3270.8,4131.35,0],0,false,[[227,0,145.83],[90,0,129.653]]],[[6547.42,4486.57,0],1,false,[[183,0,409.191],[551,0,196.58]]],[[7316.37,6857.78,0],1,true,[[348,0,10.4178],[361,0,15.4817],[278,0,4.92764]]],[[5442.51,9671.34,0],1,false,[[289,0,132.818],[30,0,272.948]]],[[6899.03,3622.49,0],1,true,[[564,0,23.4928],[108,0,130.925],[332,0,15.4488]]], +[[4624.14,10161.6,0],1,true,[[96,0,33.7753],[542,0,62.7204],[351,0,19.2735]]],[[2427.17,6799.17,0],0,false,[[404,0,371.412],[555,0,134.124]]],[[5474.38,7164.42,0],1,true,[[59,0,22.7395],[2,0,382.218],[196,0,14.4874]]],[[7305.63,6983.81,0],1,false,[[250,0,30.4206],[82,0,86.9127]]],[[6201.3,8511.07,0],1,false,[[8,0,184.374],[429,0,253.612]]], +[[2446.39,2758.85,0],0,false,[[121,0,107.454],[274,0,372.758]]],[[3942.41,1579.45,0],0,true,[[221,0,12.7409],[571,0,10.2511],[150,0,9.68029]]],[[6908.93,3610.65,0],1,true,[[564,0,8.22729],[467,0,14.7275],[324,0,15.4488]]],[[5937.13,3188.21,0],1,true,[[172,0,379.418],[406,0,31.3266],[633,0,21.512]]],[[7317.8,7263.5,0],1,true,[[550,0,27.8798],[148,0,42.938],[487,0,10.6375]]], +[[2235.77,6741.57,0],0,false,[[216,0,165.128],[483,0,388.832]]],[[2341.11,3140.66,0],0,true,[[274,0,28.9834],[517,0,26.283],[314,0,40.9833]]],[[7069.48,8385.32,0],1,false,[[260,0,46.5578],[263,0,358.059]]],[[5435.79,8993.96,0],1,false,[[211,0,69.1569]]],[[4448.09,5880.31,0],1,false,[[631,0,225.406]]], +[[7109.24,3456.87,0],1,true,[[166,0,29.2858],[492,0,31.5213],[309,0,45.8274]]],[[6182.58,2970.05,0],1,false,[[406,0,297.909],[154,0,169.829]]],[[7254.43,3236.44,0],1,false,[[57,0,24.7134],[125,0,52.2951]]],[[2394.74,1839.43,0],0,false,[[527,0,229.283],[237,0,259.405]]],[[1882.5,4819.66,0],0,false,[[421,0,176.177],[403,0,293.278]]], +[[7055.01,5457.7,0],1,false,[[37,0,26.2808],[185,0,28.5084]]],[[7347.49,7331.98,0],1,false,[[487,0,73.8864],[369,0,23.8481]]],[[1808.45,1261.67,0],0,false,[[531,0,50.6029],[387,0,298.231]]],[[7305.96,6857.5,0],1,true,[[278,0,13.6262],[192,0,49.5717],[322,0,10.4178]]],[[4035.1,9200.7,0],1,true,[[236,0,300.84],[100,0,231.351],[365,0,364.269]]], +[[3874.32,8278.92,0],1,false,[[43,0,291.328],[565,0,123.155]]],[[4641.16,10152.6,0],1,true,[[414,0,16.8771],[325,0,19.2735],[96,0,15.1799]]],[[1492.65,4544.25,0],0,false,[[199,0,135.524],[9,0,58.7282]]],[[1197.12,3982.33,0],0,true,[[433,0,14.4349],[506,0,249.317],[187,0,7.45149]]],[[4027.31,1619.53,0],0,false,[[221,0,82.0702],[453,0,85.2964]]], +[[7373.88,7324.67,0],1,true,[[392,0,56.3921],[182,0,19.3639],[369,0,7.79584]]],[[2796.74,3620.65,0],0,false,[[138,0,118.134],[357,0,309.34]]],[[2628.02,3873.9,0],0,false,[[356,0,309.34],[173,0,398.976]]],[[2715.1,5191.91,0],0,false,[[596,0,284.579],[360,0,28.0452]]],[[3718.77,7829.16,0],1,true,[[64,0,46.7733],[415,0,357.826],[470,0,80.6746]]], +[[2733.7,5170.93,0],0,true,[[358,0,28.0452],[442,0,54.7535],[149,0,249.15]]],[[7321.17,6872.5,0],1,true,[[322,0,15.4817],[435,0,20.6612],[278,0,10.696]]],[[7177.02,6748.91,0],1,false,[[471,0,360.377],[400,0,238.605]]],[[3879.66,977.83,0],0,false,[[101,0,137.849],[245,0,402.747]]],[[6304.11,3833.18,0],1,false,[[425,0,150.927],[513,0,32.0133]]], +[[3714.74,9037.22,0],1,false,[[191,0,257.669],[349,0,364.269]]],[[6285.84,3791.06,0],1,false,[[541,0,94.8445],[53,0,49.4724]]],[[4014.24,8297.57,0],1,true,[[165,0,11.3334],[201,0,361.16],[552,0,13.2717]]],[[6778.37,5246.22,0],1,true,[[1,0,7.69403],[482,0,148.885],[436,0,18.373]]],[[7371.31,7332.03,0],1,true,[[346,0,23.8481],[355,0,7.79584],[182,0,11.9457]]], +[[5651.11,8794.07,0],1,true,[[76,0,138.418],[376,0,11.556],[255,0,20.5014]]],[[942.666,2311.47,0],0,false,[[430,0,371.439],[511,0,266.305]]],[[5372.64,8298.58,0],1,false,[[3,0,192.824],[507,0,199.138]]],[[7373.11,7399.65,0],1,true,[[182,0,55.7374],[477,0,27.0602],[251,0,68.0737]]],[[5551.31,8505.94,0],1,false,[[130,0,135.486],[3,0,110.489]]], +[[1402.54,5149.2,0],0,false,[[610,0,3.26123],[36,0,135.279]]],[[5640.58,8798.83,0],1,true,[[496,0,183.563],[255,0,30.8963],[370,0,11.556]]],[[3619.46,10040.4,0],1,false,[[153,0,393.807],[390,0,169.53]]],[[2069.81,7401.57,0],0,false,[[34,0,195.685],[46,0,143.206]]],[[4013.17,1248.81,0],0,false,[[594,0,362.63],[101,0,183.711]]], +[[1980.68,3777.06,0],0,false,[[628,0,185.904],[103,0,232.959]]],[[5614.13,9683.59,0],1,false,[[66,0,37.9221],[40,0,22.2616]]],[[4388.9,6425.26,0],1,false,[[119,0,70.0698],[532,0,212.272]]],[[2345.79,4636.88,0],0,true,[[65,0,215.62],[474,0,265.583],[78,0,22.1987]]],[[5669.41,9683.89,0],1,true,[[545,0,377.208],[210,0,21.0722],[66,0,17.8118]]], +[[2971.35,1583.17,0],0,false,[[557,0,312.779],[294,0,271.988]]],[[5926.65,4733.66,0],1,false,[[28,0,345.837],[42,0,268.051]]],[[2026.2,1442.56,0],0,false,[[347,0,298.231],[527,0,330.106]]],[[6772.06,7132.33,0],1,false,[[592,0,249.49],[399,0,15.3137]]],[[3237.94,4565.37,0],0,false,[[305,0,347.195],[111,0,276.891]]], +[[3584.18,9876.82,0],1,false,[[377,0,169.53],[553,0,131.666]]],[[7325.78,7231.97,0],1,false,[[588,0,85.8621],[487,0,33.5923]]],[[7378.05,7268.43,0],1,true,[[306,0,25.4063],[355,0,56.3921],[92,0,9.71467]]],[[6271.83,7171.8,0],1,false,[[592,0,257.519],[591,0,77.2949]]],[[3458.02,8980.38,0],1,false,[[584,0,34.6628],[11,0,53.1066]]], +[[3336.51,10616.4,0],1,false,[[74,0,22.7801],[153,0,257.545]]],[[6604.64,2595.78,0],1,false,[[154,0,398.745],[460,0,368.112]]],[[3701.83,10555.5,0],1,false,[[566,0,364.467],[567,0,359.243]]],[[2835.53,1836.82,0],0,true,[[294,0,18.926],[19,0,107.493],[574,0,12.7126]]],[[6786.96,7128.96,0],1,true,[[124,0,296.311],[115,0,18.662],[388,0,15.3137]]], +[[7160.34,6986.28,0],1,false,[[362,0,238.605],[47,0,111.107]]],[[2240.25,3343.58,0],0,false,[[269,0,167.244],[256,0,146.247]]],[[3042.97,3078.78,0],0,false,[[170,0,346.836],[570,0,142.741]]],[[2152.99,4913.4,0],0,false,[[344,0,293.278],[422,0,7.59123]]],[[2330.46,7151.52,0],0,false,[[46,0,233.528],[326,0,371.412]]], +[[4245.83,1848.88,0],0,false,[[629,0,197.734],[502,0,220.501]]],[[5961.99,3169.2,0],1,true,[[333,0,31.3266],[341,0,297.909],[633,0,10.8728]]],[[2374.27,6651.2,0],0,true,[[555,0,28.7767],[280,0,265.272],[216,0,14.5184]]],[[1253.77,1708.55,0],0,false,[[572,0,325.874],[281,0,21.0927]]],[[6920.97,3784.44,0],1,false,[[163,0,133.604],[230,0,173.756]]], +[[7124.04,6125.81,0],1,false,[[484,0,338.864],[471,0,271.243]]],[[2421.16,5637.72,0],0,false,[[488,0,291.79],[596,0,261.889]]],[[6238.25,9224.95,0],1,true,[[490,0,26.8692],[549,0,149.296],[118,0,341.518]]],[[6963.01,3558.96,0],1,true,[[230,0,57.5637],[426,0,18.1769],[31,0,22.907]]],[[4626.66,10144,0],1,false,[[351,0,16.8771],[114,0,90.8518]]], +[[3814.42,7485.02,0],1,false,[[359,0,357.826],[472,0,396.199]]],[[1858.89,1021.8,0],0,true,[[139,0,19.9436],[264,0,163.778],[449,0,17.3125]]],[[2171.56,6086.85,0],0,true,[[287,0,15.942],[488,0,226.687],[15,0,14.4906]]],[[4589.49,8439.65,0],1,false,[[86,0,60.9817],[102,0,315.901]]],[[2026.29,3574.36,0],0,true,[[256,0,209.752],[628,0,27.8354],[455,0,14.2124]]], +[[1892.41,1012.27,0],0,true,[[449,0,17.6384],[613,0,261.048],[139,0,14.9962]]],[[1742.89,4911.59,0],0,false,[[587,0,126.812],[344,0,176.177]]],[[2157.23,4919.69,0],0,true,[[302,0,22.5861],[151,0,160.971],[403,0,7.59123]]],[[1943.83,2991.93,0],0,false,[[599,0,132.169],[501,0,88.8103]]],[[4199.72,7599.31,0],1,false,[[503,0,116.358],[307,0,156.272]]], +[[6432.89,3755.57,0],1,false,[[521,0,331.117],[364,0,150.927]]],[[6964,3540.84,0],1,true,[[413,0,18.1769],[31,0,5.25374],[88,0,14.2235]]],[[5963.77,6043.91,0],1,true,[[174,0,315.056],[252,0,18.5245],[135,0,8.45736]]],[[1818.71,3089.36,0],0,false,[[25,0,33.2995],[525,0,37.4538]]],[[6350.77,8308.76,0],1,false,[[329,0,253.612],[141,0,342.345]]], +[[1009.25,1958.74,0],0,false,[[281,0,333.356],[371,0,371.439]]],[[2106.1,6050.6,0],0,false,[[51,0,69.6498],[15,0,73.4933]]],[[3796.4,3350.96,0],0,false,[[67,0,91.9729],[533,0,360.673]]],[[1199.01,3968.02,0],0,true,[[627,0,143.577],[353,0,14.4349],[187,0,7.9599]]],[[4575.97,1769.93,0],0,false,[[311,0,365.34],[169,0,272.363]]], +[[7326.42,6892.48,0],1,false,[[361,0,20.6612],[113,0,46.4204]]],[[6770.09,5229.83,0],1,true,[[295,0,157.772],[1,0,24.7399],[368,0,18.373]]],[[6825.53,4090.18,0],1,false,[[123,0,109.928],[147,0,69.3536]]],[[5064.74,4202.57,0],1,false,[[95,0,280.078],[615,0,202.306]]],[[5471.63,3670.82,0],1,false,[[504,0,309.483],[172,0,312.962]]], +[[3444.52,8921.98,0],1,true,[[223,0,57.424],[180,0,23.9612],[71,0,12.2672]]],[[3258.36,10016.6,0],1,false,[[204,0,361.297],[459,0,276.186]]],[[2772.55,5132.38,0],0,false,[[360,0,54.7535],[305,0,397.924]]],[[4194.47,6823.89,0],1,false,[[303,0,359.157],[247,0,398.962]]],[[2491.84,2646.01,0],0,true,[[244,0,23.6669],[121,0,15.5367],[75,0,11.8199]]], +[[1422.67,4711.96,0],0,false,[[614,0,61.6195],[600,0,105.033]]],[[5219.74,5524.72,0],1,false,[[573,0,159.076],[547,0,372.935]]],[[1460.95,4576.03,0],0,false,[[475,0,13.754],[120,0,37.0153]]],[[3429.84,1069.92,0],0,true,[[620,0,384.786],[189,0,32.6236],[228,0,18.1399]]],[[1875.62,1017.39,0],0,true,[[139,0,2.66453],[420,0,17.6384],[416,0,17.3125]]], +[[3479.95,8906.7,0],1,true,[[11,0,23.7976],[72,0,23.3809],[191,0,15.9556]]],[[2828.55,1825.18,0],0,false,[[237,0,183.218],[574,0,13.1857]]],[[6411.6,5454.23,0],1,false,[[482,0,279.516],[27,0,284.522]]],[[4103.76,1590.58,0],0,false,[[354,0,85.2964],[594,0,4.38989]]],[[4313.29,7208.81,0],1,false,[[257,0,259.461],[626,0,348.362]]], +[[2013.53,3580.6,0],0,true,[[628,0,16.7479],[275,0,294.006],[419,0,14.2124]]],[[2888.96,2309.46,0],0,false,[[10,0,314.625],[83,0,350.517]]],[[1803.89,4364.97,0],0,false,[[265,0,401.721],[199,0,274.148]]],[[3862.3,9644.69,0],1,false,[[553,0,245.588],[236,0,208.67]]],[[3292.14,9742.59,0],1,false,[[441,0,276.186],[301,0,291.914]]], +[[6914.17,2402.7,0],1,false,[[396,0,368.112],[224,0,390.541]]],[[1623.86,6766.13,0],0,true,[[4,0,34.9171],[569,0,237.007],[483,0,241.739]]],[[3669.17,3376.15,0],0,false,[[105,0,298.386],[67,0,80.047]]],[[1922.29,3064.47,0],0,false,[[476,0,95.563]]],[[4638.11,5479.56,0],1,false,[[220,0,283.008],[87,0,46.2062]]], +[[4448.07,2672.92,0],0,false,[[286,0,176.16],[234,0,336.137]]],[[1423.03,5546.99,0],0,true,[[610,0,403.072],[534,0,24.9334],[238,0,20.721]]],[[6894.27,3610.53,0],1,true,[[332,0,14.7275],[521,0,162.42],[564,0,19.6248]]],[[5992,3212,0],1,false,[[6,0,344.084],[633,0,49.4835]]],[[7140.54,3348.95,0],1,true,[[623,0,40.7073],[624,0,21.1346],[316,0,54.6619]]], +[[3787.26,7868.78,0],1,false,[[359,0,80.6746],[193,0,181.595]]],[[7171.98,6390.6,0],1,false,[[410,0,271.243],[362,0,360.377]]],[[3971.39,7126.73,0],1,true,[[415,0,396.199],[303,0,19.0962],[626,0,14.2407]]],[[1513.11,2803.46,0],0,true,[[106,0,16.5235],[159,0,8.59651],[5,0,16.1521]]],[[2488.08,4852.27,0],0,false,[[383,0,265.583],[149,0,164.085]]], +[[1451.21,4584.38,0],0,true,[[140,0,11.5992],[447,0,13.754],[266,0,1.76568]]],[[1898.25,3135.87,0],0,false,[[240,0,87.5224],[463,0,95.563]]],[[7374.31,7426.68,0],1,false,[[373,0,27.0602],[530,0,308.371]]],[[1863.84,2619.97,0],0,false,[[485,0,213.495],[134,0,217.371]]],[[2025.3,5560.56,0],0,true,[[0,0,139.614],[253,0,346.715],[313,0,188.542]]], +[[7163.91,3324.59,0],1,true,[[543,0,38.2329],[56,0,22.904],[624,0,15.1671],[203,0,15.506]]],[[4496.87,445.36,0],0,false,[[209,0,236.223],[296,0,196.017]]],[[6658.37,5329.33,0],1,false,[[368,0,148.885],[452,0,279.516]]],[[1852.37,6774.28,0],0,false,[[335,0,388.832],[461,0,241.739]]],[[7134.63,5801.55,0],1,false,[[133,0,304.685],[410,0,338.864]]], +[[1652.51,2605.53,0],0,true,[[290,0,236.976],[478,0,213.495],[283,0,48.133]]],[[2338.85,3223.89,0],0,true,[[13,0,12.2516],[109,0,22.1929],[269,0,9.57351]]],[[7328.26,7265.47,0],1,true,[[391,0,33.5923],[346,0,73.8864],[334,0,10.6375],[550,0,17.8777]]],[[2297.67,5899.92,0],0,false,[[417,0,226.687],[411,0,291.79]]],[[5151.9,8668,0],1,false,[[493,0,294.025],[270,0,327.895]]], +[[6255.17,9204.09,0],1,false,[[285,0,308.65],[412,0,26.8692]]],[[6482.49,6485.81,0],1,false,[[622,0,143.885],[597,0,197.765]]],[[7079.24,3466.54,0],1,false,[[340,0,31.5213],[31,0,134.577]]],[[4869.55,8682.23,0],1,false,[[26,0,300.587],[489,0,294.025]]],[[4924.91,7228.79,0],1,false,[[2,0,179.528],[110,0,30.1986]]], +[[6760.95,4066.79,0],1,false,[[556,0,120.251],[52,0,38.0175]]],[[5461.18,8823.21,0],1,false,[[270,0,21.6379],[376,0,183.563]]],[[5193.59,4036.59,0],1,true,[[277,0,355.35],[615,0,8.49457],[44,0,13.0234]]],[[5441.3,9810.96,0],1,false,[[617,0,105.135],[520,0,83.0148]]],[[6519.32,3499.75,0],1,false,[[632,0,24.8918],[6,0,286.251]]], +[[6734.53,4227.65,0],1,false,[[52,0,125.602],[568,0,91.2911]]],[[1862.07,3012.56,0],0,false,[[423,0,88.8103],[25,0,57.5531]]],[[4167.57,1642.96,0],0,false,[[405,0,220.501],[594,0,82.2689]]],[[4086.48,7610.88,0],1,false,[[193,0,231.907],[424,0,116.358]]],[[5279.55,3910.93,0],1,false,[[44,0,139.462],[439,0,309.483]]], +[[5054.04,10012.6,0],1,false,[[520,0,354.532],[576,0,152.164]]],[[1132.03,4213.62,0],0,false,[[353,0,249.317],[580,0,206.598]]],[[5558.21,8312.22,0],1,false,[[372,0,199.138],[20,0,89.2185]]],[[6786.15,4273.62,0],1,false,[[579,0,71.0748],[123,0,79.4528]]],[[4697.81,7875.07,0],1,false,[[102,0,265.943],[49,0,391.826]]], +[[1129.77,3482.54,0],0,false,[[559,0,280.593],[627,0,363.352]]],[[1097.24,2509.12,0],0,false,[[371,0,266.305],[290,0,342.134]]],[[2661.65,662.387,0],0,false,[[548,0,257.564],[144,0,175.901]]],[[6275.57,3847.67,0],1,true,[[364,0,32.0133],[188,0,227.248],[53,0,11.8126]]],[[5005.68,6433.86,0],1,false,[[268,0,226.627],[48,0,307.542]]], +[[4646.67,5761.43,0],1,true,[[621,0,176.415],[220,0,14.2257],[50,0,15.1002]]],[[1406.06,4593.29,0],0,true,[[246,0,17.2579],[167,0,47.5765],[33,0,12.6649]]],[[2335.16,3166.26,0],0,false,[[336,0,26.283],[13,0,45.8833]]],[[5614.36,9714.59,0],1,false,[[210,0,41.9794],[207,0,26.5867]]],[[5267.08,5684.87,0],1,false,[[297,0,71.2497],[99,0,229.822]]], +[[5368.57,9850.39,0],1,false,[[498,0,83.0148],[505,0,354.532]]],[[6734.93,3630.22,0],1,false,[[467,0,162.42],[425,0,331.117]]],[[4749.97,9394.04,0],1,false,[[261,0,219.849],[152,0,207.948]]],[[4909.38,4632.63,0],1,false,[[190,0,308.32],[95,0,248.743]]],[[7252.43,3142.29,0],1,false,[[32,0,44.8095],[625,0,32.3421]]], +[[1798.67,3120.95,0],0,false,[[428,0,37.4538]]],[[5854.12,8918.71,0],1,true,[[255,0,228.61],[162,0,25.1411],[554,0,14.6828]]],[[2242.88,1674.78,0],0,false,[[387,0,330.106],[343,0,229.283]]],[[6758.86,3431.19,0],1,false,[[577,0,330.705],[632,0,232.496]]],[[4516.85,9801,0],1,false,[[114,0,299.127]]], +[[7388.93,7734.18,0],1,false,[[477,0,308.371],[116,0,327.765]]],[[1776.77,1228.24,0],0,true,[[544,0,158.254],[572,0,397.119],[347,0,50.6029]]],[[4383.12,6227.71,0],1,false,[[382,0,212.272],[631,0,131.99]]],[[4054.89,3099.7,0],0,false,[[432,0,360.673],[168,0,389.706]]],[[1423.33,5571.85,0],0,true,[[466,0,24.9334],[69,0,307.139],[238,0,6.23782]]], +[[4370.61,10249,0],1,false,[[542,0,205.496],[566,0,374.466]]],[[3026.82,3233.69,0],0,false,[[197,0,22.9724],[105,0,373.823]]],[[1741.84,2076.77,0],0,false,[[276,0,267.894]]],[[6198.53,7189.34,0],1,false,[[298,0,355.734],[591,0,23.2666]]],[[5927.07,6275.66,0],1,false,[[252,0,233.658],[104,0,164.876]]], +[[4489.34,2206.77,0],0,false,[[169,0,176.632],[226,0,70.2242]]],[[6312.7,3705.66,0],1,false,[[54,0,260.248],[366,0,94.8445]]],[[4564.53,10181.1,0],1,false,[[325,0,62.7204],[535,0,205.496]]],[[7200.26,3336.4,0],1,true,[[480,0,38.2329],[73,0,13.9475],[202,0,10.9686]]],[[1693.92,1110.51,0],0,false,[[229,0,48.7179],[531,0,158.254]]], +[[5983.03,9474.86,0],1,false,[[549,0,211.152],[384,0,377.208]]],[[4900.35,7222.53,0],1,true,[[41,0,18.6749],[218,0,93.3133],[110,0,7.97153]]],[[5403.38,5207.97,0],1,false,[[446,0,372.935],[28,0,368.513]]],[[2439.85,782.141,0],0,false,[[613,0,345.981],[512,0,257.564]]],[[6144.17,9340.84,0],1,false,[[412,0,149.296],[545,0,211.152]]], +[[7345.58,7261.05,0],1,true,[[92,0,31.3496],[334,0,27.8798],[487,0,17.8777]]],[[6729.49,4532.75,0],1,true,[[578,0,181.015],[219,0,222.073],[321,0,196.58]]],[[4001.02,8296.81,0],1,true,[[565,0,5.46762],[165,0,2.14609],[367,0,13.2717]]],[[3692.49,9814.23,0],1,false,[[390,0,131.666],[458,0,245.588]]],[[5865.23,8927.84,0],1,true,[[8,0,356.758],[526,0,14.6828],[162,0,10.6905]]], +[[2392.41,6673.53,0],0,true,[[326,0,134.124],[407,0,28.7767],[216,0,14.9581]]],[[6787.92,3949.64,0],1,false,[[248,0,152.846],[495,0,120.251]]],[[3174.32,1364.91,0],0,false,[[282,0,271.41],[385,0,312.779]]],[[2349.58,2503.67,0],0,false,[[134,0,296.388],[244,0,201.602]]],[[1076.66,3209.04,0],0,false,[[24,0,207.551],[510,0,280.593]]], +[[6480.46,7874.09,0],1,false,[[141,0,120.417],[298,0,390.407]]],[[4443.68,2215.93,0],0,false,[[563,0,57.4786],[629,0,220.967]]],[[2512.22,3147.46,0],0,true,[[181,0,14.0065],[607,0,15.7557],[157,0,11.8857]]],[[4461.71,2270.49,0],0,false,[[319,0,25.9782],[561,0,57.4786]]],[[6912.42,3603.2,0],1,true,[[88,0,66.8387],[324,0,23.4928],[332,0,8.22729],[467,0,19.6248]]], +[[3995.56,8297.01,0],1,true,[[350,0,123.155],[165,0,7.41914],[552,0,5.46762]]],[[4021.83,10383.6,0],1,false,[[535,0,374.466],[397,0,364.467]]],[[3374.13,10674.9,0],1,false,[[397,0,359.243],[74,0,60.4348]]],[[6737.16,4318.75,0],1,false,[[500,0,91.2911],[578,0,35.3145]]],[[1655.02,6999.38,0],0,false,[[461,0,237.007],[582,0,199.147]]], +[[3011.53,3217.94,0],0,false,[[402,0,142.741],[81,0,28.2454]]],[[3933.48,1584.48,0],0,false,[[331,0,10.2511],[137,0,175.146]]],[[1493.85,1500.93,0],0,false,[[531,0,397.119],[408,0,325.874]]],[[5195.14,5680.53,0],1,false,[[619,0,32.5094],[446,0,159.076]]],[[2841.69,1825.76,0],0,true,[[451,0,13.1857],[294,0,6.3486],[398,0,12.7126]]], +[[1648.85,1083.4,0],0,false,[[264,0,55.3543],[35,0,53.8731]]],[[4916.03,10076.6,0],1,false,[[505,0,152.164],[96,0,271.136]]],[[7063.31,3324.22,0],1,false,[[56,0,78.948],[528,0,330.705]]],[[6740.36,4353.92,0],1,true,[[568,0,35.3145],[551,0,181.015],[579,0,23.1638]]],[[6749.42,4332.87,0],1,false,[[508,0,71.0748],[578,0,23.1638]]], +[[1223.23,4388.42,0],0,false,[[506,0,206.598],[601,0,140.602]]],[[7034.61,5454.27,0],1,false,[[590,0,34.3762],[241,0,32.9814]]],[[1799.44,7124.03,0],0,false,[[569,0,199.147],[34,0,254.126]]],[[5823.81,4160.4,0],1,true,[[188,0,337.364],[277,0,339.527],[132,0,270.064]]],[[3447.06,9013.26,0],1,false,[[605,0,47.1276],[394,0,34.6628]]], +[[3491.73,3763.67,0],0,false,[[90,0,309.093],[235,0,397.616]]],[[1259.72,1744.59,0],0,false,[[281,0,37.259],[276,0,332.407]]],[[1681.47,5020.41,0],0,false,[[36,0,192.835],[421,0,126.812]]],[[7318.47,7146.42,0],1,false,[[161,0,49.1806],[391,0,85.8621]]],[[4474.91,2327,0],0,true,[[284,0,6.77029],[234,0,15.3858],[143,0,7.92032]]], +[[7012.85,5427.66,0],1,false,[[186,0,36.0479],[581,0,34.3762]]],[[6194.8,7171.78,0],1,true,[[393,0,77.2949],[213,0,25.5703],[538,0,23.2666]]],[[6525.54,7155.32,0],1,false,[[388,0,249.49],[393,0,257.519]]],[[7035.02,5318.16,0],1,false,[[160,0,105.539]]],[[4107.44,1588.19,0],0,true,[[502,0,82.2689],[379,0,362.63],[453,0,4.38989]]], +[[1601.82,1133.99,0],0,false,[[131,0,30.5059],[229,0,46.4084]]],[[2521.48,5398.99,0],0,false,[[411,0,261.889],[358,0,284.579]]],[[6413.1,6313.64,0],1,false,[[491,0,197.765],[136,0,276.114]]],[[3928.44,1970.23,0],0,false,[[137,0,234.227],[177,0,264.264]]],[[2027.18,3067.37,0],0,false,[[254,0,83.0307],[423,0,132.169]]], +[[1356,4780.42,0],0,false,[[445,0,105.033],[206,0,349.633]]],[[1322.03,4471.17,0],0,false,[[580,0,140.602],[33,0,151.545]]],[[1634.62,3212.71,0],0,false,[[618,0,245.045],[94,0,54.1398]]],[[3501.96,8682.67,0],1,false,[[616,0,113.719],[164,0,322.948]]],[[6526.38,3513.9,0],1,false,[[54,0,30.2501],[632,0,19.5083]]], +[[3418.91,9033.99,0],1,true,[[300,0,32.9199],[310,0,29.8174],[584,0,47.1276]]],[[3300.12,10606.2,0],1,false,[[74,0,41.3003],[7,0,177.845]]],[[2498.05,3140.58,0],0,true,[[314,0,128.405],[157,0,26.4388],[562,0,15.7557]]],[[4623.71,1221.45,0],0,false,[[38,0,235.054],[311,0,188.993]]],[[3813.17,2591.2,0],0,false,[[80,0,366.237],[85,0,84.7574]]], +[[1399.4,5150.12,0],0,true,[[206,0,25.1272],[466,0,403.072],[375,0,3.26123]]],[[3701.42,7882.15,0],1,true,[[64,0,9.1201],[45,0,46.367],[18,0,17.4223]]],[[5398.63,8895.99,0],1,false,[[270,0,118.531],[211,0,122.281]]],[[2127.59,916.154,0],0,false,[[420,0,261.048],[548,0,345.981]]],[[1463.81,4667.37,0],0,false,[[120,0,66.3558],[445,0,61.6195]]], +[[5186.58,4041.33,0],1,true,[[438,0,202.306],[44,0,20.8633],[497,0,8.49457]]],[[3476.34,8793.39,0],1,true,[[21,0,27.7746],[603,0,113.719],[215,0,31.5672]]],[[5534.16,9761.67,0],1,false,[[207,0,66.4328],[498,0,105.135]]],[[1814.1,3349.94,0],0,true,[[275,0,26.3499],[602,0,245.045],[208,0,8.70901]]],[[5197.74,5712.88,0],1,false,[[291,0,167.044],[573,0,32.5094]]], +[[3359.83,696.588,0],0,false,[[68,0,244.155],[448,0,384.786]]],[[4804.49,5704.33,0],1,false,[[515,0,176.415],[315,0,190.764]]],[[6479.56,6627.49,0],1,false,[[262,0,260.577],[491,0,143.885]]],[[7121.43,3384.88,0],1,false,[[309,0,39.5469],[469,0,40.7073]]],[[7149.7,3329.9,0],1,true,[[469,0,21.1346],[203,0,21.1698],[56,0,13.3966],[480,0,15.1671]]], +[[7278.37,3124.68,0],1,true,[[205,0,304.249],[126,0,27.3337],[524,0,32.3421]]],[[3981.75,7116.96,0],1,true,[[454,0,348.362],[303,0,6.00951],[472,0,14.2407]]],[[1146.08,3840.58,0],0,false,[[510,0,363.352],[433,0,143.577]]],[[2010.1,3596.94,0],0,true,[[419,0,27.8354],[380,0,185.904],[455,0,16.7479]]],[[4345.35,2018.93,0],0,false,[[561,0,220.967],[405,0,197.734]]], +[[1458.93,4075.05,0],0,false,[[178,0,164.762],[187,0,282.338]]],[[4416.09,6100.99,0],1,false,[[532,0,131.99],[339,0,225.406]]],[[6543.65,3504.94,0],1,true,[[528,0,232.496],[499,0,24.8918],[604,0,19.5083]]],[[5956.27,3178.41,0],1,true,[[468,0,49.4835],[333,0,21.512],[406,0,10.8728]]] +]; \ No newline at end of file diff --git a/A3A/addons/maps/Antistasi_pulau.pulau/onPlayerRespawn.sqf b/A3A/addons/maps/Antistasi_pulau.pulau/onPlayerRespawn.sqf new file mode 100644 index 0000000000..0d38ff4d19 --- /dev/null +++ b/A3A/addons/maps/Antistasi_pulau.pulau/onPlayerRespawn.sqf @@ -0,0 +1 @@ +_this call A3A_fnc_onPlayerRespawn; diff --git a/A3A/addons/maps/MissionDescription/CfgNotificationsContents.hpp b/A3A/addons/maps/MissionDescription/CfgNotificationsContents.hpp index 0488266c42..fef12999ef 100644 --- a/A3A/addons/maps/MissionDescription/CfgNotificationsContents.hpp +++ b/A3A/addons/maps/MissionDescription/CfgNotificationsContents.hpp @@ -15,3 +15,21 @@ class RadioIntercepted //Sound played when notification pops up sound = "taskSucceeded"; } + +class MessageHQ +{ + // Title displayed as text on black background. + title = "Message from HQ"; + // Small icon displayed in left part. Colored by "color". + iconPicture = "\A3\ui_f\data\igui\cfg\simpleTasks\types\radio_ca.paa"; + // Brief description displayed as structured text. Colored by "color", filled by arguments. + description = "%1"; + // Icon and text color (copied from taskSucceeded) + color[] = {1,1,1,1}; + // How many seconds will the notification be displayed + duration = 6; + // Priority; higher number = more important; tasks in queue are selected by priority + priority = 3; + //Sound played when notification pops up + sound = "taskSucceeded"; +} diff --git a/A3A/addons/maps/MissionDescription/debug.hpp b/A3A/addons/maps/MissionDescription/debug.hpp index ebf28d96c9..c54488d6b3 100644 --- a/A3A/addons/maps/MissionDescription/debug.hpp +++ b/A3A/addons/maps/MissionDescription/debug.hpp @@ -8,6 +8,5 @@ enableDebugConsole[] = { "76561198087513761", //Hakon "76561198000461190", //John Jordan "76561198016623887", //Lazejun - "76561198041429764", //Killer }; allowFunctionsRecompile = 1; diff --git a/A3A/addons/maps/MissionDescription/gameSettings.hpp b/A3A/addons/maps/MissionDescription/gameSettings.hpp index a104f73ebe..6cbfe6c11a 100644 --- a/A3A/addons/maps/MissionDescription/gameSettings.hpp +++ b/A3A/addons/maps/MissionDescription/gameSettings.hpp @@ -1,6 +1,9 @@ respawn = "BASE"; respawnDelay = 15; +// Player corpses preserved for 15min minimum +corpseRemovalMinTime = 900; + aiKills = 0; disabledAI = 1; Saving = 0; diff --git a/A3A/addons/maps/NavGrid.hpp b/A3A/addons/maps/NavGrid.hpp index ed4baf46aa..e76a9d17b4 100644 --- a/A3A/addons/maps/NavGrid.hpp +++ b/A3A/addons/maps/NavGrid.hpp @@ -11,7 +11,9 @@ class NavGrid { isladuala3 = QPATHTOFOLDER(Antistasi_isladuala3.isladuala3\navGrid.sqf); Kunduz = QPATHTOFOLDER(Antistasi_Kunduz.Kunduz\navGrid.sqf); Malden = QPATHTOFOLDER(Antistasi_Malden.Malden\navGrid.sqf); + pulau = QPATHTOFOLDER(Antistasi_pulau.pulau\navGrid.sqf); sara = QPATHTOFOLDER(Antistasi_sara.sara\navGrid.sqf); + SPE_Mortain = QPATHTOFOLDER(Antistasi_SPE_Mortain.SPE_Mortain\navGrid.sqf); SPE_Normandy = QPATHTOFOLDER(Antistasi_SPE_Normandy.SPE_Normandy\navGrid.sqf); Stratis = QPATHTOFOLDER(Antistasi_Stratis.Stratis\navGrid.sqf); takistan = QPATHTOFOLDER(Antistasi_takistan.takistan\navGrid.sqf); diff --git a/A3A/addons/maps/Stringtable.xml b/A3A/addons/maps/Stringtable.xml index 3e822bf767..03f38a341f 100644 --- a/A3A/addons/maps/Stringtable.xml +++ b/A3A/addons/maps/Stringtable.xml @@ -468,108 +468,156 @@ United Germany is Best Germany. + La Germania Unita è la Germania Migliore L'Allemagne unie est la meilleure Allemagne. 통일된 독일이 최고의 독일이다. + Единая Германия - лучшая Германия. Zjednoczone Niemcy to najlepsze Niemcy Spojené Německo je nejlepší Německo. + 统一的德国才是最好的德国 Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. - Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez. + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. + Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques de Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires quand vous voulez, où vous voulez, avec ce que vous voulez. 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Станьте лидером Сопротивления. Сражайтесь с противником, превосходящим вас в технологиях, численности, активах и транспортных средствах. Используйте партизанскую тактику в полностью динамичном мире, где около 18 сторонних миссий, везде, в любое время, на чем угодно. Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 任何时间, 任何地点, 任何情况, 运用游击战术。 Antistasi Weferlingen Summer + Antistati Weferlingen Estate Antistasi Weferlingen Eté 안티스타시 웨퍼링겐 여름 + Antistasi Веферлинген Лето Antistasi Léto ve Weferlingenu + Antistasi 夏季韦弗林根 Antistasi - Liberation of Weferlingen - Summer + Antistasi - Liberazione di Weferlingen - Estate Antistasi - Liberation de Weferlingen - Eté 안티스타시 - 웨퍼링겐 해방 - 여름 + Antistasi - Освобождение Веферлингена - Лето Antistasi - Osvobození Weferlingenu - Léto + Antistasi - 解放 韦弗林根 United Germany is Best Germany, also in the winter. + La Germania Unita è la Germania Migliore, anche in inverno. L'Allemagne unie est la meilleure Allemagne, même en hiver. 겨울에 통일된 독일이 최고의 독일이다. + Единая Германия - лучшая Германия и даже зимой Zjednoczone Niemcy to najlepsze Niemcy, również w zimę. Spojené Německo je nejlepší Německo, i přes zimu. + 统一的德国才是最好的德国,无论春夏秋冬 Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. - Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez. + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. + Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques de Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires quand vous voulez, où vous voulez, avec ce que vous voulez. 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Стань лидером Сопротивления. Сражайся против врага превосходящего в технологии, количестве, вооружении и технике. Используй партизанскую тактику в полностью динамическом мире с около 18 побочными заданиями, в любом месте, в любое время, против чего угодно. Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 任何时间, 任何地点, 任何情况, 运用游击战术。 Antistasi Weferlingen Winter + Antistati Weferlingen Inverno Antistasi Weferlingen Hiver 안티스타시 웨퍼링겐 겨울 + Antistasi Веферлинген Зима Antistasi Weferlingenská Zima + Antistasi 冬季韦弗林根 Antistasi - Liberation of Weferlingen - Winter + Antistasi - Liberazione di Weferlingen - Inverno Antistasi - Liberation de Weferlingen - Hiver 안티스타시 - 웨퍼링겐 해방 - 겨울 + Antistasi - Освобождение Веферлингена - Зима Antistasi - Osvobození Weferlingenu - Zima + Antistasi - 解放 冬季韦弗林根 African Islands under siege + Isole Africane sott'assedio Les îles africaines en état de siège 포위당한 아프리카의 섬들 + Африканские острова в осаде Oblężenie Afrykańskich wysp + 围攻下的非洲岛屿 Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez. 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Стань лидером Сопротивления. Сражайся против врага превосходящего в технологии, количестве, вооружении и технике. Используй партизанскую тактику в полностью динамическом мире с около 18 побочными заданиями, в любом месте, в любое время, против чего угодно. Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 任何时间, 任何地点, 任何情况, 运用游击战术。 Antistasi Isla Duala + Antistasi Isla Duala Antistasi Isla Duala 안티스타시 이슬라 듀알라 + Antistasi Исла Дуала Antistasi Ostrov Duala + Antistasi - Isla Duala Antistasi - Liberation of Isla Duala + Antistasi - Liberazione di Isla Duala Antistasi - Libération d'Isla Duala 안티스타시 - 이슬라 듀알라 해방 + Antistasi - Освобождение Исла Дуала Antistasi - Osvobození Ostrova Duala + Antistasi - 解放 Isla Duala African Action + Azione Africana Action africaine 아프리카 작전 + Действия в Африке Afrykańska Akcja Africká Mise + 非洲阵营 Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez. 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Стань лидером Сопротивления. Сражайся против врага превосходящего в технологии, количестве, вооружении и технике. Используй партизанскую тактику в полностью динамическом мире с около 18 побочными заданиями, в любом месте, в любое время, против чего угодно. Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 任何时间, 任何地点, 任何情况, 运用游击战术。 Antistasi Kujari - <br/>Antistasi Kujari + Antistasi Kujari + Antistasi Kujari 안티스타시 쿠자리 + Antistasi Куджари Antistasi Kujari Antistasi Kujari + Antistasi Kujari Antistasi - Liberation of Kujari + Antistasi - Liberazione del Kujari Antistasi - Libération de Kujari 안티스타시 - 쿠자리 해방 + Antistasi - Освобождение Куджари Antistasi - Wyzwolenie Kujari Antistasi - Osvobození Kujari + Antistasi - 解放 Kujari Sand and blood @@ -683,6 +731,34 @@ Antistasi - Malden'in Kurtuluşu Antistasi - 解放 Malden + + Revolution on Paradise Island! + Революция на Райском Острове! + + + Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. + Sei ein Anführer des Widerstands. Kämpfe gegen einen technologisch und zahlenmäßigen überlegenen Feind. Nutze Guerillataktiken in einer vollständig dynamischen Welt mit 18 möglichen Sekundärmissionen. Es könnte jederzeit und überall alles passieren... + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. + Sé el Líder de la Resistencia. Lucha contra un enemigo superior en tecnología, número, capacidades y vehículos. Usa tacticas de guerrilla en un mundo totalmente dinámico, con alrededor de 18 misiones secundarias, en todos lados, a cualquier hora, con cualquier cosa. + Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez... + 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Стань лидером Сопротивления. Сражайся против врага превосходящего в технологии, количестве, вооружении и технике. Используй партизанскую тактику в полностью динамическом мире с около 18 побочными заданиями, в любом месте, в любое время, против чего угодно. + Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. + Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + Seja o Líder da Resistência. Lute contra um inimigo superior em tecnologia, número, recursos e veículos. Use tácticas de guerrilha num mundo totalmente dinâmico, com cerca de 18 missões secundárias, em qualquer lado, a qualquer altura. + Direniş Lideri olun. Teknoloji, sayı, kaynak ve araçlarda üstün bir düşmana karşı savaşın. Her yerde ve her zaman yaklaşık 18 yan görevle tamamen dinamik bir dünyada gerilla taktiklerini kullanın. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 在任何时间, 任何地点, 任何情况, 运用游击战术。 + + + Antistasi Pulau + Antistasi Pulau + Antistasi Пулау + + + Antistasi - Liberation of Pulau + Antistasi - Libération de Pulau + Antistasi - Освобождение Пулау + The reunification of Sahrani Die Wiedervereinigung von Sahrani @@ -739,6 +815,18 @@ Antistasi - Sahrani'nin Kurtuluşu Antistasi - 解放 Sahrani + + French resistance in turmoil + + + Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. + + + Antistasi Mortain + + + Antistasi - Resistance in Mortain + Vive la résistance! Lang lebe der Widerstand! @@ -1021,31 +1109,43 @@ Something with cocaine or such. + Qualcosa con cocaina o simili. Quelque chose avec de la cocaine ou autre. 코카인같은 뭔가가 있습니다. + Что-то с кокаином или типо того Coś z kokainą lub czymś podobnym. Něco s kokainem, nebo tak něco. + 和白粉等诸如此类之物有关. Be the Resistance Leader. Fight against a superior enemy in technology, number, assets and vehicles. Use guerrilla tactics in a totally dynamic world, with around 18 sidemissions, everywhere, anytime, anything. + Sii il leader della Resistenza. Combatti contro un nemico superiore in tecnologia, numero, risorse e veicoli. Usa tattiche di guerriglia in un mondo totalmente dinamico, con circa 18 missioni secondarie, ovunque, in qualsiasi momento e con ogni cosa. Devenez le Chef de la Résistance. Battez-vous contre un ennemi en surnombre et avec un niveau technologique supérieur. Utilisez les tactiques des Guerrillas dans un monde complétement dynamique, avec environ 18 missions secondaires. Quand vous voulez, où vous voulez, avec ce que vous voulez. 반군 지도자가 되어 아군보다 기술, 머릿수, 차량, 자산이 월등한 적과 싸우십시오. 완전 다이나믹한 세계에서 게릴라 전술을 활용하십시오. 약 18개 이상의 사이드 임무가 있으며, 언제 어디서나 무엇이든 가능합니다. + Стань лидером Сопротивления. Сражайся против врага превосходящего в технологии, количестве, вооружении и технике. Используй партизанскую тактику в полностью динамическом мире с около 18 побочными заданиями, в любом месте, в любое время, против чего угодно. Bądź liderem ruchu oporu. Walcz z lepszym wrogiem pod względem technologii, liczby żołnierzy, zasobów i pojazdów. Używaj taktyk partyzanckich w całkowicie dynamicznym świecie, z około 18 misjami pobocznymi, w dowolnym miejscu i czasie. Buďte vůdcem odboje. Bojujte proti nadřazenému nepříteli v technologii, počtu, majetku a vozidlech. Použijte partyzánskou taktiku ve zcela dynamickém světě, přibližně s 18 vedlejšími misemi, všude kdykoli a cokoli. + 成为抵抗军领袖。与技术、数量、资产和载具远胜于你的强大敌人作战。面对完全动态的世界和大约18种支线任务, 任何时间, 任何地点, 任何情况, 运用游击战术。 Antistasi Colombia + Antistasi Colombia Antistasi Colombia 안티스타시 콜롬비아 + Antistasi Колумбия Antistasi Columbia Antistasi Kolumbie + Antistasi 哥伦比亚 Antistasi - Liberation of Colombia + Antistasi - Liberazione della Colombia Antistasi - Libération de Colombia 안티스타시 - 콜롬비아 해방 + Antistasi - Освобождение Колумбии Antistasi - Wyzwolenie Kolumbii Antistasi - Osvobození Kolumbie + Antistasi - 解放 哥伦比亚 Another jungle, another fight. @@ -1216,6 +1316,7 @@ 5 minutos 5 minutes 5분 + 5 минут 5 minut 5 minut 5 minutos @@ -1227,6 +1328,7 @@ No caricamento automatico Pas de chargement automatique 자동 로드 없음 + Ручная загрузка сохранения Brak automatycznego ładowania Žádné automatické načtění Não carregar automaticamente @@ -1239,6 +1341,7 @@ Cargar el último guardado válido después del retraso Chargement automatique de la dernière sauvegarde valide après un délai 딜레이 후 마지막으로 유효한 저장을 자동으로 로드 + Автоматически загружать последнее сохранение после задержки Automaticky načíst poslední platné uložení po zpoždění Carregar ultimo save automaticamente depois de um intervalo 自动读取最近的有效存档 @@ -1250,6 +1353,7 @@ Todos Tout 모두 + Все wszystko Vše Todos @@ -1260,6 +1364,7 @@ Tutto non-dev Tout les non-dév 모두(개발자 버전 제외) + Все, кроме разработчика Všechny non-dev Todos exceto dev @@ -1270,6 +1375,7 @@ Ninguno Aucun 없음 + Нет Nic Nic Nenhum @@ -1280,6 +1386,7 @@ Registra la console di debug durante il setup Enregistrer l'usage de la console de débogage pendant la préparration 설정 중 디버그 콘솔 사용 로그 작성 + Отладка во время настройки Zapsat konzoli ladění při nastavování Usar o console de debug durante o setup 在设立过程中保存调试台使用记录 diff --git a/A3A/addons/maps/config.cpp b/A3A/addons/maps/config.cpp index ac2d7c9d34..09fe2ff493 100644 --- a/A3A/addons/maps/config.cpp +++ b/A3A/addons/maps/config.cpp @@ -38,7 +38,9 @@ class CfgMissions A3A_Mission(gm_weferlingen_winter) A3A_Mission(Kunduz) A3A_Mission(Malden) + A3A_Mission(pulau) A3A_Mission(sara) + A3A_Mission(SPE_Mortain) A3A_Mission(SPE_Normandy) A3A_Mission(takistan) A3A_Mission(Tanoa) diff --git a/A3A/addons/maps/mapInfo.hpp b/A3A/addons/maps/mapInfo.hpp index 1533c716eb..bd09606b25 100644 --- a/A3A/addons/maps/mapInfo.hpp +++ b/A3A/addons/maps/mapInfo.hpp @@ -11,7 +11,9 @@ class mapInfo { #include "Antistasi_isladuala3.isladuala3\mapInfo.hpp" #include "Antistasi_Kunduz.Kunduz\mapInfo.hpp" #include "Antistasi_Malden.Malden\mapInfo.hpp" + #include "Antistasi_pulau.pulau\mapInfo.hpp" #include "Antistasi_sara.sara\mapInfo.hpp" + #include "Antistasi_SPE_Mortain.SPE_Mortain\mapInfo.hpp" #include "Antistasi_SPE_Normandy.SPE_Normandy\mapInfo.hpp" #include "Antistasi_Stratis.Stratis\mapInfo.hpp" #include "Antistasi_takistan.takistan\mapInfo.hpp" diff --git a/A3A/addons/patcom/functions/Civilian/fn_civilianInitEH.sqf b/A3A/addons/patcom/functions/Civilian/fn_civilianInitEH.sqf index d21bcbdf83..fd606cc392 100644 --- a/A3A/addons/patcom/functions/Civilian/fn_civilianInitEH.sqf +++ b/A3A/addons/patcom/functions/Civilian/fn_civilianInitEH.sqf @@ -86,7 +86,7 @@ _unit addEventHandler ["Killed", { }; }; - [_victim] spawn A3A_fnc_postmortem; + [_victim] remoteExec ["A3A_fnc_postmortem", 2]; }]; ["civInit", [_unit]] call EFUNC(Events,triggerEvent); \ No newline at end of file diff --git a/LICENSE b/LICENSE index 8810740780..d029ac56f1 100644 --- a/LICENSE +++ b/LICENSE @@ -65,3 +65,25 @@ SOFTWARE. Noncommercial - You may not use this material for any commercial purposes. Arma Only - You may not convert or adapt this material to be used in other games than Arma. No Derivatives - If you remix, transform, or build upon the material, you may not distribute the modified material. + +########################### + +# DoomMetal GUI: + Owner: + Caleb Sebastian Serafin + + Located in: + A3-Antistasi\gui\functions\GUI + + License: + ARMA PUBLIC LICENSE NO DERIVATIVES (APL-ND) + + Summary: + PLEASE, NOTE THAT THIS SUMMARY HAS NO LEGAL EFFECT AND IS ONLY OF AN INFORMATORY NATURE DESIGNED FOR YOU TO GET THE BASIC INFORMATION ABOUT THE CONTENT OF THIS LICENCE. THE ONLY LEGALLY BINDING PROVISIONS ARE THOSE IN THE ORIGINAL AND FULL TEXT OF THIS LICENCE. + + With this licence you are free to adapt (i.e. modify, rework or update) and share (i.e. copy, distribute or transmit) the material under the following conditions: + + Attribution - You must attribute the material in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the material). + Noncommercial - You may not use this material for any commercial purposes. + Arma Only - You may not convert or adapt this material to be used in other games than Arma. + No Derivatives - If you remix, transform, or build upon the material, you may not distribute the modified material. diff --git a/README.md b/README.md index 7244c3c30d..857b0674b5 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@

- Antistasi Version + Antistasi Version Issues diff --git a/Tools/antistasi_translation_sync-0.5.0-py3-none-any.whl b/Tools/antistasi_translation_sync-0.6.1-py3-none-any.whl similarity index 68% rename from Tools/antistasi_translation_sync-0.5.0-py3-none-any.whl rename to Tools/antistasi_translation_sync-0.6.1-py3-none-any.whl index 305345b292..46cdb66510 100644 Binary files a/Tools/antistasi_translation_sync-0.5.0-py3-none-any.whl and b/Tools/antistasi_translation_sync-0.6.1-py3-none-any.whl differ diff --git a/changelog.rst b/changelog.rst index 3fabaecefb..a167646a7d 100644 --- a/changelog.rst +++ b/changelog.rst @@ -3,6 +3,259 @@ Changelog ========== +Version 3.7.0 +=============== + +.. note:: + 18th August 2024 + +.. admonition:: Major + + .. rubric:: :issue:`3371` Added Map Port of Mortain - 1.1 Update of the `Spearhead 1944 CDLC `_ + .. rubric:: :issue:`3356` Updated SPE-IFA Templates - 1.1 Update of the `Spearhead 1944 CDLC `_ + +.. admonition:: Minor + + * :issue:`3327` Reduced artillery/mortar ratio at high war tiers + * :issue:`3334` Added a tooltip for vehicle locktime + * :issue:`3335` Improve CUP and IFA plane turn rates when flown by AI + * :issue:`3343` Slowed down self-revive timeout when downed + * :issue:`3349` Created new classes for Antistasi AI units - Fixes ACE action blocking + * :issue:`3370` Added attributeMoreTrucks and IFV-only option to ground transport selection + * :issue:`3372` Made dive bomb runs less accurate against infantry targets + * :issue:`3377` Added flashlights to unit definitions (currently only SPE specific usage) + +.. admonition:: Template updates + + * :issue:`3363` Removed CUP Cluster MLRS + +.. admonition:: Bugfixes + + * :issue:`3320` Skip Time Improvements + * :issue:`3338` Fixed slow-server UI issue and incorrect licensing in arsenal limits + * :issue:`3359` Fixed issue where running destroyCity with CUP interiors could crash + * :issue:`3362` Disallowed sling-loading HQ objects + * :issue:`3364` Added workaround for Arma bug with CDLC detection and arma3.cfg mod loading method + * :issue:`3365` Small sell price rework + * :issue:`3367` Fixed support crew being provided for free and then refunded + * :issue:`3368` Fixed inability to rebuild non-outpost radio towers + * :issue:`3369` Added Ammobox Protection + * :issue:`3375` Replaced all uses of GETOUT waypoints + * :issue:`3381` Fixed SoldierGB inheritance chain for CBA XEH. + +.. admonition:: Groundwork + + * :issue:`3333` Adjusted DoomMetal GUI Header and license + +.. warning:: + + * Please note that this changelog may contain both spelling/grammatical errors and/or factual errors. Should any factual errors exist, we apologise but with the sheer number of changes made per version it can be easy to lose or mistake a change when writing up the changelog. + +| + +----- + + +Version 3.6.0 +=============== + +.. note:: + 30th June 2024 + +.. admonition:: Major + + .. rubric:: :issue:`3214` Added Map Port of `Pulau `_ + +.. admonition:: Minor + + * :issue:`3229` Added GUI prefix and Experimental Battle Menu + * :issue:`3233` Switched respawn & self-revive keys to custom keybinds + * :issue:`3234` Allowed guests to use of arsenal limits dialog and set default guest limit to 0 + * :issue:`3237` Added Garage Sell Button + * :issue:`3238` Added Parameter fencing for debug commands + * :issue:`3250` Reworked anti-air support response balance + * :issue:`3255` Converted corpse/wreck timed cleanup into a server queue with max cap + * :issue:`3257` Removed restriction from AILoadInfo action + * :issue:`3259` Added Parachutes to airbase crates + * :issue:`3261` Added a few RHS items to Garbage Cleaner + * :issue:`3269` Added Setup GUI Factions Info + * :issue:`3274` Added tank platoon support as alternative to CAS + * :issue:`3278` Updated SF spawn locations on Livonia + * :issue:`3282` Allowed commanders to make custom HC squads + * :issue:`3284` Added logging for temporary membership + * :issue:`3295` Added explosiveSpecialist and UAVHacker traits to default commander slot + * :issue:`3319` Adjusted air support response for cheap planes + +.. admonition:: Template updates + + * :issue:`2800` Added `Swedish Forces Pack (SFP) `_ templates (requires CUP Units, Vehicles and Weapons loaded) + - Make sure you use `SFP - ACE Compatibility `_ when playing with ACE + * :issue:`3166` Added `Iron Front AiO `_ templates + - Plus optional support for `WW2 Tanks `_ + - Plus optional support for `WW2 Armoured Cars `_ + - Plus optional support for `Bystrokhodny Tanks - BT7 And Variants `_ + - Make sure you use `Iron Front in Arma 3 ACE compatibility `_ when playing with ACE + * :issue:`3203` Added Poseidon II to RHS NAPA + * :issue:`3204` Added Reaction Forces CDLC compatibility for Western Sahara templates + * :issue:`3208` Added vehicles for vehiclesAirPatrol to some RHS templates + * :issue:`3209` Added RHS HIDF template + * :issue:`3258` "Re-added" the RPD to the 3CB SOV template + * :issue:`3271` Added RHS VDV templates + * :issue:`3267` Added RHS Tanoan Liberation Army (TLA) template + * :issue:`3277` Updated buyable vehicles for CUP + +.. admonition:: Bugfixes + + * :issue:`3172` Added/Fixed planes from RHS and 3CB (A-29 & T-28) + * :issue:`3205` Fixed case where seats may not be unlocked when dead crew are deleted + * :issue:`3228` Updated fn_vehiclePrice to not fail on absent vehicles + * :issue:`3231` Fixed artillery not rotating to target before firing + * :issue:`3242` Added Cargo nodes for 3CB Hilux (Covered) + * :issue:`3251` Fixed breaking error in citySupportChange type-safety checks + * :issue:`3254` Fixed Refugee mission timer + * :issue:`3256` Fixed destroy Heli mission + * :issue:`3260` Applied Artillery marker improvements + * :issue:`3264` Fixed lootToCrate issues with IFA gear + * :issue:`3266` Improved getArtilleryRanges & fixed IFA mortar case + * :issue:`3273` Prevented concurrent major attacks, and added a planning cost + * :issue:`3281` Fixed 3CB Factions baseWeapon config + * :issue:`3283` Fixed incorrect config array specifier for diveParams + * :issue:`3286` Fixed inconsistent parameter bug with createAttackForceLand + * :issue:`3293` Fixed potential double-carry or double-drop errors under heavy script load + * :issue:`3294` Fixed fetching current arsenal data before displaying the arsenal limits dialog + * :issue:`3297` Switched over init order to fix error in initRemoteObject JIP function + * :issue:`3315` Buffed IFA mortars to be closer to MK6 + * :issue:`3322` Fixed conflicting addon messages from aircraft loadout configs + +.. admonition:: Groundwork + + * :issue:`3200` Added vehiclesHeavyTanks template category + * :issue:`3208` Added vehiclesAirPatrol template category + * :issue:`3287` Fixed WW2 factions using SAM supports + +.. admonition:: Localization + + * [Multiple PRs] - Added tons of new translations to different languages + +.. admonition:: Refactor + + * :issue:`3210` Merged item carrying code and switch to blacklist for carry blocking + * :issue:`3227` Moved Airplane loadouts to configs + +.. warning:: + + * Please note that this changelog may contain both spelling/grammatical errors and/or factual errors. Should any factual errors exist, we apologise but with the sheer number of changes made per version it can be easy to lose or mistake a change when writing up the changelog. + +| + +----- + + +Version 3.5.4 +=============== + +.. note:: + 28th April 2024 + +.. admonition:: Bugfixes + + * :issue:`3226` Fixed reordering and unlockedXXX arrays in initial unlocks + * :issue:`3235` Fixed case where HC vehicles are remote-spawned with no roads near HQ + +.. warning:: + + * Please note that this changelog may contain both spelling/grammatical errors and/or factual errors. Should any factual errors exist, we apologise but with the sheer number of changes made per version it can be easy to lose or mistake a change when writing up the changelog. + +| + +----- + + +Version 3.5.3 +=============== + +.. note:: + 14th April 2024 + +.. admonition:: Minor + + * :issue:`3188` Removed separate case-sensitive checks from fn_initZones in favour of overall toLower implementation + * :issue:`3206` Added ACE Painkillers to the rebel starting gear + + .. admonition:: Template updates + + * :issue:`3192` Added missing heavy vests for the vanilla ION factions + * :issue:`3211` Fixed some swapped helicopters in the Reaction Forces CDLC integration + * :issue:`3217` Factions with higher DLC dependencies will now appear lower on the faction selection list + * :issue:`3220` Fixed an issue with 3CB where the wrong magazines were being given to certain guns + +.. admonition:: Bugfixes + + * :issue:`3195` Fixed a start-up hang when mods with too many cosmetic items were loaded + * :issue:`3196` Fixed incorrect order of strings for fast travel parameters + * :issue:`3196` Fixed an exploit in the fast travel function + * :issue:`3197` Fixed an issue where bipods would sometimes be deleted by the arsenal + * :issue:`3207` Fixed a script error with CBA when spawning AI units + * :issue:`3212` Fixed a script error from a debug command in the Garage + * :issue:`3215` Player corpses should now not be deleted until 15 minutes have passed, fixing an issue where many respawning players would delete corpses + +.. warning:: + + * Please note that this changelog may contain both spelling/grammatical errors and/or factual errors. Should any factual errors exist, we apologise but with the sheer number of changes made per version it can be easy to lose or mistake a change when writing up the changelog. + +| + +----- + + +Version 3.5.2 +=============== + +.. note:: + 31st March 2024 + +.. admonition:: Major + + .. rubric:: :issue:`3185` Reaction Forces CDLC Compatibility + + + * [Added] - Reaction Forces added to Vanilla Templates when RF is loaded on the server - requires `Reaction Forces CDLC `_ or the `Compat Data `_ + +.. admonition:: Minor + + * :issue:`3152` Added more "hardcore" parameters to disable fast travel completely and to deactivate the heal function on the vehicle box at HQ + + .. admonition:: Template updates + + * :issue:`3177` Added Vanilla AI NATO UK templates for Arid and Tropical climates + * :issue:`3176` Added Vanilla AI PMC template (not climate specific) + * :issue:`3175` Fixed minor issues in WS templates and minor asset adjustments + * :issue:`3170` Updated 3CB templates with some new weapons + * :issue:`3167` Removed old Kajman and Orca versions from Vanilla CSAT templates + +.. admonition:: Bugfixes + + * :issue:`3179` Fixed RHS ChDKZ T-72 Event Handler Inheritance + * :issue:`3162` Fixed broken WS template + * :issue:`3162` Fixed troop training GUI closing after training + * :issue:`3162` Fixed animation persistence over fast travel + * :issue:`3162` Fixed small typos and localization + * :issue:`3154` Fixed marksmen not having ammunition + * :issue:`3136` Fixed one network spam issue + +.. warning:: + + * Please note that this changelog may contain both spelling/grammatical errors and/or factual errors. Should any factual errors exist, we apologise but with the sheer number of changes made per version it can be easy to lose or mistake a change when writing up the changelog. + +| + +----- + +| + + + + Version 3.5.1 ===============