Skip to content

Commit

Permalink
Update USP uniforms : reversed US flags and new models/configs
Browse files Browse the repository at this point in the history
  • Loading branch information
jetelain committed Jul 9, 2022
1 parent 8c17229 commit 4b91e60
Show file tree
Hide file tree
Showing 2 changed files with 181 additions and 32 deletions.
135 changes: 114 additions & 21 deletions compats/compat_usp/XtdGearInfos.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -282,32 +282,52 @@
PATTERN_USP_SOFTSHELL_G3C_MC(suffix,k,g) \
PATTERN_USP_SOFTSHELL_G3C_RGR(suffix,k,g) \

#define PATTERN_USP_OVERWHITE_G3C(suffix, base, c, k, g) \
#define PATTERN_USP_OVERWHITE_G3C(suffix, c, k, g, t) \
class suffix \
{ \
model = "USP_OVERWHITE_G3C"; \
camo = #c; \
kneepads = #k; \
gloves = #g; \
top = #t; \
};

#define PATTERN_USP_OVERWHITE_G3C_MCA(suffix, k, g) \
PATTERN_USP_OVERWHITE_G3C(suffix, Uniform_Base,BLK, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_AOR1,suffix,AOR1,k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_AOR2,suffix,AOR2,k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_ATT, suffix,ATT, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_GRY, suffix,GRY, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_KHK, suffix,KHK, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_M81, suffix,M81, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MC, suffix,MC, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCB, suffix,MCB, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCD, suffix,MCD, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCT, suffix,MCT, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCW, suffix,MCW, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_NAV, suffix,NAV, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_RGR, suffix,RGR, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_TSD, suffix,TSD, k,g) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_TSW, suffix,TSW, k,g)
PATTERN_USP_OVERWHITE_G3C(suffix, BLK, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_AOR1,AOR1,k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_AOR2,AOR2,k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_ATT, ATT, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_GRY, GRY, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_KHK, KHK, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_M81, M81, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MC, MC, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCB, MCB, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCD, MCD, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCT, MCT, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_MCW, MCW, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_NAV, NAV, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_RGR, RGR, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_TSD, TSD, k,g,MCA) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCA_TSW, TSW, k,g,MCA)


#define PATTERN_USP_OVERWHITE_G3C_OTH(suffix, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(suffix, BLK, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_AOR1,AOR1,k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_AOR2,AOR2,k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_ATT, ATT, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_GRY, GRY, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_KHK, KHK, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_M81, M81, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MC, MC, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCB, MCB, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCD, MCD, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCT, MCT, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_MCW, MCW, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_NAV, NAV, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_RGR, RGR, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_TSD, TSD, k,g,t) \
PATTERN_USP_OVERWHITE_G3C(##suffix##_TSW, TSW, k,g,t)

#define PATTERN_USP_TSHIRT_G3C(suffix, base, c, t, k, g, i) \
class suffix \
Expand Down Expand Up @@ -628,6 +648,36 @@ class CfgWeapons
PATTERN_USP_G3C(USP_G3C_IST_KP_MX, down,yes,MX, Full, IST)
PATTERN_USP_G3C(USP_G3C_IST_KP_OR, down,yes,OR, Full, IST)


PATTERN_USP_G3C(USP_G3C_CS, down,no, none,Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU, up, no, none,Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_KP, down,yes,none,Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP, up, yes,none,Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_MX, down,no, MX, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU_MX, up, no, MX, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_KP_MX, down,yes,MX, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP_MX, up, yes,MX, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_OR, down,no, OR, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU_OR, up, no, OR, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_KP_OR, down,yes,OR, Cut,SL)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP_OR, up, yes,OR, Cut,SL)

PATTERN_USP_G3C(USP_G3C_CS_VQ, down,no, none,Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_VQ, up, no, none,Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_KP_VQ, down,yes,none,Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP_VQ, up, yes,none,Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_MX_VQ, down,no, MX, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_MX_VQ, up, no, MX, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_KP_MX_VQ, down,yes,MX, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP_MX_VQ, up, yes,MX, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_OR_VQ, down,no, OR, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_OR_VQ, up, no, OR, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_KP_OR_VQ, down,yes,OR, Cut,VQ)
PATTERN_USP_G3C(USP_G3C_CS_CU_KP_OR_VQ, up, yes,OR, Cut,VQ)




