Skip to content

Commit

Permalink
~ Changed: mortars now use ACE's csw system entirely and the IFA3 sys…
Browse files Browse the repository at this point in the history
…tem is disabled (Deploy tripod with self interact, interact with tripod to assemble etc)
  • Loading branch information
kerckasha committed Aug 17, 2020
1 parent 0848c82 commit cd7689e
Show file tree
Hide file tree
Showing 2 changed files with 127 additions and 55 deletions.
140 changes: 109 additions & 31 deletions addons/mortar/CfgVehicles.hpp
Original file line number Diff line number Diff line change
@@ -1,81 +1,159 @@
class CfgVehicles {
class LIB_StaticMortar_base;
class LandVehicle;
class StaticWeapon: LandVehicle {
class ACE_Actions {
class ACE_MainActions;
};
};
class StaticMortar: StaticWeapon
{
class Eventhandlers;
};
class LIB_StaticMortar_base: StaticMortar
{
class EventHandlers: EventHandlers
{
class IFA3_Weapons_Static
{
init = "";
};
class LIB_StaticWeaponsHandler
{
init = "";
};
};
};
class LIB_SU_Mortar_base: LIB_StaticMortar_base {};
class LIB_BM37: LIB_SU_Mortar_base {
class UserActions {};
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "";
selection = "gunnerview";
};
};
class UserActions {
delete Reload;
delete Prepare_HE_Selected;
delete Prepare_Smoke_Selected;
delete Prepare_Smoke;
delete Prepare_HE;
delete Unload;
};
class ace_csw {
enabled = 1;
magazineLocation = "_target selectionPosition 'usti hlavne'";
proxyWeapon = "LIB_BM37";
disassembleWeapon = "LIB_BM37_Barrel";
disassembleTurret = "LIB_BM37_Tripod_Deployed";
disassembleTurret = "ACE_LIB_BM37_Tripod_Deployed";
desiredAmmo = 1;
ammoLoadTime = 3;
ammoUnloadTime = 5;
};
};
};
class LIB_GER_Mortar_base: LIB_StaticMortar_base {};
class LIB_GrWr34: LIB_GER_Mortar_base {
class UserActions {};
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "";
selection = "gunnerview";
};
};
class UserActions {
delete Reload;
delete Prepare_HE_Selected;
delete Prepare_Smoke_Selected;
delete Prepare_Smoke;
delete Prepare_HE;
delete Unload;
};
class ace_csw {
enabled = 1;
magazineLocation = "_target selectionPosition 'usti hlavne'";
proxyWeapon = "LIB_GrWr34";
disassembleWeapon = "LIB_GrWr34_Barrel"; // carry weapon [CfgWeapons]
disassembleTurret = "LIB_GrWr34_Tripod_Deployed"; // turret [CfgVehicles]
disassembleTurret = "ACE_LIB_GrWr34_Tripod_Deployed"; // turret [CfgVehicles]
desiredAmmo = 1; // Ammo count when fully loaded
ammoLoadTime = 3; // Time to load ammo in
ammoUnloadTime = 5; // Time to retreive ammo from weapon
};
};
};
class LIB_US_Mortar_base: LIB_StaticMortar_base {};
class LIB_M2_60: LIB_US_Mortar_base {
class UserActions {};
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "";
selection = "gunnerview";
};
};
class UserActions {
delete Reload;
delete Prepare_HE_Selected;
delete Prepare_Smoke_Selected;
delete Prepare_WP_Selected;
delete Prepare_WP;
delete Prepare_Smoke;
delete Prepare_HE;
delete Unload;
};
class ace_csw {
enabled = 1;
magazineLocation = "_target selectionPosition 'usti hlavne'";
proxyWeapon = "LIB_M2_60";
disassembleWeapon = "LIB_M2_60_Barrel";
disassembleTurret = "LIB_M2_60_Tripod_Deployed";
disassembleTurret = "ACE_LIB_M2_60_Tripod_Deployed";
desiredAmmo = 1;
ammoLoadTime = 3;
ammoUnloadTime = 5;
};
};
};

class LIB_GrWr34_ACE: LIB_GrWr34 {scope = 1;};
class LIB_BM37_ACE: LIB_BM37 {scope = 1;};
class LIB_M2_60_ACE: LIB_M2_60 {scope = 1;};

