diff --git a/.hemtt/missions/test.Stratis/mission.sqm b/.hemtt/missions/test.Stratis/mission.sqm index cdf2707..780ddb7 100644 Binary files a/.hemtt/missions/test.Stratis/mission.sqm and b/.hemtt/missions/test.Stratis/mission.sqm differ diff --git a/addons/m119/functions/fnc_load.sqf b/addons/m119/functions/fnc_load.sqf index 236aba2..8618dbb 100644 --- a/addons/m119/functions/fnc_load.sqf +++ b/addons/m119/functions/fnc_load.sqf @@ -40,6 +40,30 @@ switch (_shell) do { case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_5)}; case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_6)}; case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_1): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_2): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_3): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_4): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_5): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_6): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_7): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_1): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_2): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_3): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_4): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_5): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_6): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_7): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_1): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_2): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_3): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_4): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_5): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_6): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_7): {_mag = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_7)}; }; [QGVAR(loadShell), [_arty, _mag, _turret], _arty, [-1]] call CBA_fnc_turretEvent; @@ -50,6 +74,23 @@ private _veh = nearestObjects [player, [_shell], 3]; if (typeOf _x == _shell) exitWith {deleteVehicle _x}; } forEach _veh; +if ("laser" in _shell) exitWith { + _arty animateSource ["magazine_laser_load_source", 0, true]; + _arty animateSource ["magazine_laser_hide_source", 0, true]; + _arty animateSource ["magazine_laser_load_source", 0.36, 0.2]; +}; + +if ("smoke" in _shell) exitWith { + _arty animateSource ["magazine_smoke_load_source", 0, true]; + _arty animateSource ["magazine_smoke_hide_source", 0, true]; + _arty animateSource ["magazine_smoke_load_source", 0.36, 0.2]; +}; +if ("dpicm" in _shell) exitWith { + _arty animateSource ["magazine_dpicm_load_source", 0, true]; + _arty animateSource ["magazine_dpicm_hide_source", 0, true]; + _arty animateSource ["magazine_dpicm_load_source", 0.36, 0.2]; +}; + _arty animateSource ["magazine_load_source", 0, true]; _arty animateSource ["magazine_hide_source", 0, true]; _arty animateSource ["magazine_load_source", 0.36, 0.2]; diff --git a/addons/m119/functions/fnc_unload.sqf b/addons/m119/functions/fnc_unload.sqf index 891a8fc..2d4a1cb 100644 --- a/addons/m119/functions/fnc_unload.sqf +++ b/addons/m119/functions/fnc_unload.sqf @@ -43,10 +43,40 @@ switch (_mags#0) do { case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_5): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5)}; case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_6): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6)}; case QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_7): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_1): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_2): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_3): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_4): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_5): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_6): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_7): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_1): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_2): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_3): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_4): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_5): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_6): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_7): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_7)}; + + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_1): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_1)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_2): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_2)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_3): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_3)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_4): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_4)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_5): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_5)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_6): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_6)}; + case QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_7): {_veh = QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_7)}; }; _arty animateSource ["magazine_hide_source", 1]; _arty animateSource ["magazine_load_source", 0]; +_arty animateSource ["magazine_laser_hide_source", 1]; +_arty animateSource ["magazine_laser_load_source", 0]; +_arty animateSource ["magazine_smoke_hide_source", 1]; +_arty animateSource ["magazine_smoke_load_source", 0]; +_arty animateSource ["magazine_dpicm_hide_source", 1]; +_arty animateSource ["magazine_dpicm_load_source", 0]; private _s = _veh createVehicle (getPos player); [player, _s] call ace_dragging_fnc_startCarry; diff --git a/addons/m119/script_component.hpp b/addons/m119/script_component.hpp index 747eed1..cb5d170 100644 --- a/addons/m119/script_component.hpp +++ b/addons/m119/script_component.hpp @@ -39,5 +39,50 @@ #define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_6 tbd_mortars_105mm_round_he_charge_mag_6 #define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_7 tbd_mortars_105mm_round_he_charge_mag_7 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_1 tbd_mortars_105mm_round_smoke_charge_1 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_2 tbd_mortars_105mm_round_smoke_charge_2 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_3 tbd_mortars_105mm_round_smoke_charge_3 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_4 tbd_mortars_105mm_round_smoke_charge_4 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_5 tbd_mortars_105mm_round_smoke_charge_5 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_6 tbd_mortars_105mm_round_smoke_charge_6 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_7 tbd_mortars_105mm_round_smoke_charge_7 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_1 tbd_mortars_105mm_round_smoke_charge_mag_1 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_2 tbd_mortars_105mm_round_smoke_charge_mag_2 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_3 tbd_mortars_105mm_round_smoke_charge_mag_3 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_4 tbd_mortars_105mm_round_smoke_charge_mag_4 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_5 tbd_mortars_105mm_round_smoke_charge_mag_5 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_6 tbd_mortars_105mm_round_smoke_charge_mag_6 +#define TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_7 tbd_mortars_105mm_round_smoke_charge_mag_7 + +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_1 tbd_mortars_105mm_round_dpicm_charge_1 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_2 tbd_mortars_105mm_round_dpicm_charge_2 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_3 tbd_mortars_105mm_round_dpicm_charge_3 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_4 tbd_mortars_105mm_round_dpicm_charge_4 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_5 tbd_mortars_105mm_round_dpicm_charge_5 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_6 tbd_mortars_105mm_round_dpicm_charge_6 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_7 tbd_mortars_105mm_round_dpicm_charge_7 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_1 tbd_mortars_105mm_round_dpicm_charge_mag_1 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_2 tbd_mortars_105mm_round_dpicm_charge_mag_2 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_3 tbd_mortars_105mm_round_dpicm_charge_mag_3 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_4 tbd_mortars_105mm_round_dpicm_charge_mag_4 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_5 tbd_mortars_105mm_round_dpicm_charge_mag_5 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_6 tbd_mortars_105mm_round_dpicm_charge_mag_6 +#define TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_7 tbd_mortars_105mm_round_dpicm_charge_mag_7 + +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_1 tbd_mortars_105mm_round_laser_charge_1 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_2 tbd_mortars_105mm_round_laser_charge_2 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_3 tbd_mortars_105mm_round_laser_charge_3 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_4 tbd_mortars_105mm_round_laser_charge_4 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_5 tbd_mortars_105mm_round_laser_charge_5 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_6 tbd_mortars_105mm_round_laser_charge_6 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_7 tbd_mortars_105mm_round_laser_charge_7 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_1 tbd_mortars_105mm_round_laser_charge_mag_1 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_2 tbd_mortars_105mm_round_laser_charge_mag_2 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_3 tbd_mortars_105mm_round_laser_charge_mag_3 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_4 tbd_mortars_105mm_round_laser_charge_mag_4 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_5 tbd_mortars_105mm_round_laser_charge_mag_5 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_6 tbd_mortars_105mm_round_laser_charge_mag_6 +#define TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_7 tbd_mortars_105mm_round_laser_charge_mag_7 + #define TOW_RADIUS 10 #define ATTACH_RADIUS 2 \ No newline at end of file diff --git a/addons/m119/stringtable.xml b/addons/m119/stringtable.xml index ff36458..d7ac62b 100644 --- a/addons/m119/stringtable.xml +++ b/addons/m119/stringtable.xml @@ -66,5 +66,25 @@ Otočit celou houfnici vpravo Повернуть орудие вправо + + HE + Tříštivé + ОФ + + + Laser Guided + Laserové + управляемыми + + + Smoke + Dýmové + дымовыми + + + DPICM + Kazetové + Кассетный + diff --git a/addons/m119/tbd_m119/CfgVehicles.hpp b/addons/m119/tbd_m119/CfgVehicles.hpp index 494760b..4babc40 100644 --- a/addons/m119/tbd_m119/CfgVehicles.hpp +++ b/addons/m119/tbd_m119/CfgVehicles.hpp @@ -55,6 +55,7 @@ class CfgVehicles { gunnergetInAction = "GetInLow"; gunnergetOutAction = "GetOutLow"; weapons[] = {QUOTE(TBD_M119_WEAPON)}; + //weapons[] = {"mortar_155mm_AMOS"}; elevationMode = 1; initCamElev = 20; minCamElev = -35; @@ -102,7 +103,8 @@ class CfgVehicles { memoryPointsGetInGunnerDir = "pos_gunner_dir"; proxyType = "CPGunner"; proxyIndex = 1; - magazines[] = {}; + //magazines[] = {}; + magazines[] = {"2Rnd_155mm_Mo_Cluster"}; }; }; htMin = 1; @@ -334,25 +336,6 @@ class CfgVehicles { animPeriod = 0; }; - - - - - - - - - - - - - - - - - - - class mainTurretT_source { source = "user"; initPhase = 0; @@ -418,62 +401,245 @@ class CfgVehicles { selection = "casing_spawn"; icon = "x\tbd_mortars\addons\main\data\load.paa"; - class TBD_LoadHECh1 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_1"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_1)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_1)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; + class TBD_LoadHE { + displayName = CSTRING(HE); + class TBD_LoadHECh1 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_1"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_1)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_1)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh2 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_2"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_2)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_2)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh3 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_3"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_3)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_3)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh4 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_4"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_4)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_4)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh5 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_5"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh6 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_6"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadHECh7 { + displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_7"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; }; - class TBD_LoadHECh2 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_2"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_2)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_2)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; + class TBD_LoadLASERCh6 { + displayName = CSTRING(LASER); + class TBD_LoadLASERCh1 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_1"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_1)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_1)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh2 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_2"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_2)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_2)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh3 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_3"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_3)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_3)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh4 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_4"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_4)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_4)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh5 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_5"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_5)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_5)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh6 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_6"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_6)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_6)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadLASERCh7 { + displayName = "$STR_TBD_MORTARS_105mm_LASER_CHARGE_7"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_7)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_7)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; }; - class TBD_LoadHECh3 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_3"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_3)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_3)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; + class TBD_LoadSMOKECh6 { + displayName = CSTRING(SMOKE); + class TBD_LoadSMOKECh1 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_1"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_1)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_1)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh2 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_2"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_2)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_2)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh3 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_3"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_3)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_3)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh4 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_4"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_4)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_4)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh5 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_5"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_5)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_5)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh6 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_6"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_6)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_6)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadSMOKECh7 { + displayName = "$STR_TBD_MORTARS_105mm_SMOKE_CHARGE_7"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_7)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_7)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; }; - class TBD_LoadHECh4 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_4"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_4)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_4)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; - }; + class TBD_LoadDPICMCh6 { + displayName = CSTRING(DPICM); + class TBD_LoadDPICMCh1 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_1"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_1)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_1)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; - class TBD_LoadHECh5 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_5"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_5)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; - }; + class TBD_LoadDPICMCh2 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_2"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_2)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_2)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; - class TBD_LoadHECh6 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_6"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_6)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; - }; + class TBD_LoadDPICMCh3 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_3"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_3)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_3)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; - class TBD_LoadHECh7 { - displayName = "$STR_TBD_MORTARS_105mm_HE_CHARGE_7"; - condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7)))] call FUNC(canLoad)); - statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_7)),0)] call FUNC(load)); - showDisabled = 0; - exceptions[] = {}; + class TBD_LoadDPICMCh4 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_4"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_4)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_4)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadDPICMCh5 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_5"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_5)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_5)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadDPICMCh6 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_6"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_6)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_6)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; + + class TBD_LoadDPICMCh7 { + displayName = "$STR_TBD_MORTARS_105mm_DPICM_CHARGE_7"; + condition = QUOTE([ARR_2(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_7)))] call FUNC(canLoad)); + statement = QUOTE([ARR_3(_target,QUOTE(QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_7)),0)] call FUNC(load)); + showDisabled = 0; + exceptions[] = {}; + }; }; }; +/* + + };*/ class TBD_Unload { selection = "casing_spawn"; diff --git a/addons/m119/tbd_m119/CfgWeapons.hpp b/addons/m119/tbd_m119/CfgWeapons.hpp index b0db27c..327aa1a 100644 --- a/addons/m119/tbd_m119/CfgWeapons.hpp +++ b/addons/m119/tbd_m119/CfgWeapons.hpp @@ -11,7 +11,12 @@ class CfgWeapons { class TBD_M119_WEAPON: mortar_82mm { displayName = "M119 howitzer"; - magazines[] = {QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_1), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_2), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_3), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_4), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_5), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_6), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_7)}; + magazines[] = { + QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_1), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_2), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_3), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_4), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_5), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_6), QUOTE(TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_7), + QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_1), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_2), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_3), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_4), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_5), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_6), QUOTE(TBD_MORTARS_105mm_ROUND_LASER_CHARGE_MAG_7), + QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_1), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_2), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_3), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_4), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_5), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_6), QUOTE(TBD_MORTARS_105mm_ROUND_SMOKE_CHARGE_MAG_7), + QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_1), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_2), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_3), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_4), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_5), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_6), QUOTE(TBD_MORTARS_105mm_ROUND_DPICM_CHARGE_MAG_7), "2Rnd_155mm_Mo_Cluster" + }; modes[] = {"Single"}; reloadSound[] = {QPATHTOF(TBD_M119\sounds\reload.ogg), 3, 1, 50}; reloadMagazineSound[] = {QPATHTOF(TBD_M119\sounds\reload.ogg), 3, 1, 50}; diff --git a/addons/m119/tbd_m119/model.cfg b/addons/m119/tbd_m119/model.cfg index dc36e79..8991a4b 100644 --- a/addons/m119/tbd_m119/model.cfg +++ b/addons/m119/tbd_m119/model.cfg @@ -358,19 +358,19 @@ class CfgModels { class magazine_smoke_hide { type = "hide"; source = "magazine_smoke_hide_source"; - selection = "magazine"; + selection = "magazine_smoke"; hideValue = 1; }; class magazine_laser_hide { type = "hide"; source = "magazine_laser_hide_source"; - selection = "magazine"; + selection = "magazine_laser"; hideValue = 1; }; class magazine_dpicm_hide { type = "hide"; source = "magazine_dpicm_hide_source"; - selection = "magazine"; + selection = "magazine_dpicm"; hideValue = 1; };