#define PREFIX TBD_M119
#define COMPONENT m119
#include "\x\cba\addons\main\script_macros_common.hpp"

#define DISABLE_COMPILE_CACHE

#ifdef DISABLE_COMPILE_CACHE
    #undef PREP
    #define PREP(fncName) TRIPLES(ADDON,fnc,fncName) = compile preprocessFileLineNumbers QPATHTOF(functions\DOUBLES(fnc,fncName).sqf)
#else
    #undef PREP
    #define PREP(fncName) [QPATHTOF(functions\DOUBLES(fnc,fncName).sqf), QFUNC(fncName)] call CBA_fnc_compileFunction
#endif

#define PREP_SUB(subfolder,fncName) [QPATHTOF(functions\subfolder\DOUBLES(fnc,fncName).sqf), QUOTE(DFUNC(DOUBLES(subfolder,fncName)))] call CBA_fnc_compileFunction

#define TBD_MORT(cmp,fncName) tbd_mortars##_##cmp##_##fnc##_##fncName
//#define TBD_MORT(cmp,fncName) tbd##_##cmp##_##fnc##_##fncName

#define TBD_M119 tbd_m119
#define TBD_M119_WEAPON tbd_m119_weapon

#define TBD_M119_SHOT_SOUNDSET tbd_m119_shot_soundset
#define TBD_M119_SHOT_SOUNDSHADER tbd_M119_shot_soundshader

#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_1 tbd_mortars_105mm_round_he_charge_1
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_2 tbd_mortars_105mm_round_he_charge_2
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_3 tbd_mortars_105mm_round_he_charge_3
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_4 tbd_mortars_105mm_round_he_charge_4
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_5 tbd_mortars_105mm_round_he_charge_5
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_6 tbd_mortars_105mm_round_he_charge_6
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_7 tbd_mortars_105mm_round_he_charge_7

#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_1 tbd_mortars_105mm_round_he_charge_mag_1
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_2 tbd_mortars_105mm_round_he_charge_mag_2
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_3 tbd_mortars_105mm_round_he_charge_mag_3
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_4 tbd_mortars_105mm_round_he_charge_mag_4
#define TBD_MORTARS_105mm_ROUND_HE_CHARGE_MAG_5 tbd_mortars_105mm_round_he_charge_mag_5
#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