class B_LIB_AssaultPack_Base;
class LIB_Tripod_Bag: B_LIB_AssaultPack_Base {
class assembleInfo;
class ThingX;
class ace_csw_baseTripod: ThingX {
class ACE_Actions {
class ACE_MainActions {};
};
};
class LIB_BM37_Tripod_Deployed: LIB_Tripod_Bag {
class assembleInfo: assembleInfo {
class LIB_BM37_Barrel {
deployTime = 10;
assembleTo = "LIB_BM37";
};
class ACE_LIB_BM37_Tripod_Deployed: ace_csw_baseTripod {
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
displayName = "$STR_DN_LIB_BM37_TRI";
};
};
author = "AWAR";
scope = 2;
displayName = "$STR_DN_LIB_BM37_TRI";
model = "\WW2\Assets_m\Weapons\Mortars_m\IF_Bm37_Disas.p3d";
picture = "\WW2\Assets_t\Weapons\Equipment_t\Weapons\Launchers\Gear_BM37_Tripod_X_ca.paa";
class ace_csw { disassembleTo = "LIB_BM37_Tripod"; }; // What will be spawned when "Pickup Tripod" is selected
};
class LIB_GrWr34_Tripod_Deployed: LIB_Tripod_Bag {
class assembleInfo: assembleInfo {
class LIB_GrWr34_Barrel {
deployTime = 10;
assembleTo = "LIB_GrWr34";
};
class ACE_LIB_GrWr34_Tripod_Deployed: ace_csw_baseTripod {
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
displayName = "$STR_DN_LIB_GRWR34_TRI";
};
};
author = "AWAR";
scope = 2;
displayName = "$STR_DN_LIB_GRWR34_TRI";
picture = "\WW2\Assets_t\Weapons\Equipment_t\Weapons\Launchers\Gear_GrWr34_Tripod_X_ca.paa";
model = "\WW2\Assets_m\Weapons\Mortars_m\IF_GrWr34_Disas.p3d";
class ace_csw { disassembleTo = "LIB_GrWr34_Tripod"; }; // What will be spawned when "Pickup Tripod" is selected
};
class LIB_M2_60_Tripod_Deployed: LIB_Tripod_Bag {
class assembleInfo: assembleInfo {
class LIB_M2_60_Barrel {
deployTime = 8;
assembleTo = "LIB_M2_60";
};
class ACE_LIB_M2_60_Tripod_Deployed: ace_csw_baseTripod {
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
displayName = "$STR_DN_LIB_M2_60_TRI";
};
};
author = "IFA3 Team";
scope = 2;
displayName = "$STR_DN_LIB_M2_60_TRI";
picture = "\WW2\Assets_t\Weapons\Equipment_t\Weapons\Launchers\Gear_M2_Tripod_X_ca.paa";
model = "\WW2\Assets_m\Weapons\Mortars_m\WW2_M2_Disas.p3d";
class ace_csw { disassembleTo = "LIB_M2_60_Tripod"; }; // What will be spawned when "Pickup Tripod" is selected
};

Expand Down
42 changes: 18 additions & 24 deletions addons/mortar/CfgWeapons.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,95 +6,89 @@ class CfgWeapons
};

class LIB_BM37: LIB_MortarCannon_base {
magazines[] = {"LIB_1Rnd_82mm_Mo_HE","LIB_1Rnd_82mm_Mo_Smoke","LIB_1Rnd_82mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_82mm_Mo_Illum"};
modes[] = {"Single1","Single2","Single3"};
reloadTime = 0.5;
magazineReloadTime = 0.5;
class Single1: Single1 {
reloadTime = 0.5;
};
};

class LIB_GRWR34: LIB_MortarCannon_base {
magazines[] = {"LIB_1Rnd_81mm_Mo_HE","LIB_1Rnd_81mm_Mo_Smoke","LIB_1Rnd_81mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_81mm_Mo_Illum"};
modes[] = {"Single1","Single2","Single3"};
reloadTime = 0.5;
magazineReloadTime = 0.5;
class Single1: Single1 {
reloadTime = 0.5;
};
};