// USP_PCU_G3
// NOTE: USP_PCU_G3C_*_GRY_BLK are broken in USP Mod itself
PATTERN_USP_PCU_G3C_ALL(USP_PCU_G3C, no, none)
Expand All @@ -647,11 +697,19 @@ class CfgWeapons

// USP_OVERWHITE_G3C
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C, no, none)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP, yes,none)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP, G3,none)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP2, G4,none)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_MX, no, MX)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP_MX,yes,MX)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP_MX,G3,MX)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_OR, no, OR)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP_OR,yes,OR)
PATTERN_USP_OVERWHITE_G3C_MCA(USP_OVERWHITE_G3C_KP_OR,G3,OR)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_TAN, no, none,TAN)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_KP2_TAN,G4, none,TAN)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_GRN, no, none,GRN)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_KP2_GRN,G4, none,GRN)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_BLK, no, none,BLK)
PATTERN_USP_OVERWHITE_G3C_OTH(USP_OVERWHITE_G3C_KP2_BLK,G4, none,BLK)


// USP_TSHIRT_G3C / USP_TSHIRT2_G3C
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT_G3C, no, none,no)
Expand All @@ -660,7 +718,7 @@ class CfgWeapons
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT_G3C_KP_MX, yes,MX,no)
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT_G3C_OR, no, OR,no)
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT_G3C_KP_OR, yes,OR,no)
//PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT2_G3C, no, none,yes) => exists, but private
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT2_G3C, no, none,yes)
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT2_G3C_KP, yes,none,yes)
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT2_G3C_MX, no, MX,yes)
PATTERN_USP_TSHIRT_G3C_ALL(USP_TSHIRT2_G3C_KP_MX,yes,MX,yes)
Expand Down Expand Up @@ -2130,6 +2188,41 @@ class CfgWeapons
PATTERN_OPSCORE_FASTFCV(USP_OPSCORE_FASTMT_FCV_OD_TW,USP_OPSCORE_FASTMT_FCV_TW,none,none,none,TL,CW,OD)
PATTERN_OPSCORE_FASTFCV(USP_OPSCORE_FASTMT_FCV_OD_W,USP_OPSCORE_FASTMT_FCV_W,none,none,none,none,CW,OD)

#define PATTERN_USP_G3F_S(suffix, m, g, p, k) \
class suffix \
{ \
model = "USP_G3F"; \
camo = #m; \
gloves = #g; \
pants = #p; \
kneepads = #k; \
};

