Skip to content

Commit

Permalink
fix launchers in cargo
Browse files Browse the repository at this point in the history
  • Loading branch information
commy2 committed Apr 25, 2019
1 parent d3f9280 commit cfe40cc
Show file tree
Hide file tree
Showing 3 changed files with 126 additions and 100 deletions.
194 changes: 110 additions & 84 deletions addons/disposable/CfgVehicles.hpp
Original file line number Diff line number Diff line change
@@ -1,146 +1,172 @@
/*
private _classes = "true" configClasses (configFile >> "CfgVehicles");
_classes = _classes select {
isClass (_x >> "TransportMagazines" >> "_xx_NLAW_F") && {(_x >> "TransportMagazines") in ("true" configClasses _x)}
};
private _config = "";
private _parents = [];
{
private _class = configName _x;
private _parent = configName inheritsFrom _x;
if (_parents pushBackUnique _parent != -1) then {
_config = _config + format ["class %1;%2", _parent, endl];
};
_config = _config + format ["class %1: %2 {%3 MACRO_NONLAW;%3};%3%3", _class, _parent, endl];
_parents pushBackUnique _class;
} forEach _classes;
copyToClipboard _config;
*/

class CfgVehicles {
#define MACRO_NONLAW \
class TransportMagazines { \
class _xx_NLAW_F { \
count = 0; \
}; \
class Launcher_Base_F;
class Weapon_launch_NLAW_F: Launcher_Base_F {
class TransportMagazines {
class NLAW_F {
count = 0;
};
};
};

class ReammoBox_F;
class NATO_Box_Base: ReammoBox_F {};
#define MACRO_NONLAW class TransportMagazines {\
class _xx_NLAW_F {\
count = 0;\
};\
}

class NATO_Box_Base;
class Box_NATO_Ammo_F: NATO_Box_Base {
MACRO_NONLAW
MACRO_NONLAW;
};

class Box_NATO_WpsLaunch_F: NATO_Box_Base {
MACRO_NONLAW
MACRO_NONLAW;
};

class IND_Box_Base: ReammoBox_F {};
class IND_Box_Base;
class Box_IND_WpsLaunch_F: IND_Box_Base {
MACRO_NONLAW
MACRO_NONLAW;
};

class Box_IND_Ammo_F: IND_Box_Base {
MACRO_NONLAW
MACRO_NONLAW;
};

class ReammoBox_F;
class B_supplyCrate_F: ReammoBox_F {
MACRO_NONLAW
MACRO_NONLAW;
};

class I_supplyCrate_F: B_supplyCrate_F {
MACRO_NONLAW
MACRO_NONLAW;
};

class C_supplyCrate_F: ReammoBox_F {
MACRO_NONLAW
MACRO_NONLAW;
};

class B_AssaultPack_rgr;
class B_AssaultPack_rgr_LAT: B_AssaultPack_rgr {
MACRO_NONLAW
MACRO_NONLAW;
};

class B_AssaultPack_rgr_ReconLAT: B_AssaultPack_rgr {
MACRO_NONLAW
MACRO_NONLAW;
};

class B_Carryall_mcamo;
class B_AssaultPack_mcamo_Ammo: B_Carryall_mcamo {
MACRO_NONLAW
MACRO_NONLAW;
};

class B_Carryall_oli;
class I_Fieldpack_oli_Ammo: B_Carryall_oli {
MACRO_NONLAW
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
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
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 APC_Tracked_03_base_F: Tank_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
MACRO_NONLAW;
};
/*class MRAP_01_gmg_base_F: MRAP_01_base_F {
MACRO_NONLAW

class MRAP_03_base_F: Car_F {
MACRO_NONLAW;
};
class MRAP_01_hmg_base_F: MRAP_01_gmg_base_F {
MACRO_NONLAW

class LSV_01_base_F: Car_F {
MACRO_NONLAW;
};
class B_MRAP_01_F: MRAP_01_base_F {
MACRO_NONLAW

class Wheeled_APC_F;
class APC_Wheeled_01_base_F: Wheeled_APC_F {
MACRO_NONLAW;
};
class B_MRAP_01_gmg_F: MRAP_01_gmg_base_F {
MACRO_NONLAW

class APC_Wheeled_03_base_F: Wheeled_APC_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 CargoNet_01_ammo_base_F;
class B_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F {
MACRO_NONLAW;
};
/*class MRAP_03_hmg_base_F: MRAP_03_base_F {
MACRO_NONLAW

class I_CargoNet_01_ammo_F: CargoNet_01_ammo_base_F {
MACRO_NONLAW;
};
class MRAP_03_gmg_base_F: MRAP_03_hmg_base_F {
MACRO_NONLAW

class Slingload_01_Base_F;
class B_Slingload_01_Cargo_F: Slingload_01_Base_F {
MACRO_NONLAW;
};
class I_MRAP_03_F: MRAP_03_base_F {
MACRO_NONLAW

class B_T_LSV_01_armed_F;
class B_T_LSV_01_armed_CTRG_F: B_T_LSV_01_armed_F {
MACRO_NONLAW;
};
class I_MRAP_03_hmg_F: MRAP_03_hmg_base_F {
MACRO_NONLAW

class B_T_LSV_01_unarmed_F;
class B_T_LSV_01_unarmed_CTRG_F: B_T_LSV_01_unarmed_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 LSV_01_light_base_F;
class B_CTRG_LSV_01_light_F: LSV_01_light_base_F {
MACRO_NONLAW;
};
class APC_Wheeled_01_base_F: Wheeled_APC_F {
MACRO_NONLAW

class B_Carryall_oli_BTAmmo_F: B_Carryall_oli {
MACRO_NONLAW;
};
/*class B_APC_Wheeled_01_base_F: APC_Wheeled_01_base_F {
MACRO_NONLAW

class B_AssaultPack_rgr_BTLAT_F: B_AssaultPack_rgr {
MACRO_NONLAW;
};
class B_APC_Wheeled_01_cannon_F: B_APC_Wheeled_01_base_F {
MACRO_NONLAW

class B_AssaultPack_rgr_CTRGLAT_F: B_AssaultPack_rgr {
MACRO_NONLAW;
};
class I_APC_Wheeled_03_base_F: APC_Wheeled_03_base_F {
MACRO_NONLAW

class C_T_supplyCrate_F: ReammoBox_F {
MACRO_NONLAW;
};
class I_APC_Wheeled_03_cannon_F: I_APC_Wheeled_03_base_F {
MACRO_NONLAW
};*/
};
30 changes: 15 additions & 15 deletions addons/disposable/CfgWeapons.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,31 +5,32 @@ class CfgWeapons {
};

