From 975044b63d400cbad081cf13cd8b7e0c4434aaeb Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 22 Dec 2025 19:55:17 +0100 Subject: [PATCH 1/7] init --- addons/wardrobe/script_macros_wardrobe.hpp | 319 ++++++++++++++++++++- 1 file changed, 308 insertions(+), 11 deletions(-) diff --git a/addons/wardrobe/script_macros_wardrobe.hpp b/addons/wardrobe/script_macros_wardrobe.hpp index e584f0cc92f..3df39c09a5d 100644 --- a/addons/wardrobe/script_macros_wardrobe.hpp +++ b/addons/wardrobe/script_macros_wardrobe.hpp @@ -9,6 +9,9 @@ class ItemInfo: ItemInfo {\ // CfgWardrobe Macros #define ACEWARDROBE(var) TRIPLES(ace,wardrobe,var) + +// BASIC Macros +// baseclass as variable of macro #define BASIC(variant1,variant2,base1,base2)\ class variant1: base1 {\ class modifiableTo {\ @@ -55,11 +58,153 @@ class Variant2: Variant2Base {\ components[] = { QUOTE(Variant2) };\ } +#define BASIC_TRIPLET(variant1,variant2,variant3,base1,base2,base3)\ +class variant1: base1 {\ + class modifiableTo {\ + class variant2 {};\ + class variant3 {};\ + };\ +};\ +class variant2: base2 {\ + class modifiableTo {\ + class variant1 {};\ + class variant3 {};\ + };\ +};\ +class variant3: base3 {\ + class modifiableTo {\ + class variant1 {};\ + class variant2 {};\ + };\ +} -// Basic Setups without the use of Components + +// BASE MACROS +// default baseclass + +// Simple Setups without the use of Components #define BASE_PAIR(variant1,variant2)\ BASIC(variant1,variant2,ACEWARDROBE(base),ACEWARDROBE(base)) +#define BASE_TRIPLET(variant1,variant2,variant3)\ +BASIC_TRIPLET(variant1,variant2,variant3,ACEWARDROBE(base),ACEWARDROBE(base),ACEWARDROBE(base)) + + +// HELMETS +#define HELMET_VISOR(variantVisorUp,variantVisorDown)\ +BASIC(variantVisorUp,variantVisorDown,ACEWARDROBE(base_H_visor_up),ACEWARDROBE(base_H_visor_down)) + +#define HELMET_MASK(variantMaskOn,variantMaskOff)\ +BASIC(variantMaskOn,variantMaskOff,ACEWARDROBE(base_H_mask_on),ACEWARDROBE(base_H_mask_off)) + +#define HELMET_CAP_COMBO(Combo,Helmet,Cap)\ +BASIC_COMBO(Combo,ACEWARDROBE(base),Helmet,ACEWARDROBE(base),Cap,ACEWARDROBE(base)) + +#define HELMET_GOGGLES(variantGogglesOn,variantGogglesOff,component)\ +BASIC_COMPONENT(variantGogglesOn,variantGogglesOff,ACEWARDROBE(base_H_goggles_on),ACEWARDROBE(base_H_goggles_off),component) + +#define HELMET_GOGGLES_NOCOMPONENT(HelmetGogglesUp,HelmetGogglesDown)\ +class HelmetGogglesUp: ace_wardrobe_base_H_goggles_off {\ + class modifiableTo {\ + class HelmetGogglesDown {};\ + };\ +};\ +class HelmetGogglesDown: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetGogglesUp {};\ + };\ +} + +// Helmet with Goggles on, and Cover Front or Back +#define HELMET_GOGGLES_COVER(HelmetBase,HelmetGoggles,HelmetCoverFront,HelmetCoverBack,Goggles)\ +class HelmetBase: ace_wardrobe_base_H_goggles_off {\ + class modifiableTo {\ + class HelmetGoggles {};\ + };\ +};\ +class HelmetGoggles: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetCoverFront {};\ + class HelmetCoverBack {};\ + };\ + components[] = {QUOTE(Goggles)};\ +};\ +class HelmetCoverFront: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetGoggles {};\ + class HelmetCoverBack {};\ + };\ + components[] = {QUOTE(Goggles)};\ +};\ +class HelmetCoverBack: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetCoverFront {};\ + class HelmetGoggles {};\ + };\ + components[] = {QUOTE(Goggles)};\ +} + +// Boonie Hat with a Variant with Rolled Up Sides +#define BOONIE_ROLLED(Boonie,BoonieRolled)\ +class Boonie: ace_wardrobe_base {\ + class modifiableTo {\ + class BoonieRolled {};\ + };\ +};\ +class BoonieRolled: ace_wardrobe_base {\ + class modifiableTo {\ + class Boonie {};\ + };\ +} + + + +// Helmet with Goggles Component +#define HELMET_GOGGLES_COMPONENT(HelmetBase,HelmetGoggles,Goggles)\ +class HelmetBase: ace_wardrobe_base_H_goggles_off {\ + class modifiableTo {\ + class HelmetGoggles {};\ + };\ +};\ +class HelmetGoggles: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetBase {};\ + };\ + components[] = {QUOTE(Goggles)};\ +} + +// Helmet with 2 Variants and Goggles +#define HELMET_2VARIANTS_GOGGLES(HelmetV1,HelmetV2,HelmetV1Goggles,HelmetV2Goggles,Component)\ +class HelmetV1: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetV2 {};\ + class HelmetV1Goggles {};\ + };\ +};\ +class HelmetV2: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetV1 {};\ + class HelmetV2Goggles {};\ + };\ +};\ +class HelmetV1Goggles: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetV2Goggles {};\ + class HelmetV1 {};\ + };\ + components[] = { QUOTE(Component) };\ +};\ +class HelmetV2Goggles: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetV1Goggles {};\ + class HelmetV2 {};\ + };\ + components[] = { QUOTE(Component) };\ +} + + + +// UNIFORMS #define UNIFORM_SLEEVES(variantSleevesDown,variantSleevesUp)\ BASIC(variantSleevesDown,variantSleevesUp,ACEWARDROBE(base_U_sleeves_down),ACEWARDROBE(base_U_sleeves_up)) @@ -72,16 +217,168 @@ BASIC(variantJacketOpen,variantJacketClosed,ACEWARDROBE(base_U_jacket_open),ACEW #define UNIFORM_HOOD(variantHoodRaised,variantHoodLowered)\ BASIC(variantHoodRaised,variantHoodLowered,ACEWARDROBE(base_U_hood_raised),ACEWARDROBE(base_U_hood_lowered)) -#define HELMET_VISOR(variantVisorUp,variantVisorDown)\ -BASIC(variantVisorUp,variantVisorDown,ACEWARDROBE(base_H_visor_up),ACEWARDROBE(base_H_visor_down)) +// Uniform with Variants for Gloves, Rolled Up and Combined Gloves+Rolled Up +#define UNIFORM_GLOVES_ROLLED(UniformBase,UniformGloves,UniformRolled,UniformGlovesRolled)\ +class UniformBase: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformGloves {};\ + class UniformRolled {};\ + };\ +};\ +class UniformGloves: ace_wardrobe_base_U_gloves_on {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformGlovesRolled {};\ + };\ +};\ +class UniformRolled: ace_wardrobe_base_U_sleeves_up {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformGlovesRolled {};\ + };\ +};\ +class UniformGlovesRolled: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformGloves {};\ + class UniformRolled {};\ + };\ +} -#define HELMET_MASK(variantMaskOn,variantMaskOff)\ -BASIC(variantMaskOn,variantMaskOff,ACEWARDROBE(base_H_mask_on),ACEWARDROBE(base_H_mask_off)) +// Uniform with Gloves as Component, and Sleeves Rolled up and Combined +#define UNIFORM_GLOVES_ROLLED_COMPONENT(UniformBase,UniformGloves,UniformRolled,UniformGlovesRolled,Gloves)\ +class UniformBase: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformGloves {};\ + class UniformRolled {};\ + };\ +};\ +class UniformGloves: ace_wardrobe_base_U_gloves_on {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformGlovesRolled {};\ + };\ + components[] = {QUOTE(Gloves)};\ +};\ +class UniformRolled: ace_wardrobe_base_U_sleeves_up {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformGlovesRolled {};\ + };\ +};\ +class UniformGlovesRolled: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformGloves {};\ + class UniformRolled {};\ + };\ + components[] = {QUOTE(Gloves)};\ +} -// Basic Setups with the use of Component -#define HELMET_GOGGLES(variantGogglesOn,variantGogglesOff,component)\ -BASIC_COMPONENT(variantGogglesOn,variantGogglesOff,ACEWARDROBE(base_H_goggles_on),ACEWARDROBE(base_H_goggles_off),component) +// Uniform with Gloves and Component +#define UNIFORM_GLOVES_COMPONENT(UniformBase,UniformGloves,Gloves)\ +class UniformBase: ace_wardrobe_base_U_gloves_off {\ + class modifiableTo {\ + class UniformGloves {};\ + };\ +};\ +class UniformGloves: ace_wardrobe_base_U_gloves_on {\ + class modifiableTo {\ + class UniformBase {};\ + };\ + components[] = {QUOTE(Gloves)};\ +} -// Basic Combo -#define HELMET_CAP_COMBO(Combo,Helmet,Cap)\ -BASIC_COMBO(Combo,ACEWARDROBE(base),Helmet,ACEWARDROBE(base),Cap,ACEWARDROBE(base)) +// Uniform with a Variant with Gloves and a Variant with Sleeves Rolled up, BUT not combined +#define UNIFORM_GLOVES_ROLLED2(UniformBase,UniformGloves,UniformRolled)\ +class UniformBase: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformGloves {};\ + class UniformRolled {};\ + };\ +};\ +class UniformGloves: ace_wardrobe_base_U_gloves_on {\ + class modifiableTo {\ + class UniformBase {};\ + };\ +};\ +class UniformRolled: ace_wardrobe_base_U_sleeves_up {\ + class modifiableTo {\ + class UniformBase {};\ + };\ +} + + + + +// Facemasks +// Facemask with Goggles +#define FACEMASK_GOGGLES(FaceMaskBase,FaceMaskGoggles,Goggles)\ +class FaceMaskBase: ace_wardrobe_base {\ + class modifiableTo {\ + class FaceMaskGoggles {};\ + };\ + components[] = {QUOTE(FaceMaskBase)};\ +};\ +class FaceMaskGoggles: ace_wardrobe_base {\ + class modifiableTo {\ + class FaceMaskBase {};\ + };\ + components[] = {QUOTE(FaceMaskBase),QUOTE(Goggles)};\ +} + +// Facemask with 2 Variants of Goggles +#define FACEMASK_GOGGLES2(FaceMaskBase,FaceMaskGoggles1,FaceMaskGoggles2,Goggles1,Goggles2)\ +class FaceMaskBase: ace_wardrobe_base {\ + class modifiableTo {\ + class FaceMaskGoggles1 {};\ + class FaceMaskGoggles2 {};\ + };\ + components[] = {QUOTE(FaceMaskBase)};\ +};\ +class FaceMaskGoggles1: ace_wardrobe_base {\ + class modifiableTo {\ + class FaceMaskBase {};\ + };\ + components[] = {QUOTE(FaceMaskBase),QUOTE(Goggles1)};\ +};\ +class FaceMaskGoggles2: ace_wardrobe_base {\ + class modifiableTo {\ + class FaceMaskBase {};\ + };\ + components[] = {QUOTE(FaceMaskBase),QUOTE(Goggles2)};\ +} + +// Uniform with 2 types of rolled up +#define UNIFORM_SLEEVES2(UniformBase,UniformRolled1,UniformRolled2)\ +class UniformBase: ace_wardrobe_base_U_sleeves_down {\ + class modifiableTo {\ + class UniformRolled1 {};\ + };\ +};\ +class UniformRolled1: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformRolled2 {};\ + };\ +};\ +class UniformRolled2: ace_wardrobe_base_U_sleeves_up {\ + class modifiableTo {\ + class UniformRolled1 {};\ + };\ +} + +// Helmets with a Scrim and No Scrim Version +#define HELMET_SCRIM(HelmetBase,HelmetScrim)\ +class HelmetBase: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetScrim {\ + directionalActionName = "Add Scrim/Foliage to Helmet";\ + };\ + };\ +};\ +class HelmetScrim: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetBase {\ + directionalActionName = "Remove Scrim/Foliage from Helmet";\ + };\ + };\ +} From 82dedf508a796528c1073ea340f4ef29b8c4bad8 Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 22 Dec 2025 20:45:13 +0100 Subject: [PATCH 2/7] Donate macros --- addons/wardrobe/script_macros_wardrobe.hpp | 90 +++++++++------------- 1 file changed, 38 insertions(+), 52 deletions(-) diff --git a/addons/wardrobe/script_macros_wardrobe.hpp b/addons/wardrobe/script_macros_wardrobe.hpp index 3df39c09a5d..e4ae21b5b5d 100644 --- a/addons/wardrobe/script_macros_wardrobe.hpp +++ b/addons/wardrobe/script_macros_wardrobe.hpp @@ -1,3 +1,6 @@ +HELMET_GOGGLES2 -> HELMET_GOGGLES_NOCOMPONENT + + // Config // Adjust Weight of CfgWeapons Wearables #define MASS(var)\ @@ -157,22 +160,6 @@ class BoonieRolled: ace_wardrobe_base {\ };\ } - - -// Helmet with Goggles Component -#define HELMET_GOGGLES_COMPONENT(HelmetBase,HelmetGoggles,Goggles)\ -class HelmetBase: ace_wardrobe_base_H_goggles_off {\ - class modifiableTo {\ - class HelmetGoggles {};\ - };\ -};\ -class HelmetGoggles: ace_wardrobe_base_H_goggles_on {\ - class modifiableTo {\ - class HelmetBase {};\ - };\ - components[] = {QUOTE(Goggles)};\ -} - // Helmet with 2 Variants and Goggles #define HELMET_2VARIANTS_GOGGLES(HelmetV1,HelmetV2,HelmetV1Goggles,HelmetV2Goggles,Component)\ class HelmetV1: ace_wardrobe_base {\ @@ -202,6 +189,22 @@ class HelmetV2Goggles: ace_wardrobe_base {\ components[] = { QUOTE(Component) };\ } +// Helmets with a Scrim and No Scrim Version +#define HELMET_SCRIM(HelmetBase,HelmetScrim)\ +class HelmetBase: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetScrim {\ + directionalActionName = "Add Scrim/Foliage to Helmet";\ + };\ + };\ +};\ +class HelmetScrim: ace_wardrobe_base {\ + class modifiableTo {\ + class HelmetBase {\ + directionalActionName = "Remove Scrim/Foliage from Helmet";\ + };\ + };\ +} // UNIFORMS @@ -306,10 +309,27 @@ class UniformRolled: ace_wardrobe_base_U_sleeves_up {\ };\ } +// Uniform with 2 types of rolled up +#define UNIFORM_SLEEVES2(UniformBase,UniformRolled1,UniformRolled2)\ +class UniformBase: ace_wardrobe_base_U_sleeves_down {\ + class modifiableTo {\ + class UniformRolled1 {};\ + };\ +};\ +class UniformRolled1: ace_wardrobe_base {\ + class modifiableTo {\ + class UniformBase {};\ + class UniformRolled2 {};\ + };\ +};\ +class UniformRolled2: ace_wardrobe_base_U_sleeves_up {\ + class modifiableTo {\ + class UniformRolled1 {};\ + };\ +} - -// Facemasks +// FACEMASKS // Facemask with Goggles #define FACEMASK_GOGGLES(FaceMaskBase,FaceMaskGoggles,Goggles)\ class FaceMaskBase: ace_wardrobe_base {\ @@ -347,38 +367,4 @@ class FaceMaskGoggles2: ace_wardrobe_base {\ components[] = {QUOTE(FaceMaskBase),QUOTE(Goggles2)};\ } -// Uniform with 2 types of rolled up -#define UNIFORM_SLEEVES2(UniformBase,UniformRolled1,UniformRolled2)\ -class UniformBase: ace_wardrobe_base_U_sleeves_down {\ - class modifiableTo {\ - class UniformRolled1 {};\ - };\ -};\ -class UniformRolled1: ace_wardrobe_base {\ - class modifiableTo {\ - class UniformBase {};\ - class UniformRolled2 {};\ - };\ -};\ -class UniformRolled2: ace_wardrobe_base_U_sleeves_up {\ - class modifiableTo {\ - class UniformRolled1 {};\ - };\ -} -// Helmets with a Scrim and No Scrim Version -#define HELMET_SCRIM(HelmetBase,HelmetScrim)\ -class HelmetBase: ace_wardrobe_base {\ - class modifiableTo {\ - class HelmetScrim {\ - directionalActionName = "Add Scrim/Foliage to Helmet";\ - };\ - };\ -};\ -class HelmetScrim: ace_wardrobe_base {\ - class modifiableTo {\ - class HelmetBase {\ - directionalActionName = "Remove Scrim/Foliage from Helmet";\ - };\ - };\ -} From 0b93892e540016fe011e288416170780d917dc1c Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 22 Dec 2025 21:03:29 +0100 Subject: [PATCH 3/7] rm comment --- addons/wardrobe/script_macros_wardrobe.hpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/addons/wardrobe/script_macros_wardrobe.hpp b/addons/wardrobe/script_macros_wardrobe.hpp index e4ae21b5b5d..ee8acf93503 100644 --- a/addons/wardrobe/script_macros_wardrobe.hpp +++ b/addons/wardrobe/script_macros_wardrobe.hpp @@ -1,6 +1,3 @@ -HELMET_GOGGLES2 -> HELMET_GOGGLES_NOCOMPONENT - - // Config // Adjust Weight of CfgWeapons Wearables #define MASS(var)\ From 07fa60057482a65598b8ba40b4c7f60b2b282da2 Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Wed, 24 Dec 2025 12:14:37 +0100 Subject: [PATCH 4/7] init --- .../compat_cfp_wardrobe/ace_wardrobe.hpp | 12 + .../ace_wardrobe_goggles.hpp | 36 ++ .../ace_wardrobe_headgear.hpp | 427 ++++++++++++++++++ .../ace_wardrobe_uniforms.hpp | 140 ++++++ .../compat_cfp/compat_cfp_wardrobe/config.cpp | 25 + .../compat_cfp_wardrobe/script_component.hpp | 5 + 6 files changed, 645 insertions(+) create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/config.cpp create mode 100644 addons/compat_cfp/compat_cfp_wardrobe/script_component.hpp diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp new file mode 100644 index 00000000000..f7afa5a2733 --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp @@ -0,0 +1,12 @@ +class ace_wardrobe { + class ace_wardrobe_base; + class ace_wardrobe_base_H_goggles_on; + class ace_wardrobe_base_H_goggles_off; + class ace_wardrobe_base_U_sleeves_up; + class ace_wardrobe_base_U_sleeves_down; + class ace_wardrobe_base_U_gloves_on; + + #include "ace_wardrobe_headgear.hpp" + #include "ace_wardrobe_uniforms.hpp" + #include "ace_wardrobe_goggles.hpp" +}; diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp new file mode 100644 index 00000000000..0391223c7b8 --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp @@ -0,0 +1,36 @@ +class CFP_UA_Thermals_Blk: ace_wardrobe_base { + class modifiableTo { + class CFP_UA_Thermals_Blk_GPS {}; + }; +}; +class CFP_UA_Thermals_Blk_GPS: ace_wardrobe_base { + class modifiableTo { + class CFP_UA_Thermals_Blk {}; + }; + components[] = {QUOTE(CFP_Foretex)}; +}; + +#define NECKWRAP_GLASSES(NeckwrapBase,NeckwrapGlasses,Glasses)\ +class NeckwrapBase: ace_wardrobe_base {\ + class modifiableTo {\ + class NeckwrapGlasses {};\ + };\ +};\ +class NeckwrapGlasses: ace_wardrobe_base {\ + class modifiableTo {\ + class NeckwrapBase {};\ + };\ + components[] = {QUOTE(Glasses)};\ +} + +NECKWRAP_GLASSES(CFP_Neck_Plain_Atacs,CFP_Neck_Wrap_Atacs,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Neck_Plain_Atacs2,CFP_Neck_Wrap_Atacs2,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Neck_Plain2,CFP_Neck_Wrap2,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Neck_Plain4,CFP_Neck_Wrap4,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Neck_Plain3,CFP_Neck_Wrap3,CUP_G_Oakleys_Clr); + +// Shemags, but same structure +NECKWRAP_GLASSES(CFP_Scarfbeard_green,CFP_Scarfbeardshades_green,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Scarfbeard_grey,CFP_Scarfbeardshades_grey,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Scarfbeard_tan,CFP_Scarfbeardshades_tan,CUP_G_Oakleys_Clr); +NECKWRAP_GLASSES(CFP_Scarfbeard_white,CFP_Scarfbeardshades_white,CUP_G_Oakleys_Clr); diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp new file mode 100644 index 00000000000..d993f862ab3 --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp @@ -0,0 +1,427 @@ +#define BOONIEHATS(BoonieHatUnfolded,BoonieHatFolded)\ +class BoonieHatUnfolded: ace_wardrobe_base {\ + class modifiableTo {\ + class BoonieHatFolded {};\ + };\ +};\ +class BoonieHatFolded: ace_wardrobe_base {\ + class modifiableTo {\ + class BoonieHatUnfolded {};\ + };\ +} + +BOONIEHATS(CFP_BoonieHat_DCU,CFP_BoonieHat2_DCU); +BOONIEHATS(CFP_BoonieHat_M81,CFP_BoonieHat2_M81); + +#define CAPS(CapRegular,CapBackwards)\ +class CapRegular: ace_wardrobe_base {\ + class modifiableTo {\ + class CapBackwards {};\ + };\ +};\ +class CapBackwards: ace_wardrobe_base {\ + class modifiableTo {\ + class CapRegular {};\ + };\ +} + +CAPS(CFP_BaseballCap_Multicam,CFP_BaseballCap_Multicam_Back); +CAPS(CFP_BaseballCap_Multicam_DEF,CFP_BaseballCap_Multicam_DEF_Back); + +HELMET_GOGGLES_COVER(CFP_IDF_M76,CFP_IDF_M76_GG,CFP_IDF_M76_CF_GG,CFP_IDF_M76_CB_GG,CUP_G_ESS_BLK); +HELMET_GOGGLES_COVER(CFP_IDF_M76_BD,CFP_IDF_M76_BD_GG,CFP_IDF_M76_BD_CF_GG,CFP_IDF_M76_BD_CB_GG,CUP_G_ESS_BLK); +HELMET_GOGGLES_COVER(CFP_IDF_M76_BD_Black,CFP_IDF_M76_BD_GG_Black,CFP_IDF_M76_BD_CF_GG_Black,CFP_IDF_M76_BD_CB_GG_Black,CUP_G_ESS_BLK); + +#define LUNGEE_1(LungeeRegular,LungeeOpen)\ +class LungeeRegular: ace_wardrobe_base {\ + class modifiableTo {\ + class LungeeOpen {};\ + };\ +};\ +class LungeeOpen: ace_wardrobe_base {\ + class modifiableTo {\ + class LungeeRegular {};\ + };\ +} + +#define LUNGEE_2(LungeeRegular,LungeeOpen,LungeeShemagh)\ +class LungeeRegular: ace_wardrobe_base {\ + class modifiableTo {\ + class LungeeOpen {};\ + class LungeeShemagh {};\ + };\ +};\ +class LungeeOpen: ace_wardrobe_base {\ + class modifiableTo {\ + class LungeeRegular {};\ + class LungeeShemagh {};\ + };\ +};\ +class LungeeShemagh: ace_wardrobe_base {\ + class modifiableTo {\ + class LungeeRegular {};\ + class LungeeOpen {};\ + };\ +} + +LUNGEE_1(CFP_Lungee_Brown,CFP_Lungee_Open_Brown); +LUNGEE_1(CFP_Lungee_Green,CFP_Lungee_Shemagh_Green); +LUNGEE_1(CFP_Lungee_LightOlive,CFP_Lungee_Open_LightOlive); + +LUNGEE_2(CFP_Lungee_BlueGrey,CFP_Lungee_Open_BlueGrey,CFP_Lungee_Shemagh_BlueGrey); +LUNGEE_2(CFP_Lungee_Grey,CFP_Lungee_Open_Grey,CFP_Lungee_Shemagh_Grey); +LUNGEE_2(CFP_Lungee_M81,CFP_Lungee_Open_M81,CFP_Lungee_Shemagh_M81); +LUNGEE_2(CFP_Lungee_Tan,CFP_Lungee_Open_Tan,CFP_Lungee_Shemagh); + +HELMET_GOGGLES(SP_M88Helmet_Black1,SP_M88Helmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88Helmet_Blue1,SP_M88Helmet_Blue2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88Helmet_Green1,SP_M88Helmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88Helmet_Tan1,SP_M88Helmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88Helmet_Un1,SP_M88Helmet_Un2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88PSMHelmet_Black1,SP_M88PSMHelmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88PSMHelmet_Blue1,SP_M88PSMHelmet_Blue2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88PSMHelmet_Green1,SP_M88PSMHelmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88PSMHelmet_Tan1,SP_M88PSMHelmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M88PSMHelmet_Un1,SP_M88PSMHelmet_Un2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M96Helmet_Black1,SP_M96Helmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M96Helmet_Blue1,SP_M96Helmet_Blue2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M96Helmet_Green1,SP_M96Helmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M96Helmet_Tan1,SP_M96Helmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(SP_M96Helmet_Un1,SP_M96Helmet_Un2,SP_Goggles_Black); +HELMET_GOGGLES(SP_MichHelmet_Black1,SP_MichHelmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_MichHelmet_Green1,SP_MichHelmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_MichHelmet_Tan1,SP_MichHelmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(SP_Mk7Helmet_Black1,SP_Mk7Helmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_Mk7Helmet_Blue1,SP_Mk7Helmet_Blue2,SP_Goggles_Black); +HELMET_GOGGLES(SP_Mk7Helmet_Green1,SP_Mk7Helmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_Mk7Helmet_Tan1,SP_Mk7Helmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(SP_Mk7Helmet_Un1,SP_Mk7Helmet_Un2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_ACRDesert1,CFP_PASGTHelmet_ACRDesert2,SP_Goggles_Black); +HELMET_GOGGLES(SP_PASGTHelmet_Black1,SP_PASGTHelmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_PASGTHelmet_Blue1,SP_PASGTHelmet_Blue2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_ChocChip1,CFP_PASGTHelmet_ChocChip2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_DCU1,CFP_PASGTHelmet_DCU2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_EDRL1,CFP_PASGTHelmet_EDRL2,SP_Goggles_Black); +HELMET_GOGGLES(SP_PASGTHelmet_Green1,SP_PASGTHelmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_IranDPM1,CFP_PASGTHelmet_IranDPM2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_IPDigital2,CFP_PASGTHelmet_IPDigital,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_IPDPM2,CFP_PASGTHelmet_IPDPM,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_Marpat1,CFP_PASGTHelmet_Marpat2,SP_Goggles_Black); +HELMET_GOGGLES(SP_PASGTHelmet_Tan1,SP_PASGTHelmet_Tan2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_Tiger1,CFP_PASGTHelmet_Tiger2,SP_Goggles_Black); +HELMET_GOGGLES(SP_PASGTHelmet_Un1,SP_PASGTHelmet_Un2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_SFUPDF1,CFP_PASGTHelmet_SFUPDF2,SP_Goggles_Black); +HELMET_GOGGLES(CFP_PASGTHelmet_Woodland1,CFP_PASGTHelmet_Woodland2,SP_Goggles_Black); + +HELMET_GOGGLES(SP_ZSH1Helmet_Black1,SP_ZSH1Helmet_Black2,SP_Goggles_Black); +HELMET_GOGGLES(SP_ZSH1Helmet_Green1,SP_ZSH1Helmet_Green2,SP_Goggles_Black); +HELMET_GOGGLES(SP_ZSH1Helmet_Tan1,SP_ZSH1Helmet_Tan2,SP_Goggles_Black); + +HELMET_GOGGLES_COVER(CFP_PASGTHelmet_M811,CFP_PASGTHelmet_M814,CFP_PASGTHelmet_M815,CFP_PASGTHelmet_M816,CUP_G_ESS_BLK); + +class CFP_PASGTHelmet_DBDU1: ace_wardrobe_base_H_goggles_off { + class modifiableTo { + class CFP_PASGTHelmet_DBDU4 {}; + class CFP_PASGTHelmet_DBDU5 {}; + }; +}; +class CFP_PASGTHelmet_DBDU4: ace_wardrobe_base_H_goggles_on { + class modifiableTo { + class CFP_PASGTHelmet_DBDU1 {}; + class CFP_PASGTHelmet_DBDU5 {}; + }; + components[] = {QUOTE(CUP_G_ESS_BLK)}; +}; +class CFP_PASGTHelmet_DBDU5: ace_wardrobe_base_H_goggles_on { + class modifiableTo { + class CFP_PASGTHelmet_DBDU1 {}; + class CFP_PASGTHelmet_DBDU4 {}; + }; + components[] = {QUOTE(CUP_G_ESS_BLK)}; +}; + +class CFP_PASGTHelmet_DBDU2: ace_wardrobe_base_H_goggles_off { + class modifiableTo { + class CFP_PASGTHelmet_DBDU3 {}; + class CFP_PASGTHelmet_DBDU6 {}; + }; +}; +class CFP_PASGTHelmet_DBDU3: ace_wardrobe_base_H_goggles_on { + class modifiableTo { + class CFP_PASGTHelmet_DBDU2 {}; + class CFP_PASGTHelmet_DBDU6 {}; + }; + components[] = {QUOTE(CUP_G_ESS_BLK)}; +}; +class CFP_PASGTHelmet_DBDU6: ace_wardrobe_base_H_goggles_on { + class modifiableTo { + class CFP_PASGTHelmet_DBDU2 {}; + class CFP_PASGTHelmet_DBDU3 {}; + }; + components[] = {QUOTE(CUP_G_ESS_BLK)}; +}; + +HELMET_GOGGLES(CFP_PASGTHelmet_M812,CFP_PASGTHelmet_M813,CUP_G_ESS_BLK); + +// Goggles might be changed, they are covered on the helmet +// there exists also a variante with goggles coverd at the back +#define OPSCORE_HELMET_SF_COVERED_GOGGLES(HelmetBase,HelmetGogglesFront,HelmetGogglesBack,Goggles)\ +class HelmetBase: ace_wardrobe_base_H_goggles_off {\ + class modifiableTo {\ + class HelmetGogglesFront {};\ + class HelmetGogglesBack {};\ + components[] = {QUOTE(Goggles)};\ + };\ +};\ +class HelmetGogglesFront: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetBase {};\ + class HelmetGogglesBack {};\ + };\ +};\ +class HelmetGogglesBack: ace_wardrobe_base_H_goggles_on {\ + class modifiableTo {\ + class HelmetBase {};\ + class HelmetGogglesFront {};\ + };\ +} + +OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered_KSK2,CFP_OpsC_Cov_Goggles_Off_KSK2,CFP_OpsC_Med_KSK2,CUP_G_ESS_BLK); +OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered_KSK,CFP_OpsC_Cov_Goggles_Off_KSK,CFP_OpsC_Med_KSK,CUP_G_ESS_BLK); +OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered_AOR1,CFP_OpsC_Cov_Goggles_Off_AOR1,CFP_OpsC_Med_AOR1,CUP_G_ESS_BLK); +OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered_AOR2,CFP_OpsC_Cov_Goggles_Off_AOR2,CFP_OpsC_Med_AOR2,CUP_G_ESS_BLK); +OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered,CFP_OpsC_Cov_Goggles_Off,CFP_OpsC_Med,CUP_G_ESS_BLK); + +// ToDo CFP_OpsC_Uncov_Full,CFP_OpsC_Uncov_Goggles,CFP_OpsC_Uncovered > (CUP_FR_NeckScarf4 + CUP_G_ESS_BLK) +// ToDo CFP_OpsC_Covered > CFP_OpsC_Cov_Full (CUP_G_ESS_CBR_Ember + CUP_FR_NeckScarf4) + +BASE_PAIR(CFP_75th_Patrol_Cap,CFP_75th_Patrol_Cap_Oakleys); + +class CFP_MitzHelm1_Des: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + class CFP_Mitznefet_Desert {}; + class CFP_Mitznefet_Desert_Ranger {}; + class CFP_Mitznefet_Desert_Tan {}; + class CFP_Mitznefet_Desert_Tropical {}; + }; +}; +class CFP_MitzHelm2_Des: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + class CFP_Mitznefet_Desert {}; + class CFP_Mitznefet_Desert_Ranger {}; + class CFP_Mitznefet_Desert_Tan {}; + class CFP_Mitznefet_Desert_Tropical {}; + }; +}; +class CFP_MitzHelm3_Des: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm4_Des {}; + class CFP_Mitznefet_Desert {}; + class CFP_Mitznefet_Desert_Ranger {}; + class CFP_Mitznefet_Desert_Tan {}; + class CFP_Mitznefet_Desert_Tropical {}; + }; +}; +class CFP_MitzHelm4_Des: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_Mitznefet_Desert {}; + class CFP_Mitznefet_Desert_Ranger {}; + class CFP_Mitznefet_Desert_Tan {}; + class CFP_Mitznefet_Desert_Tropical {}; + }; +}; +class CFP_Mitznefet_Desert: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + }; + components[] = {"CUP_PMC_Facewrap_Black"}; +}; +class CFP_Mitznefet_Desert_Ranger: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + }; + components[] = {"CUP_PMC_Facewrap_Ranger"}; +}; +class CFP_Mitznefet_Desert_Tan: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + }; + components[] = {"CUP_PMC_Facewrap_Tan"}; +}; +class CFP_Mitznefet_Desert_Tropical: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Des {}; + class CFP_MitzHelm2_Des {}; + class CFP_MitzHelm3_Des {}; + class CFP_MitzHelm4_Des {}; + }; + components[] = {"CUP_PMC_Facewrap_Tropical"}; +}; + +class CFP_MitzHelm1_Mcam: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Mcam {}; + class CFP_MitzHelm2_Mcam {}; + class CFP_MitzHelm3_Mcam {}; + class CFP_MitzHelm4_Mcam {}; + }; +}; +class CFP_MitzHelm2_Mcam: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Mcam {}; + class CFP_MitzHelm1_Mcam {}; + class CFP_MitzHelm3_Mcam {}; + class CFP_MitzHelm4_Mcam {}; + }; +}; +class CFP_MitzHelm3_Mcam: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Mcam {}; + class CFP_MitzHelm1_Mcam {}; + class CFP_MitzHelm2_Mcam {}; + class CFP_MitzHelm4_Mcam {}; + }; +}; +class CFP_MitzHelm4_Mcam: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Mcam {}; + class CFP_MitzHelm1_Mcam {}; + class CFP_MitzHelm2_Mcam {}; + class CFP_MitzHelm3_Mcam {}; + }; +}; +class CFP_Mitznefet_Mcam: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Mcam {}; + class CFP_MitzHelm2_Mcam {}; + class CFP_MitzHelm3_Mcam {}; + class CFP_MitzHelm4_Mcam {}; + }; + components[] = {"CUP_PMC_Facewrap_Black"}; +}; + +class CFP_MitzHelm1_Wdl: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; +}; +class CFP_MitzHelm2_Wdl: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Wdl {}; + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; +}; +class CFP_MitzHelm3_Wdl: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Wdl {}; + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; +}; +class CFP_MitzHelm4_Wdl: ace_wardrobe_base { + class modifiableTo { + class CFP_Mitznefet_Wdl {}; + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; +}; +class CFP_Mitznefet: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; + components[] = {"CUP_PMC_Facewrap_Black"}; +}; + +class CFP_Mitznefet_Ranger: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Tropical {}; + }; + components[] = {"CUP_PMC_Facewrap_Ranger"}; +}; +class CFP_Mitznefet_Tan: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet_Ranger {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tropical {}; + }; + components[] = {"CUP_PMC_Facewrap_Tan"}; +}; + +class CFP_Mitznefet_Tropical: ace_wardrobe_base { + class modifiableTo { + class CFP_MitzHelm1_Wdl {}; + class CFP_MitzHelm2_Wdl {}; + class CFP_MitzHelm3_Wdl {}; + class CFP_MitzHelm4_Wdl {}; + class CFP_Mitznefet {}; + class CFP_Mitznefet_Tan {}; + class CFP_Mitznefet_Ranger {}; + }; + components[] = {"CUP_PMC_Facewrap_Tropical"}; +}; + +BASE_PAIR(CFP_Shemagh_Head_Black,CFP_Shemagh_Full_Black); +BASE_PAIR(CFP_Shemagh_Head_M81,CFP_Shemagh_Full_M81); +BASE_PAIR(CFP_Shemagh_Head_Red,CFP_Shemagh_Full_Red); +BASE_PAIR(CFP_Shemagh_Head_Tan,CFP_Shemagh_Full_Tan); +BASE_PAIR(CFP_Shemagh_Head_White,CFP_Shemagh_Full_White); +BASE_PAIR(CFP_Shemagh_Head_Green,CFP_Shemagh_Full_Green); diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp new file mode 100644 index 00000000000..a7e61d0aa69 --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp @@ -0,0 +1,140 @@ +UNIFORM_SLEEVES(CUP_U_O_RUARMY_DesertEMR,CUP_U_O_RUARMY_DesertEMR_2); +UNIFORM_SLEEVES(CUP_U_O_RUARMY_DesertEMR_VDV,CUP_U_O_RUARMY_DesertEMR_2_VDV); +UNIFORM_SLEEVES(CFP_BDU_ANP,CFP_BDU_ANP2); +UNIFORM_SLEEVES(CFP_BDU_IA_DCU,CFP_BDU_IA_DCU2); +UNIFORM_SLEEVES(CFP_BDU_Green,CFP_BDU_Green2); +UNIFORM_SLEEVES(CFP_BDU_Tan,CFP_BDU_Tan2); +UNIFORM_SLEEVES(CFP_BDU_UPDFM81,CFP_BDU_UPDFM812); +UNIFORM_SLEEVES(CFP_BDU_UPDFMarpat,CFP_BDU_UPDFMarpat2); +UNIFORM_SLEEVES(CFP_BDU_DBDU,CFP_BDU_DBDU2); +UNIFORM_SLEEVES(CFP_BDU_Wdl_Mali,CFP_BDU_Wdl_Mali2); + +UNIFORM_SLEEVES(CFP_U_Crye_ATacsAU,CFP_U_Crye_ATacsAU_SS); +UNIFORM_SLEEVES(CFP_U_Crye_AOR1,CFP_U_Crye_AOR1_SS); +UNIFORM_SLEEVES(CFP_U_Crye_AOR2,CFP_U_Crye_AOR2_SS); +UNIFORM_SLEEVES(CFP_U_Crye_IASF,CFP_U_Crye_IASF_SS); +UNIFORM_SLEEVES(CFP_U_Crye_IDF,CFP_U_Crye_IDF_SS); +UNIFORM_SLEEVES(CFP_U_Crye_M81v2,CFP_U_Crye_M81v2_SS); +UNIFORM_SLEEVES(CFP_U_Crye_M81,CFP_U_Crye_M81_SS); +UNIFORM_SLEEVES(CFP_U_Crye_Tan,CFP_U_Crye_Tan_SS); +UNIFORM_SLEEVES(CFP_U_Crye_Tiger_Desert,CFP_U_Crye_Tiger_Desert_SS); + +UNIFORM_SLEEVES(CFP_U_FieldUniform_3ColorDesert,CFP_U_FieldUniform_3ColorDesert_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_ATacsFG,SP_0000_Standard_FieldUniform_ATacsFG_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_acr_desert,CFP_U_FieldUniform_acr_desert_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_Black,SP_0000_Standard_FieldUniform_Black_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_ChocChip,CFP_U_FieldUniform_ChocChip_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_GreenOlive,SP_0000_Standard_FieldUniform_GreenOlive_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_Green,SP_0000_Standard_FieldUniform_Green_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_Grey,SP_0000_Standard_FieldUniform_Grey_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_iachocchip,CFP_U_FieldUniform_iachocchip_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_iasfblack,CFP_FieldUniform_iasfblack_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_ipdigital,CFP_FieldUniform_ipdigital_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_ipdpm,CFP_FieldUniform_ipdpm_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_idf,CFP_U_FieldUniform_idf_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_M81_Sudan,CFP_U_FieldUniform_M81_Sudan_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_M81,CFP_U_FieldUniform_M81_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_marpat_d,CFP_U_FieldUniform_marpat_d_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_marpat_w_light,CFP_U_FieldUniform_marpat_w_light_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_marpat_w,CFP_U_FieldUniform_marpat_w_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_multicam,CFP_U_FieldUniform_multicam_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_NodUrban,SP_0000_Standard_FieldUniform_NodUrban_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_scorpion_w2,CFP_U_FieldUniform_scorpion_w2_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_pesh_3cd,CFP_FieldUniform_pesh_3cd_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_pesh_edrl,CFP_FieldUniform_pesh_edrl_SS); +UNIFORM_SLEEVES(CFP_FieldUniform_pesh_m81,CFP_FieldUniform_pesh_m81_SS); +UNIFORM_SLEEVES(SP_0000_Standard_FieldUniform_Tan,SP_0000_Standard_FieldUniform_Tan_SS); +UNIFORM_SLEEVES(CFP_U_FieldUniform_tiger_desert,CFP_U_FieldUniform_tiger_desert_SS); + +UNIFORM_SLEEVES(CFP_75th_CRYE_V1b_Full,CFP_75th_CRYE_V1b_Sleeved); +UNIFORM_SLEEVES(CFP_75th_CRYE_V2b_Full,CFP_75th_CRYE_V2b_Sleeved); +UNIFORM_SLEEVES(CFP_75th_CRYE_V3_Full,CFP_75th_CRYE_V3_Sleeved); +UNIFORM_SLEEVES(CFP_75th_CRYE_V3b_Full,CFP_75th_CRYE_V3b_Sleeved); +UNIFORM_SLEEVES(CFP_75th_CRYE_V4_Full,CFP_75th_CRYE_V4_Sleeved); +UNIFORM_SLEEVES(CFP_75th_CRYE_V4b_Full,CFP_75th_CRYE_V4b_Sleeved); + +UNIFORM_SLEEVES(CFP_RAID_DBDU_1,CFP_RAID_DBDU_2); +UNIFORM_SLEEVES(CFP_RAID_DBDU_3,CFP_RAID_DBDU_4); +UNIFORM_SLEEVES(CFP_RAID_DCU1,CFP_RAID_DCU2); +UNIFORM_SLEEVES(CFP_RAID_DCU3,CFP_RAID_DCU4); +UNIFORM_SLEEVES(CFP_RAID_DCU_M81_1,CFP_RAID_DCU_M81_2); +UNIFORM_SLEEVES(CFP_RAID_DCU_M81_3,CFP_RAID_DCU_M81_4); +UNIFORM_SLEEVES(CFP_RAID_M811,CFP_RAID_M812); +UNIFORM_SLEEVES(CFP_RAID_M813,CFP_RAID_M814); +UNIFORM_SLEEVES(CFP_RAID_M81_DCU_1,CFP_RAID_M81_DCU_2); +UNIFORM_SLEEVES(CFP_RAID_M81_DCU_3,CFP_RAID_M81_DCU_4); + +UNIFORM_SLEEVES(CFP_IDF_6,CFP_IDF_4); + +UNIFORM_SLEEVES2(CFP_BDU_IRAN,CFP_BDU_IRAN2,CFP_BDU_IRAN3); +UNIFORM_SLEEVES2(CFP_BDU_RGDPM,CFP_BDU_RGDPM2,CFP_BDU_RGDPM3); +UNIFORM_SLEEVES2(CFP_BDU_M81Iraq,CFP_BDU_M81Iraq2,CFP_BDU_M81Iraq3); +UNIFORM_SLEEVES2(CFP_BDU_M81Mali,CFP_BDU_M81Mali2,CFP_BDU_M81Mali3); +UNIFORM_SLEEVES2(CFP_BDU_M81Sudan,CFP_BDU_M81Sudan_2,CFP_BDU_M81Sudan_3); +UNIFORM_SLEEVES2(CFP_BDU_M81,CFP_BDU_M812,CFP_BDU_M813); +UNIFORM_SLEEVES2(CFP_BDU_OD_Sudan,CFP_BDU_OD_Sudan2,CFP_BDU_OD_Sudan3); + +class CFP_BDU_Marpat: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_Marpat2 {}; + class CFP_BDU_Marpat3 {}; + }; +}; +class CFP_BDU_Marpat2: ace_wardrobe_base_U_gloves_on { + class modifiableTo { + class CFP_BDU_Marpat {}; + }; +}; +class CFP_BDU_Marpat3: ace_wardrobe_base_U_sleeves_up { + class modifiableTo { + class CFP_BDU_Marpat {}; + }; +}; + +class CFP_BDU_PolyDes: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_PolyDes2 {}; + }; +}; +class CFP_BDU_PolyDes2: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_PolyDes {}; + class CFP_BDU_PolyDes3 {}; + class CFP_BDU_PolyDes5 {}; + }; +}; +class CFP_BDU_PolyDes3: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_PolyDes2 {}; + class CFP_BDU_PolyDes4 {}; + }; +}; +class CFP_BDU_PolyDes4: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_PolyDes3 {}; + class CFP_BDU_PolyDes5 {}; + }; +}; +class CFP_BDU_PolyDes5: ace_wardrobe_base { + class modifiableTo { + class CFP_BDU_PolyDes4 {}; + class CFP_BDU_PolyDes2 {}; + }; +}; + +class CFP_IDF_1: ace_wardrobe_base { + class modifiableTo { + class CFP_IDF_2 {}; + }; +}; +class CFP_IDF_2: ace_wardrobe_base { + class modifiableTo { + class CFP_IDF_1 {}; + class CFP_IDF_3 {}; + }; +}; +class CFP_IDF_3: ace_wardrobe_base { + class modifiableTo { + class CFP_IDF_2 {}; + }; +}; diff --git a/addons/compat_cfp/compat_cfp_wardrobe/config.cpp b/addons/compat_cfp/compat_cfp_wardrobe/config.cpp new file mode 100644 index 00000000000..3df076348ec --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/config.cpp @@ -0,0 +1,25 @@ +#include "script_component.hpp" + +class CfgPatches { + class SUBADDON { + name = COMPONENT_NAME; + units[] = {}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = { + "ace_wardrobe", + "cfp_main" + }; + skipWhenMissingDependencies = 1; + author = ECSTRING(common,ACETeam); + authors[] = {"Andx [TTT]"}; + url = ECSTRING(main,URL); + VERSION_CONFIG; + addonRootClass = QUOTE(ADDON); + }; +}; + +// For Consistency: Adjust Mass/containerSize + +// ACE Wardrobe +#include "ace_wardrobe.hpp" diff --git a/addons/compat_cfp/compat_cfp_wardrobe/script_component.hpp b/addons/compat_cfp/compat_cfp_wardrobe/script_component.hpp new file mode 100644 index 00000000000..33ff700f410 --- /dev/null +++ b/addons/compat_cfp/compat_cfp_wardrobe/script_component.hpp @@ -0,0 +1,5 @@ +#define SUBCOMPONENT wardrobe +#define SUBCOMPONENT_BEAUTIFIED Wardrobe +#include "..\script_component.hpp" + +#include "\z\ace\addons\wardrobe\script_macros_wardrobe.hpp" From 3012abb06b7bbe06ee14481c6aed6ec05c3f2e43 Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 12 Jan 2026 20:22:27 +0100 Subject: [PATCH 5/7] apply ACEWARDROBE() --- .../compat_cfp_wardrobe/ace_wardrobe.hpp | 12 +-- .../ace_wardrobe_goggles.hpp | 8 +- .../ace_wardrobe_headgear.hpp | 78 +++++++++---------- .../ace_wardrobe_uniforms.hpp | 22 +++--- 4 files changed, 60 insertions(+), 60 deletions(-) diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp index f7afa5a2733..b1867036075 100644 --- a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe.hpp @@ -1,10 +1,10 @@ class ace_wardrobe { - class ace_wardrobe_base; - class ace_wardrobe_base_H_goggles_on; - class ace_wardrobe_base_H_goggles_off; - class ace_wardrobe_base_U_sleeves_up; - class ace_wardrobe_base_U_sleeves_down; - class ace_wardrobe_base_U_gloves_on; + class ACEWARDROBE(base); + class ACEWARDROBE(base_H_goggles_on); + class ACEWARDROBE(base_H_goggles_off); + class ACEWARDROBE(base_U_sleeves_up); + class ACEWARDROBE(base_U_sleeves_down); + class ACEWARDROBE(base_U_gloves_on); #include "ace_wardrobe_headgear.hpp" #include "ace_wardrobe_uniforms.hpp" diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp index 0391223c7b8..603cf5e6cf8 100644 --- a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_goggles.hpp @@ -1,9 +1,9 @@ -class CFP_UA_Thermals_Blk: ace_wardrobe_base { +class CFP_UA_Thermals_Blk: ACEWARDROBE(base) { class modifiableTo { class CFP_UA_Thermals_Blk_GPS {}; }; }; -class CFP_UA_Thermals_Blk_GPS: ace_wardrobe_base { +class CFP_UA_Thermals_Blk_GPS: ACEWARDROBE(base) { class modifiableTo { class CFP_UA_Thermals_Blk {}; }; @@ -11,12 +11,12 @@ class CFP_UA_Thermals_Blk_GPS: ace_wardrobe_base { }; #define NECKWRAP_GLASSES(NeckwrapBase,NeckwrapGlasses,Glasses)\ -class NeckwrapBase: ace_wardrobe_base {\ +class NeckwrapBase: ACEWARDROBE(base) {\ class modifiableTo {\ class NeckwrapGlasses {};\ };\ };\ -class NeckwrapGlasses: ace_wardrobe_base {\ +class NeckwrapGlasses: ACEWARDROBE(base) {\ class modifiableTo {\ class NeckwrapBase {};\ };\ diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp index d993f862ab3..e28b1dc4b4d 100644 --- a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_headgear.hpp @@ -1,10 +1,10 @@ #define BOONIEHATS(BoonieHatUnfolded,BoonieHatFolded)\ -class BoonieHatUnfolded: ace_wardrobe_base {\ +class BoonieHatUnfolded: ACEWARDROBE(base) {\ class modifiableTo {\ class BoonieHatFolded {};\ };\ };\ -class BoonieHatFolded: ace_wardrobe_base {\ +class BoonieHatFolded: ACEWARDROBE(base) {\ class modifiableTo {\ class BoonieHatUnfolded {};\ };\ @@ -14,12 +14,12 @@ BOONIEHATS(CFP_BoonieHat_DCU,CFP_BoonieHat2_DCU); BOONIEHATS(CFP_BoonieHat_M81,CFP_BoonieHat2_M81); #define CAPS(CapRegular,CapBackwards)\ -class CapRegular: ace_wardrobe_base {\ +class CapRegular: ACEWARDROBE(base) {\ class modifiableTo {\ class CapBackwards {};\ };\ };\ -class CapBackwards: ace_wardrobe_base {\ +class CapBackwards: ACEWARDROBE(base) {\ class modifiableTo {\ class CapRegular {};\ };\ @@ -33,31 +33,31 @@ HELMET_GOGGLES_COVER(CFP_IDF_M76_BD,CFP_IDF_M76_BD_GG,CFP_IDF_M76_BD_CF_GG,CFP_I HELMET_GOGGLES_COVER(CFP_IDF_M76_BD_Black,CFP_IDF_M76_BD_GG_Black,CFP_IDF_M76_BD_CF_GG_Black,CFP_IDF_M76_BD_CB_GG_Black,CUP_G_ESS_BLK); #define LUNGEE_1(LungeeRegular,LungeeOpen)\ -class LungeeRegular: ace_wardrobe_base {\ +class LungeeRegular: ACEWARDROBE(base) {\ class modifiableTo {\ class LungeeOpen {};\ };\ };\ -class LungeeOpen: ace_wardrobe_base {\ +class LungeeOpen: ACEWARDROBE(base) {\ class modifiableTo {\ class LungeeRegular {};\ };\ } #define LUNGEE_2(LungeeRegular,LungeeOpen,LungeeShemagh)\ -class LungeeRegular: ace_wardrobe_base {\ +class LungeeRegular: ACEWARDROBE(base) {\ class modifiableTo {\ class LungeeOpen {};\ class LungeeShemagh {};\ };\ };\ -class LungeeOpen: ace_wardrobe_base {\ +class LungeeOpen: ACEWARDROBE(base) {\ class modifiableTo {\ class LungeeRegular {};\ class LungeeShemagh {};\ };\ };\ -class LungeeShemagh: ace_wardrobe_base {\ +class LungeeShemagh: ACEWARDROBE(base) {\ class modifiableTo {\ class LungeeRegular {};\ class LungeeOpen {};\ @@ -119,20 +119,20 @@ HELMET_GOGGLES(SP_ZSH1Helmet_Tan1,SP_ZSH1Helmet_Tan2,SP_Goggles_Black); HELMET_GOGGLES_COVER(CFP_PASGTHelmet_M811,CFP_PASGTHelmet_M814,CFP_PASGTHelmet_M815,CFP_PASGTHelmet_M816,CUP_G_ESS_BLK); -class CFP_PASGTHelmet_DBDU1: ace_wardrobe_base_H_goggles_off { +class CFP_PASGTHelmet_DBDU1: ACEWARDROBE(base_H_goggles_off) { class modifiableTo { class CFP_PASGTHelmet_DBDU4 {}; class CFP_PASGTHelmet_DBDU5 {}; }; }; -class CFP_PASGTHelmet_DBDU4: ace_wardrobe_base_H_goggles_on { +class CFP_PASGTHelmet_DBDU4: ACEWARDROBE(base_H_goggles_on) { class modifiableTo { class CFP_PASGTHelmet_DBDU1 {}; class CFP_PASGTHelmet_DBDU5 {}; }; components[] = {QUOTE(CUP_G_ESS_BLK)}; }; -class CFP_PASGTHelmet_DBDU5: ace_wardrobe_base_H_goggles_on { +class CFP_PASGTHelmet_DBDU5: ACEWARDROBE(base_H_goggles_on) { class modifiableTo { class CFP_PASGTHelmet_DBDU1 {}; class CFP_PASGTHelmet_DBDU4 {}; @@ -140,20 +140,20 @@ class CFP_PASGTHelmet_DBDU5: ace_wardrobe_base_H_goggles_on { components[] = {QUOTE(CUP_G_ESS_BLK)}; }; -class CFP_PASGTHelmet_DBDU2: ace_wardrobe_base_H_goggles_off { +class CFP_PASGTHelmet_DBDU2: ACEWARDROBE(base_H_goggles_off) { class modifiableTo { class CFP_PASGTHelmet_DBDU3 {}; class CFP_PASGTHelmet_DBDU6 {}; }; }; -class CFP_PASGTHelmet_DBDU3: ace_wardrobe_base_H_goggles_on { +class CFP_PASGTHelmet_DBDU3: ACEWARDROBE(base_H_goggles_on) { class modifiableTo { class CFP_PASGTHelmet_DBDU2 {}; class CFP_PASGTHelmet_DBDU6 {}; }; components[] = {QUOTE(CUP_G_ESS_BLK)}; }; -class CFP_PASGTHelmet_DBDU6: ace_wardrobe_base_H_goggles_on { +class CFP_PASGTHelmet_DBDU6: ACEWARDROBE(base_H_goggles_on) { class modifiableTo { class CFP_PASGTHelmet_DBDU2 {}; class CFP_PASGTHelmet_DBDU3 {}; @@ -166,20 +166,20 @@ HELMET_GOGGLES(CFP_PASGTHelmet_M812,CFP_PASGTHelmet_M813,CUP_G_ESS_BLK); // Goggles might be changed, they are covered on the helmet // there exists also a variante with goggles coverd at the back #define OPSCORE_HELMET_SF_COVERED_GOGGLES(HelmetBase,HelmetGogglesFront,HelmetGogglesBack,Goggles)\ -class HelmetBase: ace_wardrobe_base_H_goggles_off {\ +class HelmetBase: ACEWARDROBE(base_H_goggles_off) {\ class modifiableTo {\ class HelmetGogglesFront {};\ class HelmetGogglesBack {};\ components[] = {QUOTE(Goggles)};\ };\ };\ -class HelmetGogglesFront: ace_wardrobe_base_H_goggles_on {\ +class HelmetGogglesFront: ACEWARDROBE(base_H_goggles_on) {\ class modifiableTo {\ class HelmetBase {};\ class HelmetGogglesBack {};\ };\ };\ -class HelmetGogglesBack: ace_wardrobe_base_H_goggles_on {\ +class HelmetGogglesBack: ACEWARDROBE(base_H_goggles_on) {\ class modifiableTo {\ class HelmetBase {};\ class HelmetGogglesFront {};\ @@ -197,7 +197,7 @@ OPSCORE_HELMET_SF_COVERED_GOGGLES(CFP_OpsC_Covered,CFP_OpsC_Cov_Goggles_Off,CFP_ BASE_PAIR(CFP_75th_Patrol_Cap,CFP_75th_Patrol_Cap_Oakleys); -class CFP_MitzHelm1_Des: ace_wardrobe_base { +class CFP_MitzHelm1_Des: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm2_Des {}; class CFP_MitzHelm3_Des {}; @@ -208,7 +208,7 @@ class CFP_MitzHelm1_Des: ace_wardrobe_base { class CFP_Mitznefet_Desert_Tropical {}; }; }; -class CFP_MitzHelm2_Des: ace_wardrobe_base { +class CFP_MitzHelm2_Des: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm3_Des {}; @@ -219,7 +219,7 @@ class CFP_MitzHelm2_Des: ace_wardrobe_base { class CFP_Mitznefet_Desert_Tropical {}; }; }; -class CFP_MitzHelm3_Des: ace_wardrobe_base { +class CFP_MitzHelm3_Des: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -230,7 +230,7 @@ class CFP_MitzHelm3_Des: ace_wardrobe_base { class CFP_Mitznefet_Desert_Tropical {}; }; }; -class CFP_MitzHelm4_Des: ace_wardrobe_base { +class CFP_MitzHelm4_Des: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -241,7 +241,7 @@ class CFP_MitzHelm4_Des: ace_wardrobe_base { class CFP_Mitznefet_Desert_Tropical {}; }; }; -class CFP_Mitznefet_Desert: ace_wardrobe_base { +class CFP_Mitznefet_Desert: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -250,7 +250,7 @@ class CFP_Mitznefet_Desert: ace_wardrobe_base { }; components[] = {"CUP_PMC_Facewrap_Black"}; }; -class CFP_Mitznefet_Desert_Ranger: ace_wardrobe_base { +class CFP_Mitznefet_Desert_Ranger: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -259,7 +259,7 @@ class CFP_Mitznefet_Desert_Ranger: ace_wardrobe_base { }; components[] = {"CUP_PMC_Facewrap_Ranger"}; }; -class CFP_Mitznefet_Desert_Tan: ace_wardrobe_base { +class CFP_Mitznefet_Desert_Tan: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -268,7 +268,7 @@ class CFP_Mitznefet_Desert_Tan: ace_wardrobe_base { }; components[] = {"CUP_PMC_Facewrap_Tan"}; }; -class CFP_Mitznefet_Desert_Tropical: ace_wardrobe_base { +class CFP_Mitznefet_Desert_Tropical: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Des {}; class CFP_MitzHelm2_Des {}; @@ -278,7 +278,7 @@ class CFP_Mitznefet_Desert_Tropical: ace_wardrobe_base { components[] = {"CUP_PMC_Facewrap_Tropical"}; }; -class CFP_MitzHelm1_Mcam: ace_wardrobe_base { +class CFP_MitzHelm1_Mcam: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Mcam {}; class CFP_MitzHelm2_Mcam {}; @@ -286,7 +286,7 @@ class CFP_MitzHelm1_Mcam: ace_wardrobe_base { class CFP_MitzHelm4_Mcam {}; }; }; -class CFP_MitzHelm2_Mcam: ace_wardrobe_base { +class CFP_MitzHelm2_Mcam: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Mcam {}; class CFP_MitzHelm1_Mcam {}; @@ -294,7 +294,7 @@ class CFP_MitzHelm2_Mcam: ace_wardrobe_base { class CFP_MitzHelm4_Mcam {}; }; }; -class CFP_MitzHelm3_Mcam: ace_wardrobe_base { +class CFP_MitzHelm3_Mcam: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Mcam {}; class CFP_MitzHelm1_Mcam {}; @@ -302,7 +302,7 @@ class CFP_MitzHelm3_Mcam: ace_wardrobe_base { class CFP_MitzHelm4_Mcam {}; }; }; -class CFP_MitzHelm4_Mcam: ace_wardrobe_base { +class CFP_MitzHelm4_Mcam: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Mcam {}; class CFP_MitzHelm1_Mcam {}; @@ -310,7 +310,7 @@ class CFP_MitzHelm4_Mcam: ace_wardrobe_base { class CFP_MitzHelm3_Mcam {}; }; }; -class CFP_Mitznefet_Mcam: ace_wardrobe_base { +class CFP_Mitznefet_Mcam: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Mcam {}; class CFP_MitzHelm2_Mcam {}; @@ -320,7 +320,7 @@ class CFP_Mitznefet_Mcam: ace_wardrobe_base { components[] = {"CUP_PMC_Facewrap_Black"}; }; -class CFP_MitzHelm1_Wdl: ace_wardrobe_base { +class CFP_MitzHelm1_Wdl: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Wdl {}; class CFP_MitzHelm2_Wdl {}; @@ -332,7 +332,7 @@ class CFP_MitzHelm1_Wdl: ace_wardrobe_base { class CFP_Mitznefet_Tropical {}; }; }; -class CFP_MitzHelm2_Wdl: ace_wardrobe_base { +class CFP_MitzHelm2_Wdl: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Wdl {}; class CFP_MitzHelm1_Wdl {}; @@ -344,7 +344,7 @@ class CFP_MitzHelm2_Wdl: ace_wardrobe_base { class CFP_Mitznefet_Tropical {}; }; }; -class CFP_MitzHelm3_Wdl: ace_wardrobe_base { +class CFP_MitzHelm3_Wdl: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Wdl {}; class CFP_MitzHelm1_Wdl {}; @@ -356,7 +356,7 @@ class CFP_MitzHelm3_Wdl: ace_wardrobe_base { class CFP_Mitznefet_Tropical {}; }; }; -class CFP_MitzHelm4_Wdl: ace_wardrobe_base { +class CFP_MitzHelm4_Wdl: ACEWARDROBE(base) { class modifiableTo { class CFP_Mitznefet_Wdl {}; class CFP_MitzHelm1_Wdl {}; @@ -368,7 +368,7 @@ class CFP_MitzHelm4_Wdl: ace_wardrobe_base { class CFP_Mitznefet_Tropical {}; }; }; -class CFP_Mitznefet: ace_wardrobe_base { +class CFP_Mitznefet: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Wdl {}; class CFP_MitzHelm2_Wdl {}; @@ -381,7 +381,7 @@ class CFP_Mitznefet: ace_wardrobe_base { components[] = {"CUP_PMC_Facewrap_Black"}; }; -class CFP_Mitznefet_Ranger: ace_wardrobe_base { +class CFP_Mitznefet_Ranger: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Wdl {}; class CFP_MitzHelm2_Wdl {}; @@ -393,7 +393,7 @@ class CFP_Mitznefet_Ranger: ace_wardrobe_base { }; components[] = {"CUP_PMC_Facewrap_Ranger"}; }; -class CFP_Mitznefet_Tan: ace_wardrobe_base { +class CFP_Mitznefet_Tan: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Wdl {}; class CFP_MitzHelm2_Wdl {}; @@ -406,7 +406,7 @@ class CFP_Mitznefet_Tan: ace_wardrobe_base { components[] = {"CUP_PMC_Facewrap_Tan"}; }; -class CFP_Mitznefet_Tropical: ace_wardrobe_base { +class CFP_Mitznefet_Tropical: ACEWARDROBE(base) { class modifiableTo { class CFP_MitzHelm1_Wdl {}; class CFP_MitzHelm2_Wdl {}; diff --git a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp index a7e61d0aa69..bb1be2535c0 100644 --- a/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp +++ b/addons/compat_cfp/compat_cfp_wardrobe/ace_wardrobe_uniforms.hpp @@ -74,66 +74,66 @@ UNIFORM_SLEEVES2(CFP_BDU_M81Sudan,CFP_BDU_M81Sudan_2,CFP_BDU_M81Sudan_3); UNIFORM_SLEEVES2(CFP_BDU_M81,CFP_BDU_M812,CFP_BDU_M813); UNIFORM_SLEEVES2(CFP_BDU_OD_Sudan,CFP_BDU_OD_Sudan2,CFP_BDU_OD_Sudan3); -class CFP_BDU_Marpat: ace_wardrobe_base { +class CFP_BDU_Marpat: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_Marpat2 {}; class CFP_BDU_Marpat3 {}; }; }; -class CFP_BDU_Marpat2: ace_wardrobe_base_U_gloves_on { +class CFP_BDU_Marpat2: ACEWARDROBE(base_U_gloves_on) { class modifiableTo { class CFP_BDU_Marpat {}; }; }; -class CFP_BDU_Marpat3: ace_wardrobe_base_U_sleeves_up { +class CFP_BDU_Marpat3: ACEWARDROBE(base_U_sleeves_up) { class modifiableTo { class CFP_BDU_Marpat {}; }; }; -class CFP_BDU_PolyDes: ace_wardrobe_base { +class CFP_BDU_PolyDes: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_PolyDes2 {}; }; }; -class CFP_BDU_PolyDes2: ace_wardrobe_base { +class CFP_BDU_PolyDes2: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_PolyDes {}; class CFP_BDU_PolyDes3 {}; class CFP_BDU_PolyDes5 {}; }; }; -class CFP_BDU_PolyDes3: ace_wardrobe_base { +class CFP_BDU_PolyDes3: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_PolyDes2 {}; class CFP_BDU_PolyDes4 {}; }; }; -class CFP_BDU_PolyDes4: ace_wardrobe_base { +class CFP_BDU_PolyDes4: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_PolyDes3 {}; class CFP_BDU_PolyDes5 {}; }; }; -class CFP_BDU_PolyDes5: ace_wardrobe_base { +class CFP_BDU_PolyDes5: ACEWARDROBE(base) { class modifiableTo { class CFP_BDU_PolyDes4 {}; class CFP_BDU_PolyDes2 {}; }; }; -class CFP_IDF_1: ace_wardrobe_base { +class CFP_IDF_1: ACEWARDROBE(base) { class modifiableTo { class CFP_IDF_2 {}; }; }; -class CFP_IDF_2: ace_wardrobe_base { +class CFP_IDF_2: ACEWARDROBE(base) { class modifiableTo { class CFP_IDF_1 {}; class CFP_IDF_3 {}; }; }; -class CFP_IDF_3: ace_wardrobe_base { +class CFP_IDF_3: ACEWARDROBE(base) { class modifiableTo { class CFP_IDF_2 {}; }; From 08e994bd93f4746e75126eec4e16dcb873c80add Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 12 Jan 2026 20:46:02 +0100 Subject: [PATCH 6/7] -> displayName https://github.com/acemod/ACE3/pull/11226 --- .../compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp b/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp index 43377c3108b..9e9d9dc8fd0 100644 --- a/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp +++ b/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp @@ -20,7 +20,7 @@ class HelmetVeil : EGVAR(wardrobe,base_H_mask_on) {\ components[] = {\ QUOTE(Veil)\ };\ - alternativeActionName = ECSTRING(wardrobe,maskOn);\ + displayName = ECSTRING(wardrobe,maskOn);\ };\ class HelmetEss : EGVAR(wardrobe,base_H_goggles_on) {\ class modifiableTo {\ From 78d005894a73ea8a5f7c6ad1523ddddc42ada823 Mon Sep 17 00:00:00 2001 From: OverlordZorn Date: Mon, 12 Jan 2026 20:50:04 +0100 Subject: [PATCH 7/7] Revert "-> displayName" This reverts commit 08e994bd93f4746e75126eec4e16dcb873c80add. --- .../compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp b/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp index 9e9d9dc8fd0..43377c3108b 100644 --- a/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp +++ b/addons/compat_rhs_saf3/compat_rhs_saf3_wardrobe/ACE_Wardrobe_Headgear.hpp @@ -20,7 +20,7 @@ class HelmetVeil : EGVAR(wardrobe,base_H_mask_on) {\ components[] = {\ QUOTE(Veil)\ };\ - displayName = ECSTRING(wardrobe,maskOn);\ + alternativeActionName = ECSTRING(wardrobe,maskOn);\ };\ class HelmetEss : EGVAR(wardrobe,base_H_goggles_on) {\ class modifiableTo {\