#define PATTERN_USP_G3F(suffix, g, p,k) \
PATTERN_USP_G3F_S(##suffix##_3CD, 3CD, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_AOR1,AOR1,g,p,k) \
PATTERN_USP_G3F_S(##suffix##_AOR2,AOR2,g,p,k) \
PATTERN_USP_G3F_S(##suffix##_BLK, BLK, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_KHK, KHK, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_M81, M81, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_MC, MC, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_MCA, MCA, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_MCB, MCB, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_MCD, MCD, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_MCT, MCT, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_NWU, NWU, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_RGR, RGR, g,p,k) \
PATTERN_USP_G3F_S(##suffix##_UCP, UCP, g,p,k)

PATTERN_USP_G3F(USP_G3F, none,Field, no)
PATTERN_USP_G3F(USP_G3F_MX, MX, Field, no)
PATTERN_USP_G3F(USP_G3F_OR, OR, Field, no)
PATTERN_USP_G3F(USP_G3F_G3C, none,Combat,no)
PATTERN_USP_G3F(USP_G3F_G3C_MX, MX, Combat,no)
PATTERN_USP_G3F(USP_G3F_G3C_OR, OR, Combat,no)
PATTERN_USP_G3F(USP_G3F_G3C_KP, none,Combat,yes)
PATTERN_USP_G3F(USP_G3F_G3C_KP_MX,MX, Combat,yes)
PATTERN_USP_G3F(USP_G3F_G3C_KP_OR,OR, Combat,yes)
};

};
78 changes: 67 additions & 11 deletions compats/compat_usp/XtdGearModels.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,6 @@ class XtdGearModels
OR_CAMO(MIX)
};



class CfgWeapons
{
class USP_G3C
Expand Down Expand Up @@ -82,7 +80,7 @@ class XtdGearModels
};
class sleeves //: SleevesBase
{
values[] = {"Full", "Quarter", "Half"};
values[] = {"Full", "Quarter", "Half", "Cut"};
};
class shoes
{
Expand Down Expand Up @@ -167,30 +165,48 @@ class XtdGearModels
FLAG(uk_ref_mc)
FLAG(usa_can_blk)
FLAG(usa_can_ref_mc)

FLAG(usa)
FLAG(usa_flag2)
FLAG(usa_col2_rev)
FLAG(usa_col)
FLAG(usa_col_rev)
FLAG(usa_fog)
FLAG(usa_ir_aor2)
FLAG(usa_ir_aor2_rev)

FLAG(usa_ir_blk_abpos)
FLAG(usa_ir_blk)
FLAG(usa_ir_blk_rev)
FLAG(usa_ir_blk_skull2)
FLAG(usa_ir_blk_skull)
FLAG(usa_ir_blk_skull_rev)
FLAG(usa_ir_grn)
FLAG(usa_ir_grn_rev)
FLAG(usa_ir_mc)
FLAG(usa_ir_mc_rev)
FLAG(usa_ir_mc_skull)
FLAG(usa_ir_mc_skull_rev)
FLAG(usa_ir_rgr)
FLAG(usa_ir_rgr_rev)
FLAG(usa_ir_skull_mc)
FLAG(usa_ir_tan)
FLAG(usa_ir_tan_rev)
FLAG(usa_ref)
FLAG(usa_ref_rev)
FLAG(usa_tan)
FLAG(usa_tan_rev)
FLAG(usa_tx_ir_rgr)
FLAG(usa_uk_ir_blk2)
FLAG(usa_uk_ir_blk)
FLAG(usa_uk_ir_mc)
FLAG(usa_usaf)
FLAG(zea_ir_mc)
#define ALL_FLAGS "aus_ir_mc","bos_ir_mc","bra_ir_mc","can_ir_blk","can_ref_gry","cze_ir_mc","fin_ir_rgr","fra_ref","ger_ir_flk","ger_ir_mc","ger_ir_rgr","isr_ir_blk","isr_ir_mc","isr_ir_tan","isr_ref_blk","jap_ir_mc","nld","nld_ir_mc","nld_sub2","nld_sub","nld_tan","nor_ref","pol_ref","pol_ref_sub","rus_ir_mc","rus_ref","swe_ref_rgr","tur_ir_mc","uk","uk_ir_blk","uk_ir_grn","uk_ir_mc","uk_ref_mc","usa_can_blk","usa_can_ref_mc","usa","usa_flag2","usa_fog","usa_ir_aor2","usa_ir_blk_abpos","usa_ir_blk","usa_ir_blk_skull2","usa_ir_blk_skull","usa_ir_grn","usa_ir_mc","usa_ir_mc_skull","usa_ir_rgr","usa_ir_skull_mc","usa_ir_tan","usa_ref","usa_tan","usa_tx_ir_rgr","usa_uk_ir_blk2","usa_uk_ir_blk","usa_uk_ir_mc","usa_usaf","zea_ir_mc"

FLAG(zea_ir_mc)
#define ALL_FLAGS "aus_ir_mc","bos_ir_mc","bra_ir_mc","can_ir_blk","can_ref_gry","cze_ir_mc","fin_ir_rgr","fra_ref","ger_ir_flk","ger_ir_mc","ger_ir_rgr","isr_ir_blk","isr_ir_mc","isr_ir_tan","isr_ref_blk","jap_ir_mc","nld","nld_ir_mc","nld_sub2","nld_sub","nld_tan","nor_ref","pol_ref","pol_ref_sub","rus_ir_mc","rus_ref","swe_ref_rgr","tur_ir_mc","uk","uk_ir_blk","uk_ir_grn","uk_ir_mc","uk_ref_mc","usa_can_blk","usa_can_ref_mc",\
"usa","usa_col","usa_fog","usa_ir_aor2","usa_ir_blk_abpos","usa_ir_blk","usa_ir_blk_skull2","usa_ir_blk_skull","usa_ir_grn","usa_ir_mc","usa_ir_mc_skull","usa_ir_rgr","usa_ir_skull_mc","usa_ir_tan","usa_ref","usa_tan","usa_tx_ir_rgr","usa_uk_ir_blk2","usa_uk_ir_blk","usa_uk_ir_mc","usa_usaf","zea_ir_mc"

#define ALL_FLAGS_R "aus_ir_mc","bos_ir_mc","bra_ir_mc","can_ir_blk","can_ref_gry","cze_ir_mc","fin_ir_rgr","fra_ref","ger_ir_flk","ger_ir_mc","ger_ir_rgr","isr_ir_blk","isr_ir_mc","isr_ir_tan","isr_ref_blk","jap_ir_mc","nld","nld_ir_mc","nld_sub2","nld_sub","nld_tan","nor_ref","pol_ref","pol_ref_sub","rus_ir_mc","rus_ref","swe_ref_rgr","tur_ir_mc","uk","uk_ir_blk","uk_ir_grn","uk_ir_mc","uk_ref_mc","usa_can_blk","usa_can_ref_mc",\
"usa_col2_rev","usa_col_rev","usa_fog","usa_ir_aor2_rev","usa_ir_blk_rev","usa_ir_blk_skull_rev","usa_ir_grn_rev","usa_ir_mc_rev","usa_ir_mc_skull_rev","usa_ir_rgr_rev","usa_ir_tan_rev","usa_ref_rev","usa_tan_rev","usa_tx_ir_rgr","usa_uk_ir_blk2","usa_uk_ir_blk","usa_uk_ir_mc","usa_usaf","zea_ir_mc"

#define MORALE(N) class N { texture = QUOTE(\usp_gear_core\data\id\morale\##N##_co.paa); image = QUOTE(\usp_gear_core\data\id\morale\##N##_co.paa); label=""; description=#N; };
MORALE(aim_face)
Expand Down Expand Up @@ -653,7 +669,37 @@ class XtdGearModels
{
label = "Right Shoulder";
hiddenselection="_FlagRight";
values[] = {"DEFAULT",ALL_FLAGS,ALL_MORALE};
values[] = {"DEFAULT",ALL_FLAGS_R,ALL_MORALE};
};

};


class USP_G3F : USP_G3C
{
label = "Crye G3F";
author = "UnderSiege Productions";
options[] = {"camo", "gloves", "pants"};
textureoptions[] = { "pantscamo", "mxcamo", "orcamo" };
class camo
{
values[] = {"3CD","AOR1","AOR2","BLK","KHK","M81","MC","MCA","MCB","MCD","MCT","NWU","RGR","UCP"};
};
class pants
{
label = "Pants";
changeingame = 0;
values[] = {"Field","Combat"};
class Field {
label="Field";
};
class Combat {
label="Combat";
};
};
class pantscamo : pantscamo
{
requires[]={{"pants","Combat"}};
};

};
Expand Down Expand Up @@ -755,17 +801,21 @@ class XtdGearModels
{
label = "Overwhite/Crye G3C";
author = "UnderSiege Productions";
options[] = {"camo", "kneepads", "gloves"};
options[] = {"camo", "top", "kneepads", "gloves"};
textureoptions[] = { "mxcamo", "orcamo" };
class camo //: CamoBase
{
values[] = {"BLK","GRY","KHK","RGR","NAV","M81","MC","MCB","MCD","MCT","MCW","AOR1","AOR2","ATT","TSD","TSW"};
};
class top //: CamoBase
{
values[] = {"MCA","BLK","GRN","TAN"};
};
class kneepads
{
label = "Knee Pads";
changeingame = 0;
values[] = {"no", "yes"};
values[] = {"no", "G3", "G4"};
};
class gloves
{
Expand All @@ -778,8 +828,14 @@ class XtdGearModels
description = "Mechanix®";
};
};
class mxcamo : usp_mxcamo {};
class orcamo : usp_orcamo {};
class mxcamo : usp_mxcamo
{
hiddenselection="Camo4";
};
class orcamo : usp_orcamo
{
hiddenselection="Camo3";
};
};

class USP_TSHIRT_G3C
Expand Down

0 comments on commit 4b91e60

Please sign in to comment.