class launch_NLAW_F: Launcher_Base_F {
scope = 1;
scopeArsenal = 1;
scope = 2;
scopeArsenal = 2;
baseWeapon = "launch_NLAW_F";

magazines[] = {"CBA_FakeLauncherMagazine"};
magazineReloadTime = 0.1;

class EventHandlers {
fired = "_this call CBA_fnc_firedDisposable"; // this weapon eventhandler is required!
};

class WeaponSlotsInfo: WeaponSlotsInfo {
mass = LAUNCHER_MASS;
mass = 180; // launcher 100, magazine 80
};
};

class ACE_launch_NLAW_loaded_F: launch_NLAW_F {
class ACE_launch_NLAW_ready_F: launch_NLAW_F {
author = ECSTRING(common,ACETeam);
scope = 2;
scopeArsenal = 2;
baseWeapon = "ACE_launch_NLAW_loaded_F";
scope = 1;
scopeArsenal = 1;
baseWeapon = "ACE_launch_NLAW_ready_F";

magazines[] = {"CBA_FakeLauncherMagazine"};
magazines[] = {"NLAW_F"};

class EventHandlers {
fired = "_this call CBA_fnc_firedDisposable"; // this weapon eventhandler is required!
};

class WeaponSlotsInfo: WeaponSlotsInfo {
mass = 180; // launcher 100, magazine 80
mass = 100;
};
};

Expand All @@ -41,11 +42,10 @@ class CfgWeapons {

displayName = CSTRING(UsedTube);
descriptionShort = CSTRING(UsedTubeDescription);
magazines[] = {"CBA_FakeLauncherMagazine"};
weaponPoolAvailable = 0;

class WeaponSlotsInfo: WeaponSlotsInfo {
mass = LAUNCHER_MASS;
mass = 100;
};
};
};
2 changes: 1 addition & 1 deletion addons/disposable/config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class CfgPatches {
};

class CBA_DisposableLaunchers {
launch_NLAW_F[] = {"ACE_launch_NLAW_loaded_F","ACE_launch_NLAW_used_F"};
ACE_launch_NLAW_ready_F[] = {"launch_NLAW_F","ACE_launch_NLAW_used_F"};
};

#include "CfgWeapons.hpp"
Expand Down

0 comments on commit cfe40cc

Please sign in to comment.