class LIB_M2_60: LIB_MortarCannon_base {
magazines[] = {"LIB_1Rnd_60mm_Mo_HE","LIB_1Rnd_60mm_Mo_Smoke","LIB_1Rnd_60mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_60mm_Mo_Illum"};
modes[] = {"Single1","Single2","Single3"};
reloadTime = 0.5;
magazineReloadTime = 0.5;
class Single1: Single1 {
reloadTime = 0.5;
};
};

class LIB_Slung_Static_Weapon_Base;
class LIB_BM37_Tripod: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_82mm_Mo_HE","LIB_1Rnd_82mm_Mo_Smoke","LIB_1Rnd_82mm_Mo_Illum"}; // Assigning the mortar ammo as magazine makes them show up as ammo in the arsenal, but ammo in the slots will get deleted upon weapon assembly
LIB_isTripod = 0;
magazines[] += {"LIB_1Rnd_82mm_Mo_Illum"}; // Assigning the mortar ammo as magazine makes them show up as ammo in the arsenal, but ammo in the slots will get deleted upon weapon assembly
class ACE_CSW {
type = "mount"; // What type of carry it is. Must always be "mount" for the tripod
deployTime = 4; // How long it takes to deploy the tripod
pickupTime = 4; // How long it takes to pickup the tripod
deploy = "LIB_BM37_Tripod_Deployed"; // what vehicle will spawn when the tripod is deployed
deploy = "ACE_LIB_GrWr34_Tripod_Deployed"; // what vehicle will spawn when the tripod is deployed
};
};
class LIB_BM37_Barrel: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_82mm_Mo_HE","LIB_1Rnd_82mm_Mo_Smoke","LIB_1Rnd_82mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_82mm_Mo_Illum"};
class ACE_CSW {
type = "weapon"; // What type of carry it is. Must always be "weapon" for the weapon
deployTime = 4;
pickupTime = 4;
class assembleTo {
LIB_BM37_Tripod_Deployed = "LIB_BM37";
ACE_LIB_GrWr34_Tripod_Deployed = "LIB_BM37";
};
};
};

class LIB_GrWr34_Tripod: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_81mm_Mo_HE","LIB_1Rnd_81mm_Mo_Smoke","LIB_1Rnd_81mm_Mo_Illum"};
LIB_isTripod = 0;
magazines[] += {"LIB_1Rnd_81mm_Mo_Illum"};
class ACE_CSW {
type = "mount";
deployTime = 4;
pickupTime = 4;
deploy = "LIB_GrWr34_Tripod_Deployed";
deploy = "ACE_LIB_GrWr34_Tripod_Deployed";
};
};
class LIB_GrWr34_Barrel: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_81mm_Mo_HE","LIB_1Rnd_81mm_Mo_Smoke","LIB_1Rnd_81mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_81mm_Mo_Illum"};
class ACE_CSW {
type = "weapon";
deployTime = 4;
pickupTime = 4;
class assembleTo {
LIB_GrWr34_Tripod_Deployed = "LIB_GrWr34_ACE";
ACE_LIB_GrWr34_Tripod_Deployed = "LIB_GrWr34";
};
};
};

class LIB_M2_60_Tripod: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_60mm_Mo_HE","LIB_1Rnd_60mm_Mo_Smoke","LIB_1Rnd_60mm_Mo_Illum"};
LIB_isTripod = 0;
magazines[] += {"LIB_1Rnd_60mm_Mo_Illum"};
class ACE_CSW {
type = "mount";
deployTime = 4;
pickupTime = 4;
deploy = "LIB_M2_60_Tripod_Deployed";
deploy = "ACE_LIB_M2_60_Tripod_Deployed";
};
};
class LIB_M2_60_Barrel: LIB_Slung_Static_Weapon_Base {
magazines[] = {"LIB_1Rnd_60mm_Mo_HE","LIB_1Rnd_60mm_Mo_Smoke","LIB_1Rnd_60mm_Mo_Illum"};
magazines[] += {"LIB_1Rnd_60mm_Mo_Illum"};
class ACE_CSW {
type = "weapon";
deployTime = 4;
pickupTime = 4;
class assembleTo {
LIB_M2_60_Tripod_Deployed = "LIB_M2_60";
ACE_LIB_M2_60_Tripod_Deployed = "LIB_M2_60";
};
};
};
Expand Down

0 comments on commit cd7689e

Please sign in to comment.