diff --git a/addons/disposable/$PBOPREFIX$ b/addons/disposable/$PBOPREFIX$ new file mode 100644 index 0000000000..b12231f77d --- /dev/null +++ b/addons/disposable/$PBOPREFIX$ @@ -0,0 +1 @@ +z\ace\addons\disposable \ No newline at end of file diff --git a/addons/disposable/CfgEventHandlers.hpp b/addons/disposable/CfgEventHandlers.hpp new file mode 100644 index 0000000000..1ce0c446e2 --- /dev/null +++ b/addons/disposable/CfgEventHandlers.hpp @@ -0,0 +1,45 @@ +class Extended_PreInit_EventHandlers { + class ADDON { + init = QUOTE( call COMPILE_FILE(XEH_preInit) ); + }; +}; + +class Extended_PostInit_EventHandlers { + class ADDON { + clientInit = QUOTE( call COMPILE_FILE(XEH_postInitClient) ); + }; +}; + +class Extended_FiredBIS_EventHandlers { + class CAManBase { + class ADDON { + // firedBIS = "if (local (_this select 0)) then {_this call AGM_Disposable_fnc_replaceATWeapon};"; + firedBIS = QUOTE( _this call FUNC(replaceATWeapon); ); + }; + }; +}; + +// handle preloaded missile +class Extended_Init_EventHandlers { + class CAManBase { + class ADDON { + init = "if (local (_this select 0)) then {_this spawn {[_this select 0, secondaryWeapon (_this select 0)] call AGM_Disposable_fnc_takeLoadedATWeapon}};"; + }; + }; +}; + +class Extended_Take_EventHandlers { + class CAManBase { + class ADDON { + take = "if (local (_this select 0)) then {[_this select 0, _this select 2] call AGM_Disposable_fnc_takeLoadedATWeapon; [_this select 0, findDisplay 602] call AGM_Disposable_fnc_updateInventoryDisplay};"; + }; + }; +}; + +class Extended_Put_EventHandlers { + class CAManBase { + class ADDON { + put = "if (local (_this select 0)) then {[_this select 0, findDisplay 602] call AGM_Disposable_fnc_updateInventoryDisplay};"; + }; + }; +}; diff --git a/addons/disposable/CfgMagazines.hpp b/addons/disposable/CfgMagazines.hpp new file mode 100644 index 0000000000..45ff3153da --- /dev/null +++ b/addons/disposable/CfgMagazines.hpp @@ -0,0 +1,24 @@ +class CfgMagazines { + class NLAW_F; + class ACE_PreloadedMissileDummy: NLAW_F { // The dummy magazine + author = "$STR_ACE_Common_ACETeam"; + scope = 1; + displayName = "$STR_ACE_Disposable_PreloadedMissileDummy"; + picture = "\AGM_Core\UI\blank_CO.paa"; + weaponPoolAvailable = 0; + mass = 0; + }; + class ACE_FiredMissileDummy: ACE_PreloadedMissileDummy { + count = 0; + }; + class ACE_UsedTube_F: NLAW_F { + author = "$STR_ACE_Common_ACETeam"; + displayName = "$STR_ACE_Disposable_UsedTube"; + descriptionShort = "$STR_ACE_Disposable_UsedTubeDescription"; + displayNameShort = "-"; + count = 0; + weaponPoolAvailable = 0; + modelSpecial = ""; + mass = 0; + }; +}; diff --git a/addons/disposable/CfgVehicles.hpp b/addons/disposable/CfgVehicles.hpp new file mode 100644 index 0000000000..b3b9436484 --- /dev/null +++ b/addons/disposable/CfgVehicles.hpp @@ -0,0 +1,146 @@ +class CfgVehicles { + #define MACRO_NONLAW \ + class TransportMagazines { \ + class _xx_NLAW_F { \ + count = 0; \ + }; \ + }; + + class ReammoBox_F; + class NATO_Box_Base: ReammoBox_F {}; + class Box_NATO_Ammo_F: NATO_Box_Base { + MACRO_NONLAW + }; + class Box_NATO_WpsLaunch_F: NATO_Box_Base { + MACRO_NONLAW + }; + + class IND_Box_Base: ReammoBox_F {}; + class Box_IND_WpsLaunch_F: IND_Box_Base { + MACRO_NONLAW + }; + class Box_IND_Ammo_F: IND_Box_Base { + MACRO_NONLAW + }; + + class B_supplyCrate_F: ReammoBox_F { + MACRO_NONLAW + }; + class I_supplyCrate_F: B_supplyCrate_F { + MACRO_NONLAW + }; + class C_supplyCrate_F: ReammoBox_F { + MACRO_NONLAW + }; + + class B_AssaultPack_rgr; + class B_AssaultPack_rgr_LAT: B_AssaultPack_rgr { + MACRO_NONLAW + }; + class B_AssaultPack_rgr_ReconLAT: B_AssaultPack_rgr { + MACRO_NONLAW + }; + + class B_Carryall_mcamo; + class B_AssaultPack_mcamo_Ammo: B_Carryall_mcamo { + MACRO_NONLAW + }; + class B_Carryall_oli; + class I_Fieldpack_oli_Ammo: B_Carryall_oli { + MACRO_NONLAW + }; + + class B_AssaultPack_dgtl; + class I_Fieldpack_oli_LAT: B_AssaultPack_dgtl { + MACRO_NONLAW + }; + + class CargoNet_01_ammo_base_F; + class B_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F { + MACRO_NONLAW + }; + class I_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F { + MACRO_NONLAW + }; + + class Slingload_01_Base_F; + class B_Slingload_01_Cargo_F: Slingload_01_Base_F { + MACRO_NONLAW + }; + + class Tank_F; + class APC_Tracked_01_base_F: Tank_F { + MACRO_NONLAW + }; + /*class B_APC_Tracked_01_base_F: APC_Tracked_01_base_F { + MACRO_NONLAW + }; + class B_APC_Tracked_01_rcws_F: B_APC_Tracked_01_base_F { + MACRO_NONLAW + }; + class B_APC_Tracked_01_CRV_F: B_APC_Tracked_01_base_F { + MACRO_NONLAW + }; + class B_APC_Tracked_01_AA_F: B_APC_Tracked_01_base_F { + MACRO_NONLAW + };*/ + + class Car_F; + class MRAP_01_base_F: Car_F { + MACRO_NONLAW + }; + /*class MRAP_01_gmg_base_F: MRAP_01_base_F { + MACRO_NONLAW + }; + class MRAP_01_hmg_base_F: MRAP_01_gmg_base_F { + MACRO_NONLAW + }; + class B_MRAP_01_F: MRAP_01_base_F { + MACRO_NONLAW + }; + class B_MRAP_01_gmg_F: MRAP_01_gmg_base_F { + MACRO_NONLAW + }; + class B_MRAP_01_hmg_F: MRAP_01_hmg_base_F { + MACRO_NONLAW + };*/ + + class MRAP_03_base_F: Car_F { + MACRO_NONLAW + }; + /*class MRAP_03_hmg_base_F: MRAP_03_base_F { + MACRO_NONLAW + }; + class MRAP_03_gmg_base_F: MRAP_03_hmg_base_F { + MACRO_NONLAW + }; + class I_MRAP_03_F: MRAP_03_base_F { + MACRO_NONLAW + }; + class I_MRAP_03_hmg_F: MRAP_03_hmg_base_F { + MACRO_NONLAW + }; + class I_MRAP_03_gmg_F: MRAP_03_gmg_base_F { + MACRO_NONLAW + };*/ + + class Wheeled_APC_F: Car_F {}; + class APC_Wheeled_03_base_F: Wheeled_APC_F { + MACRO_NONLAW + }; + class APC_Wheeled_01_base_F: Wheeled_APC_F { + MACRO_NONLAW + }; + /*class B_APC_Wheeled_01_base_F: APC_Wheeled_01_base_F { + MACRO_NONLAW + }; + class B_APC_Wheeled_01_cannon_F: B_APC_Wheeled_01_base_F { + MACRO_NONLAW + }; + class I_APC_Wheeled_03_base_F: APC_Wheeled_03_base_F { + MACRO_NONLAW + }; + class I_APC_Wheeled_03_cannon_F: I_APC_Wheeled_03_base_F { + MACRO_NONLAW + };*/ +}; diff --git a/addons/disposable/CfgWeapons.hpp b/addons/disposable/CfgWeapons.hpp new file mode 100644 index 0000000000..4bd36ce3ed --- /dev/null +++ b/addons/disposable/CfgWeapons.hpp @@ -0,0 +1,18 @@ +class CfgWeapons { + class Launcher_Base_F; + class launch_NLAW_F: Launcher_Base_F { + ACE_UsedTube = "ACE_launch_NLAW_Used_F"; // The class name of the used tube. + magazines[] = {"ACE_PreloadedMissileDummy"}; // The dummy magazine + }; + class ACE_launch_NLAW_Used_F: launch_NLAW_F { // the used tube should be a sub class of the disposable launcher + scope = 1; + ACE_isUsedLauncher = 1; + author = "$STR_ACE_Common_ACETeam"; + displayName = "$STR_ACE_Disposable_UsedTube"; + descriptionShort = "$STR_ACE_Disposable_UsedTubeDescription"; + magazines[] = {"ACE_FiredMissileDummy"}; // This will disable the used launcher class from being fired again. + //picture = ""; @todo + //model = ""; @todo + weaponPoolAvailable = 0; + }; +}; diff --git a/addons/disposable/XEH_postInitClient.sqf b/addons/disposable/XEH_postInitClient.sqf new file mode 100644 index 0000000000..9075155952 --- /dev/null +++ b/addons/disposable/XEH_postInitClient.sqf @@ -0,0 +1,13 @@ +// by commy2 + +// The Arma InventoryOpened EH fires actually before the inventory dialog is opened (findDisplay 602 => displayNull). + +#include "script_component.hpp" + +if (isNil QGVAR(UpdateInventoryDisplay_EHID)) then { + GVAR(UpdateInventoryDisplay_EHID) = [{ + _player = ACE_player; + [_player, secondaryWeapon _player] call FUNC(takeLoadedATWeapon); + [_player, _this select 0] spawn FUNC(updateInventoryDisplay); + }] call EFUNC(common,addInventoryDisplayLoadedEventHandler); +}; diff --git a/addons/disposable/XEH_preInit.sqf b/addons/disposable/XEH_preInit.sqf new file mode 100644 index 0000000000..5bcdc6dc7c --- /dev/null +++ b/addons/disposable/XEH_preInit.sqf @@ -0,0 +1,5 @@ +#include "script_component.hpp" + +PREP(replaceATWeapon); +PREP(takeLoadedATWeapon); +PREP(updateInventoryDisplay); diff --git a/addons/disposable/clientInit.sqf b/addons/disposable/clientInit.sqf deleted file mode 100644 index c47af35ef4..0000000000 --- a/addons/disposable/clientInit.sqf +++ /dev/null @@ -1,10 +0,0 @@ -// by commy2 - -// The Arma InventoryOpened EH fires actually before the inventory dialog is opened (findDisplay 602 => displayNull). -if (isNil "AGM_Disposable_UpdateInventoryDisplay_EHID") then { - AGM_Disposable_UpdateInventoryDisplay_EHID = [{ - _player = AGM_player; - [_player, secondaryWeapon _player] call AGM_Disposable_fnc_takeLoadedATWeapon; - [_player, _this select 0] spawn AGM_Disposable_fnc_updateInventoryDisplay; - }] call AGM_Core_fnc_addInventoryDisplayLoadedEventHandler; -}; diff --git a/addons/disposable/config.cpp b/addons/disposable/config.cpp index dfaffcf703..92fc2c88ac 100644 --- a/addons/disposable/config.cpp +++ b/addons/disposable/config.cpp @@ -1,255 +1,18 @@ +#include "script_component.hpp" class CfgPatches { - class AGM_Disposable { + class ADDON { units[] = {}; weapons[] = {}; requiredVersion = 0.60; - requiredAddons[] = {AGM_Core}; - version = "0.95"; - versionStr = "0.95"; - versionAr[] = {0,95,0}; + requiredAddons[] = {"ace_common"}; author[] = {"commy2"}; authorUrl = "https://github.com/commy2/"; + VERSION_CONFIG }; }; -class CfgFunctions { - class AGM_Disposable { - class AGM_Disposable { - file = "\AGM_Disposable\functions"; - class replaceATWeapon; - class takeLoadedATWeapon; - class updateInventoryDisplay; - }; - }; -}; - -class Extended_PostInit_EventHandlers { - class AGM_Disposable { - clientInit = "call compile preprocessFileLineNumbers '\AGM_Disposable\clientInit.sqf'"; - }; -}; - -class Extended_FiredBIS_EventHandlers { - class CAManBase { - class AGM_Disposable_ReplaceFiredATWeapon { - firedBIS = "if (local (_this select 0)) then {_this call AGM_Disposable_fnc_replaceATWeapon};"; - }; - }; -}; - -// handle preloaded missile -class Extended_Init_EventHandlers { - class CAManBase { - class AGM_Disposable_UpdateInventoryDisplay { - init = "if (local (_this select 0)) then {_this spawn {[_this select 0, secondaryWeapon (_this select 0)] call AGM_Disposable_fnc_takeLoadedATWeapon}};"; - }; - }; -}; - -class Extended_Take_EventHandlers { - class CAManBase { - class AGM_Disposable_UpdateInventoryDisplay { - take = "if (local (_this select 0)) then {[_this select 0, _this select 2] call AGM_Disposable_fnc_takeLoadedATWeapon; [_this select 0, findDisplay 602] call AGM_Disposable_fnc_updateInventoryDisplay};"; - }; - }; -}; - -class Extended_Put_EventHandlers { - class CAManBase { - class AGM_Disposable_UpdateInventoryDisplay { - put = "if (local (_this select 0)) then {[_this select 0, findDisplay 602] call AGM_Disposable_fnc_updateInventoryDisplay};"; - }; - }; -}; - -class CfgWeapons { - class Launcher_Base_F; - class launch_NLAW_F: Launcher_Base_F { - AGM_UsedTube = "AGM_launch_NLAW_Used_F"; // The class name of the used tube. - magazines[] = {"AGM_PreloadedMissileDummy"}; // The dummy magazine - }; - class AGM_launch_NLAW_Used_F: launch_NLAW_F { // the used tube should be a sub class of the disposable launcher - scope = 1; - AGM_isUsedLauncher = 1; - author = "$STR_AGM_Core_AGMTeam"; - displayName = "$STR_AGM_Disposable_UsedTube"; - descriptionShort = "$STR_AGM_Disposable_UsedTubeDescription"; - magazines[] = {"AGM_FiredMissileDummy"}; // This will disable the used launcher class from being fired again. - //picture = ""; @todo - //model = ""; @todo - weaponPoolAvailable = 0; - }; -}; - -class CfgMagazines { - class NLAW_F; - class AGM_PreloadedMissileDummy: NLAW_F { // The dummy magazine - author = "$STR_AGM_Core_AGMTeam"; - scope = 1; - displayName = "$STR_AGM_Disposable_PreloadedMissileDummy"; - picture = "\AGM_Core\UI\blank_CO.paa"; - weaponPoolAvailable = 0; - mass = 0; - }; - class AGM_FiredMissileDummy: AGM_PreloadedMissileDummy { - count = 0; - }; - class AGM_UsedTube_F: NLAW_F { - author = "$STR_AGM_Core_AGMTeam"; - displayName = "$STR_AGM_Disposable_UsedTube"; - descriptionShort = "$STR_AGM_Disposable_UsedTubeDescription"; - displayNameShort = "-"; - count = 0; - weaponPoolAvailable = 0; - modelSpecial = ""; - mass = 0; - }; -}; - -class CfgVehicles { - #define MACRO_NONLAW \ - class TransportMagazines { \ - class _xx_NLAW_F { \ - count = 0; \ - }; \ - }; - - class ReammoBox_F; - class NATO_Box_Base: ReammoBox_F {}; - class Box_NATO_Ammo_F: NATO_Box_Base { - MACRO_NONLAW - }; - class Box_NATO_WpsLaunch_F: NATO_Box_Base { - MACRO_NONLAW - }; - - class IND_Box_Base: ReammoBox_F {}; - class Box_IND_WpsLaunch_F: IND_Box_Base { - MACRO_NONLAW - }; - class Box_IND_Ammo_F: IND_Box_Base { - MACRO_NONLAW - }; - - class B_supplyCrate_F: ReammoBox_F { - MACRO_NONLAW - }; - class I_supplyCrate_F: B_supplyCrate_F { - MACRO_NONLAW - }; - class C_supplyCrate_F: ReammoBox_F { - MACRO_NONLAW - }; - - class B_AssaultPack_rgr; - class B_AssaultPack_rgr_LAT: B_AssaultPack_rgr { - MACRO_NONLAW - }; - class B_AssaultPack_rgr_ReconLAT: B_AssaultPack_rgr { - MACRO_NONLAW - }; - - class B_Carryall_mcamo; - class B_AssaultPack_mcamo_Ammo: B_Carryall_mcamo { - MACRO_NONLAW - }; - class B_Carryall_oli; - class I_Fieldpack_oli_Ammo: B_Carryall_oli { - MACRO_NONLAW - }; - - class B_AssaultPack_dgtl; - class I_Fieldpack_oli_LAT: B_AssaultPack_dgtl { - MACRO_NONLAW - }; - - class CargoNet_01_ammo_base_F; - class B_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F { - MACRO_NONLAW - }; - class I_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F { - MACRO_NONLAW - }; - - class Slingload_01_Base_F; - class B_Slingload_01_Cargo_F: Slingload_01_Base_F { - MACRO_NONLAW - }; - - class Tank_F; - class APC_Tracked_01_base_F: Tank_F { - MACRO_NONLAW - }; - /*class B_APC_Tracked_01_base_F: APC_Tracked_01_base_F { - MACRO_NONLAW - }; - class B_APC_Tracked_01_rcws_F: B_APC_Tracked_01_base_F { - MACRO_NONLAW - }; - class B_APC_Tracked_01_CRV_F: B_APC_Tracked_01_base_F { - MACRO_NONLAW - }; - class B_APC_Tracked_01_AA_F: B_APC_Tracked_01_base_F { - MACRO_NONLAW - };*/ - - class Car_F; - class MRAP_01_base_F: Car_F { - MACRO_NONLAW - }; - /*class MRAP_01_gmg_base_F: MRAP_01_base_F { - MACRO_NONLAW - }; - class MRAP_01_hmg_base_F: MRAP_01_gmg_base_F { - MACRO_NONLAW - }; - class B_MRAP_01_F: MRAP_01_base_F { - MACRO_NONLAW - }; - class B_MRAP_01_gmg_F: MRAP_01_gmg_base_F { - MACRO_NONLAW - }; - class B_MRAP_01_hmg_F: MRAP_01_hmg_base_F { - MACRO_NONLAW - };*/ - - class MRAP_03_base_F: Car_F { - MACRO_NONLAW - }; - /*class MRAP_03_hmg_base_F: MRAP_03_base_F { - MACRO_NONLAW - }; - class MRAP_03_gmg_base_F: MRAP_03_hmg_base_F { - MACRO_NONLAW - }; - class I_MRAP_03_F: MRAP_03_base_F { - MACRO_NONLAW - }; - class I_MRAP_03_hmg_F: MRAP_03_hmg_base_F { - MACRO_NONLAW - }; - class I_MRAP_03_gmg_F: MRAP_03_gmg_base_F { - MACRO_NONLAW - };*/ - - class Wheeled_APC_F: Car_F {}; - class APC_Wheeled_03_base_F: Wheeled_APC_F { - MACRO_NONLAW - }; - class APC_Wheeled_01_base_F: Wheeled_APC_F { - MACRO_NONLAW - }; - /*class B_APC_Wheeled_01_base_F: APC_Wheeled_01_base_F { - MACRO_NONLAW - }; - class B_APC_Wheeled_01_cannon_F: B_APC_Wheeled_01_base_F { - MACRO_NONLAW - }; - class I_APC_Wheeled_03_base_F: APC_Wheeled_03_base_F { - MACRO_NONLAW - }; - class I_APC_Wheeled_03_cannon_F: I_APC_Wheeled_03_base_F { - MACRO_NONLAW - };*/ -}; +#include "CfgEventHandlers.hpp" +#include "CfgWeapons.hpp" +#include "CfgMagazines.hpp" +#include "CfgVehicles.hpp" diff --git a/addons/disposable/functions/fn_replaceATWeapon.sqf b/addons/disposable/functions/fn_replaceATWeapon.sqf index 1f9adfeaff..9d8621001d 100644 --- a/addons/disposable/functions/fn_replaceATWeapon.sqf +++ b/addons/disposable/functions/fn_replaceATWeapon.sqf @@ -9,13 +9,16 @@ * Return value: * Nothing */ + +#include "script_component.hpp" private ["_unit", "_tube", "_projectile"]; _unit = _this select 0; -_tube = getText (configFile >> "CfgWeapons" >> _this select 1 >> "AGM_UsedTube"); +_tube = getText (configFile >> "CfgWeapons" >> (_this select 1) >> "ACE_UsedTube"); _projectile = _this select 6; +if (!local _unit) exitWith {}; if (_tube == "") exitWith {}; private "_items"; @@ -29,7 +32,7 @@ _unit selectWeapon _tube; } forEach _items; // AI -if !([_unit] call AGM_Core_fnc_isPlayer) then { +if !([_unit] call EFUNC(common,isPlayer)) then { [_unit, _tube, _projectile] spawn { _unit = _this select 0; _tube = _this select 1; diff --git a/addons/disposable/functions/fn_takeLoadedATWeapon.sqf b/addons/disposable/functions/fn_takeLoadedATWeapon.sqf index 6b2b8bce60..db54a71bba 100644 --- a/addons/disposable/functions/fn_takeLoadedATWeapon.sqf +++ b/addons/disposable/functions/fn_takeLoadedATWeapon.sqf @@ -10,6 +10,8 @@ * Nothing */ +#include "script_component.hpp" + private ["_unit", "_launcher", "_config"]; _unit = _this select 0; @@ -17,7 +19,7 @@ _launcher = _this select 1; _config = configFile >> "CfgWeapons" >> _launcher; -if (isClass _config && {getText (_config >> "AGM_UsedTube") != ""} && {getNumber (_config >> "AGM_isUsedLauncher") != 1} && {count secondaryWeaponMagazine _unit == 0}) then { +if (isClass _config && {getText (_config >> "ACE_UsedTube") != ""} && {getNumber (_config >> "ACE_isUsedLauncher") != 1} && {count secondaryWeaponMagazine _unit == 0}) then { private ["_magazine", "_isLauncherSelected"]; _magazine = getArray (_config >> "magazines") select 0; diff --git a/addons/disposable/functions/fn_updateInventoryDisplay.sqf b/addons/disposable/functions/fn_updateInventoryDisplay.sqf index a43b44e0f1..12455b340f 100644 --- a/addons/disposable/functions/fn_updateInventoryDisplay.sqf +++ b/addons/disposable/functions/fn_updateInventoryDisplay.sqf @@ -10,12 +10,14 @@ * Nothing */ +#include "script_component.hpp" + private ["_player", "_display"]; _player = _this select 0; -_player removeMagazines "AGM_PreloadedMissileDummy"; -_player removeMagazines "AGM_FiredMissileDummy"; +_player removeMagazines "ACE_PreloadedMissileDummy"; +_player removeMagazines "ACE_FiredMissileDummy"; disableSerialization; _display = _this select 1; @@ -26,7 +28,7 @@ private ["_launcher", "_control", "_config"]; _launcher = secondaryWeapon _player; -if (_launcher == "" || {getText (configFile >> "CfgWeapons" >> _launcher >> "AGM_UsedTube") == ""}) then { +if (_launcher == "" || {getText (configFile >> "CfgWeapons" >> _launcher >> "ACE_UsedTube") == ""}) then { _control = _display displayCtrl 627; _config = configFile >> "RscDisplayInventory" >> "controls" >> "SlotSecondaryMagazine"; _control ctrlSetPosition [getNumber (_config >> "x"), getNumber (_config >> "y"), getNumber (_config >> "w"), getNumber (_config >> "h")]; diff --git a/addons/disposable/functions/script_component.hpp b/addons/disposable/functions/script_component.hpp new file mode 100644 index 0000000000..035e8e6bcc --- /dev/null +++ b/addons/disposable/functions/script_component.hpp @@ -0,0 +1 @@ +#include "\z\ace\addons\disposable\script_component.hpp" \ No newline at end of file diff --git a/addons/disposable/script_component.hpp b/addons/disposable/script_component.hpp new file mode 100644 index 0000000000..6d26a5431c --- /dev/null +++ b/addons/disposable/script_component.hpp @@ -0,0 +1,12 @@ +#define COMPONENT disposable +#include "\z\ace\Addons\main\script_mod.hpp" + +#ifdef DEBUG_ENABLED_ATTACH + #define DEBUG_MODE_FULL +#endif + +#ifdef DEBUG_SETTINGS_ATTACH + #define DEBUG_SETTINGS DEBUG_SETTINGS_ATTACH +#endif + +#include "\z\ace\Addons\main\script_macros.hpp" \ No newline at end of file diff --git a/addons/disposable/stringtable.xml b/addons/disposable/stringtable.xml index 1f2166d3b2..8b6c032961 100644 --- a/addons/disposable/stringtable.xml +++ b/addons/disposable/stringtable.xml @@ -1,8 +1,8 @@  - + - + Used Tube Benutze Einwegwaffe Tube utilisé @@ -12,7 +12,7 @@ Használt cső Отстрелянная труба - + Used disposable rocket launcher Benutzter Einweg-Raketenwerfer Lance-roquette à usage unique utilisé @@ -22,7 +22,7 @@ Használt rakétavető Отстрелянная одноразовая пусковая установка - + Preloaded Missile Dummy Preloaded Missile Dummy Preloaded Missile Dummy