////////////////////////////////////////////////////////////////////////////////////////// // // // SCRIPT NAME : weapons_public.sch // // AUTHOR : Kenneth Ross // // DESCRIPTION : Commands to get misc weapon details. // // // ////////////////////////////////////////////////////////////////////////////////////////// USING "rage_builtins.sch" USING "globals.sch" USING "transition_controller.sch" USING "commands_extrametadata.sch" USING "weapons_names_public.sch" // !!!!!!!!!!!!WARNING!!!!! MAKE SURE YOU ADD NEW COMPONENTS TO BOTTOM OF ENUM, OR YOU WILL CORRUPT SAVE STAT!!!!!!!!!!!!! ENUM WEAPONADDON_BITSET WEAPONADDON_WEAPON_INVALID = 0, WEAPONADDON_PISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01, WEAPONADDON_PISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02, WEAPONADDON_PISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_PISTOL_WEAPONCOMPONENT_AT_PI_SUPP, WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_COMBATPISTOL_CLIP_01, WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_COMBATPISTOL_CLIP_02, WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, WEAPONADDON_PISTOL50_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_PISTOL50_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_APPISTOL_WEAPONCOMPONENT_APPISTOL_CLIP_01, WEAPONADDON_APPISTOL_WEAPONCOMPONENT_APPISTOL_CLIP_02, WEAPONADDON_APPISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_APPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, WEAPONADDON_MICROSMG_WEAPONCOMPONENT_MICROSMG_CLIP_01, WEAPONADDON_MICROSMG_WEAPONCOMPONENT_MICROSMG_CLIP_02, WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_SCOPE_MACRO, WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_AR_SUPP_02 , WEAPONADDON_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_SMG_WEAPONCOMPONENT_SMG_CLIP_01, WEAPONADDON_SMG_WEAPONCOMPONENT_SMG_CLIP_02, WEAPONADDON_SMG_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_SMG_WEAPONCOMPONENT_AT_AR_SCROP_MACRO, WEAPONADDON_SMG_WEAPONCOMPONENT_AT_PI_SUPP, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_SCOPE_MACRO, WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_CARBINERIFLE_CLIP_01, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_CARBINERIFLE_CLIP_02, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_RAILCOVER_01, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_HEAVYRIFLE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_SCOPE_SMALL, WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_MG_WEAPONCOMPONENT_MG_CLIP_01, WEAPONADDON_MG_WEAPONCOMPONENT_MG_CLIP_02, WEAPONADDON_MG_WEAPONCOMPONENT_AT_SCOPE_SMALL, WEAPONADDON_COMBATMG_WEAPONCOMPONENT_COMBATMG_CLIP_01, WEAPONADDON_COMBATMG_WEAPONCOMPONENT_COMBATMG_CLIP_02, WEAPONADDON_COMBATMG_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_COMBATMG_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_ASSAULTMG_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_ASSAULTMG_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_AT_SR_SUPP, WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01, WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02, WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01, WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_SCOPE_LARGE, WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_SCOPE_MAX, WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_LARGE, WEAPONADDON_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_MAX, WEAPONADDON_ASSAULTSNIPER_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01, WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_AT_SCOPE_MAX, WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_SCOPE_SMALL, WEAPONADDON_MINIGUN_WEAPONCOMPONENT_MINIGUN_CLIP_01, WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_AT_SCOPE_LARGE, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_SCOPE_MACRO, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_LARGE, WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_MAX, WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_DLC_PROGRAMMABLEAR_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_PROGRAMMABLEAR_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, // DLC BUSINESS WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01, WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02, WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, // DLC VALENTINE WEAPONADDON_DLC_GUSENBERG_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_GUSENBERG_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_SUPP, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_SCOPE_SMALL, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_CLIP_02, //DLC HIPSTER WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01, WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02, WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_AT_PI_FLSH, WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, // NEXT GEN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_SHOTGUN_CLIP_01, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_RIFLE_CLIP_01, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_RIFLE_CLIP_02, WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_SHOTGUN_CLIP_02, WEAPONADDON_DLC_MARKSMANRIFLE_AT_SCOPE_LARGE_FIXED_ZOOM, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP_02, WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP, // LUX WEAPONADDON_DLC_MARKSMANPISTOL_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_AR_FLSH, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_SCOPE_MACRO, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_AR_AFGRIP, WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_PIMP , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_BALLAS , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_HUSTLER , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_ROCK , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_HATER , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_LOVER , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_PLAYER , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_KING , WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_VAGOS , WEAPONADDON_DLC_ADVANCEDRIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_APPISTOL_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_ASSAULTSHOTGUN_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_COMBATMG_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_COMBATPISTOL_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_MG_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_MICROSMG_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_PISTOL_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_PUMPSHOTGUN_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_SAWNOFFSHOTGUN_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_SNIPERRIFLE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_VARMOD_LUXE, WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_AT_PI_SUPP, WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_MG_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_COMBATMG_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_VARMOD_LOWRIDER, WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_VARMOD_LOWRIDER, // APARTMENT WEAPONADDON_DLC_SWITCHBLADE_WEAPONCOMPONENT_VAR1, WEAPONADDON_DLC_SWITCHBLADE_WEAPONCOMPONENT_VAR2, WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_BOSS, WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_GOON, //Lowrider2 WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_02, //EXECUTIVES WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_CLIP_03, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_03, //BIKER WEAPONADDON_DLC_MINISMG_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_MINISMG_WEAPONCOMPONENT_CLIP_02, // GUNRUNNING WEAPONADDON_DLC_PISTOL_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_COMBATMG_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_HEAVYSNIPER_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_PISTOL_MK2_CLIP_01, WEAPONADDON_DLC_PISTOL_MK2_CLIP_02, WEAPONADDON_DLC_PISTOL_MK2_CLIP_FMJ, WEAPONADDON_DLC_PISTOL_MK2_CLIP_HOLLOWPOINT, WEAPONADDON_DLC_PISTOL_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_PISTOL_MK2_CLIP_TRACER, WEAPONADDON_DLC_PISTOL_MK2_AT_PI_FLSH, WEAPONADDON_DLC_PISTOL_MK2_AT_PI_RAIL, WEAPONADDON_DLC_PISTOL_MK2_AT_PI_SUPP_02, WEAPONADDON_DLC_PISTOL_MK2_AT_PI_COMP, WEAPONADDON_DLC_SMG_MK2_CLIP_01, WEAPONADDON_DLC_SMG_MK2_CLIP_02, WEAPONADDON_DLC_SMG_MK2_CLIP_FMJ, WEAPONADDON_DLC_SMG_MK2_CLIP_HOLLOWPOINT, WEAPONADDON_DLC_SMG_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_SMG_MK2_CLIP_TRACER, WEAPONADDON_DLC_SMG_MK2_AT_AR_FLSH, WEAPONADDON_DLC_SMG_MK2_AT_SIGHTS, WEAPONADDON_DLC_SMG_MK2_AT_SCOPE_MACRO_02_MK2, WEAPONADDON_DLC_SMG_MK2_AT_SCOPE_SMALL_MK2, WEAPONADDON_DLC_SMG_MK2_AT_PI_SUPP, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_SMG_MK2_AT_SB_BARREL_01, WEAPONADDON_DLC_SMG_MK2_AT_SB_BARREL_02, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_01, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_02, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_FMJ, WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_LARGE, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_MAX, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_NV, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_THERMAL, WEAPONADDON_DLC_HEAVYSNIPER_MK2_COMPONENT_AT_SR_SUPP_03, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_MUZZLE_08, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_MUZZLE_09, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SR_BARREL_01, WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SR_BARREL_02, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_01, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_02, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_FMJ, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_COMBATMG_MK2_CLIP_TRACER, WEAPONADDON_DLC_COMBATMG_MK2_AT_AR_AFGRIP, WEAPONADDON_DLC_COMBATMG_MK2_AT_SIGHTS, WEAPONADDON_DLC_COMBATMG_MK2_AT_SCOPE_SMALL_MK2, WEAPONADDON_DLC_COMBATMG_MK2_AT_SCOPE_MEDIUM, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_COMBATMG_MK2_AT_SB_BARREL_01, WEAPONADDON_DLC_COMBATMG_MK2_AT_SB_BARREL_02, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_01, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_02, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_FMJ, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_TRACER, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_AFGRIP, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_FLSH, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SIGHTS, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SCOPE_MACRO_MK2, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SCOPE_MEDIUM_MK2, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_SUPP_02, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_BARREL_01, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_BARREL_02, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_01, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_02, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_FMJ, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_TRACER, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_AFGRIP, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_FLSH, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SIGHTS, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SCOPE_MACRO_MK2, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SCOPE_MEDIUM_MK2, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_SUPP_02, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_CR_BARREL_01, WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_CR_BARREL_02, WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_02 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_03 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_04 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_05 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_06 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_07 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_08 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_09 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_10 , WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_IND_01 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_02 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_03 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_04 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_05 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_06 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_07 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_08 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_09 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_10 , WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_IND_01 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_02 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_03 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_04 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_05 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_06 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_07 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_08 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_09 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_10 , WEAPONADDON_DLC_COMBATMG_MK2_CAMO_IND_01 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_02 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_03 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_04 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_05 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_06 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_07 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_08 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_09 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_10 , WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_IND_01 , WEAPONADDON_DLC_PISTOL_MK2_CAMO , WEAPONADDON_DLC_PISTOL_MK2_CAMO_02 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_03 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_04 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_05 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_06 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_07 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_08 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_09 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_10 , WEAPONADDON_DLC_PISTOL_MK2_CAMO_IND_01 , WEAPONADDON_DLC_SMG_MK2_CAMO , WEAPONADDON_DLC_SMG_MK2_CAMO_02 , WEAPONADDON_DLC_SMG_MK2_CAMO_03 , WEAPONADDON_DLC_SMG_MK2_CAMO_04 , WEAPONADDON_DLC_SMG_MK2_CAMO_05 , WEAPONADDON_DLC_SMG_MK2_CAMO_06 , WEAPONADDON_DLC_SMG_MK2_CAMO_07 , WEAPONADDON_DLC_SMG_MK2_CAMO_08 , WEAPONADDON_DLC_SMG_MK2_CAMO_09 , WEAPONADDON_DLC_SMG_MK2_CAMO_10 , WEAPONADDON_DLC_SMG_MK2_CAMO_IND_01 , WEAPONADDON_DLC_PUMPSHOTGUN_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_01, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_AR_FLSH, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SIGHTS, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SCOPE_MACRO_MK2, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SCOPE_SMALL_MK2, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SR_SUPP_03, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_MUZZLE_08, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_01, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_02, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_FMJ, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_TRACER, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_FLSH, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SIGHTS, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SCOPE_MACRO_MK2, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SCOPE_MEDIUM_MK2, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_SUPP_02, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_AFGRIP_02, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SC_BARREL_01, WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SC_BARREL_02, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_01, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_02, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_FMJ, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_HOLLOWPOINT, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_TRACER, WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_FLSH_03, WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_RAIL_02, WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_SUPP_02, WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_COMP_02, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_01, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_02, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_FMJ, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_TRACER, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_FLSH, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SIGHTS, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SCOPE_MEDIUM_MK2, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SCOPE_LARGE_FIXED_ZOOM_MK2, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_SUPP, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_AFGRIP_02, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MRFL_BARREL_01, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MRFL_BARREL_02, WEAPONADDON_DLC_REVOLVER_MK2_CLIP_01, WEAPONADDON_DLC_REVOLVER_MK2_CLIP_FMJ, WEAPONADDON_DLC_REVOLVER_MK2_CLIP_HOLLOWPOINT, WEAPONADDON_DLC_REVOLVER_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_REVOLVER_MK2_CLIP_TRACER, WEAPONADDON_DLC_REVOLVER_MK2_AT_SIGHTS, WEAPONADDON_DLC_REVOLVER_MK2_AT_SCOPE_MACRO_MK2, WEAPONADDON_DLC_REVOLVER_MK2_AT_PI_FLSH, WEAPONADDON_DLC_REVOLVER_MK2_AT_PI_COMP_03, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_01, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_02, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_FMJ, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_INCENDIARY, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_TRACER, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_FLSH, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SIGHTS, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SCOPE_MACRO_02_MK2, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SCOPE_SMALL_MK2, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_BP_BARREL_01, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_BP_BARREL_02, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_SUPP, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_01, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_02, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_03, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_04, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_05, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_06, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_07, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_AFGRIP_02, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_02, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_03, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_04, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_05, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_06, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_07, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_08, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_09, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_10, WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_IND_01, WEAPONADDON_DLC_REVOLVER_MK2_CAMO, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_02, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_03, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_04, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_05, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_06, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_07, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_08, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_09, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_10, WEAPONADDON_DLC_REVOLVER_MK2_CAMO_IND_01, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_02, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_03, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_04, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_05, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_06, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_07, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_08, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_09, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_10, WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_IND_01, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_02, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_03, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_04, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_05, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_06, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_07, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_08, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_09, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_10, WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_IND_01, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_02, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_03, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_04, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_05, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_06, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_07, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_08, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_09, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_10, WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_IND_01, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_02, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_03, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_04, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_05, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_06, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_07, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_08, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_09, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_10, WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_IND_01, WEAPONADDON_DLC_RAYPISTOL_VARMOD_XMAS18, WEAPONADDON_DLC_CERAMICPISTOL_CLIP_01, WEAPONADDON_DLC_CERAMICPISTOL_CLIP_02, WEAPONADDON_DLC_CERAMICPISTOL_AT_PI_SUPP, #IF FEATURE_HEIST_ISLAND WEAPONADDON_DLC_GADGETPISTOL_CLIP_01, WEAPONADDON_DLC_COMBATSHOTGUN_CLIP1, WEAPONADDON_DLC_COMBATSHOTGUN_AT_AR_FLSH, WEAPONADDON_DLC_COMBATSHOTGUN_COMPONENT_AT_AR_SUPP, WEAPONADDON_DLC_MILITARYRIFLE_CLIP_01, WEAPONADDON_DLC_MILITARYRIFLE_CLIP_02, WEAPONADDON_DLC_MILITARYRIFLE_SIGHT_01, WEAPONADDON_DLC_MILITARYRIFLE_AT_SCOPE_SMALL, WEAPONADDON_DLC_MILITARYRIFLE_AT_AR_FLSH, WEAPONADDON_DLC_MILITARYRIFLE_AT_AR_SUPP, #ENDIF #IF FEATURE_FIXER WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CAMO, WEAPONADDON_DLC_APPISTOL_WEAPONCOMPONENT_SECURITY, WEAPONADDON_DLC_MICROSMG_WEAPONCOMPONENT_SECURITY, WEAPONADDON_DLC_PUMPSHOTGUN_WEAPONCOMPONENT_SECURITY, WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_SIGHT_01, #ENDIF #IF FEATURE_DLC_1_2022 WEAPONADDON_DLC_TACTICALRIFLE_CLIP_01, WEAPONADDON_DLC_TACTICALRIFLE_CLIP_02, WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_FLSH_REH, WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_SUPP_02, WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_GRIP, #ENDIF //Keep CNC stuff at bottom of enum. #IF FEATURE_COPS_N_CROOKS WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_CLIP_01, WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_CLIP_02, WEAPONADDON_DLC_POLICERIFLE_AT_AR_AFGRIP, WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_FLASH_01, WEAPONADDON_DLC_POLICERIFLE_AT_AR_SUPP, #ENDIF MAX_NUM_WEAPON_ADDONS ENDENUM FUNC BOOL SHOULD_WEAPON_BE_FREE_FOR_PLAYER(WEAPON_TYPE eWeapon) IF NETWORK_IS_GAME_IN_PROGRESS() IF HAS_MP_CRIMINAL_ENTERPRISE_PREMIUM_OR_STARTER_ACCESS() IF eWeapon = WEAPONTYPE_DLC_MARKSMANRIFLE OR eWeapon = WEAPONTYPE_DLC_COMPACTRIFLE OR eWeapon = WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN TRUE ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC #IF IS_DEBUG_BUILD FUNC STRING GET_DEBUG_STRING_FROM_WEAPONSLOT(WEAPON_SLOT weaponSlot) SWITCH weaponSlot CASE WEAPONSLOT_INVALID RETURN "WEAPONSLOT_INVALID" BREAK CASE WEAPONSLOT_UNARMED RETURN "WEAPONSLOT_UNARMED" BREAK CASE WEAPONSLOT_KNIFE RETURN "WEAPONSLOT_KNIFE" BREAK CASE WEAPONSLOT_NIGHTSTICK RETURN "WEAPONSLOT_NIGHTSTICK" BREAK CASE WEAPONSLOT_HAMMER RETURN "WEAPONSLOT_HAMMER" BREAK CASE WEAPONSLOT_BAT RETURN "WEAPONSLOT_BAT" BREAK CASE WEAPONSLOT_CROWBAR RETURN "WEAPONSLOT_CROWBAR" BREAK CASE WEAPONSLOT_GOLFCLUB RETURN "WEAPONSLOT_GOLFCLUB" BREAK CASE WEAPONSLOT_STUNGUN RETURN "WEAPONSLOT_STUNGUN" BREAK CASE WEAPONSLOT_RUBBERGUN RETURN "WEAPONSLOT_RUBBERGUN" BREAK CASE WEAPONSLOT_PISTOL RETURN "WEAPONSLOT_PISTOL" BREAK CASE WEAPONSLOT_COMBATPISTOL RETURN "WEAPONSLOT_COMBATPISTOL" BREAK CASE WEAPONSLOT_APPISTOL RETURN "WEAPONSLOT_APPISTOL" BREAK CASE WEAPONSLOT_MICROSMG RETURN "WEAPONSLOT_MICROSMG" BREAK CASE WEAPONSLOT_SMG RETURN "WEAPONSLOT_SMG" BREAK CASE WEAPONSLOT_ASSAULTRIFLE RETURN "WEAPONSLOT_ASSAULTRIFLE" BREAK CASE WEAPONSLOT_CARBINERIFLE RETURN "WEAPONSLOT_CARBINERIFLE" BREAK CASE WEAPONSLOT_ADVANCEDRIFLE RETURN "WEAPONSLOT_ADVANCEDRIFLE" BREAK CASE WEAPONSLOT_MG RETURN "WEAPONSLOT_MG" BREAK CASE WEAPONSLOT_COMBATMG RETURN "WEAPONSLOT_COMBATMG" BREAK CASE WEAPONSLOT_PUMPSHOTGUN RETURN "WEAPONSLOT_PUMPSHOTGUN" BREAK CASE WEAPONSLOT_SAWNOFFSHOTGUN RETURN "WEAPONSLOT_SAWNOFFSHOTGUN" BREAK CASE WEAPONSLOT_ASSAULTSHOTGUN RETURN "WEAPONSLOT_ASSAULTSHOTGUN" BREAK CASE WEAPONSLOT_SNIPERRIFLE RETURN "WEAPONSLOT_SNIPERRIFLE" BREAK CASE WEAPONSLOT_HEAVYSNIPER RETURN "WEAPONSLOT_HEAVYSNIPER" BREAK CASE WEAPONSLOT_GRENADELAUNCHER RETURN "WEAPONSLOT_GRENADELAUNCHER" BREAK CASE WEAPONSLOT_RPG RETURN "WEAPONSLOT_RPG" BREAK CASE WEAPONSLOT_MINIGUN RETURN "WEAPONSLOT_MINIGUN" BREAK CASE WEAPONSLOT_GRENADE RETURN "WEAPONSLOT_GRENADE" BREAK CASE WEAPONSLOT_STICKYBOMB RETURN "WEAPONSLOT_STICKYBOMB" BREAK CASE WEAPONSLOT_SMOKEGRENADE RETURN "WEAPONSLOT_SMOKEGRENADE" BREAK CASE WEAPONSLOT_MOLOTOV RETURN "WEAPONSLOT_MOLOTOV" BREAK CASE WEAPONSLOT_FIREEXTINGUISHER RETURN "WEAPONSLOT_FIREEXTINGUISHER" BREAK CASE WEAPONSLOT_PETROLCAN RETURN "WEAPONSLOT_PETROLCAN" BREAK CASE WEAPONSLOT_LOUDHAILER RETURN "WEAPONSLOT_LOUDHAILER" BREAK CASE WEAPONSLOT_PARACHUTE RETURN "WEAPONSLOT_PARACHUTE" BREAK CASE WEAPONSLOT_DIGISCANNER RETURN "WEAPONSLOT_DIGISCANNER" BREAK CASE WEAPONSLOT_OBJECT RETURN "WEAPONSLOT_OBJECT" BREAK CASE WEAPONSLOT_DLC_PISTOL50 RETURN "WEAPONSLOT_DLC_PISTOL50" BREAK CASE WEAPONSLOT_DLC_ASSAULTSMG RETURN "WEAPONSLOT_DLC_ASSAULTSMG" BREAK CASE WEAPONSLOT_DLC_HEAVYRIFLE RETURN "WEAPONSLOT_DLC_HEAVYRIFLE" BREAK CASE WEAPONSLOT_DLC_ASSAULTMG RETURN "WEAPONSLOT_DLC_ASSAULTMG" BREAK CASE WEAPONSLOT_DLC_BULLPUPSHOTGUN RETURN "WEAPONSLOT_DLC_BULLPUPSHOTGUN" BREAK CASE WEAPONSLOT_DLC_ASSAULTSNIPER RETURN "WEAPONSLOT_DLC_ASSAULTSNIPER" BREAK CASE WEAPONSLOT_DLC_PROGRAMMABLEAR RETURN "WEAPONSLOT_DLC_PROGRAMMABLEAR" BREAK CASE WEAPONSLOT_DLC_SPECIALCARBINE RETURN "WEAPONSLOT_DLC_SPECIALCARBINE" BREAK CASE WEAPONSLOT_DLC_BOTTLE RETURN "WEAPONSLOT_DLC_BOTTLE" BREAK CASE WEAPONSLOT_DLC_SNSPISTOL RETURN "WEAPONSLOT_DLC_SNSPISTOL" BREAK CASE WEAPONSLOT_DLC_HEAVYPISTOL RETURN "WEAPONSLOT_DLC_HEAVYPISTOL" BREAK CASE WEAPONSLOT_DLC_BULLPUPRIFLE RETURN "WEAPONSLOT_DLC_BULLPUPRIFLE" BREAK CASE WEAPONSLOT_DLC_GUSENBERG RETURN "WEAPONSLOT_DLC_GUSENBERG" BREAK CASE WEAPONSLOT_DLC_MUSKET RETURN "WEAPONSLOT_DLC_MUSKET" BREAK CASE WEAPONSLOT_DLC_FIREWORK RETURN "WEAPONSLOT_DLC_FIREWORK" BREAK CASE WEAPONSLOT_DLC_FLAREGUN RETURN "WEAPONSLOT_DLC_FLAREGUN" BREAK CASE WEAPONSLOT_DLC_HATCHET RETURN "WEAPONSLOT_DLC_HATCHET" BREAK CASE WEAPONSLOT_DLC_RAILGUN RETURN "WEAPONSLOT_DLC_RAILGUN" BREAK //LUX CASE WEAPONSLOT_DLC_COMBATPDW RETURN "WEAPONSLOT_DLC_COMBATPDW" BREAK CASE WEAPONSLOT_DLC_KNUCKLE RETURN "WEAPONSLOT_DLC_KNUCKLE" BREAK CASE WEAPONSLOT_DLC_MARKSMANPISTOL RETURN "WEAPONSLOT_DLC_MARKSMANPISTOL" BREAK ENDSWITCH RETURN "INVALID" ENDFUNC #ENDIF /// PURPOSE: Returns the text label that represents the specified weapon name FUNC STRING GET_WEAPON_DESCRIPTION(WEAPON_TYPE eWeapon, BOOL bUseShortDescription = FALSE) IF SHOULD_WEAPON_BE_FREE_FOR_PLAYER(eWeapon) AND NOT bUseShortDescription SWITCH eWeapon CASE WEAPONTYPE_DLC_MARKSMANRIFLE IF NETWORK_IS_GAME_IN_PROGRESS() IF HAS_PED_GOT_WEAPON(PLAYER_PED_ID(), WEAPONTYPE_DLC_MARKSMANRIFLE_MK2) RETURN "WCD_MK1_LOCK" ENDIF ENDIF RETURN "WTDE2_MKRIFLE" BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN "WTDE2_CMPRIFLE" BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN "WTDE2_CMPGL" BREAK DEFAULT CASSERTLN(DEBUG_SHOPS, "GET_WEAPON_DESCRIPTION - unknown free description for wapon ", eWeapon, ".") BREAK ENDSWITCH ENDIF SWITCH eWeapon CASE WEAPONTYPE_INVALID RETURN "" BREAK CASE WEAPONTYPE_UNARMED RETURN "" BREAK // Pistols CASE WEAPONTYPE_PISTOL RETURN "WT_PIST_DESC" BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN "WTD_PIST_CBT" BREAK CASE WEAPONTYPE_APPISTOL RETURN "WTD_PIST_AP" BREAK // Sub machine guns CASE WEAPONTYPE_SMG RETURN "WTD_SMG" BREAK CASE WEAPONTYPE_MICROSMG RETURN "WTD_SMG_MCR" BREAK // Assault rifles CASE WEAPONTYPE_ASSAULTRIFLE RETURN "WTD_RIFLE_ASL" BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN "WTD_RIFLE_CBN" BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN "WTD_RIFLE_ADV" BREAK // Light machine guns CASE WEAPONTYPE_MG RETURN "WTD_MG" BREAK CASE WEAPONTYPE_COMBATMG RETURN "WTD_MG_CBT" BREAK // Shotguns CASE WEAPONTYPE_PUMPSHOTGUN RETURN "WTD_SG_PMP" BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN "WTD_SG_SOF" BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN "WTD_SG_ASL" BREAK // Sniper rifles CASE WEAPONTYPE_HEAVYSNIPER RETURN "WTD_SNIP_HVY" BREAK CASE WEAPONTYPE_REMOTESNIPER RETURN "WTD_SNIP_RMT" BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN "WTD_SNIP_RIF" BREAK // Heavy weapons CASE WEAPONTYPE_GRENADELAUNCHER RETURN "WTD_GL" BREAK CASE WEAPONTYPE_RPG RETURN "WTD_RPG" BREAK CASE WEAPONTYPE_MINIGUN RETURN "WTD_MINIGUN" BREAK // Thrown weapons CASE WEAPONTYPE_GRENADE RETURN "WTD_GNADE" BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN "WTD_GNADE_SMK" BREAK CASE WEAPONTYPE_STICKYBOMB RETURN "WTD_GNADE_STK" BREAK CASE WEAPONTYPE_MOLOTOV RETURN "WTD_MOLOTOV" BREAK // Special weapons CASE WEAPONTYPE_STUNGUN RETURN "WTD_STUN" BREAK CASE WEAPONTYPE_PETROLCAN RETURN "WTD_PETROL" BREAK CASE WEAPONTYPE_DIGISCANNER RETURN "WTD_DIGI" BREAK CASE WEAPONTYPE_ELECTRIC_FENCE RETURN "WTD_ELCFEN" BREAK // Vehicle weapons CASE WEAPONTYPE_VEHICLE_WEAPON_TANK RETURN "" BREAK CASE WEAPONTYPE_VEHICLE_SPACE_ROCKET RETURN "" BREAK CASE WEAPONTYPE_VEHICLE_PLAYER_LASER RETURN "" BREAK // Held object CASE WEAPONTYPE_OBJECT RETURN "" BREAK // Gadgets CASE GADGETTYPE_PARACHUTE RETURN "WTD_PARA" BREAK // Ammo CASE WEAPONTYPE_AMMO_RPG RETURN "" BREAK CASE WEAPONTYPE_AMMO_TANK RETURN "" BREAK CASE WEAPONTYPE_AMMO_SPACE_ROCKET RETURN "" BREAK CASE WEAPONTYPE_AMMO_PLAYER_LASER RETURN "" BREAK CASE WEAPONTYPE_AMMO_ENEMY_LASER RETURN "" BREAK // Melee Weapons CASE WEAPONTYPE_KNIFE RETURN "WTD_KNIFE" BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN "WTD_NGTSTK" BREAK CASE WEAPONTYPE_HAMMER RETURN "WTD_HAMMER" BREAK CASE WEAPONTYPE_BAT RETURN "WTD_BAT" BREAK CASE WEAPONTYPE_CROWBAR RETURN "WTD_CROWBAR" BREAK CASE WEAPONTYPE_GOLFCLUB RETURN "WTD_GOLFCLUB" BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN "WTD_DLC_HATCHET" BREAK CASE WEAPONTYPE_RAMMEDBYVEHICLE RETURN "" BREAK CASE WEAPONTYPE_RUNOVERBYVEHICLE RETURN "" BREAK // DLC CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN "WTD_SMG_ASL" BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN "WTD_SG_BLP" BREAK CASE WEAPONTYPE_DLC_PISTOL50 RETURN "WTD_PIST_50" BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN "WTD_VPISTOL" BREAK CASE WEAPONTYPE_DLC_DAGGER RETURN "WTD_DAGGER" BREAK // Xmas 2 CASE WEAPONTYPE_DLC_PROXMINE RETURN "WTD_PRXMINE" BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN "WTD_HOMLNCH" BREAK // Lowrider CASE WEAPONTYPE_DLC_MACHETE RETURN "WTD_MACHETE" BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN "WTD_MCHPIST" BREAK // Halloween CASE WEAPONTYPE_DLC_FLASHLIGHT RETURN "WTD_FLASHLIGHT" BREAK // Lowrider 2 CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN "WTD_DBSHGN" BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN "WTD_CMPRIFLE" BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE RETURN "WTD_SWBLADE" BREAK CASE WEAPONTYPE_DLC_REVOLVER RETURN "WTD_REVOLVER" BREAK CASE WEAPONTYPE_DLC_DOUBLEACTION IF GET_MP_BOOL_PLAYER_STAT(MPPLY_HEADSHOTCHLENGECOMPLETED) OR bUseShortDescription RETURN "WTD_REV_DA" ELSE IF NETWORK_HAS_SOCIAL_CLUB_ACCOUNT() RETURN "WTD_REV_DA_2" ELSE RETURN "WTD_REV_DA_3" ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE IF NETWORK_IS_GAME_IN_PROGRESS() IF HAS_PED_GOT_WEAPON(PLAYER_PED_ID(), WEAPONTYPE_DLC_SPECIALCARBINE_MK2) RETURN "WCD_MK1_LOCK" ENDIF ENDIF scrShopWeaponData specialCarbineData IF GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, specialCarbineData) != -1 RETURN GET_DLC_WEAPON_STRING(specialCarbineData.weaponDesc) ENDIF BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE IF NETWORK_IS_GAME_IN_PROGRESS() IF HAS_PED_GOT_WEAPON(PLAYER_PED_ID(), WEAPONTYPE_DLC_MARKSMANRIFLE_MK2) RETURN "WCD_MK1_LOCK" ENDIF ENDIF scrShopWeaponData marksmanRifleData IF GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, marksmanRifleData) != -1 RETURN GET_DLC_WEAPON_STRING(marksmanRifleData.weaponDesc) ENDIF BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE IF NETWORK_IS_GAME_IN_PROGRESS() IF HAS_PED_GOT_WEAPON(PLAYER_PED_ID(), WEAPONTYPE_DLC_BULLPUPRIFLE_MK2) RETURN "WCD_MK1_LOCK" ENDIF ENDIF scrShopWeaponData bullPupRifleData IF GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, bullPupRifleData) != -1 RETURN GET_DLC_WEAPON_STRING(bullPupRifleData.weaponDesc) ENDIF BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN "WTD_RAYPISTOL" BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN "WTD_RAYCARBINE" BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN "WTD_RAYMINIGUN" BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN "WTD_REV_NV" BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN "WTD_CERPST" BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON RETURN "WTD_BATON" BREAK CASE WEAPONTYPE_DLC_POLICERIFLE RETURN "WTD_PLCRIFLE" BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN "WTD_MLTRYRFL" BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN "WTD_GDGTPST" BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN "WTD_CMBSHGN" BREAK #ENDIF // DLC Lookup DEFAULT scrShopWeaponData weaponData IF GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, weaponData) != -1 RETURN GET_DLC_WEAPON_STRING(weaponData.weaponDesc) ENDIF BREAK ENDSWITCH RETURN "WT_INVALID" ENDFUNC FUNC STRING GET_WEAPON_DESCRIPTION_FOR_REWARD(WEAPON_TYPE eWeapon) SWITCH eWeapon CASE WEAPONTYPE_INVALID RETURN "" BREAK CASE WEAPONTYPE_UNARMED RETURN "" BREAK // Pistols CASE WEAPONTYPE_PISTOL RETURN "WT_PIST_DESC_S" BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN "WTD_PIST_CBT_S" BREAK CASE WEAPONTYPE_APPISTOL RETURN "WTD_PIST_AP_S" BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN "WTD_PIST_AP_S" BREAK // Sub machine guns CASE WEAPONTYPE_SMG RETURN "WTD_SMG_MCR_S" BREAK CASE WEAPONTYPE_MICROSMG RETURN "WTD_SMG_S" BREAK // Assault rifles CASE WEAPONTYPE_ASSAULTRIFLE RETURN "WTD_RIFLE_ASL_S" BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN "WTD_RIFLE_CBN_S" BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN "WTD_RIFLE_CBN_S" BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN "WTD_RIFLE_ADV_S" BREAK // Light machine guns CASE WEAPONTYPE_MG RETURN "WTD_MG_S" BREAK CASE WEAPONTYPE_COMBATMG RETURN "WTD__MG_CBT_S" BREAK // Shotguns CASE WEAPONTYPE_PUMPSHOTGUN RETURN "WTD_SG_PMP_S" BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN "WTD_SG_SOF_S" BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN "WTD_SG_ASL_S" BREAK // Sniper rifles CASE WEAPONTYPE_HEAVYSNIPER RETURN "WTD_SNIP_HVY_S" BREAK CASE WEAPONTYPE_REMOTESNIPER RETURN "WTD_SNIP_RMT_S" BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN "WTD_SNIP_RIF_S" BREAK // Heavy weapons CASE WEAPONTYPE_GRENADELAUNCHER RETURN "WTD_GL_S" BREAK CASE WEAPONTYPE_RPG RETURN "WTD_RPG_S" BREAK CASE WEAPONTYPE_MINIGUN RETURN "WTD_MINIGUN_S" BREAK // Thrown weapons CASE WEAPONTYPE_GRENADE RETURN "WTD_GNADE_S" BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN "WTD_GNADE_SMK_S" BREAK CASE WEAPONTYPE_STICKYBOMB RETURN "WTD_GNADE_STK_S" BREAK CASE WEAPONTYPE_MOLOTOV RETURN "" BREAK // Special weapons CASE WEAPONTYPE_STUNGUN RETURN "WTD_STUN_S" BREAK CASE WEAPONTYPE_PETROLCAN RETURN "WTD_PETROL_S" BREAK CASE WEAPONTYPE_DIGISCANNER RETURN "WTD_DIGI_S" BREAK CASE WEAPONTYPE_ELECTRIC_FENCE RETURN "WTD_ELCFEN_S" BREAK // Vehicle weapons CASE WEAPONTYPE_VEHICLE_WEAPON_TANK RETURN "" BREAK CASE WEAPONTYPE_VEHICLE_SPACE_ROCKET RETURN "" BREAK CASE WEAPONTYPE_VEHICLE_PLAYER_LASER RETURN "" BREAK // Held object CASE WEAPONTYPE_OBJECT RETURN "" BREAK // Gadgets CASE GADGETTYPE_PARACHUTE RETURN "" BREAK // Ammo CASE WEAPONTYPE_AMMO_RPG RETURN "" BREAK CASE WEAPONTYPE_AMMO_TANK RETURN "" BREAK CASE WEAPONTYPE_AMMO_SPACE_ROCKET RETURN "" BREAK CASE WEAPONTYPE_AMMO_PLAYER_LASER RETURN "" BREAK CASE WEAPONTYPE_AMMO_ENEMY_LASER RETURN "" BREAK // Melee Weapons CASE WEAPONTYPE_KNIFE RETURN "WT_KNIF_DESC_S" BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN "" BREAK CASE WEAPONTYPE_HAMMER RETURN "" BREAK CASE WEAPONTYPE_BAT RETURN "" BREAK CASE WEAPONTYPE_CROWBAR RETURN "" BREAK CASE WEAPONTYPE_GOLFCLUB RETURN "" BREAK CASE WEAPONTYPE_RAMMEDBYVEHICLE RETURN "" BREAK CASE WEAPONTYPE_RUNOVERBYVEHICLE RETURN "" BREAK CASE WEAPONTYPE_DLC_BOTTLE RETURN "" BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN "" BREAK CASE WEAPONTYPE_DLC_KNUCKLE RETURN "" BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE RETURN "WTD_SWBLADE" BREAK CASE WEAPONTYPE_DLC_REVOLVER RETURN "WTD_REVOLVER" BREAK CASE WEAPONTYPE_DLC_DOUBLEACTION RETURN "" BREAK ENDSWITCH RETURN "WT_INVALID" ENDFUNC #IF IS_DEBUG_BUILD FUNC STRING GET_WEAPON_TYPE_NAME_FOR_DEBUG(WEAPON_TYPE eWeapon) SWITCH eWeapon CASE WEAPONTYPE_UNARMED RETURN "WEAPONTYPE_UNARMED" // Pistols CASE WEAPONTYPE_PISTOL RETURN "WEAPONTYPE_PISTOL" CASE WEAPONTYPE_COMBATPISTOL RETURN "WEAPONTYPE_COMBATPISTOL" CASE WEAPONTYPE_APPISTOL RETURN "WEAPONTYPE_APPISTOL" CASE WEAPONTYPE_DLC_SNSPISTOL RETURN "WEAPONTYPE_DLC_SNSPISTOL" // Sub machine guns CASE WEAPONTYPE_SMG RETURN "WEAPONTYPE_SMG" CASE WEAPONTYPE_MICROSMG RETURN "WEAPONTYPE_MICROSMG" // Assault rifles CASE WEAPONTYPE_ASSAULTRIFLE RETURN "WEAPONTYPE_ASSAULTRIFLE" CASE WEAPONTYPE_CARBINERIFLE RETURN "WEAPONTYPE_CARBINERIFLE" CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN "WEAPONTYPE_DLC_SPECIALCARBINE" CASE WEAPONTYPE_ADVANCEDRIFLE RETURN "WEAPONTYPE_ADVANCEDRIFLE" // Light machine guns CASE WEAPONTYPE_MG RETURN "WEAPONTYPE_MG" CASE WEAPONTYPE_COMBATMG RETURN "WEAPONTYPE_COMBATMG" // Shotguns CASE WEAPONTYPE_PUMPSHOTGUN RETURN "WEAPONTYPE_PUMPSHOTGUN" CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN "WEAPONTYPE_SAWNOFFSHOTGUN" CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN "WEAPONTYPE_ASSAULTSHOTGUN" CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN "WEAPONTYPE_DLC_HEAVYSHOTGUN" CASE WEAPONTYPE_DLC_MUSKET RETURN "WEAPONTYPE_DLC_MUSKET" CASE WEAPONTYPE_DLC_AUTOSHOTGUN RETURN "WEAPONTYPE_DLC_AUTOSHOTGUN" CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN "WEAPONTYPE_DLC_BULLPUPSHOTGUN" CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN "WEAPONTYPE_DLC_DBSHOTGUN" // Sniper rifles CASE WEAPONTYPE_HEAVYSNIPER RETURN "WEAPONTYPE_HEAVYSNIPER" CASE WEAPONTYPE_REMOTESNIPER RETURN "WEAPONTYPE_REMOTESNIPER" CASE WEAPONTYPE_SNIPERRIFLE RETURN "WEAPONTYPE_SNIPERRIFLE" // Heavy weapons CASE WEAPONTYPE_GRENADELAUNCHER RETURN "WEAPONTYPE_GRENADELAUNCHER" CASE WEAPONTYPE_RPG RETURN "WEAPONTYPE_RPG" CASE WEAPONTYPE_MINIGUN RETURN "WEAPONTYPE_MINIGUN" // Thrown weapons CASE WEAPONTYPE_GRENADE RETURN "WEAPONTYPE_GRENADE" CASE WEAPONTYPE_SMOKEGRENADE RETURN "WEAPONTYPE_SMOKEGRENADE" CASE WEAPONTYPE_STICKYBOMB RETURN "WEAPONTYPE_STICKYBOMB" CASE WEAPONTYPE_MOLOTOV RETURN "WEAPONTYPE_MOLOTOV" // Special weapons CASE WEAPONTYPE_STUNGUN RETURN "WEAPONTYPE_STUNGUN" CASE WEAPONTYPE_PETROLCAN RETURN "WEAPONTYPE_PETROLCAN" CASE WEAPONTYPE_DIGISCANNER RETURN "WEAPONTYPE_DIGISCANNER" CASE WEAPONTYPE_ELECTRIC_FENCE RETURN "WEAPONTYPE_ELECTRIC_FENCE" // Vehicle weapons CASE WEAPONTYPE_VEHICLE_WEAPON_TANK RETURN "WEAPONTYPE_VEHICLE_WEAPON_TANK" CASE WEAPONTYPE_VEHICLE_SPACE_ROCKET RETURN "WEAPONTYPE_VEHICLE_SPACE_ROCKET" CASE WEAPONTYPE_VEHICLE_PLAYER_LASER RETURN "WEAPONTYPE_VEHICLE_PLAYER_LASER" // Held object CASE WEAPONTYPE_OBJECT RETURN "WEAPONTYPE_OBJECT" // Gadgets CASE GADGETTYPE_PARACHUTE RETURN "GADGETTYPE_PARACHUTE" // Ammo CASE WEAPONTYPE_AMMO_RPG RETURN "WEAPONTYPE_AMMO_RPG" CASE WEAPONTYPE_AMMO_TANK RETURN "WEAPONTYPE_AMMO_TANK" CASE WEAPONTYPE_AMMO_SPACE_ROCKET RETURN "WEAPONTYPE_AMMO_SPACE_ROCKET" CASE WEAPONTYPE_AMMO_PLAYER_LASER RETURN "WEAPONTYPE_AMMO_PLAYER_LASER" CASE WEAPONTYPE_AMMO_ENEMY_LASER RETURN "WEAPONTYPE_AMMO_ENEMY_LASER" // Melee Weapons CASE WEAPONTYPE_KNIFE RETURN "WEAPONTYPE_KNIFE" CASE WEAPONTYPE_NIGHTSTICK RETURN "WEAPONTYPE_NIGHTSTICK" CASE WEAPONTYPE_HAMMER RETURN "WEAPONTYPE_HAMMER" CASE WEAPONTYPE_BAT RETURN "WEAPONTYPE_BAT" CASE WEAPONTYPE_CROWBAR RETURN "WEAPONTYPE_CROWBAR" CASE WEAPONTYPE_GOLFCLUB RETURN "WEAPONTYPE_GOLFCLUB" CASE WEAPONTYPE_RAMMEDBYVEHICLE RETURN "WEAPONTYPE_RAMMEDBYVEHICLE" CASE WEAPONTYPE_RUNOVERBYVEHICLE RETURN "WEAPONTYPE_RUNOVERBYVEHICLE" CASE WEAPONTYPE_DLC_BOTTLE RETURN "WEAPONTYPE_DLC_BOTTLE" CASE WEAPONTYPE_DLC_HATCHET RETURN "WEAPONTYPE_DLC_HATCHET" CASE WEAPONTYPE_DLC_KNUCKLE RETURN "WEAPONTYPE_DLC_KNUCKLE" CASE WEAPONTYPE_DLC_SWITCHBLADE RETURN "WEAPONTYPE_DLC_SWITCHBLADE" CASE WEAPONTYPE_DLC_REVOLVER RETURN "WEAPONTYPE_DLC_REVOLVER" CASE WEAPONTYPE_DLC_DOUBLEACTION RETURN "WEAPONTYPE_DLC_DOUBLEACTION" CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN "WEAPONTYPE_DLC_MARKSMANRIFLE" CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN "WEAPONTYPE_DLC_BULLPUPRIFLE" CASE WEAPONTYPE_DLC_RAYPISTOL RETURN "WEAPONTYPE_DLC_RAYPISTOL" CASE WEAPONTYPE_DLC_RAYCARBINE RETURN "WEAPONTYPE_DLC_RAYCARBINE" CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN "WEAPONTYPE_DLC_RAYMINIGUN" CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN "WEAPONTYPE_DLC_NAVYREVOLVER" CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN "WEAPONTYPE_DLC_CERAMICPISTOL" CASE WEAPONTYPE_DLC_PROXMINE RETURN "WEAPONTYPE_DLC_PROXMINE" CASE WEAPONTYPE_DLC_PIPEBOMB RETURN "WEAPONTYPE_DLC_PIPEBOMB" #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_RIOTSHOTGUN RETURN "WEAPONTYPE_DLC_RIOTSHOTGUN" CASE WEAPONTYPE_DLC_BATON RETURN "WEAPONTYPE_DLC_BATON" CASE WEAPONTYPE_DLC_POLICERIFLE RETURN "WEAPONTYPE_DLC_POLICERIFLE" #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN "WEAPONTYPE_DLC_GADGETPISTOL" CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN "WEAPONTYPE_DLC_MILITARYRIFLE" CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN "WEAPONTYPE_DLC_COMBATSHOTGUN" #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN "WEAPONTYPE_DLC_EMPLAUNCHER" CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN "WEAPONTYPE_DLC_FERTILIZERCAN" CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN "WEAPONTYPE_DLC_STUNGUNG_MP" #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR RETURN "WEAPONTYPE_DLC_METALDETECTOR" CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN "WEAPONTYPE_DLC_PRECISIONRIFLE" CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN "WEAPONTYPE_DLC_TACTICALRIFLE" #ENDIF ENDSWITCH RETURN "WEAPONTYPE_INVALID" ENDFUNC #ENDIF /// PURPOSE: Sets up the sWeapon struct with weapon info for the specified group/slot FUNC INT GET_COST_OF_AMMO_CLIP(WEAPON_TYPE tempweapon) SWITCH tempweapon CASE WEAPONTYPE_STUNGUN RETURN 50 BREAK CASE WEAPONTYPE_APPISTOL RETURN 25 BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN 14 BREAK CASE WEAPONTYPE_PISTOL RETURN 12 BREAK CASE WEAPONTYPE_MICROSMG RETURN 20 BREAK CASE WEAPONTYPE_SMG RETURN 36 BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN 8 BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN 8 BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN 8 BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN 30 BREAK CASE WEAPONTYPE_CARBINERIFLE // CASE WEAPONTYPE_DLC_SPECIALCARBINE - GET_COST_OF_AMMO_CLIP is never called so I probably don't need to deal with DLC weapons here RETURN 36 BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN 45 BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN 20 BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN 20 BREAK CASE WEAPONTYPE_MG RETURN 50 BREAK CASE WEAPONTYPE_COMBATMG RETURN 50 BREAK CASE WEAPONTYPE_RPG RETURN 100 BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN 50 BREAK CASE WEAPONTYPE_MINIGUN RETURN 50 BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN 30 BREAK CASE WEAPONTYPE_GRENADE RETURN 30 BREAK CASE WEAPONTYPE_STICKYBOMB RETURN 100 BREAK ENDSWITCH RETURN 20 ENDFUNC FUNC BOOL IS_PED_WEAPON_LOADED(PED_INDEX pedID, WEAPON_TYPE weaponToCheck) IF NOT IS_PED_INJURED(pedID) IF IS_WEAPON_VALID(weaponToCheck) IF HAS_PED_GOT_WEAPON(pedID, weaponToCheck) IF GET_AMMO_IN_PED_WEAPON(pedID,weaponToCheck) > 0 RETURN TRUE ENDIF ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if the player has a firearm in their inventory FUNC BOOL HAS_PED_GOT_LOADED_FIREARM(PED_INDEX pedID, BOOL bIncludeThrownWeapons = FALSE) IF IS_PED_INJURED(pedID) RETURN FALSE ENDIF // Pistols IF IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_PISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_COMBATPISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_APPISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_SNSPISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_HEAVYPISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_MARKSMANPISTOL) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_MACHINEPISTOL) // Sub machine guns OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_MICROSMG) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_SMG) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_COMBATPDW) // Assault rifles OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_ASSAULTRIFLE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_CARBINERIFLE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_SPECIALCARBINE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_ADVANCEDRIFLE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_BULLPUPRIFLE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_GUSENBERG) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_MUSKET) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_COMPACTRIFLE) // Light machine guns OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_MG) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_COMBATMG) // Shotguns OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_PUMPSHOTGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_SAWNOFFSHOTGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_ASSAULTSHOTGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_HEAVYSHOTGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_DBSHOTGUN) // Sniper rifles OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_SNIPERRIFLE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_HEAVYSNIPER) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_REMOTESNIPER) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_MARKSMANRIFLE) // Heavy weapons OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_GRENADELAUNCHER) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_GRENADELAUNCHER_SMOKE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_RPG) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_MINIGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_HOMINGLAUNCHER) // Special weapons OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_STUNGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_PETROLCAN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DIGISCANNER) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_FIREWORK) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_FLAREGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_COMPACTLAUNCHER) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_AUTOSHOTGUN) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_MINISMG) RETURN TRUE ENDIF IF bIncludeThrownWeapons // Thrown weapons IF IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_GRENADE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_SMOKEGRENADE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_STICKYBOMB) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_MOLOTOV) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_PROXMINE) OR IS_PED_WEAPON_LOADED(pedID, WEAPONTYPE_DLC_PIPEBOMB) RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Returns TRUE if the player has a firearm in their inventory FUNC BOOL HAS_PED_GOT_FIREARM(PED_INDEX pedID, BOOL bIncludeThrownWeapons = FALSE) IF IS_PED_INJURED(pedID) RETURN FALSE ENDIF // Pistols IF HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_PISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_COMBATPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_APPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_SNSPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_HEAVYPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_VINTAGEPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_MARKSMANPISTOL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_MACHINEPISTOL) // Sub machine guns OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_MICROSMG) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_SMG) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_COMBATPDW) // Assault rifles OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_ASSAULTRIFLE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_CARBINERIFLE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_SPECIALCARBINE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_ADVANCEDRIFLE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_BULLPUPRIFLE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_GUSENBERG) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_COMPACTRIFLE) // Light machine guns OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_MG) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_COMBATMG) // Shotguns OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_PUMPSHOTGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_SAWNOFFSHOTGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_ASSAULTSHOTGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_HEAVYSHOTGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_DBSHOTGUN) // Sniper rifles OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_SNIPERRIFLE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_HEAVYSNIPER) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_REMOTESNIPER) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_MARKSMANRIFLE) // Heavy weapons OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_GRENADELAUNCHER) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_GRENADELAUNCHER_SMOKE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_RPG) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_MINIGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_HOMINGLAUNCHER) // Special weapons OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_STUNGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_PETROLCAN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DIGISCANNER) // Damage types //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_ELECTRIC_FENCE) // Melee Weapons //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_KNIFE) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_NIGHTSTICK) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_HAMMER) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_BAT) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_CROWBAR) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_BOTTLE) // Vehicle weapons //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_VEHICLE_WEAPON_TANK) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_VEHICLE_SPACE_ROCKET) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_VEHICLE_PLAYER_LASER) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_VEHICLE_PLAYER_BULLET) // Held objects (phone, coffee, etc.) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_OBJECT) // Gadgets //OR HAS_PED_GOT_WEAPON(pedID, GADGETTYPE_PARACHUTE) // Ammo //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_AMMO_RPG) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_AMMO_TANK) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_AMMO_SPACE_ROCKET) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_AMMO_PLAYER_LASER) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_AMMO_ENEMY_LASER) // Run over by a vehicle //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_RAMMEDBYVEHICLE) //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_RUNOVERBYVEHICLE) // Explosion //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_EXPLOSION) // Fall //OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_FALL) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_COMPACTLAUNCHER) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_AUTOSHOTGUN) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_MINISMG) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 ) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_CARBINERIFLE_MK2 ) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_COMBATMG_MK2 ) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_HEAVYSNIPER_MK2 ) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_PISTOL_MK2 ) OR HAS_PED_GOT_WEAPON(pedID,WEAPONTYPE_DLC_SMG_MK2 ) RETURN TRUE ENDIF IF bIncludeThrownWeapons // Thrown weapons IF HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_GRENADE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_SMOKEGRENADE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_STICKYBOMB) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_MOLOTOV) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_PROXMINE) OR HAS_PED_GOT_WEAPON(pedID, WEAPONTYPE_DLC_PIPEBOMB) RETURN TRUE ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: sees if a weapon is conventional and therefor ammo can be bought at gang house. FUNC BOOL IS_WEAPON_CONVENTIONAL(WEAPON_TYPE tempweapon) SWITCH tempweapon CASE WEAPONTYPE_STUNGUN RETURN FALSE BREAK CASE WEAPONTYPE_APPISTOL RETURN TRUE BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN TRUE BREAK CASE WEAPONTYPE_PISTOL RETURN TRUE BREAK CASE WEAPONTYPE_MICROSMG RETURN TRUE BREAK CASE WEAPONTYPE_SMG RETURN TRUE BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN TRUE BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN TRUE BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN TRUE BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN TRUE BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN TRUE BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_GUSENBERG RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN TRUE BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN TRUE BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN TRUE BREAK CASE WEAPONTYPE_MG RETURN TRUE BREAK CASE WEAPONTYPE_COMBATMG RETURN TRUE BREAK CASE WEAPONTYPE_RPG RETURN FALSE BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN FALSE BREAK CASE WEAPONTYPE_MINIGUN RETURN FALSE BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN FALSE BREAK CASE WEAPONTYPE_GRENADE RETURN FALSE BREAK CASE WEAPONTYPE_STICKYBOMB RETURN FALSE BREAK CASE WEAPONTYPE_DLC_MUSKET RETURN TRUE BREAK CASE WEAPONTYPE_DLC_FLAREGUN RETURN FALSE BREAK CASE WEAPONTYPE_DLC_FIREWORK RETURN FALSE BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_PROXMINE RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_COMBATPDW RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_MACHETE CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN TRUE // Does a DLC weapon count as conventional? IS_WEAPON_CONVENTIONAL is never called anyway so it probably doesn't matter BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Returns the text label that represents the specified weapon compoenent name FUNC STRING GET_WEAPON_COMPONENT_NAME(WEAPONCOMPONENT_TYPE eWeaponComponent, WEAPON_TYPE eWeapon = WEAPONTYPE_INVALID) IF eWeapon = WEAPONTYPE_DLC_KNUCKLE SWITCH eWeaponComponent CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BASE RETURN "WT_KNUCKLE" BREAK // WEAPONCOMPONENT_INVALID CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PIMP RETURN "WCT_KNUCK_02" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BALLAS RETURN "WCT_KNUCK_BG" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DOLLAR RETURN "WCT_KNUCK_DLR" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DIAMOND RETURN "WCT_KNUCK_DMD" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_HATE RETURN "WCT_KNUCK_HT" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_LOVE RETURN "WCT_KNUCK_LV" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PLAYER RETURN "WCT_KNUCK_PC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_KING RETURN "WCT_KNUCK_SLG" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_VAGOS RETURN "WCT_KNUCK_VG" BREAK ENDSWITCH ENDIF SWITCH eWeaponComponent CASE WEAPONCOMPONENT_INVALID RETURN "WCT_NONE" BREAK CASE WEAPONCOMPONENT_AT_RAILCOVER_01 RETURN "WCT_RAIL" BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN "WCT_GRIP" BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN "WCT_FLASH" BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN "WCT_FLASH" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO RETURN "WCT_SCOPE_MAC" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO_02 RETURN "WCT_SCOPE_MAC" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN "WCT_SCOPE_SML" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL_02 RETURN "WCT_SCOPE_SML" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN "WCT_SCOPE_MED" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_LARGE RETURN "WCT_SCOPE_LRG" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN "WCT_SCOPE_MAX" BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN "WCT_SUPP" BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN "WCT_SUPP" BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN "WCT_SUPP" BREAK CASE WEAPONCOMPONENT_AT_SR_SUPP RETURN "WCT_SUPP" BREAK CASE WEAPONCOMPONENT_PISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_PISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_APPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_APPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_MICROSMG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_MICROSMG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_SMG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_SMG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_MG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_MG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_COMBATMG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_COMBATMG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_MINIGUN_CLIP_01 RETURN "WCT_CLIP2" BREAK // DLC/SE/CE/SC CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSNIPER_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTMG_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTMG_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_PROGRAMMABLEAR_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_PROGRAMMABLEAR_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_VINTAGEPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_VINTAGEPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK #IF FEATURE_DLC_1_2022 CASE WEAPONCOMPONENT_DLC_TACTICALRIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_TACTICALRIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK #ENDIF CASE WEAPONCOMPONENT_DLC_AT_SCOPE_LARGE_FIXED_ZOOM RETURN "WCT_SCOPE_LRG" BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP_02 RETURN "WCT_SUPP" BREAK CASE WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK // Engravements CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_ADVANCEDRIFLE_VARMOD_LUXE RETURN "WCT_VAR_METAL" BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_LUXE RETURN "WCT_VAR_METAL" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_VARMOD_LUXE RETURN "WCT_VAR_SIL" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYPISTOL_VARMOD_LUXE RETURN "WCT_VAR_WOOD" BREAK CASE WEAPONCOMPONENT_DLC_SMG_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE RETURN "WCT_VAR_METAL" BREAK CASE WEAPONCOMPONENT_DLC_SNIPERRIFLE_VARMOD_LUXE RETURN "WCT_VAR_WOOD" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_VARMOD_LUXE RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_VARMOD_LOWRIDER RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_VARMOD_LOWRIDER RETURN "WCT_VAR_METAL" BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_VARMOD_LOWRIDER RETURN "WCT_VAR_ETCHM" BREAK CASE WEAPONCOMPONENT_DLC_COMBATPISTOL_VARMOD_LOWRIDER RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_MG_VARMOD_LOWRIDER RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_LOWRIDER RETURN "WCT_VAR_GOLD" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_VARMOD_LOWRIDER RETURN "WCT_VAR_WOOD" BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_VARMOD_LOWRIDER RETURN "WCT_VAR_ETCHM" BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_BASE RETURN "WCT_SB_BASE" BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR1 RETURN "WCT_SB_VAR1" BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR2 RETURN "WCT_SB_VAR2" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_BOSS RETURN "WCT_REV_VARB" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_GOON RETURN "WCT_REV_VARG" BREAK CASE WEAPONCOMPONENT_DLC_SMG_CLIP_03 RETURN "WCT_CLIP_DRM" BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_CLIP_03 RETURN "WCT_CLIP_BOX" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_CLIP_03 RETURN "WCT_CLIP_DRM" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_03 RETURN "WCT_CLIP_DRM" BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN "WCT_VAR_GUN" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_IND_01 RETURN "WCT_CAMO_IND" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01 RETURN "WCT_CAMO_IND" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_02_MK2 RETURN "WCT_SCOPE_MAC2" BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_MK2 RETURN "WCT_SCOPE_SML2" BREAK CASE WEAPONCOMPONENT_DLC_RAYPISTOL_VARMOD_XMAS18 RETURN "WCT_VAR_RAY18" BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_SUPP RETURN "WCT_SUPP" BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONCOMPONENT_DLC_POLICERIFLE_CLIP_01 RETURN "WCT_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_POLICERIFLE_CLIP_02 RETURN "WCT_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_POLICERIFLE_FLASH_01 RETURN "WCT_FLASH" BREAK #ENDIF CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CAMO RETURN "WCT_VAR_FAM" BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_SECURITY RETURN "WCT_VAR_WEED" BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_SECURITY RETURN "WCT_VAR_STUD" BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_SECURITY RETURN "WCT_VAR_BONE" BREAK // DLC Lookup DEFAULT IF eWeapon != WEAPONTYPE_INVALID INT iDLCIndex INT iComp scrShopWeaponData weaponData scrShopWeaponComponentData compData iDLCIndex = GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, weaponData) IF iDLCIndex != -1 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComp IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComp, compData) IF INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName) = eWeaponComponent RETURN GET_DLC_WEAPON_STRING(compData.Label) ENDIF ENDIF ENDREPEAT ENDIF ENDIF BREAK ENDSWITCH RETURN "WCT_INVALID" ENDFUNC FUNC STRING GET_WEAPON_COMPONENT_DESCRIPTION(WEAPONCOMPONENT_TYPE eWeaponComponent, WEAPON_TYPE eWeapon = WEAPONTYPE_INVALID) SWITCH eWeaponComponent CASE WEAPONCOMPONENT_INVALID RETURN "WCD_NONE" BREAK CASE WEAPONCOMPONENT_AT_RAILCOVER_01 RETURN "WCD_AT_RAIL" BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN "WCD_GRIP" BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN "WCD_FLASH" BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN "WCD_FLASH" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO RETURN "WCD_SCOPE_MAC" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO_02 RETURN "WCD_SCOPE_MAC" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN "WCD_SCOPE_SML" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL_02 RETURN "WCD_SCOPE_SML" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN "WCD_SCOPE_MED" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_LARGE RETURN "WCD_SCOPE_LRG" BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN "WCD_SCOPE_MAX" BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN "WCD_PI_SUPP" BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP_02 RETURN "WCD_PI_SUPP" BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN "WCD_AR_SUPP" BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN "WCD_AR_SUPP2" BREAK CASE WEAPONCOMPONENT_AT_SR_SUPP RETURN "WCD_SR_SUPP" BREAK CASE WEAPONCOMPONENT_PISTOL_CLIP_01 RETURN "WCD_P_CLIP1" BREAK CASE WEAPONCOMPONENT_PISTOL_CLIP_02 RETURN "WCD_P_CLIP2" BREAK CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_01 RETURN "WCD_CP_CLIP1" BREAK CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_02 RETURN "WCD_CP_CLIP2" BREAK CASE WEAPONCOMPONENT_APPISTOL_CLIP_01 RETURN "WCD_AP_CLIP1" BREAK CASE WEAPONCOMPONENT_APPISTOL_CLIP_02 RETURN "WCD_AP_CLIP2" BREAK CASE WEAPONCOMPONENT_MICROSMG_CLIP_01 RETURN "WCDMSMG_CLIP1" BREAK CASE WEAPONCOMPONENT_MICROSMG_CLIP_02 RETURN "WCDMSMG_CLIP2" BREAK CASE WEAPONCOMPONENT_SMG_CLIP_01 RETURN "WCD_SMG_CLIP1" BREAK CASE WEAPONCOMPONENT_SMG_CLIP_02 RETURN "WCD_SMG_CLIP2" BREAK CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01 RETURN "WCD_AR_CLIP1" BREAK CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02 RETURN "WCD_AR_CLIP2" BREAK CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_01 RETURN "WCD_CR_CLIP1" BREAK CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_02 RETURN "WCD_CR_CLIP2" BREAK CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01 RETURN "WCD_ADR_CLIP1" BREAK CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02 RETURN "WCD_ADR_CLIP2" BREAK CASE WEAPONCOMPONENT_MG_CLIP_01 RETURN "WCD_MG_CLIP1" BREAK CASE WEAPONCOMPONENT_MG_CLIP_02 RETURN "WCD_MG_CLIP2" BREAK CASE WEAPONCOMPONENT_COMBATMG_CLIP_01 RETURN "WCDCMG_CLIP1" BREAK CASE WEAPONCOMPONENT_COMBATMG_CLIP_02 RETURN "WCDCMG_CLIP2" BREAK CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01 RETURN "WCD_AS_CLIP1" BREAK CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02 RETURN "WCD_AS_CLIP2" BREAK CASE WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01 RETURN "WCD_SR_CLIP1" BREAK CASE WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01 RETURN "WCD_HS_CLIP1" BREAK CASE WEAPONCOMPONENT_MINIGUN_CLIP_01 RETURN "WCD_MIG_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_01 RETURN "WCD_ASMG_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_02 RETURN "WCD_ASMG_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_01 RETURN "WCD_P50_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_02 RETURN "WCD_P50_CLIP2" BREAK // Luxe Engravements CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_VARMOD_LUXE RETURN "WCD_VAR_AR" BREAK CASE WEAPONCOMPONENT_DLC_ADVANCEDRIFLE_VARMOD_LUXE RETURN "WCD_VAR_ADR" BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_VARMOD_LUXE RETURN "WCD_VAR_CR" BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_LUXE RETURN "WCD_VAR_AP" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_VARMOD_LUXE RETURN "WCD_VAR_P" BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_VARMOD_LUXE RETURN "WCD_VAR_P50" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYPISTOL_VARMOD_LUXE RETURN "WCD_VAR_HPST" BREAK CASE WEAPONCOMPONENT_DLC_SMG_VARMOD_LUXE RETURN "WCD_VAR_SMG" BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_LUXE RETURN "WCD_VAR_MSMG" BREAK CASE WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE RETURN "WCD_VAR_SOF" BREAK CASE WEAPONCOMPONENT_DLC_SNIPERRIFLE_VARMOD_LUXE RETURN "WCD_VAR_SNP" BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_VARMOD_LUXE RETURN "WCD_VAR_MKRF" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PIMP RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BALLAS RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DOLLAR RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DIAMOND RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_HATE RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_LOVE RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PLAYER RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_KING RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_VAGOS RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_VARMOD_LOWRIDER RETURN "WCD_VAR_ASMG" BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_VARMOD_LOWRIDER RETURN "WCD_VAR_BPR" BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_VARMOD_LOWRIDER RETURN "WCD_VAR_CBMG" BREAK CASE WEAPONCOMPONENT_DLC_COMBATPISTOL_VARMOD_LOWRIDER RETURN "WCD_VAR_CBP" BREAK CASE WEAPONCOMPONENT_DLC_MG_VARMOD_LOWRIDER RETURN "WCD_VAR_MG" BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_LOWRIDER RETURN "WCD_VAR_PSHT" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_VARMOD_LOWRIDER RETURN "WCD_VAR_SNS" BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_VARMOD_LOWRIDER RETURN "WCD_VAR_SCAR" BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR1 RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR2 RETURN "WCD_VAR_DESC" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_CLIP_01 RETURN "WCD_P_CLIP1" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_BOSS RETURN "WCD_REV_VARB" BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_GOON RETURN "WCD_REV_VARG" BREAK CASE WEAPONCOMPONENT_DLC_SMG_CLIP_03 RETURN "WCD_CLIP3" BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_CLIP_03 RETURN "WCD_CLIP3" BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_CLIP_03 RETURN "WCD_CLIP3" BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN "WCD_VAR_GUN" BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_02 RETURN "WCD_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_02_MK2 RETURN "WCD_SCOPE_MAC" BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_MK2 RETURN "WCD_SCOPE_SML" BREAK CASE WEAPONCOMPONENT_DLC_RAYPISTOL_VARMOD_XMAS18 RETURN "WCD_VAR_RAY18" BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_CLIP_02 RETURN "WCD_CLIP2" BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_SUPP RETURN "WCD_PI_SUPP" BREAK CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CAMO RETURN "WCD_VAR_HRF" BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_SECURITY RETURN "WCD_VAR_MSMG" BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_SECURITY RETURN "WCD_VAR_AP" BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_SECURITY RETURN "WCD_VAR_PSHT" BREAK // DLC Lookup DEFAULT IF eWeapon != WEAPONTYPE_INVALID INT iDLCIndex INT iComp scrShopWeaponData weaponData scrShopWeaponComponentData compData iDLCIndex = GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, weaponData) IF iDLCIndex != -1 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComp IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComp, compData) IF INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName) = eWeaponComponent RETURN GET_DLC_WEAPON_STRING(compData.m_componentDesc) ENDIF ENDIF ENDREPEAT ENDIF ENDIF BREAK ENDSWITCH RETURN "WCD_INVALID" ENDFUNC FUNC BOOL IS_GUNCLUB_AMMO_TYPE_SPECIAL(AMMO_TYPE eAmmoType) SWITCH eAmmoType CASE AMMOTYPE_DLC_PISTOL_FMJ CASE AMMOTYPE_DLC_PISTOL_HOLLOWPOINT CASE AMMOTYPE_DLC_PISTOL_INCENDIARY CASE AMMOTYPE_DLC_PISTOL_TRACER CASE AMMOTYPE_DLC_SMG_FMJ CASE AMMOTYPE_DLC_SMG_HOLLOWPOINT CASE AMMOTYPE_DLC_SMG_INCENDIARY CASE AMMOTYPE_DLC_SMG_TRACER CASE AMMOTYPE_DLC_SNIPER_ARMORPIERCING CASE AMMOTYPE_DLC_SNIPER_EXPLOSIVE CASE AMMOTYPE_DLC_SNIPER_FMJ CASE AMMOTYPE_DLC_SNIPER_INCENDIARY CASE AMMOTYPE_DLC_MG_ARMORPIERCING CASE AMMOTYPE_DLC_MG_FMJ CASE AMMOTYPE_DLC_MG_INCENDIARY CASE AMMOTYPE_DLC_MG_TRACER CASE AMMOTYPE_DLC_RIFLE_ARMORPIERCING CASE AMMOTYPE_DLC_RIFLE_FMJ CASE AMMOTYPE_DLC_RIFLE_INCENDIARY CASE AMMOTYPE_DLC_RIFLE_TRACER CASE AMMOTYPE_DLC_SHOTGUN_ARMORPIERCING CASE AMMOTYPE_DLC_SHOTGUN_EXPLOSIVE CASE AMMOTYPE_DLC_SHOTGUN_HOLLOWPOINT CASE AMMOTYPE_DLC_SHOTGUN_INCENDIARY RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Returns weapon ammo type FUNC AMMO_TYPE GET_GUNCLUB_AMMO_TYPE_FROM_PLAYER(WEAPON_TYPE eWeapon) AMMO_TYPE eAmmoType SWITCH eWeapon CASE WEAPONTYPE_PISTOL eAmmoType = AMMOTYPE_PISTOL BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 eAmmoType = AMMOTYPE_PISTOL IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_PISTOL_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_HOLLOWPOINT) eAmmoType = AMMOTYPE_DLC_PISTOL_HOLLOWPOINT ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_PISTOL_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_PISTOL_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_SMG eAmmoType = AMMOTYPE_SMG BREAK CASE WEAPONTYPE_DLC_SMG_MK2 eAmmoType = AMMOTYPE_SMG IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_SMG_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_HOLLOWPOINT) eAmmoType = AMMOTYPE_DLC_SMG_HOLLOWPOINT ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_SMG_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_SMG_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_HEAVYSNIPER eAmmoType = AMMOTYPE_SNIPER BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 eAmmoType = AMMOTYPE_SNIPER IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_SNIPER_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE) eAmmoType = AMMOTYPE_DLC_SNIPER_EXPLOSIVE ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_SNIPER_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_SNIPER_INCENDIARY ENDIF ENDIF BREAK CASE WEAPONTYPE_COMBATMG eAmmoType = AMMOTYPE_MG BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 eAmmoType = AMMOTYPE_MG IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_MG_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_MG_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_MG_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_MG_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_ASSAULTRIFLE eAmmoType = AMMOTYPE_RIFLE BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 eAmmoType = AMMOTYPE_RIFLE IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_RIFLE_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_RIFLE_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_RIFLE_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_RIFLE_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_CARBINERIFLE eAmmoType = AMMOTYPE_RIFLE BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 eAmmoType = AMMOTYPE_RIFLE IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_RIFLE_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_RIFLE_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_RIFLE_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_RIFLE_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_PUMPSHOTGUN eAmmoType = AMMOTYPE_SHOTGUN BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 eAmmoType = AMMOTYPE_SHOTGUN IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_SHOTGUN_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE) eAmmoType = AMMOTYPE_DLC_SHOTGUN_EXPLOSIVE ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT) eAmmoType = AMMOTYPE_DLC_SHOTGUN_HOLLOWPOINT ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_SHOTGUN_INCENDIARY ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE eAmmoType = AMMOTYPE_RIFLE BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 eAmmoType = AMMOTYPE_RIFLE IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_RIFLE_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_RIFLE_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_RIFLE_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_RIFLE_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_SNSPISTOL eAmmoType = AMMOTYPE_PISTOL BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 eAmmoType = AMMOTYPE_PISTOL IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_PISTOL_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_HOLLOWPOINT) eAmmoType = AMMOTYPE_DLC_PISTOL_HOLLOWPOINT ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_PISTOL_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_PISTOL_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE eAmmoType = AMMOTYPE_SNIPER BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 eAmmoType = AMMOTYPE_SNIPER IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_SNIPER_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_SNIPER_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_SNIPER_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_SNIPER_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_REVOLVER eAmmoType = AMMOTYPE_PISTOL BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 eAmmoType = AMMOTYPE_PISTOL IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_PISTOL_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_HOLLOWPOINT) eAmmoType = AMMOTYPE_DLC_PISTOL_HOLLOWPOINT ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_PISTOL_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_PISTOL_TRACER ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE eAmmoType = AMMOTYPE_RIFLE BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 eAmmoType = AMMOTYPE_RIFLE IF DOES_ENTITY_EXIST(PLAYER_PED_ID()) AND NOT IS_ENTITY_DEAD(PLAYER_PED_ID()) IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING) eAmmoType = AMMOTYPE_DLC_RIFLE_ARMORPIERCING ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_FMJ) eAmmoType = AMMOTYPE_DLC_RIFLE_FMJ ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_INCENDIARY) eAmmoType = AMMOTYPE_DLC_RIFLE_INCENDIARY ENDIF IF HAS_PED_GOT_WEAPON_COMPONENT(PLAYER_PED_ID(), eWeapon, WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_TRACER) eAmmoType = AMMOTYPE_DLC_RIFLE_TRACER ENDIF ENDIF BREAK ENDSWITCH RETURN eAmmoType ENDFUNC FUNC BOOL GET_AMMO_BOUGHT_STAT_FOR_WEAPON(WEAPON_TYPE eWeapon, MP_INT_STATS &eStat, WEAPONCOMPONENT_TYPE acomponent = WEAPONCOMPONENT_INVALID) IF GET_CURRENT_GAMEMODE() = GAMEMODE_FM OR GET_JOINING_GAMEMODE() = GAMEMODE_FM SWITCH eWeapon CASE WEAPONTYPE_KNIFE eStat = MP_STAT_KNIFE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_NIGHTSTICK eStat = MP_STAT_NIGHTSTICK_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_PISTOL eStat = MP_STAT_PISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_COMBATPISTOL eStat = MP_STAT_CMBTPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_APPISTOL eStat = MP_STAT_APPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_MICROSMG eStat = MP_STAT_MICROSMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_SMG eStat = MP_STAT_SMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_ASSAULTRIFLE eStat = MP_STAT_ASLTRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_CARBINERIFLE eStat = MP_STAT_CRBNRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE eStat = MP_STAT_SPCARBINE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_ADVANCEDRIFLE eStat = MP_STAT_ADVRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_MG eStat = MP_STAT_MG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_COMBATMG eStat = MP_STAT_CMBTMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_PUMPSHOTGUN eStat = MP_STAT_PUMP_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN eStat = MP_STAT_SAWNOFF_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN eStat = MP_STAT_ASLTSHTGN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_STUNGUN eStat = MP_STAT_STUNGUN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_SNIPERRIFLE eStat = MP_STAT_SNIPERRFL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_HEAVYSNIPER eStat = MP_STAT_HVYSNIPER_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_GRENADELAUNCHER eStat = MP_STAT_GRNLAUNCH_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_RPG eStat = MP_STAT_RPG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_MINIGUN eStat = MP_STAT_MINIGUNS_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_GRENADE eStat = MP_STAT_GRENADE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_SMOKEGRENADE eStat = MP_STAT_SMKGRENADE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_STICKYBOMB eStat = MP_STAT_STKYBMB_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE GADGETTYPE_PARACHUTE eStat = MP_STAT_PARACHUTE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_PETROLCAN eStat = MP_STAT_PETROLCAN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_PISTOL50 eStat = MP_STAT_PISTOL50_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_ASSAULTMG eStat = MP_STAT_ASLTMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG eStat = MP_STAT_ASLTSMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER eStat = MP_STAT_ASLTSNIP_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_HAMMER eStat = MP_STAT_HAMMER_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN eStat = MP_STAT_BULLPUP_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_BOTTLE eStat = MP_STAT_BOTTLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_SNSPISTOL eStat = MP_STAT_SNSPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL eStat = MP_STAT_HVYPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE eStat = MP_STAT_BULLRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_GUSENBERG eStat = MP_STAT_GUSNBRG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL eStat = MP_STAT_VPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_DAGGER eStat = MP_STAT_DAGGER_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MUSKET eStat = MP_STAT_MUSKET_FM_AMMO_BOUGHT RETURN TRUE BREAK #IF IS_DEBUG_BUILD CASE WEAPONTYPE_DLC_FLAREGUN eStat = MP_STAT_FLAREGUN_FM_AMMO_BOUGHT RETURN TRUE BREAK #ENDIF CASE WEAPONTYPE_DLC_FIREWORK eStat = MP_STAT_FIREWRK_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN eStat = MP_STAT_HVYSHGN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE eStat = MP_STAT_MKRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_PROXMINE eStat = MP_STAT_PRXMINE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER eStat = MP_STAT_HOMLNCH_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_COMBATPDW eStat = MP_STAT_COMBATPDW_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_KNUCKLE eStat = MP_STAT_KNUCKLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL eStat = MP_STAT_MKPISTOL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_HATCHET eStat = MP_STAT_HATCHET_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MACHETE eStat = MP_STAT_MACHETE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL eStat = MP_STAT_MCHPIST_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN eStat = MP_STAT_DBSHGN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE eStat = MP_STAT_CMPRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT eStat = MP_STAT_FLASHLIGHT_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN eStat = MP_STAT_AUTOSHGN_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MINISMG eStat = MP_STAT_MINISMG_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER eStat = MP_STAT_CMPGL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_BATTLEAXE eStat = MP_STAT_BATTLEAXE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_PIPEBOMB eStat = MP_STAT_PIPEBOMB_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_POOLCUE eStat = MP_STAT_POOLCUE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_WRENCH eStat = MP_STAT_WRENCH_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 IF acomponent = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_ASLTRIFLEARMPIERAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_FMJ eStat = MP_STAT_ASLTRIFLEFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_INCENDIARY eStat = MP_STAT_ASLTRIFLEINCENAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_TRACER eStat = MP_STAT_ASLTRIFLETRACERAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_ASLTRIFLE_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 IF acomponent = WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_ARMORPIERCING eStat =MP_STAT_CRBNRIFLEARMPIERAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_FMJ eStat = MP_STAT_CRBNRIFLEFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_INCENDIARY eStat = MP_STAT_CRBNRIFLEINCENAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_TRACER eStat = MP_STAT_CRBNRIFLETRACERAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_CRBNRIFLE_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 IF acomponent = WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_CMBTMGARMPIERAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_FMJ eStat = MP_STAT_CMBTMGFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_INCENDIARY eStat = MP_STAT_CMBTMGINCENAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_TRACER eStat = MP_STAT_CMBTMGTRACERAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_CMBTMG_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 IF acomponent = WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_HVYSNIPERARMPIERAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE eStat = MP_STAT_HVYSNIPEREXPLOSAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_FMJ eStat = MP_STAT_HVYSNIPERFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_INCENDIARY eStat = MP_STAT_HVYSNIPERINCENAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_HVYSNIPER_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 IF acomponent = WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_FMJ eStat = MP_STAT_PISTOLFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_HOLLOWPOINT eStat = MP_STAT_PISTOLHOLLOWAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_INCENDIARY eStat = MP_STAT_PISTOLINCENAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_TRACER eStat = MP_STAT_PISTOLTRACERAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_PISTOL_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_SMG_MK2 IF acomponent = WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_FMJ eStat = MP_STAT_SMGFMJAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_HOLLOWPOINT eStat = MP_STAT_SMGHOLLOWAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_INCENDIARY eStat = MP_STAT_SMGINCENAMMOCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_TRACER eStat = MP_STAT_SMGTRACERAMMOCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_SMG_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 IF acomponent = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_BULLRIFARMORPIERCINGCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_FMJ eStat = MP_STAT_BULLRIFFMJCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_INCENDIARY eStat = MP_STAT_BULLRIFINCENDIARYCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_TRACER eStat = MP_STAT_BULLRIFTRACERCURRENT RETURN TRUE BREAK ELSE //eStat = MP_STAT_BLRIFLE_MK2_FM_AMMO_CURRENT RETURN TRUE BREAK eStat = MP_STAT_BULLRIFLE_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 IF acomponent = WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_MARKSNIPARMORPIERCCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_FMJ eStat = MP_STAT_MARKSNIPFMJCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_INCENDIARY eStat = MP_STAT_MARKSNIPINCENDIARYCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_TRACER eStat = MP_STAT_MARKSNIPTRACERCURRENT RETURN TRUE BREAK ELSE //eStat = MP_STAT_MKRIFLE_MK2_FM_AMMO_CURRENT RETURN TRUE BREAK eStat = MP_STAT_MKRIFLE_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 IF acomponent = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_SHOTGARMORPIERCINGCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE eStat = MP_STAT_SHOTGEXPLOSIVECURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT eStat = MP_STAT_SHOTGHOLLOWPOINTCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_INCENDIARY eStat = MP_STAT_SHOTGINCENDIARYCURRENT RETURN TRUE BREAK ELSE //eStat = MP_STAT_PUMP_MK2_FM_AMMO_CURRENT RETURN TRUE BREAK eStat = MP_STAT_PUMP_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 IF acomponent = WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_FMJ eStat = MP_STAT_REVOLVEFMJCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_HOLLOWPOINT eStat = MP_STAT_REVOLVEHOLLOWPOINTCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_INCENDIARY eStat = MP_STAT_REVOLVEINCENDIARYCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_TRACER eStat = MP_STAT_REVOLVETRACERCURRENT RETURN TRUE BREAK ELSE //eStat = MP_STAT_REV_MK2_FM_AMMO_CURRENT RETURN TRUE BREAK eStat = MP_STAT_REVOLVER_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 IF acomponent = WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_FMJ eStat = MP_STAT_SNSPISFMJCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_HOLLOWPOINT eStat = MP_STAT_SNSPISHOLLOWPOINTCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_INCENDIARY eStat = MP_STAT_SNSPISINCENDIARYCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_TRACER eStat = MP_STAT_SNSPISTRACERCURRENT RETURN TRUE BREAK ELSE //eStat = MP_STAT_SNSPIST_MK2_FM_AMMO_CURRENT RETURN TRUE BREAK eStat = MP_STAT_SNSPISTOL_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 IF acomponent = WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING eStat = MP_STAT_SPCARBIARMORPIERCINGCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_FMJ eStat = MP_STAT_SPCARBIFMJCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_INCENDIARY eStat = MP_STAT_SPCARBIINCENDIARYCURRENT RETURN TRUE BREAK ELIF acomponent = WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_TRACER eStat = MP_STAT_SPCARBITRACERCURRENT RETURN TRUE BREAK ELSE eStat = MP_STAT_SPCARBINE_FM_AMMO_CURRENT RETURN TRUE BREAK ENDIF RETURN TRUE BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN eStat = MP_STAT_RAYPISTOL_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN eStat = MP_STAT_RAYCARBINE_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN eStat = MP_STAT_RAYMINIGUN_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN eStat = MP_STAT_REV_NV_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN eStat = MP_STAT_CERPST_FM_AMMO_CURRENT RETURN TRUE BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_RIOTSMG RETURN eStat = MP_STAT_RIOT_SMG_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_POLICERIFLE RETURN eStat = MP_STAT_PLCRIFLE_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_BATON RETURN eStat = MP_STAT_BATON_FM_AMMO_CURRENT RETURN TRUE BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN eStat = MP_STAT_GDGTPST_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN eStat = MP_STAT_MLTRYRFL_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN eStat = MP_STAT_CMBSHGN_FM_AMMO_BOUGHT RETURN TRUE BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN eStat = MP_STAT_EMPGL_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN eStat = MP_STAT_FETLIZRCN_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN eStat = MP_STAT_STNGNMP_FM_AMMO_CURRENT RETURN TRUE BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR RETURN eStat = MP_STAT_MTL_DETECT_FM_AMMO_CURRENT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN eStat = MP_STAT_TACRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN eStat = MP_STAT_PRCSRIFLE_FM_AMMO_BOUGHT RETURN TRUE BREAK #ENDIF ENDSWITCH ENDIF RETURN FALSE ENDFUNC FUNC MP_INT_STATS GET_AMMO_BOUGHT_FOR_WEAPON(WEAPON_TYPE eWeapon) IF GET_CURRENT_GAMEMODE() = GAMEMODE_FM OR GET_JOINING_GAMEMODE() = GAMEMODE_FM SWITCH eWeapon CASE WEAPONTYPE_KNIFE RETURN MP_STAT_KNIFE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN MP_STAT_NIGHTSTICK_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_PISTOL RETURN MP_STAT_PISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN MP_STAT_CMBTPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_APPISTOL RETURN MP_STAT_APPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN MP_STAT_SNSPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_MICROSMG RETURN MP_STAT_MICROSMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_SMG RETURN MP_STAT_SMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN MP_STAT_ASLTRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN MP_STAT_CRBNRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN MP_STAT_SPCARBINE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN MP_STAT_ADVRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_MG RETURN MP_STAT_MG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_COMBATMG RETURN MP_STAT_CMBTMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN MP_STAT_PUMP_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN MP_STAT_SAWNOFF_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN MP_STAT_ASLTSHTGN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_STUNGUN RETURN MP_STAT_STUNGUN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN MP_STAT_SNIPERRFL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN MP_STAT_HVYSNIPER_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN MP_STAT_GRNLAUNCH_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_RPG RETURN MP_STAT_RPG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_MINIGUN RETURN MP_STAT_MINIGUNS_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_GRENADE RETURN MP_STAT_GRENADE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN MP_STAT_SMKGRENADE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_STICKYBOMB RETURN MP_STAT_STKYBMB_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_MOLOTOV RETURN MP_STAT_MOLOTOV_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_PETROLCAN RETURN MP_STAT_PETROLCAN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PISTOL50 RETURN MP_STAT_PISTOL50_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_ASSAULTMG RETURN MP_STAT_ASLTMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN MP_STAT_ASLTSMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER RETURN MP_STAT_ASLTSNIP_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_HAMMER RETURN MP_STAT_HAMMER_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN MP_STAT_BULLPUP_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BOTTLE RETURN MP_STAT_BOTTLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN MP_STAT_HVYPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN MP_STAT_BULLRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_GUSENBERG RETURN MP_STAT_GUSNBRG_FM_AMMO_BOUGHT BREAK CASE GADGETTYPE_PARACHUTE RETURN MP_STAT_PARACHUTE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN MP_STAT_VPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_DAGGER RETURN MP_STAT_DAGGER_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MUSKET RETURN MP_STAT_MUSKET_FM_AMMO_BOUGHT BREAK #IF IS_DEBUG_BUILD CASE WEAPONTYPE_DLC_FLAREGUN RETURN MP_STAT_FLAREGUN_FM_AMMO_BOUGHT BREAK #ENDIF CASE WEAPONTYPE_DLC_FIREWORK RETURN MP_STAT_FIREWRK_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN MP_STAT_HVYSHGN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN MP_STAT_MKRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PROXMINE RETURN MP_STAT_PRXMINE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN MP_STAT_HOMLNCH_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_COMBATPDW RETURN MP_STAT_COMBATPDW_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_KNUCKLE RETURN MP_STAT_KNUCKLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN MP_STAT_MKPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN MP_STAT_HATCHET_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MACHETE RETURN MP_STAT_MACHETE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN MP_STAT_MCHPIST_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN MP_STAT_DBSHGN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN MP_STAT_CMPRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT RETURN MP_STAT_FLASHLIGHT_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_GOLFCLUB RETURN MP_STAT_GCLUB_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_BAT RETURN MP_STAT_BAT_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_CROWBAR RETURN MP_STAT_CROWBAR_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN RETURN MP_STAT_AUTOSHGN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MINISMG RETURN MP_STAT_MINISMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN MP_STAT_CMPGL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BATTLEAXE RETURN MP_STAT_BATTLEAXE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PIPEBOMB RETURN MP_STAT_PIPEBOMB_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_POOLCUE RETURN MP_STAT_POOLCUE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_WRENCH RETURN MP_STAT_WRENCH_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 RETURN MP_STAT_ASLTRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 RETURN MP_STAT_CRBNRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 RETURN MP_STAT_CMBTMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 RETURN MP_STAT_HVYSNIPER_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 RETURN MP_STAT_PISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_SMG_MK2 RETURN MP_STAT_SMG_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 RETURN MP_STAT_BLRIFLE_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 RETURN MP_STAT_MKRIFLE_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 RETURN MP_STAT_PUMP_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 RETURN MP_STAT_REV_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 RETURN MP_STAT_SNSPIST_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 RETURN MP_STAT_SPCARB_MK2_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN MP_STAT_RAYPISTOL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN MP_STAT_RAYCARBINE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN MP_STAT_RAYMINIGUN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN MP_STAT_REV_NV_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN MP_STAT_CERPST_FM_AMMO_BOUGHT BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_POLICERIFLE RETURN MP_STAT_PLCRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_BATON RETURN MP_STAT_BATON_FM_AMMO_BOUGHT BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN MP_STAT_MLTRYRFL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN MP_STAT_GDGTPST_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN MP_STAT_CMBSHGN_FM_AMMO_BOUGHT BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN MP_STAT_EMPGL_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN MP_STAT_FETLIZRCN_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN MP_STAT_STNGNMP_FM_AMMO_BOUGHT BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR RETURN MP_STAT_MTL_DETECT_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN MP_STAT_TACRIFLE_FM_AMMO_BOUGHT BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN MP_STAT_PRCSRIFLE_FM_AMMO_BOUGHT BREAK #ENDIF ENDSWITCH ENDIF RETURN MP_STAT_STKYBMB_FM_AMMO_BOUGHT ENDFUNC FUNC MP_INT_STATS GET_AMMO_CURRENT_FOR_WEAPON(WEAPON_TYPE eWeapon) IF GET_CURRENT_GAMEMODE() = GAMEMODE_FM OR GET_JOINING_GAMEMODE() = GAMEMODE_FM SWITCH eWeapon CASE WEAPONTYPE_KNIFE RETURN MP_STAT_KNIFE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_PISTOL RETURN MP_STAT_PISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN MP_STAT_CMBTPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_APPISTOL RETURN MP_STAT_APPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_MICROSMG RETURN MP_STAT_MICROSMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_SMG RETURN MP_STAT_SMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN MP_STAT_ASLTRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN MP_STAT_CRBNRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN MP_STAT_SPCARBINE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN MP_STAT_ADVRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_MG RETURN MP_STAT_MG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_COMBATMG RETURN MP_STAT_CMBTMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN MP_STAT_PUMP_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN MP_STAT_SAWNOFF_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN MP_STAT_ASLTSHTGN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_STUNGUN RETURN MP_STAT_STUNGUN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN MP_STAT_SNIPERRFL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN MP_STAT_HVYSNIPER_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN MP_STAT_GRNLAUNCH_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_RPG RETURN MP_STAT_RPG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_MINIGUN RETURN MP_STAT_MINIGUNS_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_GRENADE RETURN MP_STAT_GRENADE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN MP_STAT_SMKGRENADE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_STICKYBOMB RETURN MP_STAT_STKYBMB_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_MOLOTOV RETURN MP_STAT_MOLOTOV_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_PETROLCAN RETURN MP_STAT_PETROLCAN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN MP_STAT_NIGHTSTICK_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PISTOL50 RETURN MP_STAT_PISTOL50_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_ASSAULTMG RETURN MP_STAT_ASLTMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN MP_STAT_ASLTSMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER RETURN MP_STAT_ASLTSNIP_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_HAMMER RETURN MP_STAT_HAMMER_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN MP_STAT_BULLPUP_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BOTTLE RETURN MP_STAT_BOTTLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN MP_STAT_SNSPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN MP_STAT_HVYPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN MP_STAT_BULLRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_GUSENBERG RETURN MP_STAT_GUSNBRG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN MP_STAT_VPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_DAGGER RETURN MP_STAT_DAGGER_FM_AMMO_CURRENT BREAK #IF IS_DEBUG_BUILD CASE WEAPONTYPE_DLC_FLAREGUN RETURN MP_STAT_FLAREGUN_FM_AMMO_CURRENT BREAK #ENDIF CASE WEAPONTYPE_DLC_MUSKET RETURN MP_STAT_MUSKET_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_FIREWORK RETURN MP_STAT_FIREWRK_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN MP_STAT_HVYSHGN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN MP_STAT_MKRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PROXMINE RETURN MP_STAT_PRXMINE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN MP_STAT_HOMLNCH_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN MP_STAT_HATCHET_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_COMBATPDW RETURN MP_STAT_COMBATPDW_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN MP_STAT_MKPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_KNUCKLE RETURN MP_STAT_KNUCKLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MACHETE RETURN MP_STAT_MACHETE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN MP_STAT_MCHPIST_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN MP_STAT_DBSHGN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN MP_STAT_CMPRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT RETURN MP_STAT_FLASHLIGHT_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN RETURN MP_STAT_AUTOSHGN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MINISMG RETURN MP_STAT_MINISMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN MP_STAT_CMPGL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BATTLEAXE RETURN MP_STAT_BATTLEAXE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PIPEBOMB RETURN MP_STAT_PIPEBOMB_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_POOLCUE RETURN MP_STAT_POOLCUE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_WRENCH RETURN MP_STAT_WRENCH_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 RETURN MP_STAT_ASLTRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 RETURN MP_STAT_CRBNRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 RETURN MP_STAT_CMBTMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 RETURN MP_STAT_HVYSNIPER_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 RETURN MP_STAT_PISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_SMG_MK2 RETURN MP_STAT_SMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 RETURN MP_STAT_BULLRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 RETURN MP_STAT_MKRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 RETURN MP_STAT_PUMP_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 RETURN MP_STAT_REVOLVER_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 RETURN MP_STAT_SNSPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 RETURN MP_STAT_SPCARBINE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN MP_STAT_RAYPISTOL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN MP_STAT_RAYCARBINE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN MP_STAT_RAYMINIGUN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN MP_STAT_REV_NV_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN MP_STAT_CERPST_FM_AMMO_CURRENT BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_RIOTSMG RETURN MP_STAT_RIOT_SMG_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_POLICERIFLE RETURN MP_STAT_PLCRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_BATON RETURN MP_STAT_BATON_FM_AMMO_CURRENT BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN MP_STAT_MLTRYRFL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN MP_STAT_GDGTPST_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN MP_STAT_CMBSHGN_FM_AMMO_CURRENT BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN MP_STAT_EMPGL_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN MP_STAT_FETLIZRCN_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN MP_STAT_STNGNMP_FM_AMMO_CURRENT BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR RETURN MP_STAT_MTL_DETECT_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN MP_STAT_TACRIFLE_FM_AMMO_CURRENT BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN MP_STAT_PRCSRIFLE_FM_AMMO_CURRENT BREAK #ENDIF ENDSWITCH ENDIF RETURN MP_STAT_STKYBMB_FM_AMMO_BOUGHT ENDFUNC FUNC INT GET_NUMBER_OF_ENEMY_KILLS_WITH_WEAPON(WEAPON_TYPE eWeapon) MP_INT_STATS eWeaponKillsStat SWITCH eWeapon CASE WEAPONTYPE_KNIFE eWeaponKillsStat = MP_STAT_KNIFE_ENEMY_KILLS BREAK CASE WEAPONTYPE_PISTOL eWeaponKillsStat = MP_STAT_PISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_COMBATPISTOL eWeaponKillsStat = MP_STAT_CMBTPISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_APPISTOL eWeaponKillsStat = MP_STAT_APPISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_MICROSMG eWeaponKillsStat = MP_STAT_MICROSMG_ENEMY_KILLS BREAK CASE WEAPONTYPE_SMG eWeaponKillsStat = MP_STAT_SMG_ENEMY_KILLS BREAK CASE WEAPONTYPE_ASSAULTRIFLE eWeaponKillsStat = MP_STAT_ASLTRIFLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_CARBINERIFLE eWeaponKillsStat = MP_STAT_CRBNRIFLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE eWeaponKillsStat = MP_STAT_SPCARBINE_ENEMY_KILLS BREAK CASE WEAPONTYPE_ADVANCEDRIFLE eWeaponKillsStat = MP_STAT_ADVRIFLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_MG eWeaponKillsStat = MP_STAT_MG_ENEMY_KILLS BREAK CASE WEAPONTYPE_COMBATMG eWeaponKillsStat = MP_STAT_CMBTMG_ENEMY_KILLS BREAK CASE WEAPONTYPE_PUMPSHOTGUN eWeaponKillsStat = MP_STAT_PUMP_ENEMY_KILLS BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN eWeaponKillsStat = MP_STAT_SAWNOFF_ENEMY_KILLS BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN eWeaponKillsStat = MP_STAT_ASLTSHTGN_ENEMY_KILLS BREAK CASE WEAPONTYPE_STUNGUN eWeaponKillsStat = MP_STAT_STUNGUN_ENEMY_KILLS BREAK CASE WEAPONTYPE_SNIPERRIFLE eWeaponKillsStat = MP_STAT_SNIPERRFL_ENEMY_KILLS BREAK CASE WEAPONTYPE_HEAVYSNIPER eWeaponKillsStat = MP_STAT_HVYSNIPER_ENEMY_KILLS BREAK CASE WEAPONTYPE_GRENADELAUNCHER eWeaponKillsStat = MP_STAT_GRNLAUNCH_ENEMY_KILLS BREAK CASE WEAPONTYPE_RPG eWeaponKillsStat = MP_STAT_RPG_ENEMY_KILLS BREAK CASE WEAPONTYPE_MINIGUN eWeaponKillsStat = MP_STAT_MINIGUNS_ENEMY_KILLS BREAK CASE WEAPONTYPE_GRENADE eWeaponKillsStat = MP_STAT_GRENADE_ENEMY_KILLS BREAK CASE WEAPONTYPE_SMOKEGRENADE eWeaponKillsStat = MP_STAT_SMKGRENADE_ENEMY_KILLS BREAK CASE WEAPONTYPE_STICKYBOMB eWeaponKillsStat = MP_STAT_STKYBMB_ENEMY_KILLS BREAK CASE WEAPONTYPE_MOLOTOV eWeaponKillsStat = MP_STAT_MOLOTOV_ENEMY_KILLS BREAK CASE WEAPONTYPE_PETROLCAN RETURN 0 BREAK CASE WEAPONTYPE_NIGHTSTICK eWeaponKillsStat = MP_STAT_NIGHTSTICK_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_PISTOL50 eWeaponKillsStat = MP_STAT_PISTOL50_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_ASSAULTMG eWeaponKillsStat = MP_STAT_ASLTMG_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG eWeaponKillsStat = MP_STAT_ASLTSMG_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER RETURN 0 BREAK CASE WEAPONTYPE_HAMMER eWeaponKillsStat = MP_STAT_HAMMER_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN eWeaponKillsStat = MP_STAT_BULLPUP_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_BOTTLE eWeaponKillsStat = MP_STAT_BOTTLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_SNSPISTOL eWeaponKillsStat = MP_STAT_SNSPISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL eWeaponKillsStat = MP_STAT_HVYPISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE eWeaponKillsStat = MP_STAT_BULLRIFLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_GUSENBERG eWeaponKillsStat = MP_STAT_GUSNBRG_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL eWeaponKillsStat = MP_STAT_VPISTOL_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_DAGGER eWeaponKillsStat = MP_STAT_DAGGER_ENEMY_KILLS BREAK #IF IS_DEBUG_BUILD CASE WEAPONTYPE_DLC_FLAREGUN eWeaponKillsStat = MP_STAT_FLAREGUN_ENEMY_KILLS BREAK #ENDIF CASE WEAPONTYPE_DLC_MUSKET eWeaponKillsStat = MP_STAT_MUSKET_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_FIREWORK eWeaponKillsStat = MP_STAT_FIREWRK_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN eWeaponKillsStat = MP_STAT_HVYSHGN_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE eWeaponKillsStat = MP_STAT_MKRIFLE_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_PROXMINE eWeaponKillsStat = MP_STAT_PRXMINE_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER eWeaponKillsStat = MP_STAT_HOMLNCH_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_HATCHET eWeaponKillsStat = MP_STAT_HATCHET_ENEMY_KILLS BREAK CASE WEAPONTYPE_DLC_COMBATPDW eWeaponKillsStat = MP_STAT_COMBATPDW_KILLS BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL eWeaponKillsStat = MP_STAT_MKPISTOL_KILLS BREAK CASE WEAPONTYPE_DLC_KNUCKLE eWeaponKillsStat = MP_STAT_KNUCKLE_KILLS BREAK CASE WEAPONTYPE_DLC_MACHETE eWeaponKillsStat = MP_STAT_MACHETE_KILLS BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL eWeaponKillsStat = MP_STAT_MCHPIST_KILLS BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN eWeaponKillsStat = MP_STAT_DBSHGN_KILLS BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE eWeaponKillsStat = MP_STAT_CMPRIFLE_KILLS BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT eWeaponKillsStat = MP_STAT_FLASHLIGHT_KILLS BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN eWeaponKillsStat = MP_STAT_AUTOSHGN_KILLS BREAK CASE WEAPONTYPE_DLC_MINISMG eWeaponKillsStat = MP_STAT_MINISMG_KILLS BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER eWeaponKillsStat = MP_STAT_CMPGL_KILLS BREAK CASE WEAPONTYPE_DLC_BATTLEAXE eWeaponKillsStat = MP_STAT_BATTLEAXE_KILLS BREAK CASE WEAPONTYPE_DLC_PIPEBOMB eWeaponKillsStat = MP_STAT_PIPEBOMB_KILLS BREAK CASE WEAPONTYPE_DLC_POOLCUE eWeaponKillsStat = MP_STAT_POOLCUE_KILLS BREAK CASE WEAPONTYPE_DLC_WRENCH eWeaponKillsStat = MP_STAT_WRENCH_KILLS BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 eWeaponKillsStat = MP_STAT_ASLTRIFLE_KILLS BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 eWeaponKillsStat = MP_STAT_CRBNRIFLE_KILLS BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 eWeaponKillsStat = MP_STAT_CMBTMG_KILLS BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 eWeaponKillsStat = MP_STAT_HVYSNIPER_KILLS BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 eWeaponKillsStat = MP_STAT_PISTOL_KILLS BREAK CASE WEAPONTYPE_DLC_SMG_MK2 eWeaponKillsStat = MP_STAT_SMG_KILLS BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 eWeaponKillsStat = MP_STAT_BLRIFLE_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 eWeaponKillsStat = MP_STAT_MKRIFLE_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 eWeaponKillsStat = MP_STAT_PUMP_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 eWeaponKillsStat = MP_STAT_REV_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 eWeaponKillsStat = MP_STAT_SNSPIST_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 eWeaponKillsStat = MP_STAT_SPCARB_MK2_KILLS BREAK CASE WEAPONTYPE_DLC_RAYPISTOL eWeaponKillsStat = MP_STAT_RAYPISTOL_KILLS BREAK CASE WEAPONTYPE_DLC_RAYCARBINE eWeaponKillsStat = MP_STAT_RAYCARBINE_KILLS BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN eWeaponKillsStat = MP_STAT_RAYMINIGUN_KILLS BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER eWeaponKillsStat = MP_STAT_REV_NV_KILLS BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL eWeaponKillsStat = MP_STAT_CERPST_KILLS BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON eWeaponKillsStat = MP_STAT_BATON_KILLS BREAK CASE WEAPONTYPE_DLC_POLICERIFLE eWeaponKillsStat = MP_STAT_PLCRIFLE_KILLS BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_MILITARYRIFLE eWeaponKillsStat = MP_STAT_MLTRYRFL_KILLS BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL eWeaponKillsStat = MP_STAT_GDGTPST_KILLS BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN eWeaponKillsStat = MP_STAT_CMBSHGN_KILLS BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER eWeaponKillsStat = MP_STAT_EMPGL_KILLS BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP eWeaponKillsStat = MP_STAT_STNGNMP_KILLS BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_TACTICALRIFLE eWeaponKillsStat = MP_STAT_TACRIFLE_KILLS BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE eWeaponKillsStat = MP_STAT_PRCSRIFLE_KILLS BREAK #ENDIF DEFAULT PRINTLN("GET_NUMBER_OF_ENEMY_KILLS_WITH_WEAPON - Missing weapon, tell Kenneth R. Weapon hash = ", eWeapon) SCRIPT_ASSERT("GET_NUMBER_OF_ENEMY_KILLS_WITH_WEAPON - Missing weapon, tell Kenneth R.") RETURN 0 BREAK ENDSWITCH RETURN GET_MP_INT_CHARACTER_STAT(eWeaponKillsStat) ENDFUNC ////////////////////////////////////////////////////////////////////////////////////////// /// /// PROCS AND FUNCS TO DEAL WITH SAVED WEAPON DATA /// FUNC WEAPON_BITSET GET_WEAPON_BITSET_FROM_WEAPONTYPE(WEAPON_TYPE aWeapon) SWITCH aWeapon CASE WEAPONTYPE_UNARMED RETURN WEAPON_UNARMED_BIT_FIELD BREAK CASE WEAPONTYPE_PISTOL RETURN WEAPON_PISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN WEAPON_COMBATPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_APPISTOL RETURN WEAPON_APPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PISTOL50 RETURN WEAPON_DLC_PISTOL50_BIT_FIELD BREAK CASE WEAPONTYPE_SMG RETURN WEAPON_SMG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN WEAPON_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE WEAPONTYPE_MICROSMG RETURN WEAPON_MICROSMG_BIT_FIELD BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN WEAPON_ASSAULTRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN WEAPON_CARBINERIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN WEAPON_ADVANCEDRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_MG RETURN WEAPON_MG_BIT_FIELD BREAK CASE WEAPONTYPE_COMBATMG RETURN WEAPON_COMBATMG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_ASSAULTMG RETURN WEAPON_ASSAULTMG_BIT_FIELD BREAK CASE WEAPONTYPE_STICKYBOMB RETURN WEAPON_STICKYBOMB_BIT_FIELD BREAK CASE WEAPONTYPE_GRENADE RETURN WEAPON_GRENADE_BIT_FIELD BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN WEAPON_SMOKEGRENADE_BIT_FIELD BREAK CASE WEAPONTYPE_REMOTESNIPER RETURN WEAPON_REMOTESNIPER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER RETURN WEAPON_DLC_ASSAULTSNIPER_BIT_FIELD BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN WEAPON_SNIPERRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN WEAPON_HEAVYSNIPER_BIT_FIELD BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN WEAPON_PUMPSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN WEAPON_BULLPUPSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN WEAPON_ASSAULTSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN WEAPON_SAWNOFFSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN WEAPON_GRENADELAUNCHER_BIT_FIELD BREAK CASE WEAPONTYPE_RPG RETURN WEAPON_RPG_BIT_FIELD BREAK CASE WEAPONTYPE_MINIGUN RETURN WEAPON_MINIGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_LOUDHAILER RETURN WEAPON_LOUDHAILER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PROGRAMMABLEAR RETURN WEAPON_DLC_PROGRAMMABLEAR_BIT_FIELD BREAK CASE WEAPONTYPE_STUNGUN RETURN WEAPON_STUNGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_RUBBERGUN RETURN WEAPON_RUBBERGUN_BIT_FIELD BREAK CASE GADGETTYPE_PARACHUTE RETURN WEAPON_PARACHUTE_BIT_FIELD BREAK CASE WEAPONTYPE_KNIFE RETURN WEAPON_KNIFE_BIT_FIELD BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN WEAPON_NIGHTSTICK_BIT_FIELD BREAK CASE WEAPONTYPE_HAMMER RETURN WEAPON_HAMMER_BIT_FIELD BREAK CASE WEAPONTYPE_BAT RETURN WEAPON_BAT_BIT_FIELD BREAK CASE WEAPONTYPE_CROWBAR RETURN WEAPON_CROWBAR_BIT_FIELD BREAK CASE WEAPONTYPE_GOLFCLUB RETURN WEAPON_GOLFCLUB_BIT_FIELD BREAK CASE WEAPONTYPE_GRENADELAUNCHER_SMOKE RETURN WEAPON_GRENADELAUNCHER_SMOKE_BIT_FIELD BREAK CASE WEAPONTYPE_MOLOTOV RETURN WEAPON_MOLOTOV_BIT_FIELD BREAK CASE WEAPONTYPE_FIREEXTINGUISHER RETURN WEAPON_FIREEXTINGUISHER_BIT_FIELD BREAK CASE WEAPONTYPE_PETROLCAN RETURN WEAPON_PETROLCAN_BIT_FIELD BREAK CASE WEAPONTYPE_DIGISCANNER RETURN WEAPON_DIGISCANNER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_BOTTLE RETURN WEAPON_DLC_BOTTLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN WEAPON_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN WEAPON_DLC_SNSPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN WEAPON_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN WEAPON_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_GUSENBERG RETURN WEAPON_DLC_GUSENBERG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_DAGGER RETURN WEAPON_DLC_DAGGER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN WEAPON_DLC_VPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_FLAREGUN RETURN WEAPON_DLC_FLAREGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MUSKET RETURN WEAPON_DLC_MUSKET_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_FIREWORK RETURN WEAPON_DLC_FIREWORK_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN WEAPON_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN WEAPON_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PROXMINE RETURN WEAPON_DLC_PROXMINE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN WEAPON_DLC_HOMINGLAUNCH_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN WEAPON_DLC_HATCHET_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_RAILGUN RETURN WEAPON_DLC_RAILGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_COMBATPDW RETURN WEAPON_DLC_COMBATPDW_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_KNUCKLE RETURN WEAPON_DLC_KNUCKLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN WEAPON_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MACHETE RETURN WEAPON_DLC_MACHETE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN WEAPON_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN WEAPON_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN WEAPON_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT RETURN WEAPON_DLC_FLASHLIGHT_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_REVOLVER RETURN WEAPON_DLC_REVOLVER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE RETURN WEAPON_DLC_SWITCHBLADE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN RETURN WEAPON_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MINISMG RETURN WEAPON_DLC_MINISMG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN WEAPON_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_BATTLEAXE RETURN WEAPON_DLC_BATTLEAXE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PIPEBOMB RETURN WEAPON_DLC_PIPEBOMB_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_POOLCUE RETURN WEAPON_DLC_POOLCUE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_WRENCH RETURN WEAPON_DLC_WRENCH_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 RETURN WEAPON_ASSAULTRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 RETURN WEAPON_CARBINERIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 RETURN WEAPON_COMBATMG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 RETURN WEAPON_HEAVYSNIPER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 RETURN WEAPON_PISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SMG_MK2 RETURN WEAPON_SMG_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 RETURN WEAPON_PUMPSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 RETURN WEAPON_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 RETURN WEAPON_DLC_SNSPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 RETURN WEAPON_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 RETURN WEAPON_DLC_REVOLVER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 RETURN WEAPON_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_DOUBLEACTION RETURN WEAPON_DLC_DOUBLEACTION_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_STONE_HATCHET RETURN WEAPON_DLC_STONEHATCHET_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN WEAPON_DLC_RAYPISTOL_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN WEAPON_DLC_RAYCARBINE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN WEAPON_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN WEAPON_DLC_NAVYREVOLVER_BIT_FEILD BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN WEAPON_DLC_CERAMIC_PISTOL_BIT_FEILD BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON RETURN WEAPON_DLC_BATON_BIT_FEILD BREAK CASE WEAPONTYPE_DLC_POLICERIFLE RETURN WEAPON_DLC_POLICERIFLE_BIT_FEILD BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN WEAPON_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN WEAPON_DLC_MILITARYRIFLE_BIT_FEILD BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN WEAPON_DLC_GADGETPISTOL_BIT_FEILD BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_HEAVYRIFLE RETURN WEAPON_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN WEAPON_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN WEAPON_DLC_FERTILIZERCAN_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN WEAPON_DLC_STUNGUN_MP_BIT_FIELD BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR RETURN WEAPON_DLC_METALDETECTOR_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN WEAPON_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN WEAPON_DLC_PRECISIONRIFLE_BIT_FIELD BREAK #ENDIF ENDSWITCH RETURN WEAPON_UNARMED_BIT_FIELD ENDFUNC FUNC PLAYERKIT_BITSET GET_KIT_BITSET_FROM_KITTYPE(PLAYERKIT aplayerkit) SWITCH aplayerkit CASE PLAYERKIT_FM_PARACHUTE RETURN PLAYERKIT_FM_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_RED RETURN PLAYERKIT_FM_PARASMOKE_RED_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_ORANGE RETURN PLAYERKIT_FM_PARASMOKE_ORANGE_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_YELLOW RETURN PLAYERKIT_FM_PARASMOKE_YELLOW_BIT_FIELD BREAK CASE PLAYERKIT_FM_THERMALVISION RETURN PLAYERKIT_FM_THERMALVISION_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_BLACK RETURN PLAYERKIT_FM_PARASMOKE_BLACK_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_BLUE RETURN PLAYERKIT_FM_PARASMOKE_BLUE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_PISTOL RETURN PLAYERKIT_GOLD_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_CMBTPISTOL RETURN PLAYERKIT_GOLD_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_APPISTOL RETURN PLAYERKIT_GOLD_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_MICROSMG RETURN PLAYERKIT_GOLD_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_SMG RETURN PLAYERKIT_GOLD_SMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_ASLTRIFLE RETURN PLAYERKIT_GOLD_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_CRBNRIFLE RETURN PLAYERKIT_GOLD_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_ADVRRIFLE RETURN PLAYERKIT_GOLD_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_MG RETURN PLAYERKIT_GOLD_MG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_CMBTMG RETURN PLAYERKIT_GOLD_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_PUMP RETURN PLAYERKIT_GOLD_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_SAWOFF RETURN PLAYERKIT_GOLD_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_ASLTSHTGN RETURN PLAYERKIT_GOLD_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_RUBBERGUN RETURN PLAYERKIT_GOLD_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_STUNGUN RETURN PLAYERKIT_GOLD_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_SNIPERRFL RETURN PLAYERKIT_GOLD_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_HVYSNIPER RETURN PLAYERKIT_GOLD_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_GRNLAUNCH RETURN PLAYERKIT_GOLD_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_RPG RETURN PLAYERKIT_GOLD_RPG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_MINIGUN RETURN PLAYERKIT_GOLD_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_PISTOL RETURN PLAYERKIT_PLATINUM_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_CMBTPISTOL RETURN PLAYERKIT_PLATINUM_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_APPISTOL RETURN PLAYERKIT_PLATINUM_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_MICROSMG RETURN PLAYERKIT_PLATINUM_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_SMG RETURN PLAYERKIT_PLATINUM_SMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_ASLTRIFLE RETURN PLAYERKIT_PLATINUM_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_CRBNRIFLE RETURN PLAYERKIT_PLATINUM_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_ADVRRIFLE RETURN PLAYERKIT_PLATINUM_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_MG RETURN PLAYERKIT_PLATINUM_MG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_CMBTMG RETURN PLAYERKIT_PLATINUM_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_PUMP RETURN PLAYERKIT_PLATINUM_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_SAWOFF RETURN PLAYERKIT_PLATINUM_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_ASLTSHTGN RETURN PLAYERKIT_PLATINUM_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_RUBBERGUN RETURN PLAYERKIT_PLATINUM_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_STUNGUN RETURN PLAYERKIT_PLATINUM_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_SNIPERRFL RETURN PLAYERKIT_PLATINUM_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_HVYSNIPER RETURN PLAYERKIT_PLATINUM_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_GRNLAUNCH RETURN PLAYERKIT_PLATINUM_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_RPG RETURN PLAYERKIT_PLATINUM_RPG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_MINIGUN RETURN PLAYERKIT_PLATINUM_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_PISTOL RETURN PLAYERKIT_TAN_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_CMBTPISTOL RETURN PLAYERKIT_TAN_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_APPISTOL RETURN PLAYERKIT_TAN_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_MICROSMG RETURN PLAYERKIT_TAN_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_SMG RETURN PLAYERKIT_TAN_SMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_ASLTRIFLE RETURN PLAYERKIT_TAN_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_CRBNRIFLE RETURN PLAYERKIT_TAN_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_ADVRRIFLE RETURN PLAYERKIT_TAN_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_MG RETURN PLAYERKIT_TAN_MG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_CMBTMG RETURN PLAYERKIT_TAN_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_PUMP RETURN PLAYERKIT_TAN_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_TAN_SAWOFF RETURN PLAYERKIT_TAN_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_TAN_ASLTSHTGN RETURN PLAYERKIT_TAN_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_RUBBERGUN RETURN PLAYERKIT_TAN_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_STUNGUN RETURN PLAYERKIT_TAN_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_SNIPERRFL RETURN PLAYERKIT_TAN_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_HVYSNIPER RETURN PLAYERKIT_TAN_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_TAN_GRNLAUNCH RETURN PLAYERKIT_TAN_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_TAN_RPG RETURN PLAYERKIT_TAN_RPG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_MINIGUN RETURN PLAYERKIT_TAN_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_PISTOL RETURN PLAYERKIT_GREEN_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_CMBTPISTOL RETURN PLAYERKIT_GREEN_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_APPISTOL RETURN PLAYERKIT_GREEN_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_MICROSMG RETURN PLAYERKIT_GREEN_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_SMG RETURN PLAYERKIT_GREEN_SMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_ASLTRIFLE RETURN PLAYERKIT_GREEN_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_CRBNRIFLE RETURN PLAYERKIT_GREEN_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_ADVRRIFLE RETURN PLAYERKIT_GREEN_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_MG RETURN PLAYERKIT_GREEN_MG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_CMBTMG RETURN PLAYERKIT_GREEN_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_PUMP RETURN PLAYERKIT_GREEN_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_SAWOFF RETURN PLAYERKIT_GREEN_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_ASLTSHTGN RETURN PLAYERKIT_GREEN_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_RUBBERGUN RETURN PLAYERKIT_GREEN_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_STUNGUN RETURN PLAYERKIT_GREEN_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_SNIPERRFL RETURN PLAYERKIT_GREEN_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_HVYSNIPER RETURN PLAYERKIT_GREEN_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_GRNLAUNCH RETURN PLAYERKIT_GREEN_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_RPG RETURN PLAYERKIT_GREEN_RPG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_MINIGUN RETURN PLAYERKIT_GREEN_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_PISTOL RETURN PLAYERKIT_RED_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_CMBTPISTOL RETURN PLAYERKIT_RED_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_APPISTOL RETURN PLAYERKIT_RED_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_MICROSMG RETURN PLAYERKIT_RED_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_SMG RETURN PLAYERKIT_RED_SMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_ASLTRIFLE RETURN PLAYERKIT_RED_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_CRBNRIFLE RETURN PLAYERKIT_RED_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_ADVRRIFLE RETURN PLAYERKIT_RED_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_MG RETURN PLAYERKIT_RED_MG_BIT_FIELD BREAK CASE PLAYERKIT_RED_CMBTMG RETURN PLAYERKIT_RED_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_PUMP RETURN PLAYERKIT_RED_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_RED_SAWOFF RETURN PLAYERKIT_RED_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_RED_ASLTSHTGN RETURN PLAYERKIT_RED_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_RED_RUBBERGUN RETURN PLAYERKIT_RED_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_STUNGUN RETURN PLAYERKIT_RED_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_SNIPERRFL RETURN PLAYERKIT_RED_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_RED_HVYSNIPER RETURN PLAYERKIT_RED_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_RED_GRNLAUNCH RETURN PLAYERKIT_RED_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_RED_RPG RETURN PLAYERKIT_RED_RPG_BIT_FIELD BREAK CASE PLAYERKIT_RED_MINIGUN RETURN PLAYERKIT_RED_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_PISTOL RETURN PLAYERKIT_BLUE_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_CMBTPISTOL RETURN PLAYERKIT_BLUE_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_APPISTOL RETURN PLAYERKIT_BLUE_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_MICROSMG RETURN PLAYERKIT_BLUE_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_SMG RETURN PLAYERKIT_BLUE_SMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_ASLTRIFLE RETURN PLAYERKIT_BLUE_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_CRBNRIFLE RETURN PLAYERKIT_BLUE_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_ADVRRIFLE RETURN PLAYERKIT_BLUE_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_MG RETURN PLAYERKIT_BLUE_MG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_CMBTMG RETURN PLAYERKIT_BLUE_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_PUMP RETURN PLAYERKIT_BLUE_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_SAWOFF RETURN PLAYERKIT_BLUE_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_ASLTSHTGN RETURN PLAYERKIT_BLUE_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_RUBBERGUN RETURN PLAYERKIT_BLUE_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_STUNGUN RETURN PLAYERKIT_BLUE_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_SNIPERRFL RETURN PLAYERKIT_BLUE_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_HVYSNIPER RETURN PLAYERKIT_BLUE_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_GRNLAUNCH RETURN PLAYERKIT_BLUE_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_RPG RETURN PLAYERKIT_BLUE_RPG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_MINIGUN RETURN PLAYERKIT_BLUE_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_PISTOL RETURN PLAYERKIT_PINK_PISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_CMBTPISTOL RETURN PLAYERKIT_PINK_CMBTPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_APPISTOL RETURN PLAYERKIT_PINK_APPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_MICROSMG RETURN PLAYERKIT_PINK_MICROSMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_SMG RETURN PLAYERKIT_PINK_SMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_ASLTRIFLE RETURN PLAYERKIT_PINK_ASLTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_CRBNRIFLE RETURN PLAYERKIT_PINK_CRBNRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_ADVRRIFLE RETURN PLAYERKIT_PINK_ADVRRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_MG RETURN PLAYERKIT_PINK_MG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_CMBTMG RETURN PLAYERKIT_PINK_CMBTMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_PUMP RETURN PLAYERKIT_PINK_PUMP_BIT_FIELD BREAK CASE PLAYERKIT_PINK_SAWOFF RETURN PLAYERKIT_PINK_SAWOFF_BIT_FIELD BREAK CASE PLAYERKIT_PINK_ASLTSHTGN RETURN PLAYERKIT_PINK_ASLTSHTGN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_RUBBERGUN RETURN PLAYERKIT_PINK_RUBBERGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_STUNGUN RETURN PLAYERKIT_PINK_STUNGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_SNIPERRFL RETURN PLAYERKIT_PINK_SNIPERRFL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_HVYSNIPER RETURN PLAYERKIT_PINK_HVYSNIPER_BIT_FIELD BREAK CASE PLAYERKIT_PINK_GRNLAUNCH RETURN PLAYERKIT_PINK_GRNLAUNCH_BIT_FIELD BREAK CASE PLAYERKIT_PINK_RPG RETURN PLAYERKIT_PINK_RPG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_MINIGUN RETURN PLAYERKIT_PINK_MINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_SUPERLIGHTARMOUR RETURN PLAYERKIT_SUPERLIGHTARMOUR_BIT_FIELD BREAK CASE PLAYERKIT_LIGHTARMOUR RETURN PLAYERKIT_LIGHTARMOUR_BIT_FIELD BREAK CASE PLAYERKIT_STANDARDARMOUR RETURN PLAYERKIT_STANDARDARMOUR_BIT_FIELD BREAK CASE PLAYERKIT_HEAVYARMOUR RETURN PLAYERKIT_HEAVYARMOUR_BIT_FIELD BREAK CASE PLAYERKIT_SUPERHEAVYARMOUR RETURN PLAYERKIT_SUPERHEAVYARMOUR_BIT_FIELD BREAK CASE PLAYERKIT_FM_RAINBOW_PARACHUTE RETURN PLAYERKIT_FM_RAINBOW_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_RED_PARACHUTE RETURN PLAYERKIT_FM_RED_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_YELLOWWHITEBLUE_PARACHUTE RETURN PLAYERKIT_FM_YELLOWWHITEBLUE_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_WHITEREDBROWN_PARACHUTE RETURN PLAYERKIT_FM_WHITEREDBROWN_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLUEWHITERED_PARACHUTE RETURN PLAYERKIT_FM_BLUEWHITERED_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLUE_PARACHUTE RETURN PLAYERKIT_FM_BLUE_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLACK_PARACHUTE RETURN PLAYERKIT_FM_BLACK_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BROWNYELLOW_PARACHUTE RETURN PLAYERKIT_FM_BROWNYELLOW_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_ASSAULTSMG RETURN PLAYERKIT_GOLD_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_ASSAULTSMG RETURN PLAYERKIT_PINK_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_ASSAULTSMG RETURN PLAYERKIT_TAN_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_ASSAULTSMG RETURN PLAYERKIT_BLUE_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_ASSAULTSMG RETURN PLAYERKIT_RED_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_ASSAULTSMG RETURN PLAYERKIT_PLATINUM_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_ASSAULTMG RETURN PLAYERKIT_GOLD_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_ASSAULTMG RETURN PLAYERKIT_PINK_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_ASSAULTMG RETURN PLAYERKIT_TAN_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_ASSAULTMG RETURN PLAYERKIT_BLUE_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_ASSAULTMG RETURN PLAYERKIT_RED_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_ASSAULTMG RETURN PLAYERKIT_PLATINUM_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_PISTOL50 RETURN PLAYERKIT_GOLD_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_PISTOL50 RETURN PLAYERKIT_PINK_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_PISTOL50 RETURN PLAYERKIT_TAN_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_PISTOL50 RETURN PLAYERKIT_BLUE_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_PISTOL50 RETURN PLAYERKIT_RED_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_PISTOL50 RETURN PLAYERKIT_PLATINUM_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_ASSAULTSMG RETURN PLAYERKIT_GREEN_DLC_ASSAULTSMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_ASSAULTMG RETURN PLAYERKIT_GREEN_DLC_ASSAULTMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_PISTOL50 RETURN PLAYERKIT_GREEN_DLC_PISTOL50_BIT_FIELD BREAK CASE PLAYERKIT_FM_PARASMOKE_CREW RETURN PLAYERKIT_FM_PARASMOKE_CREW_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_GOLD_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_PINK_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_TAN_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_BLUE_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_RED_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_PLATINUM_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_BULLPUPSHOTGUN RETURN PLAYERKIT_GREEN_BULLPUP_SHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_SPECIALCARBINE RETURN PLAYERKIT_GOLD_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_SPECIALCARBINE RETURN PLAYERKIT_PINK_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_SPECIALCARBINE RETURN PLAYERKIT_TAN_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_SPECIALCARBINE RETURN PLAYERKIT_BLUE_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_SPECIALCARBINE RETURN PLAYERKIT_RED_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_SPECIALCARBINE RETURN PLAYERKIT_PLATINUM_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_SPECIALCARBINE RETURN PLAYERKIT_GREEN_DLC_SPECIALCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_SNSPISTOL RETURN PLAYERKIT_GOLD_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_SNSPISTOL RETURN PLAYERKIT_PINK_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_SNSPISTOL RETURN PLAYERKIT_TAN_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_SNSPISTOL RETURN PLAYERKIT_BLUE_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_SNSPISTOL RETURN PLAYERKIT_RED_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_SNSPISTOL RETURN PLAYERKIT_PLATINUM_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_SNSPISTOL RETURN PLAYERKIT_GREEN_DLC_SNSPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_HEAVY_PISTOL RETURN PLAYERKIT_GOLD_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_HEAVY_PISTOL RETURN PLAYERKIT_PINK_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_HEAVY_PISTOL RETURN PLAYERKIT_TAN_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_HEAVY_PISTOL RETURN PLAYERKIT_BLUE_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_HEAVY_PISTOL RETURN PLAYERKIT_RED_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_HEAVY_PISTOL RETURN PLAYERKIT_PLATINUM_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_HEAVY_PISTOL RETURN PLAYERKIT_GREEN_DLC_HEAVYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_BULLPUPRIFLE RETURN PLAYERKIT_GOLD_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_BULLPUPRIFLE RETURN PLAYERKIT_PINK_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_BULLPUPRIFLE RETURN PLAYERKIT_TAN_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_BULLPUPRIFLE RETURN PLAYERKIT_BLUE_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_BULLPUPRIFLE RETURN PLAYERKIT_RED_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_BULLPUPRIFLE RETURN PLAYERKIT_PLATINUM_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_BULLPUPRIFLE RETURN PLAYERKIT_GREEN_DLC_BULLPUPRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_GUSENBERG RETURN PLAYERKIT_GOLD_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_GUSENBERG RETURN PLAYERKIT_PINK_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_GUSENBERG RETURN PLAYERKIT_TAN_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_GUSENBERG RETURN PLAYERKIT_BLUE_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_GUSENBERG RETURN PLAYERKIT_RED_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_GUSENBERG RETURN PLAYERKIT_PLATINUM_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_GUSENBERG RETURN PLAYERKIT_GREEN_DLC_GUSENBERG_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L1 RETURN PLAYERKIT_ARMOUR_STORE_L1_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L2 RETURN PLAYERKIT_ARMOUR_STORE_L2_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L3 RETURN PLAYERKIT_ARMOUR_STORE_L3_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L4 RETURN PLAYERKIT_ARMOUR_STORE_L4_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L5 RETURN PLAYERKIT_ARMOUR_STORE_L5_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L6 RETURN PLAYERKIT_ARMOUR_STORE_L6_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L7 RETURN PLAYERKIT_ARMOUR_STORE_L7_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L8 RETURN PLAYERKIT_ARMOUR_STORE_L8_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L9 RETURN PLAYERKIT_ARMOUR_STORE_L9_BIT_FIELD BREAK CASE PLAYERKIT_ARMOUR_STORE_L10 RETURN PLAYERKIT_ARMOUR_STORE_L10_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_VINTAGEPISTOL RETURN PLAYERKIT_GOLD_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_VINTAGEPISTOL RETURN PLAYERKIT_PINK_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_VINTAGEPISTOL RETURN PLAYERKIT_TAN_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_VINTAGEPISTOL RETURN PLAYERKIT_BLUE_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_VINTAGEPISTOL RETURN PLAYERKIT_RED_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_VINTAGEPISTOL RETURN PLAYERKIT_PLATINUM_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_VINTAGEPISTOL RETURN PLAYERKIT_GREEN_DLC_VINTAGEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_0 RETURN PLAYERKIT_PARA_PACK_0_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_1 RETURN PLAYERKIT_PARA_PACK_1_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_2 RETURN PLAYERKIT_PARA_PACK_2_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_3 RETURN PLAYERKIT_PARA_PACK_3_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_4 RETURN PLAYERKIT_PARA_PACK_4_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_5 RETURN PLAYERKIT_PARA_PACK_5_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_6 RETURN PLAYERKIT_PARA_PACK_6_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_7 RETURN PLAYERKIT_PARA_PACK_7_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_0 RETURN PLAYERKIT_PARA_DLC_CHUTE_0_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_1 RETURN PLAYERKIT_PARA_DLC_CHUTE_1_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_2 RETURN PLAYERKIT_PARA_DLC_CHUTE_2_BIT_FIELD BREAK ENDSWITCH // Independence Day SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_MUSKET RETURN PLAYERKIT_GOLD_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MUSKET RETURN PLAYERKIT_PINK_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MUSKET RETURN PLAYERKIT_TAN_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MUSKET RETURN PLAYERKIT_BLUE_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MUSKET RETURN PLAYERKIT_RED_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_MUSKET RETURN PLAYERKIT_PLATINUM_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MUSKET RETURN PLAYERKIT_GREEN_DLC_MUSKET_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_FIREWORK RETURN PLAYERKIT_GOLD_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_FIREWORK RETURN PLAYERKIT_PINK_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_FIREWORK RETURN PLAYERKIT_TAN_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_FIREWORK RETURN PLAYERKIT_BLUE_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_FIREWORK RETURN PLAYERKIT_RED_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_FIREWORK RETURN PLAYERKIT_PLATINUM_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_FIREWORK RETURN PLAYERKIT_GREEN_DLC_FIREWORK_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_FLARE RETURN PLAYERKIT_GOLD_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_FLARE RETURN PLAYERKIT_PINK_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_FLARE RETURN PLAYERKIT_TAN_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_FLARE RETURN PLAYERKIT_BLUE_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_FLARE RETURN PLAYERKIT_RED_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_FLARE RETURN PLAYERKIT_PLATINUM_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_FLARE RETURN PLAYERKIT_GREEN_DLC_FLAREGUN_BIT_FIELD BREAK CASE PLAYERKIT_PATRIOT_PARACHUTE_SMOKE RETURN PLAYERKIT_PATRIOT_PARACHUTE_SMOKE_BIT_FIELD BREAK CASE PLAYERKIT_FM_RAINBOW_RSRV_PARACHUTE RETURN PLAYERKIT_FM_RAINBOW_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_RED_RSRV_PARACHUTE RETURN PLAYERKIT_FM_RED_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_YELLOWWHITEBLUE_RSRV_PARACHUTE RETURN PLAYERKIT_FM_YELLOWWHITEBLUE_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_WHITEREDBROWN_RSRV_PARACHUTE RETURN PLAYERKIT_FM_WHITEREDBROWN_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLUEWHITERED_RSRV_PARACHUTE RETURN PLAYERKIT_FM_BLUEWHITERED_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLUE_RSRV_PARACHUTE RETURN PLAYERKIT_FM_BLUE_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BLACK_RSRV_PARACHUTE RETURN PLAYERKIT_FM_BLACK_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_FM_BROWNYELLOW_RSRV_PARACHUTE RETURN PLAYERKIT_FM_BROWNYELLOW_RSRV_PARACHUTE_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_0 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_0_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_1 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_1_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_2 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_2_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_3 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_3_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_4 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_4_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_5 RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_5_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_3 RETURN PLAYERKIT_PARA_DLC_CHUTE_3_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_4 RETURN PLAYERKIT_PARA_DLC_CHUTE_4_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_5 RETURN PLAYERKIT_PARA_DLC_CHUTE_5_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_8 RETURN PLAYERKIT_PARA_PACK_8_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_9 RETURN PLAYERKIT_PARA_PACK_9_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_10 RETURN PLAYERKIT_PARA_PACK_10_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_11 RETURN PLAYERKIT_PARA_PACK_11_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_12 RETURN PLAYERKIT_PARA_PACK_12_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_13 RETURN PLAYERKIT_PARA_PACK_13_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_14 RETURN PLAYERKIT_PARA_PACK_14_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_15 RETURN PLAYERKIT_PARA_PACK_15_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_16 RETURN PLAYERKIT_PARA_PACK_16_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_17 RETURN PLAYERKIT_PARA_PACK_17_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_18 RETURN PLAYERKIT_PARA_PACK_18_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_19 RETURN PLAYERKIT_PARA_PACK_19_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_20 RETURN PLAYERKIT_PARA_PACK_20_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_21 RETURN PLAYERKIT_PARA_PACK_21_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_22 RETURN PLAYERKIT_PARA_PACK_22_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_23 RETURN PLAYERKIT_PARA_PACK_23_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_24 RETURN PLAYERKIT_PARA_PACK_24_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_25 RETURN PLAYERKIT_PARA_PACK_25_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_26 RETURN PLAYERKIT_PARA_PACK_26_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_PARA_PACK_27 RETURN PLAYERKIT_PARA_PACK_27_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_28 RETURN PLAYERKIT_PARA_PACK_28_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_29 RETURN PLAYERKIT_PARA_PACK_29_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_30 RETURN PLAYERKIT_PARA_PACK_30_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_31 RETURN PLAYERKIT_PARA_PACK_31_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_32 RETURN PLAYERKIT_PARA_PACK_32_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_33 RETURN PLAYERKIT_PARA_PACK_33_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_34 RETURN PLAYERKIT_PARA_PACK_34_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_35 RETURN PLAYERKIT_PARA_PACK_35_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_36 RETURN PLAYERKIT_PARA_PACK_36_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_37 RETURN PLAYERKIT_PARA_PACK_37_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_38 RETURN PLAYERKIT_PARA_PACK_38_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_39 RETURN PLAYERKIT_PARA_PACK_39_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_40 RETURN PLAYERKIT_PARA_PACK_40_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_41 RETURN PLAYERKIT_PARA_PACK_41_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_42 RETURN PLAYERKIT_PARA_PACK_42_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_43 RETURN PLAYERKIT_PARA_PACK_43_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_44 RETURN PLAYERKIT_PARA_PACK_44_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_45 RETURN PLAYERKIT_PARA_PACK_45_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_46 RETURN PLAYERKIT_PARA_PACK_46_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_GOLD_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_PINK_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_TAN_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_BLUE_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_RED_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_PLATINUM_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_HEAVYSHOTGUN RETURN PLAYERKIT_GREEN_DLC_HEAVYSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_MARKSMANRIFLE RETURN PLAYERKIT_GOLD_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MARKSMANRIFLE RETURN PLAYERKIT_PINK_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MARKSMANRIFLE RETURN PLAYERKIT_TAN_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MARKSMANRIFLE RETURN PLAYERKIT_BLUE_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MARKSMANRIFLE RETURN PLAYERKIT_RED_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_FMARKSMANRIFLE RETURN PLAYERKIT_PLATINUM_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MARKSMANRIFLE RETURN PLAYERKIT_GREEN_DLC_MARKSMANRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_GOLD_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_PINK_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_TAN_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_BLUE_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_RED_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_PLATINUM_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_HOMINGLAUNCHER RETURN PLAYERKIT_GREEN_DLC_HOMINGLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_RAILGUN RETURN PLAYERKIT_GOLD_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_RAILGUN RETURN PLAYERKIT_PINK_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_RAILGUN RETURN PLAYERKIT_TAN_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_RAILGUN RETURN PLAYERKIT_BLUE_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_RAILGUN RETURN PLAYERKIT_RED_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_RAILGUN RETURN PLAYERKIT_PLATINUM_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_RAILGUN RETURN PLAYERKIT_GREEN_DLC_RAILGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLACK_COMBAT_CHUTE_BAG RETURN PLAYERKIT_BLACK_COMBAT_CHUTE_BAG_BIT_FIELD BREAK CASE PLAYERKIT_GRAY_COMBAT_CHUTE_BAG RETURN PLAYERKIT_GRAY_COMBAT_CHUTE_BAG_BIT_FIELD BREAK CASE PLAYERKIT_CHARCOAL_COMBAT_CHUTE_BAG RETURN PLAYERKIT_CHARCOAL_COMBAT_CHUTE_BAG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_COMBAT_CHUTE_BAG RETURN PLAYERKIT_TAN_COMBAT_CHUTE_BAG_BIT_FIELD BREAK CASE PLAYERKIT_FOREST_COMBAT_CHUTE_BAG RETURN PLAYERKIT_FOREST_COMBAT_CHUTE_BAG_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_62 RETURN PLAYERKIT_PARA_PACK_62_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_63 RETURN PLAYERKIT_PARA_PACK_63_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_COMBATPDW RETURN PLAYERKIT_GREEN_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_COMBATPDW RETURN PLAYERKIT_GOLD_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_COMBATPDW RETURN PLAYERKIT_PINK_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_COMBATPDW RETURN PLAYERKIT_TAN_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_COMBATPDW RETURN PLAYERKIT_BLUE_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_COMBATPDW RETURN PLAYERKIT_RED_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_COMBATPDW RETURN PLAYERKIT_PLATINUM_DLC_COMBATPDW_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_MARKSMANPISTOL RETURN PLAYERKIT_GOLD_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MARKSMANPISTOL RETURN PLAYERKIT_PINK_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MARKSMANPISTOL RETURN PLAYERKIT_TAN_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MARKSMANPISTOL RETURN PLAYERKIT_BLUE_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MARKSMANPISTOL RETURN PLAYERKIT_RED_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_MARKSMANPISTOL RETURN PLAYERKIT_PLATINUM_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MARKSMANPISTOL RETURN PLAYERKIT_GREEN_DLC_MARKSMANPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_MACHINEPISTOL RETURN PLAYERKIT_GOLD_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MACHINEPISTOL RETURN PLAYERKIT_PINK_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MACHINEPISTOL RETURN PLAYERKIT_TAN_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MACHINEPISTOL RETURN PLAYERKIT_BLUE_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MACHINEPISTOL RETURN PLAYERKIT_RED_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_MACHINEPISTOL RETURN PLAYERKIT_PLATINUM_DLC_MACHINEPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MACHINEPISTOL RETURN PLAYERKIT_GREEN_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_COMPACTRIFLE RETURN PLAYERKIT_GOLD_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_COMPACTRIFLE RETURN PLAYERKIT_PINK_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_COMPACTRIFLE RETURN PLAYERKIT_TAN_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_COMPACTRIFLE RETURN PLAYERKIT_BLUE_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_COMPACTRIFLE RETURN PLAYERKIT_RED_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_COMPACTRIFLE RETURN PLAYERKIT_PLATINUM_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_COMPACTRIFLE RETURN PLAYERKIT_GREEN_DLC_COMPACTRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_DBSHOTGUN RETURN PLAYERKIT_GOLD_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_DBSHOTGUN RETURN PLAYERKIT_PINK_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_DBSHOTGUN RETURN PLAYERKIT_TAN_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_DBSHOTGUN RETURN PLAYERKIT_BLUE_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_DBSHOTGUN RETURN PLAYERKIT_RED_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_DBSHOTGUN RETURN PLAYERKIT_PLATINUM_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_DBSHOTGUN RETURN PLAYERKIT_GREEN_DLC_DBSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_REVOLVER RETURN PLAYERKIT_GOLD_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_REVOLVER RETURN PLAYERKIT_PINK_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_REVOLVER RETURN PLAYERKIT_TAN_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_REVOLVER RETURN PLAYERKIT_BLUE_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_REVOLVER RETURN PLAYERKIT_RED_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_REVOLVER RETURN PLAYERKIT_PLATINUM_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_REVOLVER RETURN PLAYERKIT_GREEN_DLC_REVOLVER_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_AUTOSHOTGUN RETURN PLAYERKIT_GOLD_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_AUTOSHOTGUN RETURN PLAYERKIT_PINK_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_AUTOSHOTGUN RETURN PLAYERKIT_TAN_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_AUTOSHOTGUN RETURN PLAYERKIT_BLUE_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_AUTOSHOTGUN RETURN PLAYERKIT_RED_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_AUTOSHOTGUN RETURN PLAYERKIT_PLATINUM_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_AUTOSHOTGUN RETURN PLAYERKIT_GREEN_DLC_AUTOSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_MINISMG RETURN PLAYERKIT_GOLD_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MINISMG RETURN PLAYERKIT_PINK_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MINISMG RETURN PLAYERKIT_TAN_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MINISMG RETURN PLAYERKIT_BLUE_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MINISMG RETURN PLAYERKIT_RED_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_MINISMG RETURN PLAYERKIT_PLATINUM_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MINISMG RETURN PLAYERKIT_GREEN_DLC_MINISMG_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_GOLD_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_PINK_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_TAN_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_BLUE_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_RED_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_PLATINUM_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_COMPACTLAUNCHER RETURN PLAYERKIT_GREEN_DLC_COMPACTLAUNCHER_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_PISTOL_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_SMG_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_COMBATMG_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_1_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_PISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_PISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_PISTOL_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_SMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_SMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_SMG_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_HEAVYSNIPER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_HEAVYSNIPER_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_COMBATMG_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_COMBATMG_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_COMBATMG_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_ASSAULTRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_ASSAULTRIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_CARBINERIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_CARBINERIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_REVOLVER_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_TINT_1_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_1_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_2_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_2_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_3_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_3_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_4_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_4_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_5_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_5_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_6_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_6_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_7_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_7_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_8_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_8_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_9_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_9_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_10_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_10_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_11_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_11_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_12_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_12_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_13_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_13_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_14_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_14_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_15_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_15_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_16_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_16_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_17_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_17_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_18_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_18_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_19_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_19_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_20_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_20_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_21_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_21_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_22_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_22_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_23_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_23_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_24_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_24_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_25_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_25_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_26_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_26_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_27_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_27_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_28_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_28_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_29_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_29_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_30_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_30_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_TINT_31_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_TINT_31_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_PUMPSHOTGUN_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_PUMPSHOTGUN_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_SPECIALCARBINE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_SPECIALCARBINE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_SNSPISTOL_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_SNSPISTOL_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_MARKSMANRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_MARKSMANRIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_REVOLVER_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_REVOLVER_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_REVOLVER_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_MK2_CAMO_TINT_1_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_1_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_2_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_2_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_3_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_3_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_4_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_4_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_5_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_5_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_6_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_6_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_7_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_7_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_8_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_8_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_9_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_9_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_10_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_10_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_11_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_11_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_12_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_12_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_13_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_13_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_14_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_14_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_15_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_15_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_16_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_16_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_17_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_17_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_18_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_18_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_19_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_19_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_20_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_20_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_21_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_21_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_22_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_22_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_23_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_23_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_24_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_24_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_25_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_25_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_26_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_26_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_27_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_27_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_28_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_28_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_29_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_29_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_30_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_30_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK CASE PLAYERKIT_MK2_CAMO_TINT_31_DLC_BULLPUPRIFLE_MK2 RETURN PLAYERKIT_MK2_CAMO_TINT_31_DLC_BULLPUPRIFLE_MK2_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_RAYPISTOL RETURN PLAYERKIT_GOLD_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_RAYPISTOL RETURN PLAYERKIT_PINK_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_RAYPISTOL RETURN PLAYERKIT_TAN_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_RAYPISTOL RETURN PLAYERKIT_BLUE_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_RAYPISTOL RETURN PLAYERKIT_RED_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_RAYPISTOL RETURN PLAYERKIT_PLATINUM_DLC_RAYPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_RAYPISTOL RETURN PLAYERKIT_GREEN_DLC_RAYPISTOL_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_RAYCARBINE RETURN PLAYERKIT_GOLD_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_RAYCARBINE RETURN PLAYERKIT_PINK_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_RAYCARBINE RETURN PLAYERKIT_TAN_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_RAYCARBINE RETURN PLAYERKIT_BLUE_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_RAYCARBINE RETURN PLAYERKIT_RED_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_RAYCARBINE RETURN PLAYERKIT_PLATINUM_DLC_RAYCARBINE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_RAYCARBINE RETURN PLAYERKIT_GREEN_DLC_RAYCARBINE_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_RAYMINIGUN RETURN PLAYERKIT_GOLD_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_RAYMINIGUN RETURN PLAYERKIT_PINK_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_RAYMINIGUN RETURN PLAYERKIT_TAN_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_RAYMINIGUN RETURN PLAYERKIT_BLUE_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_RAYMINIGUN RETURN PLAYERKIT_RED_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_RAYMINIGUN RETURN PLAYERKIT_PLATINUM_DLC_RAYMINIGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_RAYMINIGUN RETURN PLAYERKIT_GREEN_DLC_RAYMINIGUN_BIT_FIELD BREAK ENDSWITCH SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_CERAMICPISTOL RETURN PLAYERKIT_GOLD_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_CERAMICPISTOL RETURN PLAYERKIT_PINK_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_CERAMICPISTOL RETURN PLAYERKIT_TAN_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_CERAMICPISTOL RETURN PLAYERKIT_BLUE_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_CERAMICPISTOL RETURN PLAYERKIT_RED_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_CERAMICPISTOL RETURN PLAYERKIT_PLATINUM_DLC_CERAMICPISTOL_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_CERAMICPISTOL RETURN PLAYERKIT_GREEN_DLC_CERAMICPISTOL_BIT_FIELD BREAK ENDSWITCH #IF FEATURE_COPS_N_CROOKS SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_POLICERIFLE RETURN PLAYERKIT_GOLD_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_POLICERIFLE RETURN PLAYERKIT_PINK_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_POLICERIFLE RETURN PLAYERKIT_TAN_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_POLICERIFLE RETURN PLAYERKIT_BLUE_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_POLICERIFLE RETURN PLAYERKIT_RED_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_POLICERIFLE RETURN PLAYERKIT_PLATINUM_DLC_POLICERIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_POLICERIFLE RETURN PLAYERKIT_GREEN_DLC_POLICERIFLE_BIT_FIELD BREAK ENDSWITCH #ENDIF #IF FEATURE_HEIST_ISLAND SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_COMBATSHOTGUN RETURN PLAYERKIT_GOLD_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_COMBATSHOTGUN RETURN PLAYERKIT_PINK_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_COMBATSHOTGUN RETURN PLAYERKIT_TAN_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_COMBATSHOTGUN RETURN PLAYERKIT_BLUE_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_COMBATSHOTGUN RETURN PLAYERKIT_RED_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_COMBATSHOTGUN RETURN PLAYERKIT_PLATINUM_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_COMBATSHOTGUN RETURN PLAYERKIT_GREEN_DLC_COMBATSHOTGUN_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_MILITARYRIFLE RETURN PLAYERKIT_GOLD_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_MILITARYRIFLE RETURN PLAYERKIT_PINK_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_MILITARYRIFLE RETURN PLAYERKIT_TAN_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_MILITARYRIFLE RETURN PLAYERKIT_BLUE_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_MILITARYRIFLE RETURN PLAYERKIT_RED_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_MILITARYRIFLE RETURN PLAYERKIT_PLATINUM_DLC_MILITARYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_MILITARYRIFLE RETURN PLAYERKIT_GREEN_DLC_MILITARYRIFLE_BIT_FIELD BREAK ENDSWITCH #ENDIF #IF FEATURE_TUNER SWITCH aplayerkit CASE PLAYERKIT_PARA_DLC_CHUTE_SPRUNK RETURN PLAYERKIT_PARA_DLC_CHUTE_SPRUNK_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_ECOLA RETURN PLAYERKIT_PARA_DLC_CHUTE_ECOLA_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_CHUTE_HALLOWEEN RETURN PLAYERKIT_PARA_DLC_CHUTE_HALLOWEEN_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_SPRUNK RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_SPRUNK_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_ECOLA RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_ECOLA_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_HALLOWEEN RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_HALLOWEEN_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_SPRUNK RETURN PLAYERKIT_PARA_PACK_SPRUNK_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_ECOLA RETURN PLAYERKIT_PARA_PACK_ECOLA_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_HALLOWEEN RETURN PLAYERKIT_PARA_PACK_HALLOWEEN_BIT_FIELD BREAK ENDSWITCH #ENDIF #IF FEATURE_FIXER SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_HEAVYRIFLE RETURN PLAYERKIT_GOLD_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_HEAVYRIFLE RETURN PLAYERKIT_PINK_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_HEAVYRIFLE RETURN PLAYERKIT_TAN_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_HEAVYRIFLE RETURN PLAYERKIT_BLUE_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_HEAVYRIFLE RETURN PLAYERKIT_RED_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_HEAVYRIFLE RETURN PLAYERKIT_PLATINUM_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_HEAVYRIFLE RETURN PLAYERKIT_GREEN_DLC_HEAVYRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_EMPLAUNCHER RETURN PLAYERKIT_GOLD_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_EMPLAUNCHER RETURN PLAYERKIT_PINK_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_EMPLAUNCHER RETURN PLAYERKIT_TAN_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_EMPLAUNCHER RETURN PLAYERKIT_BLUE_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_EMPLAUNCHER RETURN PLAYERKIT_RED_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_EMPLAUNCHER RETURN PLAYERKIT_PLATINUM_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_EMPLAUNCHER RETURN PLAYERKIT_GREEN_DLC_EMPLAUNCHER_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_STUNGUNG_MP RETURN PLAYERKIT_GOLD_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_STUNGUNG_MP RETURN PLAYERKIT_PINK_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_STUNGUNG_MP RETURN PLAYERKIT_TAN_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_STUNGUNG_MP RETURN PLAYERKIT_BLUE_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_STUNGUNG_MP RETURN PLAYERKIT_RED_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_STUNGUNG_MP RETURN PLAYERKIT_PLATINUM_DLC_STUNGUNG_MP_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_STUNGUNG_MP RETURN PLAYERKIT_GREEN_DLC_STUNGUNG_MP_BIT_FIELD BREAK ENDSWITCH #ENDIF #IF FEATURE_DLC_1_2022 SWITCH aplayerkit CASE PLAYERKIT_GOLD_DLC_TACTICALRIFLE RETURN PLAYERKIT_GOLD_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_TACTICALRIFLE RETURN PLAYERKIT_PINK_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_TACTICALRIFLE RETURN PLAYERKIT_TAN_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_TACTICALRIFLE RETURN PLAYERKIT_BLUE_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_TACTICALRIFLE RETURN PLAYERKIT_RED_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_TACTICALRIFLE RETURN PLAYERKIT_PLATINUM_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_TACTICALRIFLE RETURN PLAYERKIT_GREEN_DLC_TACTICALRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GOLD_DLC_PRECISIONRIFLE RETURN PLAYERKIT_GOLD_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PINK_DLC_PRECISIONRIFLE RETURN PLAYERKIT_PINK_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_TAN_DLC_PRECISIONRIFLE RETURN PLAYERKIT_TAN_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_BLUE_DLC_PRECISIONRIFLE RETURN PLAYERKIT_BLUE_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_RED_DLC_PRECISIONRIFLE RETURN PLAYERKIT_RED_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_PLATINUM_DLC_PRECISIONRIFLE RETURN PLAYERKIT_PLATINUM_DLC_PRECISIONRIFLE_BIT_FIELD BREAK CASE PLAYERKIT_GREEN_DLC_PRECISIONRIFLE RETURN PLAYERKIT_GREEN_DLC_TACTICALRIFLE_BIT_FIELD BREAK ENDSWITCH #ENDIF #IF FEATURE_DLC_1_2022 SWITCH aplayerkit CASE PLAYERKIT_PARA_DLC_CHUTE_JUNK RETURN PLAYERKIT_PARA_DLC_CHUTE_JUNK_BIT_FIELD BREAK CASE PLAYERKIT_PARA_DLC_RSRV_CHUTE_JUNK RETURN PLAYERKIT_PARA_DLC_RSRV_CHUTE_JUNK_BIT_FIELD BREAK CASE PLAYERKIT_PARA_PACK_JUNK RETURN PLAYERKIT_PARA_PACK_JUNK_BIT_FIELD BREAK ENDSWITCH #ENDIF SCRIPT_ASSERT("GET_KIT_BITSET_FROM_KITTYPE invalid field returning. - Kevin Wong") RETURN PLAYERKIT_PINK_MINIGUN_BIT_FIELD ENDFUNC FUNC WEAPON_TYPE GET_WEAPONTYPE_FROM_WEAPON_BITSET(WEAPON_BITSET aWeapon, BOOL bMK2Weapon = FALSE) IF bMK2Weapon SWITCH aWeapon CASE WEAPON_PISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_PISTOL_MK2 CASE WEAPON_SMG_BIT_FIELD RETURN WEAPONTYPE_DLC_SMG_MK2 CASE WEAPON_ASSAULTRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 CASE WEAPON_CARBINERIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_CARBINERIFLE_MK2 CASE WEAPON_COMBATMG_BIT_FIELD RETURN WEAPONTYPE_DLC_COMBATMG_MK2 CASE WEAPON_HEAVYSNIPER_BIT_FIELD RETURN WEAPONTYPE_DLC_HEAVYSNIPER_MK2 ENDSWITCH SWITCH aWeapon CASE WEAPON_PUMPSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 CASE WEAPON_DLC_SPECIALCARBINE_BIT_FIELD RETURN WEAPONTYPE_DLC_SPECIALCARBINE_MK2 CASE WEAPON_DLC_SNSPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_SNSPISTOL_MK2 CASE WEAPON_DLC_MARKSMANRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 CASE WEAPON_DLC_REVOLVER_BIT_FIELD RETURN WEAPONTYPE_DLC_REVOLVER_MK2 CASE WEAPON_DLC_BULLPUPRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 ENDSWITCH ENDIF SWITCH aWeapon CASE WEAPON_KNIFE_BIT_FIELD RETURN WEAPONTYPE_KNIFE BREAK //Pistols CASE WEAPON_PISTOL_BIT_FIELD RETURN WEAPONTYPE_PISTOL BREAK CASE WEAPON_COMBATPISTOL_BIT_FIELD RETURN WEAPONTYPE_COMBATPISTOL BREAK CASE WEAPON_APPISTOL_BIT_FIELD RETURN WEAPONTYPE_APPISTOL BREAK //SMGs CASE WEAPON_SMG_BIT_FIELD RETURN WEAPONTYPE_SMG BREAK CASE WEAPON_MICROSMG_BIT_FIELD RETURN WEAPONTYPE_MICROSMG BREAK //Assault Rifles CASE WEAPON_ASSAULTRIFLE_BIT_FIELD RETURN WEAPONTYPE_ASSAULTRIFLE BREAK CASE WEAPON_CARBINERIFLE_BIT_FIELD RETURN WEAPONTYPE_CARBINERIFLE BREAK CASE WEAPON_ADVANCEDRIFLE_BIT_FIELD RETURN WEAPONTYPE_ADVANCEDRIFLE BREAK //LMG CASE WEAPON_MG_BIT_FIELD RETURN WEAPONTYPE_MG BREAK CASE WEAPON_COMBATMG_BIT_FIELD RETURN WEAPONTYPE_COMBATMG BREAK //Handhelds CASE WEAPON_STICKYBOMB_BIT_FIELD RETURN WEAPONTYPE_STICKYBOMB BREAK CASE WEAPON_GRENADE_BIT_FIELD RETURN WEAPONTYPE_GRENADE BREAK CASE WEAPON_SMOKEGRENADE_BIT_FIELD RETURN WEAPONTYPE_SMOKEGRENADE BREAK CASE WEAPON_DLC_PROXMINE_BIT_FIELD RETURN WEAPONTYPE_DLC_PROXMINE BREAK //Sniper CASE WEAPON_REMOTESNIPER_BIT_FIELD RETURN WEAPONTYPE_REMOTESNIPER BREAK CASE WEAPON_SNIPERRIFLE_BIT_FIELD RETURN WEAPONTYPE_SNIPERRIFLE BREAK CASE WEAPON_HEAVYSNIPER_BIT_FIELD RETURN WEAPONTYPE_HEAVYSNIPER BREAK CASE WEAPON_DLC_MARKSMANRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_MARKSMANRIFLE BREAK //Shotgun CASE WEAPON_PUMPSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_PUMPSHOTGUN BREAK CASE WEAPON_ASSAULTSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_ASSAULTSHOTGUN BREAK CASE WEAPON_SAWNOFFSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_SAWNOFFSHOTGUN BREAK CASE WEAPON_DLC_HEAVYSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_HEAVYSHOTGUN BREAK //Heavy Weapon CASE WEAPON_GRENADELAUNCHER_BIT_FIELD RETURN WEAPONTYPE_GRENADELAUNCHER BREAK CASE WEAPON_RPG_BIT_FIELD RETURN WEAPONTYPE_RPG BREAK CASE WEAPON_MINIGUN_BIT_FIELD RETURN WEAPONTYPE_MINIGUN BREAK CASE WEAPON_DLC_HOMINGLAUNCH_BIT_FIELD RETURN WEAPONTYPE_DLC_HOMINGLAUNCHER BREAK //Extras CASE WEAPON_STUNGUN_BIT_FIELD RETURN WEAPONTYPE_STUNGUN BREAK CASE WEAPON_PARACHUTE_BIT_FIELD RETURN GADGETTYPE_PARACHUTE BREAK CASE WEAPON_NIGHTSTICK_BIT_FIELD RETURN WEAPONTYPE_NIGHTSTICK BREAK CASE WEAPON_PETROLCAN_BIT_FIELD RETURN WEAPONTYPE_PETROLCAN BREAK CASE WEAPON_DLC_BOTTLE_BIT_FIELD RETURN WEAPONTYPE_DLC_BOTTLE BREAK CASE WEAPON_DLC_SPECIALCARBINE_BIT_FIELD RETURN WEAPONTYPE_DLC_SPECIALCARBINE BREAK CASE WEAPON_DLC_SNSPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_SNSPISTOL BREAK CASE WEAPON_DLC_BULLPUPRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_BULLPUPRIFLE BREAK CASE WEAPON_DLC_HEAVYPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_HEAVYPISTOL BREAK CASE WEAPON_BULLPUPSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_BULLPUPSHOTGUN BREAK CASE WEAPON_DLC_GUSENBERG_BIT_FIELD RETURN WEAPONTYPE_DLC_GUSENBERG BREAK CASE WEAPON_DLC_DAGGER_BIT_FIELD RETURN WEAPONTYPE_DLC_DAGGER BREAK CASE WEAPON_DLC_VPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_VINTAGEPISTOL BREAK CASE WEAPON_DLC_FLAREGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_FLAREGUN BREAK CASE WEAPON_DLC_MUSKET_BIT_FIELD RETURN WEAPONTYPE_DLC_MUSKET BREAK CASE WEAPON_DLC_FIREWORK_BIT_FIELD RETURN WEAPONTYPE_DLC_FIREWORK BREAK CASE WEAPON_DLC_HATCHET_BIT_FIELD RETURN WEAPONTYPE_DLC_HATCHET BREAK CASE WEAPON_DLC_RAILGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_RAILGUN BREAK CASE WEAPON_DLC_COMBATPDW_BIT_FIELD RETURN WEAPONTYPE_DLC_COMBATPDW BREAK CASE WEAPON_DLC_KNUCKLE_BIT_FIELD RETURN WEAPONTYPE_DLC_KNUCKLE BREAK CASE WEAPON_DLC_MARKSMANPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_MARKSMANPISTOL BREAK CASE WEAPON_DLC_MACHETE_BIT_FIELD RETURN WEAPONTYPE_DLC_MACHETE BREAK CASE WEAPON_DLC_MACHINEPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_MACHINEPISTOL BREAK CASE WEAPON_DLC_DBSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_DBSHOTGUN BREAK CASE WEAPON_DLC_COMPACTRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_COMPACTRIFLE BREAK CASE WEAPON_DLC_FLASHLIGHT_BIT_FIELD RETURN WEAPONTYPE_DLC_FLASHLIGHT BREAK CASE WEAPON_DLC_REVOLVER_BIT_FIELD RETURN WEAPONTYPE_DLC_REVOLVER BREAK CASE WEAPON_DLC_SWITCHBLADE_BIT_FIELD RETURN WEAPONTYPE_DLC_SWITCHBLADE BREAK CASE WEAPON_HAMMER_BIT_FIELD RETURN WEAPONTYPE_HAMMER BREAK CASE WEAPON_DLC_PISTOL50_BIT_FIELD RETURN WEAPONTYPE_DLC_PISTOL50 BREAK CASE WEAPON_DLC_ASSAULTSMG_BIT_FIELD RETURN WEAPONTYPE_DLC_ASSAULTSMG BREAK CASE WEAPON_MOLOTOV_BIT_FIELD RETURN WEAPONTYPE_MOLOTOV BREAK CASE WEAPON_GOLFCLUB_BIT_FIELD RETURN WEAPONTYPE_GOLFCLUB BREAK CASE WEAPON_CROWBAR_BIT_FIELD RETURN WEAPONTYPE_CROWBAR BREAK CASE WEAPON_BAT_BIT_FIELD RETURN WEAPONTYPE_BAT BREAK CASE WEAPON_DLC_AUTOSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_AUTOSHOTGUN BREAK CASE WEAPON_DLC_MINISMG_BIT_FIELD RETURN WEAPONTYPE_DLC_MINISMG BREAK CASE WEAPON_DLC_COMPACTLAUNCHER_BIT_FIELD RETURN WEAPONTYPE_DLC_COMPACTLAUNCHER BREAK CASE WEAPON_DLC_BATTLEAXE_BIT_FIELD RETURN WEAPONTYPE_DLC_BATTLEAXE BREAK CASE WEAPON_DLC_PIPEBOMB_BIT_FIELD RETURN WEAPONTYPE_DLC_PIPEBOMB BREAK CASE WEAPON_DLC_POOLCUE_BIT_FIELD RETURN WEAPONTYPE_DLC_POOLCUE BREAK CASE WEAPON_DLC_WRENCH_BIT_FIELD RETURN WEAPONTYPE_DLC_WRENCH BREAK CASE WEAPON_DLC_DOUBLEACTION_BIT_FIELD RETURN WEAPONTYPE_DLC_DOUBLEACTION BREAK CASE WEAPON_DLC_STONEHATCHET_BIT_FIELD RETURN WEAPONTYPE_DLC_STONE_HATCHET BREAK CASE WEAPON_DLC_RAYPISTOL_BIT_FIELD RETURN WEAPONTYPE_DLC_RAYPISTOL BREAK CASE WEAPON_DLC_RAYCARBINE_BIT_FIELD RETURN WEAPONTYPE_DLC_RAYCARBINE BREAK CASE WEAPON_DLC_RAYMINIGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_RAYMINIGUN BREAK CASE WEAPON_DLC_NAVYREVOLVER_BIT_FEILD RETURN WEAPONTYPE_DLC_NAVYREVOLVER BREAK CASE WEAPON_DLC_CERAMIC_PISTOL_BIT_FEILD RETURN WEAPONTYPE_DLC_CERAMICPISTOL BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPON_DLC_BATON_BIT_FEILD RETURN WEAPONTYPE_DLC_BATON BREAK CASE WEAPON_DLC_POLICERIFLE_BIT_FEILD RETURN WEAPONTYPE_DLC_POLICERIFLE BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPON_DLC_COMBATSHOTGUN_BIT_FIELD RETURN WEAPONTYPE_DLC_COMBATSHOTGUN BREAK CASE WEAPON_DLC_MILITARYRIFLE_BIT_FEILD RETURN WEAPONTYPE_DLC_MILITARYRIFLE BREAK CASE WEAPON_DLC_GADGETPISTOL_BIT_FEILD RETURN WEAPONTYPE_DLC_GADGETPISTOL BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPON_DLC_HEAVYRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_HEAVYRIFLE BREAK CASE WEAPON_DLC_EMPLAUNCHER_BIT_FIELD RETURN WEAPONTYPE_DLC_EMPLAUNCHER BREAK CASE WEAPON_DLC_FERTILIZERCAN_BIT_FIELD RETURN WEAPONTYPE_DLC_FERTILIZERCAN BREAK CASE WEAPON_DLC_STUNGUN_MP_BIT_FIELD RETURN WEAPONTYPE_DLC_STUNGUNG_MP BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPON_DLC_METALDETECTOR_BIT_FIELD RETURN WEAPONTYPE_DLC_METALDETECTOR BREAK CASE WEAPON_DLC_TACTICALRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_TACTICALRIFLE BREAK CASE WEAPON_DLC_PRECISIONRIFLE_BIT_FIELD RETURN WEAPONTYPE_DLC_PRECISIONRIFLE BREAK #ENDIF ENDSWITCH //SCRIPT_ASSERT("GET_WEAPONTYPE_FROM_WEAPON_BITSET invalid field returning. - Kevin Wong") RETURN WEAPONTYPE_UNARMED ENDFUNC FUNC WEAPONADDON_BITSET GET_AMMO_BITSET_FROM_WEAPONS(WEAPONCOMPONENT_TYPE aWeaponComp, WEAPON_TYPE aWeapon) SWITCH aWeapon CASE WEAPONTYPE_PISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_PISTOL_CLIP_01 RETURN WEAPONADDON_PISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_PISTOL_CLIP_02 RETURN WEAPONADDON_PISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_PISTOL_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP_02 RETURN WEAPONADDON_PISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_VARMOD_LUXE RETURN WEAPONADDON_DLC_PISTOL_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_PISTOL_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_COMBATPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_01 RETURN WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_COMBATPISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_COMBATPISTOL_CLIP_02 RETURN WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_COMBATPISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_COMBATPISTOL_VARMOD_LOWRIDER RETURN WEAPONADDON_COMBATPISTOL_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_APPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_APPISTOL_CLIP_01 RETURN WEAPONADDON_APPISTOL_WEAPONCOMPONENT_APPISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_APPISTOL_CLIP_02 RETURN WEAPONADDON_APPISTOL_WEAPONCOMPONENT_APPISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_APPISTOL_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_APPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_LUXE RETURN WEAPONADDON_DLC_APPISTOL_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_SECURITY RETURN WEAPONADDON_DLC_APPISTOL_WEAPONCOMPONENT_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MICROSMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_MICROSMG_CLIP_01 RETURN WEAPONADDON_MICROSMG_WEAPONCOMPONENT_MICROSMG_CLIP_01 BREAK CASE WEAPONCOMPONENT_MICROSMG_CLIP_02 RETURN WEAPONADDON_MICROSMG_WEAPONCOMPONENT_MICROSMG_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO RETURN WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_MICROSMG_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_LUXE RETURN WEAPONADDON_DLC_MICROSMG_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_SECURITY RETURN WEAPONADDON_DLC_MICROSMG_WEAPONCOMPONENT_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_SMG_CLIP_01 RETURN WEAPONADDON_SMG_WEAPONCOMPONENT_SMG_CLIP_01 BREAK CASE WEAPONCOMPONENT_SMG_CLIP_02 RETURN WEAPONADDON_SMG_WEAPONCOMPONENT_SMG_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_SMG_CLIP_03 RETURN WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_SMG_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO_02 RETURN WEAPONADDON_SMG_WEAPONCOMPONENT_AT_AR_SCROP_MACRO BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_SMG_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_SMG_VARMOD_LUXE RETURN WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_SMG_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ASSAULTRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01 RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02 RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_CLIP_03 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_ASSAULTRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_VARMOD_LUXE RETURN WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_ASSAULTRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_CARBINERIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_01 RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_CARBINERIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_CARBINERIFLE_CLIP_02 RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_CARBINERIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_CLIP_03 RETURN WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_RAILCOVER_01 RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_RAILCOVER_01 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_CARBINERIFLE_WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_VARMOD_LUXE RETURN WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_CARBINERIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ADVANCEDRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01 RETURN WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02 RETURN WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_ADVANCEDRIFLE_WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_DLC_ADVANCEDRIFLE_VARMOD_LUXE RETURN WEAPONADDON_DLC_ADVANCEDRIFLE_WEAPONCOMPONENT_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MG SWITCH aWeaponComp CASE WEAPONCOMPONENT_MG_CLIP_01 RETURN WEAPONADDON_MG_WEAPONCOMPONENT_MG_CLIP_01 BREAK CASE WEAPONCOMPONENT_MG_CLIP_02 RETURN WEAPONADDON_MG_WEAPONCOMPONENT_MG_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL_02 RETURN WEAPONADDON_MG_WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE WEAPONCOMPONENT_DLC_MG_VARMOD_LOWRIDER RETURN WEAPONADDON_MG_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_COMBATMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_COMBATMG_CLIP_01 RETURN WEAPONADDON_COMBATMG_WEAPONCOMPONENT_COMBATMG_CLIP_01 BREAK CASE WEAPONCOMPONENT_COMBATMG_CLIP_02 RETURN WEAPONADDON_COMBATMG_WEAPONCOMPONENT_COMBATMG_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_COMBATMG_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN WEAPONADDON_COMBATMG_WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_VARMOD_LOWRIDER RETURN WEAPONADDON_COMBATMG_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_COMBATMG_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_PUMPSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_AT_SR_SUPP RETURN WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_AT_SR_SUPP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_LOWRIDER RETURN WEAPONADDON_PUMPSHOTGUN_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_PUMPSHOTGUN_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_SECURITY RETURN WEAPONADDON_DLC_PUMPSHOTGUN_WEAPONCOMPONENT_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01 RETURN WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01 BREAK CASE WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02 RETURN WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_ASSAULTSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SNIPERRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01 RETURN WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_AT_SCOPE_LARGE RETURN WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_SCOPE_LARGE BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_SCOPE_MAX BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_SNIPERRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_SNIPERRIFLE_VARMOD_LUXE RETURN WEAPONADDON_DLC_SNIPERRIFLE_WEAPONCOMPONENT_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_HEAVYSNIPER SWITCH aWeaponComp CASE WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01 RETURN WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01 BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_AT_SCOPE_MAX BREAK CASE WEAPONCOMPONENT_AT_SCOPE_LARGE RETURN WEAPONADDON_HEAVYSNIPER_WEAPONCOMPONENT_AT_SCOPE_LARGE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_HEAVYSNIPER_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_GRENADELAUNCHER SWITCH aWeaponComp CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN WEAPONADDON_GRENADELAUNCHER_WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MINIGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_MINIGUN_CLIP_01 RETURN WEAPONADDON_MINIGUN_WEAPONCOMPONENT_MINIGUN_CLIP_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_01 RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_02 RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MACRO RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTSMG_VARMOD_LOWRIDER RETURN WEAPONADDON_DLC_ASSAULTSMG_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_BULLPUPSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_PISTOL50 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_01 RETURN WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_CLIP_02 RETURN WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL50_VARMOD_LUXE RETURN WEAPONADDON_DLC_PISTOL50_WEAPONCOMPONENT_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_ASSAULTSNIPER_CLIP_01 RETURN WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_AT_SCOPE_LARGE RETURN WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_LARGE BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_SCOPE_MAX BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_ASSAULTSNIPER_WEAPONCOMPONENT_AT_AR_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_ASSAULTMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_ASSAULTMG_CLIP_01 RETURN WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTMG_CLIP_02 RETURN WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN WEAPONADDON_DLC_ASSAULTMG_WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_PROGRAMMABLEAR SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_PROGRAMMABLEAR_CLIP_01 RETURN WEAPONADDON_DLC_PROGRAMMABLEAR_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_PROGRAMMABLEAR_CLIP_02 RETURN WEAPONADDON_DLC_PROGRAMMABLEAR_WEAPONCOMPONENT_CLIP_02 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_01 RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_03 RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_VARMOD_LOWRIDER RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_SPECIALCARBINE_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SNSPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_02 RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_VARMOD_LOWRIDER RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_SNSPISTOL_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK // DLC business CASE WEAPONTYPE_DLC_HEAVYPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_HEAVYPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYPISTOL_CLIP_02 RETURN WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_HEAVYPISTOL_VARMOD_LUXE RETURN WEAPONADDON_DLC_HEAVYPISTOL_WEAPONCOMPONENT_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_VARMOD_LOWRIDER RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_VARMOD_LOWRIDER BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_BULLPUPRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK // DLC Valentine CASE WEAPONTYPE_DLC_GUSENBERG SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_GUSENBERG_CLIP_01 RETURN WEAPONADDON_DLC_GUSENBERG_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_GUSENBERG_CLIP_02 RETURN WEAPONADDON_DLC_GUSENBERG_WEAPONCOMPONENT_CLIP_02 BREAK ENDSWITCH BREAK // DLC Hipster CASE WEAPONTYPE_DLC_VINTAGEPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_VINTAGEPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_VINTAGEPISTOL_CLIP_02 RETURN WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_PISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_DLC_VINTAGEPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_01 RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_SHOTGUN_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_02 RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_SHOTGUN_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSHOTGUN_CLIP_03 RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_HEAVYSHOTGUN_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_RIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_RIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_LARGE_FIXED_ZOOM RETURN WEAPONADDON_DLC_MARKSMANRIFLE_AT_SCOPE_LARGE_FIXED_ZOOM BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_VARMOD_LUXE RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_VARMOD_LUXE BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_MARKSMANRIFLE_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_COMBATPDW SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_01 RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_02 RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_03 RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_COMBATPDW_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE RETURN WEAPONADDON_DLC_SAWNOFFSHOTGUN_WEAPONCOMPONENT_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MARKSMANPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_MARKSMANPISTOL_WEAPONCOMPONENT_CLIP_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_KNUCKLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PIMP RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_PIMP BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BALLAS RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_BALLAS BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DOLLAR RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_HUSTLER BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DIAMOND RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_ROCK BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_HATE RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_HATER BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_LOVE RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_LOVER BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PLAYER RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_PLAYER BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_KING RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_KING BREAK CASE WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_VAGOS RETURN WEAPONADDON_DLC_KNUCKLE_WEAPONCOMPONENT_VAGOS BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_02 RETURN WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_03 RETURN WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_CLIP_03 BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_DLC_MACHINEPISTOL_WEAPONCOMPONENT_AT_PI_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR1 RETURN WEAPONADDON_DLC_SWITCHBLADE_WEAPONCOMPONENT_VAR1 BREAK CASE WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR2 RETURN WEAPONADDON_DLC_SWITCHBLADE_WEAPONCOMPONENT_VAR2 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_REVOLVER SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_REVOLVER_CLIP_01 RETURN WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_BOSS RETURN WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_BOSS BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_GOON RETURN WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_GOON BREAK CASE WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE RETURN WEAPONADDON_DLC_REVOLVER_WEAPONCOMPONENT_VARMOD_GUNRUN BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_COMPACTRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_COMPACTRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_COMPACTRIFLE_CLIP_03 RETURN WEAPONADDON_DLC_COMPACTRIFLE_WEAPONCOMPONENT_CLIP_03 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MINISMG SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MINISMG_CLIP_01 RETURN WEAPONADDON_DLC_MINISMG_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_MINISMG_CLIP_02 RETURN WEAPONADDON_DLC_MINISMG_WEAPONCOMPONENT_CLIP_02 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_01 RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_02 RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_HOLLOWPOINT RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_HOLLOWPOINT BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_PISTOL_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_FLSH_02 RETURN WEAPONADDON_DLC_PISTOL_MK2_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_RAIL RETURN WEAPONADDON_DLC_PISTOL_MK2_AT_PI_RAIL BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP_02 RETURN WEAPONADDON_DLC_PISTOL_MK2_AT_PI_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_COMP RETURN WEAPONADDON_DLC_PISTOL_MK2_AT_PI_COMP BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_02 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_03 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_04 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_05 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_06 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_07 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_08 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_09 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_10 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_PISTOL_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SMG_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_01 RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_02 RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_HOLLOWPOINT RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_HOLLOWPOINT BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_SMG_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_SMG_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS_SMG RETURN WEAPONADDON_DLC_SMG_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_02_SMG_MK2 RETURN WEAPONADDON_DLC_SMG_MK2_AT_SCOPE_MACRO_02_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_SMG_MK2 RETURN WEAPONADDON_DLC_SMG_MK2_AT_SCOPE_SMALL_MK2 BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP RETURN WEAPONADDON_DLC_SMG_MK2_AT_PI_SUPP BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_SMG_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_SB_BARREL_01 RETURN WEAPONADDON_DLC_SMG_MK2_AT_SB_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_SB_BARREL_02 RETURN WEAPONADDON_DLC_SMG_MK2_AT_SB_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO RETURN WEAPONADDON_DLC_SMG_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_02 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_03 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_04 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_05 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_06 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_07 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_08 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_09 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_10 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_SMG_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_01 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_02 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_EXPLOSIVE BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_LARGE_MK2 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_LARGE BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MAX RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_MAX BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_NV RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_NV BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_THERMAL RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SCOPE_THERMAL BREAK CASE WEAPONCOMPONENT_DLC_AT_SR_SUPP_03 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_COMPONENT_AT_SR_SUPP_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_08 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_MUZZLE_08 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_09 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_MUZZLE_09 BREAK CASE WEAPONCOMPONENT_DLC_AT_SR_BARREL_01 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SR_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_SR_BARREL_02 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_AT_SR_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_02 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_03 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_04 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_05 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_06 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_07 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_08 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_09 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_10 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_HEAVYSNIPER_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_01 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_02 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_COMBATMG_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_MK2 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_SCOPE_SMALL_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MEDIUM_MK2 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_SCOPE_MEDIUM BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_MG_BARREL_01 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_SB_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MG_BARREL_02 RETURN WEAPONADDON_DLC_COMBATMG_MK2_AT_SB_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_02 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_03 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_04 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_05 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_06 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_07 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_08 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_09 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_10 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_COMBATMG_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_01 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_MK2 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SCOPE_MACRO_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MEDIUM_MK2 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_SCOPE_MEDIUM_MK2 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_BARREL_01 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_BARREL_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_AT_AR_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_02 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_03 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_04 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_05 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_06 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_07 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_08 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_09 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_10 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_ASSAULTRIFLE_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_01 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_02 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_MK2 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SCOPE_MACRO_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MEDIUM_MK2 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_SCOPE_MEDIUM_MK2 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_CR_BARREL_01 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_CR_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_CR_BARREL_02 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_AT_CR_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_02 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_03 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_04 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_05 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_06 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_07 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_08 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_09 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_10 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_CARBINERIFLE_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_01 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_EXPLOSIVE BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_HOLLOWPOINT BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_MK2 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SCOPE_MACRO_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_MK2 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SCOPE_SMALL_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SR_SUPP_03 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_SR_SUPP_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_08 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_AT_MUZZLE_08 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_02 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_03 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_04 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_05 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_06 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_07 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_08 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_09 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_10 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_PUMPSHOTGUN_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_01 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_MK2 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SCOPE_MACRO_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MEDIUM_MK2 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SCOPE_MEDIUM_MK2 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_AR_AFGRIP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_SC_BARREL_01 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SC_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_SC_BARREL_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_AT_SC_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_02 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_03 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_04 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_05 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_06 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_07 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_08 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_09 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_10 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_SPECIALCARBINE_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_01 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_02 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_HOLLOWPOINT RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_HOLLOWPOINT BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_FLSH_03 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_FLSH_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_RAIL_02 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_RAIL_02 BREAK CASE WEAPONCOMPONENT_AT_PI_SUPP_02 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_SUPP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_COMP_02 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_AT_PI_COMP_02 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_02 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_03 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_04 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_05 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_06 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_07 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_08 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_09 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_10 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_SNSPISTOL_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_01 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MEDIUM_MK2 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SCOPE_MEDIUM_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_LARGE_FIXED_ZOOM_MK2 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_SCOPE_LARGE_FIXED_ZOOM_MK2 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_AR_AFGRIP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MRFL_BARREL_01 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MRFL_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MRFL_BARREL_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_AT_MRFL_BARREL_02 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_02 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_03 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_04 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_05 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_06 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_07 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_08 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_09 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_10 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_MARKSMANRIFLE_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_01 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_REVOLVER_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_HOLLOWPOINT RETURN WEAPONADDON_DLC_REVOLVER_MK2_CLIP_HOLLOWPOINT BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_REVOLVER_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_REVOLVER_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_REVOLVER_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_MK2 RETURN WEAPONADDON_DLC_REVOLVER_MK2_AT_SCOPE_MACRO_MK2 BREAK CASE WEAPONCOMPONENT_AT_PI_FLSH RETURN WEAPONADDON_DLC_REVOLVER_MK2_AT_PI_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_PI_COMP_03 RETURN WEAPONADDON_DLC_REVOLVER_MK2_AT_PI_COMP_03 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_02 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_03 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_04 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_05 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_06 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_07 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_08 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_09 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_10 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_REVOLVER_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_01 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_ARMORPIERCING BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_FMJ RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_FMJ BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_INCENDIARY RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_INCENDIARY BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CLIP_TRACER RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CLIP_TRACER BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_DLC_AT_SIGHTS RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SIGHTS BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_MACRO_02_MK2 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SCOPE_MACRO_02_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_SCOPE_SMALL_MK2 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_SCOPE_SMALL_MK2 BREAK CASE WEAPONCOMPONENT_DLC_AT_BP_BARREL_01 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_BP_BARREL_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_BP_BARREL_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_BP_BARREL_02 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_01 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_01 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_03 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_03 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_04 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_04 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_05 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_05 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_06 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_06 BREAK CASE WEAPONCOMPONENT_DLC_AT_MUZZLE_07 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_MUZZLE_07 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_AFGRIP_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_AT_AR_AFGRIP_02 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_02 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_02 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_03 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_03 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_04 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_04 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_05 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_05 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_06 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_06 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_07 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_07 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_08 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_08 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_09 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_09 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_10 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_10 BREAK CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_IND_01 RETURN WEAPONADDON_DLC_BULLPUPRIFLE_MK2_CAMO_IND_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_RAYPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_RAYPISTOL_VARMOD_XMAS18 RETURN WEAPONADDON_DLC_RAYPISTOL_VARMOD_XMAS18 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_CERAMICPISTOL_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_CLIP_02 RETURN WEAPONADDON_DLC_CERAMICPISTOL_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_CERAMICPISTOL_SUPP RETURN WEAPONADDON_DLC_CERAMICPISTOL_AT_PI_SUPP BREAK ENDSWITCH BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_POLICERIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_POLICERIFLE_CLIP_01 RETURN WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_POLICERIFLE_CLIP_02 RETURN WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_POLICERIFLE_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_DLC_POLICERIFLE_FLASH_01 RETURN WEAPONADDON_DLC_POLICERIFLE_WEAPONCOMPONENT_FLASH_01 BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_POLICERIFLE_AT_AR_SUPP BREAK ENDSWITCH BREAK #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_COMBATSHOTGUN SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_COMBATSHOTGUN_CLIP_01 RETURN WEAPONADDON_DLC_COMBATSHOTGUN_CLIP1 CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_COMBATSHOTGUN_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_COMBATSHOTGUN_COMPONENT_AT_AR_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MILITARYRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_MILITARYRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_MILITARYRIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_MILITARYRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_MILITARYRIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_MILITARYRIFLE_SIGHT_01 RETURN WEAPONADDON_DLC_MILITARYRIFLE_SIGHT_01 BREAK CASE WEAPONCOMPONENT_AT_SCOPE_SMALL RETURN WEAPONADDON_DLC_MILITARYRIFLE_AT_SCOPE_SMALL BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_MILITARYRIFLE_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_MILITARYRIFLE_AT_AR_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_GADGETPISTOL_CLIP_01 RETURN WEAPONADDON_DLC_GADGETPISTOL_CLIP_01 BREAK ENDSWITCH BREAK #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_HEAVYRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CAMO RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_CAMO BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE WEAPONCOMPONENT_AT_AR_FLSH RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE WEAPONCOMPONENT_AT_SCOPE_MEDIUM RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_SIGHT_01 RETURN WEAPONADDON_DLC_HEAVYRIFLE_WEAPONCOMPONENT_SIGHT_01 BREAK ENDSWITCH BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_TACTICALRIFLE SWITCH aWeaponComp CASE WEAPONCOMPONENT_DLC_TACTICALRIFLE_CLIP_01 RETURN WEAPONADDON_DLC_TACTICALRIFLE_CLIP_01 BREAK CASE WEAPONCOMPONENT_DLC_TACTICALRIFLE_CLIP_02 RETURN WEAPONADDON_DLC_TACTICALRIFLE_CLIP_02 BREAK CASE WEAPONCOMPONENT_DLC_AT_AR_FLSH_REH RETURN WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_FLSH_REH BREAK CASE WEAPONCOMPONENT_AT_AR_SUPP_02 RETURN WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_SUPP_02 BREAK CASE WEAPONCOMPONENT_AT_AR_AFGRIP RETURN WEAPONADDON_DLC_TACTICALRIFLE_AT_AR_GRIP BREAK ENDSWITCH BREAK #ENDIF ENDSWITCH RETURN WEAPONADDON_WEAPON_INVALID ENDFUNC /// PURPOSE: Returns the weapon slot for the specified int /// NOTE: iSlot must be within the range of 0 to NUM_PLAYER_PED_WEAPON_SLOTS-1 /// Also, this will change to return a WEAPON_SLOT enum once set up by code FUNC WEAPON_SLOT GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(INT iSlot) WEAPON_SLOT slot = WEAPONSLOT_INVALID SWITCH iSlot CASE 0 slot = WEAPONSLOT_UNARMED BREAK CASE 1 slot = WEAPONSLOT_KNIFE BREAK CASE 2 slot = WEAPONSLOT_NIGHTSTICK BREAK CASE 3 slot = WEAPONSLOT_HAMMER BREAK CASE 4 slot = WEAPONSLOT_BAT BREAK CASE 5 slot = WEAPONSLOT_CROWBAR BREAK CASE 6 slot = WEAPONSLOT_GOLFCLUB BREAK CASE 7 slot = WEAPONSLOT_STUNGUN BREAK CASE 8 slot = WEAPONSLOT_PISTOL BREAK CASE 9 slot = WEAPONSLOT_COMBATPISTOL BREAK CASE 10 slot = WEAPONSLOT_APPISTOL BREAK CASE 11 slot = WEAPONSLOT_MICROSMG BREAK CASE 12 slot = WEAPONSLOT_SMG BREAK CASE 13 slot = WEAPONSLOT_ASSAULTRIFLE BREAK CASE 14 slot = WEAPONSLOT_CARBINERIFLE BREAK CASE 15 slot = WEAPONSLOT_ADVANCEDRIFLE BREAK CASE 16 slot = WEAPONSLOT_MG BREAK CASE 17 slot = WEAPONSLOT_COMBATMG BREAK CASE 18 slot = WEAPONSLOT_PUMPSHOTGUN BREAK CASE 19 slot = WEAPONSLOT_SAWNOFFSHOTGUN BREAK CASE 20 slot = WEAPONSLOT_ASSAULTSHOTGUN BREAK CASE 21 slot = WEAPONSLOT_SNIPERRIFLE BREAK CASE 22 slot = WEAPONSLOT_HEAVYSNIPER BREAK CASE 23 slot = WEAPONSLOT_GRENADELAUNCHER BREAK CASE 24 slot = WEAPONSLOT_RPG BREAK CASE 25 slot = WEAPONSLOT_MINIGUN BREAK CASE 26 slot = WEAPONSLOT_GRENADE BREAK CASE 27 slot = WEAPONSLOT_STICKYBOMB BREAK CASE 28 slot = WEAPONSLOT_SMOKEGRENADE BREAK CASE 29 slot = WEAPONSLOT_MOLOTOV BREAK CASE 30 slot = WEAPONSLOT_FIREEXTINGUISHER BREAK CASE 31 slot = WEAPONSLOT_PETROLCAN BREAK //CASE 32 slot = WEAPONSLOT_LOUDHAILER BREAK CASE 33 slot = WEAPONSLOT_PARACHUTE BREAK CASE 34 slot = WEAPONSLOT_DIGISCANNER BREAK CASE 35 slot = WEAPONSLOT_OBJECT BREAK // DLC weaponS CASE 36 slot = WEAPONSLOT_DLC_ASSAULTSMG BREAK CASE 37 slot = WEAPONSLOT_DLC_BULLPUPSHOTGUN BREAK CASE 38 slot = WEAPONSLOT_DLC_PISTOL50 BREAK // Graeme - I think the slot index is used as an array index within g_savedGlobals.sPlayerData.sInfo.sWeapons[].sWeaponInfo[] which doesn't have space for the DLC weapons // So I don't think I should add WEAPONSLOT_DLC_SPECIALCARBINE or WEAPONSLOT_DLC_BOTTLE here ENDSWITCH RETURN slot ENDFUNC /// PURPOSE: Returns the weapon slot int for the specified weapon type enum. /// #IF IS_DEBUG_BUILD FUNC INT GET_INT_FROM_PLAYER_PED_WEAPON_TYPE(WEAPON_TYPE type) INT iSlot = -1 SWITCH type CASE WEAPONTYPE_UNARMED iSlot = 0 BREAK CASE WEAPONTYPE_KNIFE iSlot = 1 BREAK CASE WEAPONTYPE_NIGHTSTICK iSlot = 2 BREAK CASE WEAPONTYPE_HAMMER iSlot = 3 BREAK CASE WEAPONTYPE_BAT iSlot = 4 BREAK CASE WEAPONTYPE_CROWBAR iSlot = 5 BREAK CASE WEAPONTYPE_GOLFCLUB iSlot = 6 BREAK CASE WEAPONTYPE_STUNGUN iSlot = 7 BREAK CASE WEAPONTYPE_PISTOL iSlot = 8 BREAK CASE WEAPONTYPE_COMBATPISTOL iSlot = 9 BREAK CASE WEAPONTYPE_APPISTOL iSlot = 10 BREAK CASE WEAPONTYPE_MICROSMG iSlot = 11 BREAK CASE WEAPONTYPE_SMG iSlot = 12 BREAK CASE WEAPONTYPE_ASSAULTRIFLE iSlot = 13 BREAK CASE WEAPONTYPE_CARBINERIFLE iSlot = 14 BREAK CASE WEAPONTYPE_ADVANCEDRIFLE iSlot = 15 BREAK CASE WEAPONTYPE_MG iSlot = 16 BREAK CASE WEAPONTYPE_COMBATMG iSlot = 17 BREAK CASE WEAPONTYPE_PUMPSHOTGUN iSlot = 18 BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN iSlot = 19 BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN iSlot = 20 BREAK CASE WEAPONTYPE_SNIPERRIFLE iSlot = 21 BREAK CASE WEAPONTYPE_HEAVYSNIPER iSlot = 22 BREAK CASE WEAPONTYPE_GRENADELAUNCHER iSlot = 23 BREAK CASE WEAPONTYPE_RPG iSlot = 24 BREAK CASE WEAPONTYPE_MINIGUN iSlot = 25 BREAK CASE WEAPONTYPE_GRENADE iSlot = 26 BREAK CASE WEAPONTYPE_STICKYBOMB iSlot = 27 BREAK CASE WEAPONTYPE_SMOKEGRENADE iSlot = 28 BREAK CASE WEAPONTYPE_MOLOTOV iSlot = 29 BREAK CASE WEAPONTYPE_PETROLCAN iSlot = 31 BREAK //CASE WEAPONSLOT_LOUDHAILER iSlot = 32 BREAK //CASE GADGETTYPE_PARACHUTE iSlot = 33 BREAK CASE WEAPONTYPE_DIGISCANNER iSlot = 34 BREAK CASE WEAPONTYPE_OBJECT iSlot = 35 BREAK // DLC weapons CASE WEAPONTYPE_DLC_ASSAULTSMG iSlot = 36 BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN iSlot = 37 BREAK CASE WEAPONTYPE_DLC_PISTOL50 iSlot = 38 BREAK ENDSWITCH // Graeme - I think the slot index is used as an array index within g_savedGlobals.sPlayerData.sInfo.sWeapons[].sWeaponInfo[] which doesn't have space for the DLC weapons // So I don't think I should add WEAPONTYPE_DLC_SPECIALCARBINE or WEAPONTYPE_DLC_BOTTLE here RETURN iSlot ENDFUNC #ENDIF // IS_DEBUG_BUILD FUNC WEAPON_TYPE GET_WEAPONTYPE_FROM_ITERATED_INDEX(INT index) SWITCH index CASE 0 RETURN WEAPONTYPE_UNARMED BREAK CASE 1 RETURN WEAPONTYPE_ANIMAL BREAK CASE 2 RETURN WEAPONTYPE_COUGAR BREAK CASE 3 RETURN WEAPONTYPE_PISTOL BREAK CASE 4 RETURN WEAPONTYPE_COMBATPISTOL BREAK CASE 5 RETURN WEAPONTYPE_APPISTOL BREAK CASE 6 RETURN WEAPONTYPE_MICROSMG BREAK CASE 7 RETURN WEAPONTYPE_SMG BREAK // Assault rifles CASE 8 RETURN WEAPONTYPE_ASSAULTRIFLE BREAK CASE 9 RETURN WEAPONTYPE_CARBINERIFLE BREAK CASE 10 RETURN WEAPONTYPE_ADVANCEDRIFLE BREAK // Light machine guns CASE 11 RETURN WEAPONTYPE_MG BREAK CASE 12 RETURN WEAPONTYPE_COMBATMG BREAK // Shotguns CASE 13 RETURN WEAPONTYPE_PUMPSHOTGUN BREAK CASE 14 RETURN WEAPONTYPE_SAWNOFFSHOTGUN BREAK CASE 15 RETURN WEAPONTYPE_ASSAULTSHOTGUN BREAK // Sniper rifles CASE 16 RETURN WEAPONTYPE_SNIPERRIFLE BREAK CASE 17 RETURN WEAPONTYPE_HEAVYSNIPER BREAK CASE 18 RETURN WEAPONTYPE_REMOTESNIPER BREAK // Heavy weapons CASE 19 RETURN WEAPONTYPE_GRENADELAUNCHER BREAK CASE 20 RETURN WEAPONTYPE_GRENADELAUNCHER_SMOKE BREAK CASE 21 RETURN WEAPONTYPE_RPG BREAK CASE 22 RETURN WEAPONTYPE_MINIGUN BREAK CASE 23 RETURN WEAPONTYPE_STINGER BREAK // Thrown weapons CASE 24 RETURN WEAPONTYPE_GRENADE BREAK CASE 25 RETURN WEAPONTYPE_SMOKEGRENADE BREAK CASE 26 RETURN WEAPONTYPE_BZGAS BREAK CASE 27 RETURN WEAPONTYPE_STICKYBOMB BREAK CASE 28 RETURN WEAPONTYPE_MOLOTOV BREAK CASE 29 RETURN WEAPONTYPE_BALL BREAK CASE 30 RETURN WEAPONTYPE_FLARE BREAK // Special weapons CASE 31 RETURN WEAPONTYPE_STUNGUN BREAK CASE 32 RETURN WEAPONTYPE_FIREEXTINGUISHER BREAK CASE 33 RETURN WEAPONTYPE_PETROLCAN BREAK CASE 34 RETURN WEAPONTYPE_DIGISCANNER BREAK CASE 35 RETURN WEAPONTYPE_AIRSTRIKE_ROCKET BREAK CASE 36 RETURN WEAPONTYPE_WATER_CANNON BREAK // Damage types CASE 37 RETURN WEAPONTYPE_ELECTRIC_FENCE BREAK // Melee Weapons CASE 38 RETURN WEAPONTYPE_KNIFE BREAK CASE 39 RETURN WEAPONTYPE_NIGHTSTICK BREAK CASE 40 RETURN WEAPONTYPE_HAMMER BREAK CASE 41 RETURN WEAPONTYPE_BAT BREAK CASE 42 RETURN WEAPONTYPE_CROWBAR BREAK CASE 43 RETURN WEAPONTYPE_GOLFCLUB BREAK // Vehicle weapons CASE 44 RETURN WEAPONTYPE_VEHICLE_WEAPON_TANK BREAK CASE 45 RETURN WEAPONTYPE_VEHICLE_SPACE_ROCKET BREAK CASE 46 RETURN WEAPONTYPE_VEHICLE_PLAYER_LASER BREAK CASE 47 RETURN WEAPONTYPE_VEHICLE_PLAYER_BULLET BREAK CASE 48 RETURN WEAPONTYPE_VEHICLE_ROTORS BREAK CASE 49 RETURN WEAPONTYPE_VEHICLE_PLAYER_BUZZARD BREAK CASE 50 RETURN WEAPONTYPE_PASSENGER_ROCKET BREAK CASE 51 RETURN WEAPONTYPE_VEHICLE_ROCKET BREAK CASE 52 RETURN WEAPONTYPE_VEHICLE_WEAPON_PLANE_ROCKET BREAK // Held objects (phone, coffee, etc.) CASE 53 RETURN WEAPONTYPE_OBJECT BREAK CASE 54 RETURN WEAPONTYPE_BRIEFCASE BREAK CASE 55 RETURN WEAPONTYPE_BRIEFCASE_02 BREAK // Gadgets CASE 56 RETURN GADGETTYPE_PARACHUTE BREAK CASE 57 RETURN GADGETTYPE_JETPACK BREAK // Ammo CASE 58 RETURN WEAPONTYPE_AMMO_RPG BREAK CASE 59 RETURN WEAPONTYPE_AMMO_TANK BREAK CASE 60 RETURN WEAPONTYPE_AMMO_SPACE_ROCKET BREAK CASE 61 RETURN WEAPONTYPE_AMMO_PLAYER_LASER BREAK CASE 62 RETURN WEAPONTYPE_AMMO_ENEMY_LASER BREAK CASE 63 RETURN WEAPONTYPE_AMMO_GRENADE_LAUNCHER BREAK CASE 64 RETURN WEAPONTYPE_AMMO_GRENADE_LAUNCHER_SMOKE BREAK // Run over by a vehicle CASE 65 RETURN WEAPONTYPE_RAMMEDBYVEHICLE BREAK CASE 66 RETURN WEAPONTYPE_RUNOVERBYVEHICLE BREAK // Explosion CASE 67 RETURN WEAPONTYPE_EXPLOSION BREAK // Fall CASE 68 RETURN WEAPONTYPE_FALL BREAK // DLC Weapons CASE 69 RETURN WEAPONTYPE_DLC_PISTOL50 BREAK CASE 70 RETURN WEAPONTYPE_DLC_ASSAULTSMG BREAK CASE 71 RETURN WEAPONTYPE_DLC_HEAVYRIFLE BREAK CASE 72 RETURN WEAPONTYPE_DLC_BULLPUPSHOTGUN BREAK CASE 73 RETURN WEAPONTYPE_DLC_ASSAULTMG BREAK CASE 74 RETURN WEAPONTYPE_DLC_ASSAULTSNIPER BREAK CASE 75 RETURN WEAPONTYPE_DLC_PROGRAMMABLEAR BREAK CASE 76 RETURN WEAPONTYPE_DLC_RUBBERGUN BREAK CASE 77 RETURN WEAPONTYPE_DLC_LOUDHAILER BREAK CASE 78 RETURN WEAPONTYPE_DLC_SPECIALCARBINE BREAK CASE 79 RETURN WEAPONTYPE_DLC_BOTTLE BREAK CASE 80 RETURN WEAPONTYPE_DLC_BULLPUPRIFLE BREAK CASE 81 RETURN WEAPONTYPE_DLC_HEAVYPISTOL BREAK CASE 82 RETURN WEAPONTYPE_DLC_SNSPISTOL BREAK CASE 83 RETURN WEAPONTYPE_DLC_DAGGER BREAK CASE 84 RETURN WEAPONTYPE_DLC_VINTAGEPISTOL BREAK CASE 85 RETURN WEAPONTYPE_DLC_GUSENBERG BREAK CASE 86 RETURN WEAPONTYPE_DLC_HARPOON BREAK CASE 87 RETURN WEAPONTYPE_DLC_FLAREGUN BREAK CASE 88 RETURN WEAPONTYPE_DLC_FIREWORK BREAK CASE 89 RETURN WEAPONTYPE_DLC_MUSKET BREAK CASE 90 RETURN WEAPONTYPE_DLC_AMRIFLE BREAK CASE 91 RETURN WEAPONTYPE_DLC_CROSSBOW BREAK CASE 92 RETURN WEAPONTYPE_DLC_HEAVYSHOTGUN BREAK CASE 93 RETURN WEAPONTYPE_DLC_MARKSMANRIFLE BREAK CASE 94 RETURN WEAPONTYPE_DLC_GARBAGEBAG BREAK CASE 95 RETURN WEAPONTYPE_DLC_HANDCUFFS BREAK CASE 96 RETURN WEAPONTYPE_DLC_HOMINGLAUNCHER BREAK CASE 97 RETURN WEAPONTYPE_DLC_PROXMINE BREAK CASE 98 RETURN WEAPONTYPE_DLC_SNOWBALL BREAK // NG-Only Weapon Types CASE 99 RETURN WEAPONTYPE_DLC_HATCHET BREAK CASE 100 RETURN WEAPONTYPE_DLC_RAILGUN BREAK // DLC Vehicle Weapons CASE 101 RETURN WEAPONTYPE_DLC_VEHICLE_TORPEDO BREAK CASE 102 RETURN WEAPONTYPE_DLC_VEHICLE_SPYCARGUN BREAK CASE 103 RETURN WEAPONTYPE_DLC_VEHICLE_SPYCARROCKET BREAK // DLC LUX CASE 104 RETURN WEAPONTYPE_DLC_KNUCKLE BREAK CASE 105 RETURN WEAPONTYPE_DLC_COMBATPDW BREAK CASE 106 RETURN WEAPONTYPE_DLC_MARKSMANPISTOL BREAK // DLC LOWRIDER CASE 107 RETURN WEAPONTYPE_DLC_MACHETE BREAK CASE 108 RETURN WEAPONTYPE_DLC_MACHINEPISTOL BREAK // DLC HALLOWEEN CASE 109 RETURN WEAPONTYPE_DLC_FLASHLIGHT BREAK // DLC APARTMENT CASE 110 RETURN WEAPONTYPE_DLC_REVOLVER BREAK CASE 111 RETURN WEAPONTYPE_DLC_SWITCHBLADE BREAK // DLC LOWRIDER2 CASE 112 RETURN WEAPONTYPE_DLC_DBSHOTGUN BREAK CASE 113 RETURN WEAPONTYPE_DLC_COMPACTRIFLE BREAK // DLC Biker CASE 114 RETURN WEAPONTYPE_DLC_AUTOSHOTGUN BREAK CASE 115 RETURN WEAPONTYPE_DLC_BATTLEAXE BREAK CASE 116 RETURN WEAPONTYPE_DLC_COMPACTLAUNCHER BREAK CASE 117 RETURN WEAPONTYPE_DLC_MINISMG BREAK CASE 118 RETURN WEAPONTYPE_DLC_PIPEBOMB BREAK CASE 119 RETURN WEAPONTYPE_DLC_POOLCUE BREAK CASE 120 RETURN WEAPONTYPE_DLC_WRENCH BREAK // DLC Gunrunning CASE 121 RETURN WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 BREAK CASE 122 RETURN WEAPONTYPE_DLC_CARBINERIFLE_MK2 BREAK CASE 123 RETURN WEAPONTYPE_DLC_COMBATMG_MK2 BREAK CASE 124 RETURN WEAPONTYPE_DLC_HEAVYSNIPER_MK2 BREAK CASE 125 RETURN WEAPONTYPE_DLC_PISTOL_MK2 BREAK CASE 126 RETURN WEAPONTYPE_DLC_SMG_MK2 BREAK CASE 127 RETURN WEAPONTYPE_DLC_DOUBLEACTION BREAK // DLC Gunrunning CASE 128 RETURN WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 BREAK CASE 129 RETURN WEAPONTYPE_DLC_SPECIALCARBINE_MK2 BREAK CASE 130 RETURN WEAPONTYPE_DLC_SNSPISTOL_MK2 BREAK CASE 131 RETURN WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 BREAK CASE 132 RETURN WEAPONTYPE_DLC_REVOLVER_MK2 BREAK CASE 133 RETURN WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 BREAK // DLC Arena Wars CASE 134 RETURN WEAPONTYPE_DLC_RAYPISTOL BREAK CASE 135 RETURN WEAPONTYPE_DLC_RAYCARBINE BREAK CASE 136 RETURN WEAPONTYPE_DLC_RAYMINIGUN BREAK // DLC Vinewood Casino CASE 137 RETURN WEAPONTYPE_DLC_NAVYREVOLVER BREAK CASE 138 RETURN WEAPONTYPE_DLC_CERAMICPISTOL BREAK #IF FEATURE_HEIST_ISLAND CASE 139 RETURN WEAPONTYPE_DLC_MILITARYRIFLE BREAK CASE 140 RETURN WEAPONTYPE_DLC_GADGETPISTOL BREAK CASE 141 RETURN WEAPONTYPE_DLC_COMBATSHOTGUN BREAK #ENDIF #IF FEATURE_FIXER CASE 142 RETURN WEAPONTYPE_DLC_EMPLAUNCHER BREAK CASE 143 RETURN WEAPONTYPE_DLC_FERTILIZERCAN BREAK CASE 144 RETURN WEAPONTYPE_DLC_STUNGUNG_MP BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE 145 RETURN WEAPONTYPE_DLC_METALDETECTOR BREAK CASE 146 RETURN WEAPONTYPE_DLC_TACTICALRIFLE BREAK CASE 147 RETURN WEAPONTYPE_DLC_PRECISIONRIFLE BREAK #ENDIF #IF FEATURE_COPS_N_CROOKS //IMPORTANT KEEP CNC at the bottom of list until CNC is release (or remove these) // DLC CnC CASE 148 RETURN WEAPONTYPE_DLC_BATON BREAK CASE 149 RETURN WEAPONTYPE_DLC_POLICERIFLE BREAK #ENDIF ENDSWITCH RETURN WEAPONTYPE_INVALID ENDFUNC /// PURPOSE: Returns the weapon slot for the specified int /// NOTE: iSlot must be within the range of 0 to NUM_PLAYER_PED_WEAPON_SLOTS-1 /// Also, this will change to return a WEAPON_SLOT enum once set up by code FUNC INT GET_INT_FROM_PLAYER_PED_WEAPON_SLOT(WEAPON_SLOT slot) INT iSlot = -1 SWITCH slot CASE WEAPONSLOT_UNARMED iSlot = 0 BREAK CASE WEAPONSLOT_KNIFE iSlot = 1 BREAK CASE WEAPONSLOT_NIGHTSTICK iSlot = 2 BREAK CASE WEAPONSLOT_HAMMER iSlot = 3 BREAK CASE WEAPONSLOT_BAT iSlot = 4 BREAK CASE WEAPONSLOT_CROWBAR iSlot = 5 BREAK CASE WEAPONSLOT_GOLFCLUB iSlot = 6 BREAK CASE WEAPONSLOT_STUNGUN iSlot = 7 BREAK CASE WEAPONSLOT_PISTOL iSlot = 8 BREAK CASE WEAPONSLOT_COMBATPISTOL iSlot = 9 BREAK CASE WEAPONSLOT_APPISTOL iSlot = 10 BREAK CASE WEAPONSLOT_MICROSMG iSlot = 11 BREAK CASE WEAPONSLOT_SMG iSlot = 12 BREAK CASE WEAPONSLOT_ASSAULTRIFLE iSlot = 13 BREAK CASE WEAPONSLOT_CARBINERIFLE iSlot = 14 BREAK CASE WEAPONSLOT_ADVANCEDRIFLE iSlot = 15 BREAK CASE WEAPONSLOT_MG iSlot = 16 BREAK CASE WEAPONSLOT_COMBATMG iSlot = 17 BREAK CASE WEAPONSLOT_PUMPSHOTGUN iSlot = 18 BREAK CASE WEAPONSLOT_SAWNOFFSHOTGUN iSlot = 19 BREAK CASE WEAPONSLOT_ASSAULTSHOTGUN iSlot = 20 BREAK CASE WEAPONSLOT_SNIPERRIFLE iSlot = 21 BREAK CASE WEAPONSLOT_HEAVYSNIPER iSlot = 22 BREAK CASE WEAPONSLOT_GRENADELAUNCHER iSlot = 23 BREAK CASE WEAPONSLOT_RPG iSlot = 24 BREAK CASE WEAPONSLOT_MINIGUN iSlot = 25 BREAK CASE WEAPONSLOT_GRENADE iSlot = 26 BREAK CASE WEAPONSLOT_STICKYBOMB iSlot = 27 BREAK CASE WEAPONSLOT_SMOKEGRENADE iSlot = 28 BREAK CASE WEAPONSLOT_MOLOTOV iSlot = 29 BREAK CASE WEAPONSLOT_FIREEXTINGUISHER iSlot = 30 BREAK CASE WEAPONSLOT_PETROLCAN iSlot = 31 BREAK //CASE WEAPONSLOT_LOUDHAILER iSlot = 32 BREAK CASE WEAPONSLOT_PARACHUTE iSlot = 33 BREAK CASE WEAPONSLOT_DIGISCANNER iSlot = 34 BREAK CASE WEAPONSLOT_OBJECT iSlot = 35 BREAK // DLC weapons CASE WEAPONSLOT_DLC_ASSAULTSMG iSlot = 36 BREAK CASE WEAPONSLOT_DLC_BULLPUPSHOTGUN iSlot = 37 BREAK CASE WEAPONSLOT_DLC_PISTOL50 iSlot = 38 BREAK // Graeme - I think the slot index is used as an array index within g_savedGlobals.sPlayerData.sInfo.sWeapons[].sWeaponInfo[] which doesn't have space for the DLC weapons // So I don't think I should add WEAPONSLOT_DLC_SPECIALCARBINE or WEAPONSLOT_DLC_BOTTLE here ENDSWITCH RETURN iSlot ENDFUNC /// PURPOSE: Returns the weapon group for the specified int /// NOTE: iGroup must be within the range of 0 to NUM_PLAYER_PED_WEAPON_GROUPS-1 FUNC WEAPON_GROUP GET_PLAYER_PED_WEAPON_GROUP_FROM_INT(INT iGroup) WEAPON_GROUP eGroup = WEAPONGROUP_INVALID SWITCH iGroup CASE 0 eGroup = WEAPONGROUP_MELEE BREAK CASE 1 eGroup = WEAPONGROUP_PISTOL BREAK CASE 2 eGroup = WEAPONGROUP_SMG BREAK CASE 3 eGroup = WEAPONGROUP_RIFLE BREAK CASE 4 eGroup = WEAPONGROUP_MG BREAK CASE 5 eGroup = WEAPONGROUP_SHOTGUN BREAK CASE 6 eGroup = WEAPONGROUP_SNIPER BREAK CASE 7 eGroup = WEAPONGROUP_HEAVY BREAK CASE 8 eGroup = WEAPONGROUP_THROWN BREAK CASE 9 eGroup = WEAPONGROUP_RUBBERGUN BREAK CASE 10 eGroup = WEAPONGROUP_STUNGUN BREAK CASE 11 eGroup = WEAPONGROUP_FIREEXTINGUISHER BREAK CASE 12 eGroup = WEAPONGROUP_PETROLCAN BREAK //CASE 13 eGroup = WEAPONGROUP_LOUDHAILER BREAK CASE 14 eGroup = WEAPONGROUP_DIGISCANNER BREAK CASE 15 eGroup = WEAPONGROUP_NIGHTVISION BREAK CASE 16 eGroup = WEAPONGROUP_PARACHUTE BREAK ENDSWITCH RETURN eGroup ENDFUNC /// PURPOSE: Returns the weapon group for the specified int FUNC INT GET_INT_FROM_PLAYER_PED_WEAPON_GROUP(WEAPON_GROUP eGroup) INT iReturnGroup = -1 SWITCH eGroup CASE WEAPONGROUP_MELEE iReturnGroup = 0 BREAK CASE WEAPONGROUP_PISTOL iReturnGroup = 1 BREAK CASE WEAPONGROUP_SMG iReturnGroup = 2 BREAK CASE WEAPONGROUP_RIFLE iReturnGroup = 3 BREAK CASE WEAPONGROUP_MG iReturnGroup = 4 BREAK CASE WEAPONGROUP_SHOTGUN iReturnGroup = 5 BREAK CASE WEAPONGROUP_SNIPER iReturnGroup = 6 BREAK CASE WEAPONGROUP_HEAVY iReturnGroup = 7 BREAK CASE WEAPONGROUP_THROWN iReturnGroup = 8 BREAK CASE WEAPONGROUP_RUBBERGUN iReturnGroup = 9 BREAK CASE WEAPONGROUP_STUNGUN iReturnGroup = 10 BREAK CASE WEAPONGROUP_FIREEXTINGUISHER iReturnGroup = 11 BREAK CASE WEAPONGROUP_PETROLCAN iReturnGroup = 12 BREAK //CASE WEAPONGROUP_LOUDHAILER iReturnGroup = 13 BREAK CASE WEAPONGROUP_DIGISCANNER iReturnGroup = 14 BREAK CASE WEAPONGROUP_NIGHTVISION iReturnGroup = 15 BREAK CASE WEAPONGROUP_PARACHUTE iReturnGroup = 16 BREAK ENDSWITCH RETURN iReturnGroup ENDFUNC FUNC WEAPONCOMPONENT_TYPE GET_SECONDARY_WEAPON_COMPONENT(WEAPONCOMPONENT_TYPE eWeaponComponent) SWITCH eWeaponComponent CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_02 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_02_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_03 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_03_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_04 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_04_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_05 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_05_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_06 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_06_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_07 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_07_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_08 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_08_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_09 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_09_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_10 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_10_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_IND_01 RETURN WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_IND_01_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_02 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_02_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_03 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_03_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_04 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_04_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_05 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_05_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_06 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_06_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_07 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_07_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_08 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_08_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_09 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_09_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_10 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_10_SLIDE BREAK CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01 RETURN WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01_SLIDE BREAK ENDSWITCH RETURN WEAPONCOMPONENT_INVALID ENDFUNC PROC SET_PED_WEAPON_SECONDARY_COMPONENT_TINT_INDEX(PED_INDEX pedID, WEAPON_TYPE eWeapon, WEAPONCOMPONENT_TYPE eWeaponComponent, INT iTintIndex) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID SET_PED_WEAPON_COMPONENT_TINT_INDEX(pedID, eWeapon, eSecondaryComponent, iTintIndex) ENDIF ENDPROC PROC SET_WEAPON_OBJECT_SECONDARY_COMPONENT_TINT_INDEX(OBJECT_INDEX &objWeapon, WEAPONCOMPONENT_TYPE eWeaponComponent, INT iTintIndex) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID SET_WEAPON_OBJECT_COMPONENT_TINT_INDEX(objWeapon, eSecondaryComponent, iTintIndex) ENDIF ENDPROC PROC GIVE_SECONDARY_WEAPON_COMPONENT_TO_PED(PED_INDEX PedIndex, WEAPON_TYPE TypeOfWeapon, WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID GIVE_WEAPON_COMPONENT_TO_PED(PedIndex, TypeOfWeapon, eSecondaryComponent) ENDIF ENDPROC PROC GIVE_SECONDARY_WEAPON_COMPONENT_TO_WEAPON_OBJECT(OBJECT_INDEX WeaponObjectIndex, WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID GIVE_WEAPON_COMPONENT_TO_WEAPON_OBJECT(WeaponObjectIndex, eSecondaryComponent) ENDIF ENDPROC PROC REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(PED_INDEX PedIndex, WEAPON_TYPE TypeOfWeapon, WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID IF HAS_PED_GOT_WEAPON_COMPONENT(PedIndex, TypeOfWeapon, eSecondaryComponent) REMOVE_WEAPON_COMPONENT_FROM_PED(PedIndex, TypeOfWeapon, eSecondaryComponent) ENDIF ENDIF ENDPROC PROC REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_WEAPON_OBJECT(OBJECT_INDEX WeaponObjectIndex, WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID IF HAS_WEAPON_GOT_WEAPON_COMPONENT(WeaponObjectIndex, eSecondaryComponent) REMOVE_WEAPON_COMPONENT_FROM_WEAPON_OBJECT(WeaponObjectIndex, eSecondaryComponent) ENDIF ENDIF ENDPROC PROC REQUEST_SECONDARY_WEAPON_COMPONENT_MODEL(WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID MODEL_NAMES eCompModel = GET_WEAPON_COMPONENT_TYPE_MODEL(eSecondaryComponent) IF eCompModel != DUMMY_MODEL_FOR_SCRIPT REQUEST_MODEL(eCompModel) ENDIF ENDIF ENDPROC PROC SET_SECONDARY_WEAPON_COMPONENT_MODEL_AS_NO_LONGER_NEEDED(WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID MODEL_NAMES eCompModel = GET_WEAPON_COMPONENT_TYPE_MODEL(eSecondaryComponent) IF eCompModel != DUMMY_MODEL_FOR_SCRIPT SET_MODEL_AS_NO_LONGER_NEEDED(eCompModel) ENDIF ENDIF ENDPROC FUNC BOOL HAS_SECONDARY_WEAPON_COMPONENT_MODEL_LOADED(WEAPONCOMPONENT_TYPE eWeaponComponent) WEAPONCOMPONENT_TYPE eSecondaryComponent = GET_SECONDARY_WEAPON_COMPONENT(eWeaponComponent) IF eSecondaryComponent != WEAPONCOMPONENT_INVALID MODEL_NAMES eCompModel = GET_WEAPON_COMPONENT_TYPE_MODEL(eSecondaryComponent) IF eCompModel != DUMMY_MODEL_FOR_SCRIPT RETURN HAS_MODEL_LOADED(eCompModel) ENDIF ENDIF RETURN TRUE ENDFUNC FUNC BOOL IGNORE_DLC_WEAPON_COMPONENT(WEAPONCOMPONENT_TYPE eWeaponComponent) SWITCH eWeaponComponent CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_02_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_03_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_04_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_05_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_06_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_07_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_08_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_09_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_10_SLIDE CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_IND_01_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_02_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_03_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_04_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_05_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_06_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_07_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_08_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_09_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_10_SLIDE CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01_SLIDE RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC FUNC WEAPONCOMPONENT_TYPE GET_WEAPONCOMPONENT_TYPE_SUPPRESSOR_FROM_WEAPON_TYPE(WEAPON_TYPE eWeapon) SWITCH eWeapon CASE WEAPONTYPE_PISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP_02 CASE WEAPONTYPE_COMBATPISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_APPISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_MICROSMG RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_SMG RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_ASSAULTRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_CARBINERIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_ADVANCEDRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_PUMPSHOTGUN RETURN WEAPONCOMPONENT_AT_SR_SUPP CASE WEAPONTYPE_SNIPERRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_DLC_PISTOL50 RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_DLC_PISTOL_MK2 RETURN WEAPONCOMPONENT_AT_PI_SUPP_02 CASE WEAPONTYPE_DLC_SMG_MK2 RETURN WEAPONCOMPONENT_AT_PI_SUPP CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 RETURN WEAPONCOMPONENT_AT_AR_SUPP_02 CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN WEAPONCOMPONENT_AT_AR_SUPP CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 RETURN WEAPONCOMPONENT_AT_PI_SUPP_02 CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN WEAPONCOMPONENT_AT_AR_SUPP ENDSWITCH RETURN WEAPONCOMPONENT_INVALID ENDFUNC /// PURPOSE: Returns the weapon component for the specified int FUNC WEAPONCOMPONENT_TYPE GET_PLAYER_PED_WEAPON_COMP_FROM_INT(WEAPON_TYPE eWeapon, INT iComponent) WEAPONCOMPONENT_TYPE comp = WEAPONCOMPONENT_INVALID SWITCH eWeapon CASE WEAPONTYPE_PISTOL SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_PISTOL_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_PISTOL_CLIP_02 BREAK CASE 3 comp = WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE 4 comp = WEAPONCOMPONENT_AT_PI_SUPP_02 BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_PISTOL_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_COMBATPISTOL SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_COMBATPISTOL_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_COMBATPISTOL_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_COMBATPISTOL_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_APPISTOL SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_APPISTOL_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_APPISTOL_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_PI_SUPP BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_LUXE BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MICROSMG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_MICROSMG_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_MICROSMG_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_LUXE BREAK CASE 6 comp = WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SMG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_SMG_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_SMG_CLIP_02 BREAK CASE 3 comp = WEAPONCOMPONENT_DLC_SMG_CLIP_03 BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 5 comp = WEAPONCOMPONENT_AT_PI_SUPP BREAK //don't exist. Needed for the hud CASE 6 comp = WEAPONCOMPONENT_AT_SCOPE_MACRO_02 BREAK CASE 7 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 8 comp = WEAPONCOMPONENT_DLC_SMG_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ASSAULTRIFLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_ASSAULTRIFLE_CLIP_02 BREAK CASE 3 comp = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_CLIP_03 BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 5 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 6 comp = WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE 7 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 8 comp = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_CARBINERIFLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_CARBINERIFLE_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_CARBINERIFLE_CLIP_02 BREAK CASE 3 comp = WEAPONCOMPONENT_DLC_CARBINERIFLE_CLIP_03 BREAK CASE 4 comp = WEAPONCOMPONENT_AT_RAILCOVER_01 BREAK CASE 5 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 6 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 7 comp = WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE 8 comp = WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE 9 comp = WEAPONCOMPONENT_DLC_CARBINERIFLE_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ADVANCEDRIFLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_ADVANCEDRIFLE_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_ADVANCEDRIFLE_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_MG_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_MG_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_SCOPE_SMALL_02 BREAK //don't exist. Needed for the hud CASE 3 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_MG_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_COMBATMG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_COMBATMG_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_COMBATMG_CLIP_02 BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 4 comp = WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_COMBATMG_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_PUMPSHOTGUN SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_AT_SR_SUPP BREAK CASE 1 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_LOWRIDER BREAK CASE 3 comp = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_SECURITY BREAK ENDSWITCH BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_ASSAULTSHOTGUN_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SNIPERRIFLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_SNIPERRIFLE_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_AT_SCOPE_LARGE BREAK CASE 2 comp = WEAPONCOMPONENT_AT_SCOPE_MAX BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_SNIPERRIFLE_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_HEAVYSNIPER SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE BREAK CASE 1 comp = WEAPONCOMPONENT_HEAVYSNIPER_CLIP_01 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_SCOPE_LARGE BREAK CASE 3 comp = WEAPONCOMPONENT_AT_SCOPE_MAX BREAK ENDSWITCH BREAK CASE WEAPONTYPE_GRENADELAUNCHER SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 1 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 2 comp = WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK ENDSWITCH BREAK CASE WEAPONTYPE_MINIGUN SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_MINIGUN_CLIP_01 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_ASSAULTSMG_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_SCOPE_MACRO BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_ASSAULTSMG_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 1 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 2 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_PISTOL50 SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_PISTOL50_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_PISTOL50_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_PI_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_PISTOL50_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_COMBATPDW SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_COMBATPDW_CLIP_03 BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 4 comp = WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE 5 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 3 comp = WEAPONCOMPONENT_AT_SCOPE_SMALL BREAK CASE 4 comp = WEAPONCOMPONENT_AT_AR_SUPP BREAK CASE 5 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 6 comp = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SNSPISTOL SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_SNSPISTOL_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_SNSPISTOL_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_SPECIALCARBINE_CLIP_03 BREAK CASE 3 comp = WEAPONCOMPONENT_AT_AR_FLSH BREAK CASE 4 comp = WEAPONCOMPONENT_AT_SCOPE_MEDIUM BREAK CASE 5 comp = WEAPONCOMPONENT_AT_AR_SUPP_02 BREAK CASE 6 comp = WEAPONCOMPONENT_AT_AR_AFGRIP BREAK CASE 7 comp = WEAPONCOMPONENT_DLC_SPECIALCARBINE_VARMOD_LOWRIDER BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_KNUCKLE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PIMP BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BALLAS BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DOLLAR BREAK CASE 3 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DIAMOND BREAK CASE 4 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_HATE BREAK CASE 5 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_LOVE BREAK CASE 6 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PLAYER BREAK CASE 7 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_KING BREAK CASE 8 comp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_VAGOS BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_02 BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_MACHINEPISTOL_CLIP_03 BREAK CASE 3 comp = WEAPONCOMPONENT_AT_PI_SUPP BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR1 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR2 BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_REVOLVER SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_REVOLVER_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_BOSS BREAK CASE 2 comp = WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_GOON BREAK ENDSWITCH BREAK CASE WEAPONTYPE_DLC_MINISMG SWITCH iComponent CASE 0 comp = WEAPONCOMPONENT_DLC_MINISMG_CLIP_01 BREAK CASE 1 comp = WEAPONCOMPONENT_DLC_MINISMG_CLIP_02 BREAK ENDSWITCH BREAK // DLC Lookup DEFAULT IF eWeapon != WEAPONTYPE_INVALID INT iDLCIndex INT iComp INT iAvailableComp scrShopWeaponData weaponData scrShopWeaponComponentData compData iDLCIndex = GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, weaponData) IF iDLCIndex != -1 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComp IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComp, compData) IF NOT IGNORE_DLC_WEAPON_COMPONENT(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) IF iAvailableComp = iComponent RETURN INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName) ENDIF iAvailableComp++ ENDIF ENDIF ENDREPEAT ENDIF ENDIF BREAK ENDSWITCH RETURN comp ENDFUNC FUNC BOOL IS_WEAPON_COMP_ENGRAVED(WEAPONCOMPONENT_TYPE eComp) IF eComp = WEAPONCOMPONENT_DLC_PISTOL_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_COMBATPISTOL_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_SMG_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_ASSAULTRIFLE_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_CARBINERIFLE_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_ADVANCEDRIFLE_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_MG_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_COMBATMG_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_SNIPERRIFLE_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_ASSAULTSMG_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_PISTOL50_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_BULLPUPRIFLE_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_SNSPISTOL_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_SPECIALCARBINE_VARMOD_LOWRIDER OR eComp = WEAPONCOMPONENT_DLC_SAWNOFFSHOTGUN_VARMOD_LUXE OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PIMP OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_BALLAS OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DOLLAR OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_DIAMOND OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_HATE OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_LOVE OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_PLAYER OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_KING OR eComp = WEAPONCOMPONENT_DLC_KNUCKLE_VARMOD_VAGOS OR eComp = WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR1 OR eComp = WEAPONCOMPONENT_DLC_SWITCHBLADE_VARMOD_VAR2 OR eComp = WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_BOSS OR eComp = WEAPONCOMPONENT_DLC_REVOLVER_VARMOD_GOON OR eComp = WEAPONCOMPONENT_DLC_GUNRUN_MK2_UPGRADE OR eComp = WEAPONCOMPONENT_DLC_APPISTOL_VARMOD_SECURITY OR eComp = WEAPONCOMPONENT_DLC_PUMPSHOTGUN_VARMOD_SECURITY OR eComp = WEAPONCOMPONENT_DLC_MICROSMG_VARMOD_SECURITY RETURN TRUE ENDIF RETURN FALSE ENDFUNC FUNC BOOL IS_WEAPON_COMP_A_CAMO_MOD(WEAPONCOMPONENT_TYPE eCamoMod) SWITCH eCamoMod CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_ASSAULTRIFLE_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_CARBINERIFLE_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_COMBATMG_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_HEAVYSNIPER_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_PISTOL_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_SMG_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_PUMPSHOTGUN_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_REVOLVER_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_SNSPISTOL_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_MARKSMANRIFLE_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_SPECIALCARBINE_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_02 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_03 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_04 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_05 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_06 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_07 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_08 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_09 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_10 CASE WEAPONCOMPONENT_DLC_BULLPUPRIFLE_MK2_CAMO_IND_01 CASE WEAPONCOMPONENT_DLC_HEAVYRIFLE_CAMO RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: Returns an object which is a copy of the players specified weapon (including components) to register with a cutscene, uses default components if the ped does not have the weapon FUNC OBJECT_INDEX CREATE_WEAPON_OBJECT_FROM_PED_WEAPON_WITH_COMPONENTS(PED_INDEX pedIndex, WEAPON_TYPE weaponType, BOOL bAddAmmo = TRUE, BOOL bSpecifyCoord = FALSE, FLOAT fSpecifyX = 0.0, FLOAT fSpecifyY = 0.0, FLOAT fSpecifyZ = 0.0, BOOL RegisterAsNetworkObject = FALSE, BOOL ScriptHostObject = FALSE) BOOL bDefaultWeapon = FALSE OBJECT_INDEX objWeaponCreate WEAPON_TYPE pedWeaponType pedWeaponType = weaponType IF NOT HAS_PED_GOT_WEAPON(pedIndex, weaponType) bDefaultWeapon = TRUE ENDIF IF pedWeaponType = WEAPONTYPE_UNARMED SCRIPT_ASSERT("CREATE_WEAPON_OBJECT_FROM_CURRENT_PED_WEAPON_WITH_COMPONENTS - Cannot create weapon from WEAPONTYPE_UNARMED") RETURN NULL ENDIF INT iAmmo = 0 IF ( bAddAmmo = TRUE ) IF NOT IS_ENTITY_DEAD(pedIndex) iAmmo = GET_AMMO_IN_PED_WEAPON(pedIndex, pedWeaponType) ENDIF IF iAmmo = -1 INT iClipSize = GET_WEAPON_CLIP_SIZE(pedWeaponType) IF iClipSize > 0 iAmmo = iClipSize ELSE GET_MAX_AMMO(pedIndex, pedWeaponType, iAmmo) ENDIF ENDIF ENDIF VECTOR vCreatePos = GET_ENTITY_COORDS(pedIndex, FALSE) - <<0.0, 0.0, 10.0>> IF bSpecifyCoord vCreatePos = <> ENDIF INT iVarIndex MODEL_NAMES eVariantModel WHILE GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iVarIndex) != WEAPONCOMPONENT_INVALID IF NOT IS_ENTITY_DEAD(pedIndex) IF HAS_PED_GOT_WEAPON_COMPONENT(pedIndex, pedWeaponType, GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iVarIndex)) IF IS_WEAPON_COMP_ENGRAVED(GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iVarIndex)) eVariantModel = GET_WEAPON_COMPONENT_TYPE_MODEL(GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iVarIndex)) ENDIF ENDIF ENDIF iVarIndex++ ENDWHILE objWeaponCreate = CREATE_WEAPON_OBJECT(pedWeaponType, iAmmo, vCreatePos, bDefaultWeapon, DEFAULT, eVariantModel, RegisterAsNetworkObject, ScriptHostObject) INT iCompIndex WHILE GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iCompIndex) != WEAPONCOMPONENT_INVALID IF NOT IS_ENTITY_DEAD(pedIndex) IF HAS_PED_GOT_WEAPON_COMPONENT(pedIndex, pedWeaponType, GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iCompIndex)) GIVE_WEAPON_COMPONENT_TO_WEAPON_OBJECT(objWeaponCreate, GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iCompIndex)) GIVE_SECONDARY_WEAPON_COMPONENT_TO_WEAPON_OBJECT(objWeaponCreate, GET_PLAYER_PED_WEAPON_COMP_FROM_INT(pedWeaponType, iCompIndex)) PRINTLN("[ROSSW] CREATE_WEAPON_OBJECT_FROM_PED_WEAPON_WITH_COMPONENTS - Giving ped weapon component: ", pedWeaponType) ENDIF ENDIF iCompIndex++ ENDWHILE // Prevent an assert on the GET_PED_WEAPON_INDEX() IF NOT IS_ENTITY_DEAD(pedIndex) IF HAS_PED_GOT_WEAPON(pedIndex, pedWeaponType) SET_WEAPON_OBJECT_TINT_INDEX(objWeaponCreate, GET_PED_WEAPON_TINT_INDEX(pedIndex, pedWeaponType)) PRINTLN("[ROSSW] CREATE_WEAPON_OBJECT_FROM_PED_WEAPON_WITH_COMPONENTS - applying weapon tint: ", GET_PED_WEAPON_TINT_INDEX(pedIndex, pedWeaponType) ) ENDIF ENDIF RETURN objWeaponCreate ENDFUNC /// PURPOSE: Returns an object which is a copy of the players currently equipped weapon (including components) to register with a cutscene FUNC OBJECT_INDEX CREATE_WEAPON_OBJECT_FROM_CURRENT_PED_WEAPON_WITH_COMPONENTS(PED_INDEX pedIndex, BOOL bAddAmmo = TRUE, BOOL bSpecifyCoord = FALSE, FLOAT fSpecifyX = 0.0, FLOAT fSpecifyY = 0.0, FLOAT fSpecifyZ = 0.0) WEAPON_TYPE pedWeaponType GET_CURRENT_PED_WEAPON(pedIndex, pedWeaponType) RETURN CREATE_WEAPON_OBJECT_FROM_PED_WEAPON_WITH_COMPONENTS( pedIndex, pedWeaponType, bAddAmmo, bSpecifyCoord, fSpecifyX, fSpecifyY, fSpecifyZ ) ENDFUNC FUNC OBJECT_INDEX CREATE_WEAPON_OBJECT_FROM_WEAPON_INFO( WEAPON_INFO &sWeaponInfo, VECTOR vCoord ) IF sWeaponInfo.eWeaponType = WEAPONTYPE_UNARMED SCRIPT_ASSERT("CREATE_WEAPON_OBJECT_FROM_CURRENT_PED_WEAPON_WITH_COMPONENTS - Cannot create weapon from WEAPONTYPE_UNARMED") RETURN NULL ENDIF // Create the weapon object OBJECT_INDEX objWeapon = CREATE_WEAPON_OBJECT( sWeaponInfo.eWeaponType, sWeaponInfo.iAmmoCount, vCoord, FALSE ) // Add any weapon tints SET_WEAPON_OBJECT_TINT_INDEX( objWeapon, sWeaponInfo.iTint ) SET_WEAPON_OBJECT_CAMO_INDEX( objWeapon, sWeaponInfo.iCamo ) // Add any components from the weapon info data INT i WEAPONCOMPONENT_TYPE eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT( sWeaponInfo.eWeaponType, i ) WHILE eWeaponComp != WEAPONCOMPONENT_INVALID IF IS_BIT_SET( sWeaponInfo.iModsAsBitfield, i ) GIVE_WEAPON_COMPONENT_TO_WEAPON_OBJECT( objWeapon, eWeaponComp ) GIVE_SECONDARY_WEAPON_COMPONENT_TO_WEAPON_OBJECT( objWeapon, eWeaponComp ) ENDIF i++ eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT( sWeaponInfo.eWeaponType, i ) ENDWHILE RETURN objWeapon ENDFUNC FUNC BOOL HAS_PED_GOT_WEAPON_IN_GROUP(PED_INDEX pedID, WEAPON_GROUP eWeaponGroup) IF NOT IS_PED_INJURED(pedID) INT iWeaponSlot WEAPON_TYPE eWeaponType WEAPON_SLOT eWeaponSlot FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID eWeaponType = GET_PED_WEAPONTYPE_IN_SLOT(pedID, eWeaponSlot) IF eWeaponType != WEAPONTYPE_INVALID AND eWeaponType != WEAPONTYPE_UNARMED IF GET_WEAPONTYPE_GROUP(eWeaponType) = eWeaponGroup RETURN TRUE ENDIF ENDIF ENDIF ENDFOR INT iDLCIndex INT iDLCWeapons = GET_NUM_DLC_WEAPONS() scrShopWeaponData weaponData REPEAT iDLCWeapons iDLCIndex IF GET_DLC_WEAPON_DATA(iDLCIndex, weaponData) eWeaponType = INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash) IF eWeaponType != WEAPONTYPE_INVALID AND eWeaponType != WEAPONTYPE_UNARMED IF GET_WEAPONTYPE_GROUP(eWeaponType) = eWeaponGroup RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF RETURN FALSE ENDFUNC FUNC BOOL GET_FIRST_PED_WEAPON_IN_WEAPON_GROUP(PED_INDEX pedID, WEAPON_GROUP eWeaponGroup, WEAPON_TYPE &eWeapon) IF NOT IS_PED_INJURED(pedID) INT iWeaponSlot WEAPON_TYPE eWeaponType WEAPON_SLOT eWeaponSlot FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID eWeaponType = GET_PED_WEAPONTYPE_IN_SLOT(pedID, GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot)) IF eWeaponType != WEAPONTYPE_INVALID AND eWeaponType != WEAPONTYPE_UNARMED IF GET_WEAPONTYPE_GROUP(eWeaponType) = eWeaponGroup eWeapon = eWeaponType RETURN TRUE ENDIF ENDIF ENDIF ENDFOR INT iDLCIndex INT iDLCWeapons = GET_NUM_DLC_WEAPONS() scrShopWeaponData weaponData REPEAT iDLCWeapons iDLCIndex IF GET_DLC_WEAPON_DATA(iDLCIndex, weaponData) eWeaponType = INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash) IF eWeaponType != WEAPONTYPE_INVALID AND eWeaponType != WEAPONTYPE_UNARMED IF GET_WEAPONTYPE_GROUP(eWeaponType) = eWeaponGroup eWeapon = eWeaponType RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT ENDIF RETURN FALSE ENDFUNC PROC UPDATE_PED_AMMO_SO_IT_IS_NOT_INFINITE(PED_INDEX pedID) INT iWeaponSlot, iMaxAmmo WEAPON_SLOT eWeaponSlot WEAPON_TYPE eWeaponInSlot REPEAT ENUM_TO_INT(NUM_WEAPONSLOTS) iWeaponSlot eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID eWeaponInSlot = GET_PED_WEAPONTYPE_IN_SLOT(pedID, eWeaponSlot) IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT IF GET_AMMO_IN_PED_WEAPON(pedID, eWeaponInSlot) = -1 IF GET_MAX_AMMO(pedID, eWeaponInSlot, iMaxAmmo) SET_PED_INFINITE_AMMO(pedID, FALSE, eWeaponInSlot) // SET_PED_AMMO(pedID, eWeaponInSlot, iMaxAmmo) // SET_AMMO_IN_CLIP(pedID, eWeaponInSlot, GET_MAX_AMMO_IN_CLIP(pedID, eWeaponInSlot)) #IF IS_DEBUG_BUILD PRINTLN("UPDATE_PED_AMMO_SO_IT_IS_NOT_INFINITE - removing infinite ammo for weapon ", GET_WEAPON_NAME(eWeaponInSlot)) #ENDIF ENDIF ENDIF ENDIF ENDIF ENDREPEAT INT iDLCIndex INT iDLCWeapons = GET_NUM_DLC_WEAPONS() scrShopWeaponData weaponData REPEAT iDLCWeapons iDLCIndex IF GET_DLC_WEAPON_DATA(iDLCIndex, weaponData) eWeaponInSlot = INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash) IF GET_AMMO_IN_PED_WEAPON(pedID, eWeaponInSlot) = -1 IF GET_MAX_AMMO(pedID, eWeaponInSlot, iMaxAmmo) SET_PED_INFINITE_AMMO(pedID, FALSE, eWeaponInSlot) // SET_PED_AMMO(pedID, eWeaponInSlot, iMaxAmmo) // SET_AMMO_IN_CLIP(pedID, eWeaponInSlot, GET_MAX_AMMO_IN_CLIP(pedID, eWeaponInSlot)) #IF IS_DEBUG_BUILD PRINTLN("UPDATE_PED_AMMO_SO_IT_IS_NOT_INFINITE - removing infinite ammo for weapon ", GET_WEAPON_NAME(eWeaponInSlot)) #ENDIF ENDIF ENDIF ENDIF ENDREPEAT ENDPROC FUNC BOOL IS_DLC_WEAPON_LOCKED_BY_SCRIPT(WEAPON_TYPE eWeapon) IF NETWORK_IS_GAME_IN_PROGRESS() // MP blocks ELSE // SP blocks SWITCH eWeapon // These get added to the normal SP weapon save data CASE WEAPONTYPE_DLC_PISTOL50 CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN FALSE // UNLOCKED BREAK //CONST_INT NUMBER_OF_DLC_WEAPONS 17 // Beach Bum x 2 CASE WEAPONTYPE_DLC_BOTTLE CASE WEAPONTYPE_DLC_SNSPISTOL // Valentines x 1 CASE WEAPONTYPE_DLC_GUSENBERG RETURN FALSE // UNLOCKED BREAK // Business x 2 CASE WEAPONTYPE_DLC_HEAVYPISTOL CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN FALSE // UNLOCKED BREAK // // Business2 x 1 CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN FALSE // UNLOCKED BREAK // Hipster x 2 CASE WEAPONTYPE_DLC_DAGGER CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN FALSE // UNLOCKED BREAK // Independence x 2 CASE WEAPONTYPE_DLC_FIREWORK CASE WEAPONTYPE_DLC_MUSKET RETURN FALSE // UNLOCKED BREAK // LTS x 2 CASE WEAPONTYPE_DLC_HEAVYSHOTGUN CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN FALSE // UNLOCKED BREAK // Christmas2 x 2 CASE WEAPONTYPE_DLC_HOMINGLAUNCHER CASE WEAPONTYPE_DLC_PROXMINE RETURN FALSE // UNLOCKED BREAK // Luxe x 1 CASE WEAPONTYPE_DLC_COMBATPDW CASE WEAPONTYPE_DLC_KNUCKLE CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN FALSE // UNLOCKED BREAK // Not added / not available CASE WEAPONTYPE_DLC_HEAVYRIFLE CASE WEAPONTYPE_DLC_ASSAULTMG CASE WEAPONTYPE_DLC_ASSAULTSNIPER CASE WEAPONTYPE_DLC_AMRIFLE CASE WEAPONTYPE_DLC_CROSSBOW CASE WEAPONTYPE_DLC_HARPOON CASE WEAPONTYPE_DLC_PROGRAMMABLEAR CASE WEAPONTYPE_DLC_RUBBERGUN CASE WEAPONTYPE_DLC_LOUDHAILER CASE WEAPONTYPE_DLC_FLAREGUN CASE WEAPONTYPE_DLC_HANDCUFFS CASE WEAPONTYPE_DLC_SNOWBALL CASE WEAPONTYPE_DLC_GARBAGEBAG CASE WEAPONTYPE_DLC_FLASHLIGHT CASE WEAPONTYPE_DLC_SWITCHBLADE CASE WEAPONTYPE_DLC_REVOLVER CASE WEAPONTYPE_DLC_DBSHOTGUN CASE WEAPONTYPE_DLC_COMPACTRIFLE CASE WEAPONTYPE_DLC_AUTOSHOTGUN CASE WEAPONTYPE_DLC_MINISMG CASE WEAPONTYPE_DLC_COMPACTLAUNCHER CASE WEAPONTYPE_DLC_BATTLEAXE CASE WEAPONTYPE_DLC_PIPEBOMB CASE WEAPONTYPE_DLC_POOLCUE CASE WEAPONTYPE_DLC_WRENCH CASE WEAPONTYPE_DLC_DOUBLEACTION CASE WEAPONTYPE_DLC_RAYCARBINE CASE WEAPONTYPE_DLC_RAYMINIGUN CASE WEAPONTYPE_DLC_RAYPISTOL CASE WEAPONTYPE_DLC_NAVYREVOLVER CASE WEAPONTYPE_DLC_CERAMICPISTOL #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON CASE WEAPONTYPE_DLC_POLICERIFLE #ENDIF #IF FEATURE_HEIST_ISLAND CASE WEAPONTYPE_DLC_GADGETPISTOL CASE WEAPONTYPE_DLC_MILITARYRIFLE CASE WEAPONTYPE_DLC_COMBATSHOTGUN #ENDIF #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER CASE WEAPONTYPE_DLC_FERTILIZERCAN CASE WEAPONTYPE_DLC_STUNGUNG_MP #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_METALDETECTOR CASE WEAPONTYPE_DLC_PRECISIONRIFLE CASE WEAPONTYPE_DLC_TACTICALRIFLE #ENDIF RETURN TRUE // LOCKED BREAK ENDSWITCH ENDIF RETURN FALSE ENDFUNC /// PURPOSE: Stores the peds weapon set up in the WEAPON_INFO struct PROC GET_PED_WEAPONS(PED_INDEX ped, PED_WEAPONS_STRUCT &sWeapons) #IF IS_DEBUG_BUILD DEBUG_PRINTCALLSTACK() PRINTLN("GET_PED_WEAPONS()") IF NETWORK_IS_GAME_IN_PROGRESS() ASSERTLN("Using GET_PED_WEAPONS in MP switch to GET_PED_WEAPONS_MP") ENDIF #ENDIF IF NOT IS_PED_INJURED(ped) INT iWeaponSlot INT iComponent WEAPONCOMPONENT_TYPE weaponComp WEAPON_SLOT eWeaponSlot WEAPON_INFO newValue // clear all stored ammo counts FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount = 0 ENDFOR // Store info for each weapon slot FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID // Grab the weapon type and reset ammo/mod counts newValue.eWeaponType = GET_PED_WEAPONTYPE_IN_SLOT(ped, GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot)) newValue.iAmmoCount = 0 newValue.iModsAsBitfield = 0 newValue.iTint = 0 newValue.iCamo = 0 // Grab the ammo/mod counts for valid items IF newValue.eWeaponType != WEAPONTYPE_INVALID AND newValue.eWeaponType != WEAPONTYPE_UNARMED newValue.iAmmoCount = GET_AMMO_IN_PED_WEAPON(ped, newValue.eWeaponType) IF newValue.eWeaponType = GADGETTYPE_PARACHUTE newValue.iAmmoCount = 1 ENDIF PRINTLN("...weapon ", GET_WEAPON_NAME(newValue.eWeaponType), " has ", newValue.iAmmoCount, " ammo") // Store the tints newValue.iTint = GET_PED_WEAPON_TINT_INDEX(ped, newValue.eWeaponType) newValue.iCamo = GET_PED_WEAPON_CAMO_INDEX(ped, newValue.eWeaponType) // Fix for code returning -1 to signal infinite ammo. IF newValue.iAmmoCount = -1 IF NOT GET_MAX_AMMO(ped,newValue.eWeaponType, newValue.iAmmoCount) newValue.iAmmoCount = 0 ENDIF PRINTLN("....infinite ammo detected, changing to ", newValue.iAmmoCount) ENDIF sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount = newValue.iAmmoCount iComponent = 0 weaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(newValue.eWeaponType, iComponent) WHILE weaponComp != WEAPONCOMPONENT_INVALID IF HAS_PED_GOT_WEAPON_COMPONENT(ped, newValue.eWeaponType, weaponComp) SET_BIT(newValue.iModsAsBitfield, iComponent) ENDIF iComponent++ weaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(newValue.eWeaponType, iComponent) ENDWHILE ENDIF // update stored info for this weapon slot sWeapons.sWeaponInfo[iWeaponSlot] = newValue ENDIF ENDFOR // Do the same for DLC weapons. // clear all stored ammo counts FOR iWeaponSlot = 0 TO NUMBER_OF_DLC_WEAPONS - 1 sWeapons.sDLCWeaponInfo[iWeaponSlot].iAmmoCount = 0 ENDFOR INT iDLCIndex INT iDLCWeapons = GET_NUM_DLC_WEAPONS_SP() scrShopWeaponData weaponData scrShopWeaponComponentData compData INT iWeaponSlotToUse INT iAvailableComp REPEAT iDLCWeapons iDLCIndex IF GET_DLC_WEAPON_DATA_SP(iDLCIndex, weaponData) AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) AND iWeaponSlotToUse < NUMBER_OF_DLC_WEAPONS IF NOT IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) // Grab the weapon type and reset ammo/mod counts newValue.eWeaponType = INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash) newValue.iAmmoCount = 0 newValue.iModsAsBitfield = 0 newValue.iTint = 0 newValue.iCamo = 0 // Grab the ammo/mod counts newValue.iAmmoCount = GET_AMMO_IN_PED_WEAPON(ped, newValue.eWeaponType) PRINTLN("...weapon ", GET_WEAPON_NAME(newValue.eWeaponType), " has ", newValue.iAmmoCount, " ammo") // Store the tints IF HAS_PED_GOT_WEAPON(ped, newValue.eWeaponType) newValue.iTint = GET_PED_WEAPON_TINT_INDEX(ped, newValue.eWeaponType) newValue.iCamo = GET_PED_WEAPON_CAMO_INDEX(ped, newValue.eWeaponType) ENDIF // Fix for code returning -1 to signal infinite ammo. IF newValue.iAmmoCount = -1 IF NOT GET_MAX_AMMO(ped,newValue.eWeaponType, newValue.iAmmoCount) newValue.iAmmoCount = 0 ENDIF PRINTLN("....infinite ammo detected, changing to ", newValue.iAmmoCount) ENDIF sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iAmmoCount = newValue.iAmmoCount iAvailableComp = 0 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS_SP(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA_SP(iDLCIndex, iComponent, compData) IF NOT IGNORE_DLC_WEAPON_COMPONENT(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) IF HAS_PED_GOT_WEAPON_COMPONENT(ped, newValue.eWeaponType, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) SET_BIT(newValue.iModsAsBitfield, iAvailableComp) ENDIF iAvailableComp++ ENDIF ENDIF ENDREPEAT ENDIF // Fix for player automatically getting all DLC weapons. IF newValue.eWeaponType != WEAPONTYPE_INVALID IF NOT HAS_PED_GOT_WEAPON(ped, newValue.eWeaponType) newValue.eWeaponType = WEAPONTYPE_INVALID newValue.iAmmoCount = 0 ENDIF ENDIF // update stored info for this weapon slot sWeapons.sDLCWeaponInfo[iWeaponSlotToUse] = newValue iWeaponSlotToUse++ ENDIF ENDREPEAT ENDIF ENDPROC /// PURPOSE: Stores the peds weapon set up in the WEAPON_INFO struct PROC GET_PED_WEAPONS_MP(PED_INDEX ped, PED_WEAPONS_MP_STRUCT &sWeapons) #IF IS_DEBUG_BUILD DEBUG_PRINTCALLSTACK() PRINTLN("GET_PED_WEAPONS_MP()") #ENDIF IF NOT IS_PED_INJURED(ped) INT iWeaponSlot INT iComponent WEAPONCOMPONENT_TYPE weaponComp WEAPON_SLOT eWeaponSlot WEAPON_INFO newValue // clear all stored ammo counts FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount = 0 ENDFOR // Store info for each weapon slot FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID // Grab the weapon type and reset ammo/mod counts newValue.eWeaponType = GET_PED_WEAPONTYPE_IN_SLOT(ped, GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot)) newValue.iAmmoCount = 0 newValue.iModsAsBitfield = 0 newValue.iTint = 0 newValue.iCamo = 0 // Grab the ammo/mod counts for valid items IF newValue.eWeaponType != WEAPONTYPE_INVALID AND newValue.eWeaponType != WEAPONTYPE_UNARMED newValue.iAmmoCount = GET_AMMO_IN_PED_WEAPON(ped, newValue.eWeaponType) IF newValue.eWeaponType = GADGETTYPE_PARACHUTE newValue.iAmmoCount = 1 ENDIF PRINTLN("...weapon ", GET_WEAPON_NAME(newValue.eWeaponType), " has ", newValue.iAmmoCount, " ammo") // Store the tints newValue.iTint = GET_PED_WEAPON_TINT_INDEX(ped, newValue.eWeaponType) newValue.iCamo = GET_PED_WEAPON_CAMO_INDEX(ped, newValue.eWeaponType) // Fix for code returning -1 to signal infinite ammo. IF newValue.iAmmoCount = -1 IF NOT GET_MAX_AMMO(ped,newValue.eWeaponType, newValue.iAmmoCount) newValue.iAmmoCount = 0 ENDIF PRINTLN("....infinite ammo detected, changing to ", newValue.iAmmoCount) ENDIF sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount = newValue.iAmmoCount iComponent = 0 weaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(newValue.eWeaponType, iComponent) WHILE weaponComp != WEAPONCOMPONENT_INVALID IF HAS_PED_GOT_WEAPON_COMPONENT(ped, newValue.eWeaponType, weaponComp) SET_BIT(newValue.iModsAsBitfield, iComponent) ENDIF iComponent++ weaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(newValue.eWeaponType, iComponent) ENDWHILE ENDIF // update stored info for this weapon slot sWeapons.sWeaponInfo[iWeaponSlot] = newValue ENDIF ENDFOR // Do the same for DLC weapons. // clear all stored ammo counts FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUMBER_OF_DLC_WEAPONS_MP)-1 sWeapons.sDLCWeaponInfo[iWeaponSlot].iAmmoCount = 0 ENDFOR INT iDLCIndex INT iDLCWeapons = GET_NUM_DLC_WEAPONS() scrShopWeaponData weaponData scrShopWeaponComponentData compData INT iWeaponSlotToUse INT iAvailableComp REPEAT iDLCWeapons iDLCIndex IF GET_DLC_WEAPON_DATA(iDLCIndex, weaponData) AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) AND iWeaponSlotToUse < NUMBER_OF_DLC_WEAPONS_MP IF NOT IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) // Grab the weapon type and reset ammo/mod counts newValue.eWeaponType = INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash) newValue.iAmmoCount = 0 newValue.iModsAsBitfield = 0 newValue.iTint = 0 newValue.iCamo = 0 // Grab the ammo/mod counts newValue.iAmmoCount = GET_AMMO_IN_PED_WEAPON(ped, newValue.eWeaponType) PRINTLN("...weapon ", GET_WEAPON_NAME(newValue.eWeaponType), " has ", newValue.iAmmoCount, " ammo") // Store the tints IF HAS_PED_GOT_WEAPON(ped, newValue.eWeaponType) newValue.iTint = GET_PED_WEAPON_TINT_INDEX(ped, newValue.eWeaponType) newValue.iCamo = GET_PED_WEAPON_CAMO_INDEX(ped, newValue.eWeaponType) ENDIF // Fix for code returning -1 to signal infinite ammo. IF newValue.iAmmoCount = -1 IF NOT GET_MAX_AMMO(ped,newValue.eWeaponType, newValue.iAmmoCount) newValue.iAmmoCount = 0 ENDIF PRINTLN("....infinite ammo detected, changing to ", newValue.iAmmoCount) ENDIF sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iAmmoCount = newValue.iAmmoCount iAvailableComp = 0 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComponent, compData) IF NOT IGNORE_DLC_WEAPON_COMPONENT(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) IF HAS_PED_GOT_WEAPON_COMPONENT(ped, newValue.eWeaponType, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) SET_BIT(newValue.iModsAsBitfield, iAvailableComp) ENDIF iAvailableComp++ ENDIF ENDIF ENDREPEAT ENDIF // Fix for player automatically getting all DLC weapons. IF newValue.eWeaponType != WEAPONTYPE_INVALID IF NOT HAS_PED_GOT_WEAPON(ped, newValue.eWeaponType) newValue.eWeaponType = WEAPONTYPE_INVALID newValue.iAmmoCount = 0 ENDIF ENDIF // update stored info for this weapon slot sWeapons.sDLCWeaponInfo[iWeaponSlotToUse] = newValue iWeaponSlotToUse++ ENDIF ENDREPEAT ENDIF ENDPROC FUNC BOOL IS_WEAPON_UNLOCKED_BY_DEFAULT(WEAPON_TYPE eWeapon) // Special edition, collectors edition, and social club weapons SWITCH eWeapon CASE WEAPONTYPE_HAMMER CASE WEAPONTYPE_DLC_PISTOL50 CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN TRUE BREAK ENDSWITCH // DLC weapons INT iWeapon scrShopWeaponData weaponData REPEAT GET_NUM_DLC_WEAPONS() iWeapon IF GET_DLC_WEAPON_DATA(iWeapon, weaponData) IF weaponData.m_nameHash = ENUM_TO_INT(eWeapon) IF NOT IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) RETURN TRUE ENDIF ENDIF ENDIF ENDREPEAT RETURN FALSE ENDFUNC FUNC BOOL IS_WEAPON_AVAILABLE_FOR_GAME(WEAPON_TYPE eWeapon) #IF USE_TU_CHANGES IF eWeapon = INT_TO_ENUM(WEAPON_TYPE, HASH("INDI_FIREWORK")) IF NETWORK_IS_GAME_IN_PROGRESS() AND IS_MP_INDEPENDENCE_PACK_PRESENT() RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF #ENDIF // Fix for 2077781 - Removing firework launcher from SP ammunation. IF eWeapon = WEAPONTYPE_DLC_FIREWORK AND NOT NETWORK_IS_GAME_IN_PROGRESS() RETURN FALSE ENDIF SWITCH eWeapon // CASE WEAPONTYPE_HAMMER // CASE WEAPONTYPE_DLC_PISTOL50 // CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN // //IF NOT NETWORK_IS_GAME_IN_PROGRESS() // IF NOT IS_SPECIAL_EDITION_GAME() // AND NOT IS_COLLECTORS_EDITION_GAME() // RETURN FALSE // ENDIF // //ELSE // // RETURN FALSE // //ENDIF // BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG #IF USE_TU_CHANGES IF NOT NETWORK_IS_GAME_IN_PROGRESS() IF NOT IS_GAME_LINKED_TO_SOCIAL_CLUB(TRUE, TRUE) RETURN FALSE ENDIF ENDIF #ENDIF #IF NOT USE_TU_CHANGES IF NOT IS_GAME_LINKED_TO_SOCIAL_CLUB(TRUE, TRUE) RETURN FALSE ENDIF #ENDIF BREAK #IF USE_TU_CHANGES CASE WEAPONTYPE_SAWNOFFSHOTGUN IF NETWORK_IS_GAME_IN_PROGRESS() IF NOT IS_GAME_LINKED_TO_SOCIAL_CLUB(TRUE, TRUE) RETURN FALSE ENDIF ENDIF BREAK CASE WEAPONTYPE_DLC_RAILGUN IF NOT IS_LAST_GEN_PLAYER() OR NETWORK_IS_GAME_IN_PROGRESS() // Block in MP RETURN FALSE ENDIF BREAK CASE WEAPONTYPE_DLC_HATCHET IF NOT NETWORK_IS_GAME_IN_PROGRESS() IF NOT IS_LAST_GEN_PLAYER() AND NOT g_sMPTunables.bENABLE_RETURNING_CONTENT_WEAPON RETURN FALSE ENDIF ENDIF BREAK #ENDIF CASE WEAPONTYPE_DLC_KNUCKLE CASE WEAPONTYPE_DLC_MARKSMANPISTOL BREAK ENDSWITCH // If this is a DLC weapon, check that it is unlocked INT iWeapon scrShopWeaponData weaponData REPEAT GET_NUM_DLC_WEAPONS() iWeapon IF GET_DLC_WEAPON_DATA(iWeapon, weaponData) IF weaponData.m_nameHash = ENUM_TO_INT(eWeapon) IF IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) OR IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) RETURN FALSE ENDIF ENDIF ENDIF ENDREPEAT RETURN IS_WEAPON_VALID(eWeapon) ENDFUNC /// PURPOSE: Sets the peds weapon based on the info in the WEAPON_INFO struct /// NOTE: Set bRemoveCurrentWeapons to false if you want to add instead of set. PROC SET_PED_WEAPONS(PED_INDEX ped, PED_WEAPONS_STRUCT &sWeapons, BOOL bRemoveCurrentWeapons = TRUE) #IF IS_DEBUG_BUILD DEBUG_PRINTCALLSTACK() PRINTLN("SET_PED_WEAPONS(", GET_STRING_FROM_BOOL(bRemoveCurrentWeapons), ")") IF NETWORK_IS_GAME_IN_PROGRESS() ASSERTLN("Using SET_PED_WEAPONS in MP switch to SET_PED_WEAPONS_MP") ENDIF #ENDIF IF NOT IS_PED_INJURED(ped) INT iAmmoStored WEAPON_SLOT eWeaponSlot WEAPON_TYPE eWeaponInSlot WEAPON_TYPE eWeaponStored WEAPONCOMPONENT_TYPE eWeaponComp INT iWeaponSlot INT iComponent INT iPass INT iDLCIndex scrShopWeaponData weaponData scrShopWeaponComponentData compData INT iWeaponSlotToUse INT iAvailableComp INT iNumDLCWeapons = GET_NUM_DLC_WEAPONS_SP() INT iCurrentAmmo[NUM_WEAPONSLOTS] INT iCurrentDLCAmmo[NUMBER_OF_DLC_WEAPONS] // First pass gets and stores the peds ammo for each weapon type // Second pass sets all weapons ammo to zero REPEAT 2 iPass // Weapons share ammo so we need to remove all to begin with FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 // Get the weapon slot by index eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) // If slot is valid IF eWeaponSlot != WEAPONSLOT_INVALID AND eWeaponSlot != WEAPONSLOT_UNARMED // Get weapon type from the slot eWeaponInSlot = GET_PED_WEAPONTYPE_IN_SLOT(ped, eWeaponSlot) // If weapon type is valid IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED IF IS_WEAPON_AVAILABLE_FOR_GAME(eWeaponInSlot) IF iPass = 0 // For first pass store ammo from the peds weapon iCurrentAmmo[iWeaponSlot] = GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) ELSE // For second pass set the ammo for this weapon type to 0 SET_PED_AMMO(ped, eWeaponInSlot, 0) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, 0) ENDIF ELSE // If weapon not available just set ammo to zero iCurrentAmmo[iWeaponSlot] = 0 SET_PED_AMMO(ped, eWeaponInSlot, 0) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, 0) ENDIF ENDIF ENDIF ENDFOR // Do the same for SP DLC weapons REPEAT iNumDLCWeapons iDLCIndex IF (iDLCIndex < NUMBER_OF_DLC_WEAPONS) IF GET_DLC_WEAPON_DATA_SP(iDLCIndex, weaponData) // If dlc weapon isn't locked IF NOT IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) IF iPass = 0 iCurrentDLCAmmo[iDLCIndex] = GET_AMMO_IN_PED_WEAPON(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) ELSE SET_PED_AMMO(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) SET_AMMO_IN_CLIP(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) ENDIF ELSE iCurrentDLCAmmo[iDLCIndex] = 0 SET_PED_AMMO(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) SET_AMMO_IN_CLIP(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) ENDIF ENDIF ELSE BREAKLOOP ENDIF ENDREPEAT ENDREPEAT // Now give/remove the weapons and set mods/ammo. FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID AND eWeaponSlot != WEAPONSLOT_UNARMED eWeaponInSlot = GET_PED_WEAPONTYPE_IN_SLOT(ped, eWeaponSlot) eWeaponStored = sWeapons.sWeaponInfo[iWeaponSlot].eWeaponType iAmmoStored = sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount // Fix for bug 1472000 - SCEE First Sub #094 - DRM Debug options cause issues with test DLC packages // - we need to make sure player doesnt keep weapons that they have uninstalled. IF NOT IS_WEAPON_AVAILABLE_FOR_GAME(eWeaponStored) sWeapons.sWeaponInfo[iWeaponSlot].eWeaponType = WEAPONTYPE_INVALID eWeaponStored = WEAPONTYPE_INVALID ENDIF // GIVE PED THE WEAPON WITH THE STORED AMMO IF eWeaponStored != WEAPONTYPE_INVALID IF eWeaponStored != WEAPONTYPE_UNARMED IF NOT HAS_PED_GOT_WEAPON(ped, eWeaponStored) PRINTLN("...giving weapon ", GET_WEAPON_NAME(eWeaponStored)) GIVE_WEAPON_TO_PED(ped, eWeaponStored, 0, FALSE, FALSE) ENDIF // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iAmmoStored SET_PED_AMMO(ped, eWeaponStored, iAmmoStored) PRINTLN("....setting stored ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iAmmoStored) ENDIF // Set the tints IF eWeaponStored != WEAPONTYPE_PETROLCAN AND HAS_PED_GOT_WEAPON(ped, eWeaponStored) SET_PED_WEAPON_TINT_INDEX(ped, eWeaponStored, sWeapons.sWeaponInfo[iWeaponSlot].iTint) ENDIF // Make sure we get all the weapon mods back iComponent = 0 eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponStored, iComponent) WHILE eWeaponComp != WEAPONCOMPONENT_INVALID IF IS_BIT_SET(sWeapons.sWeaponInfo[iWeaponSlot].iModsAsBitfield, iComponent) IF NOT HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, eWeaponComp) GIVE_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, eWeaponComp) GIVE_SECONDARY_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, eWeaponComp) // Set camo tint IF IS_WEAPON_COMP_A_CAMO_MOD(eWeaponComp) // sWeapons.sWeaponInfo[iWeaponSlot].iCamo = GET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp) SET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp, sWeapons.sWeaponInfo[iWeaponSlot].iCamo) SET_PED_WEAPON_SECONDARY_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp, sWeapons.sWeaponInfo[iWeaponSlot].iCamo) ENDIF ENDIF ELSE IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, eWeaponComp) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, eWeaponComp) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, eWeaponComp) ENDIF ENDIF iComponent++ eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponStored, iComponent) ENDWHILE ENDIF // REMOVE THE WEAPON ELIF bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT PRINTLN("...removing weapon ", GET_WEAPON_NAME(eWeaponInSlot), ". Weapon Stored = ", GET_WEAPON_NAME(eWeaponStored)) REMOVE_WEAPON_FROM_PED(ped, eWeaponInSlot) iComponent = 0 eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponInSlot, iComponent) WHILE eWeaponComp != WEAPONCOMPONENT_INVALID IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponInSlot, eWeaponComp) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, eWeaponComp) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, eWeaponComp) ENDIF iComponent++ eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponInSlot, iComponent) ENDWHILE ENDIF ENDIF // KEEPING THE WEAPON SO SET THE AMMO THAT WE HAD IF NOT bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) < iCurrentAmmo[iWeaponSlot] SET_PED_AMMO(ped, eWeaponInSlot, iCurrentAmmo[iWeaponSlot]) PRINTLN("....setting current ammo for ", GET_WEAPON_NAME(eWeaponInSlot), " to ", iCurrentAmmo[iWeaponSlot]) ENDIF ENDIF ENDIF ENDIF ENDFOR // Do the same for SP DLC weapons. REPEAT COUNT_OF(sWeapons.sDLCWeaponInfo) iWeaponSlotToUse eWeaponStored = sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].eWeaponType iAmmoStored = sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iAmmoCount // Get the SP DLC data for this weapon. iDLCIndex = GET_SP_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeaponStored, weaponData) IF (iDLCIndex != -1 AND iDLCIndex < NUMBER_OF_DLC_WEAPONS) AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) // Fix for bug 1472000 - SCEE First Sub #094 - DRM Debug options cause issues with test DLC packages // - we need to make sure player doesnt keep weapons that they have uninstalled. IF IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) OR IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].eWeaponType = WEAPONTYPE_INVALID eWeaponStored = WEAPONTYPE_INVALID ENDIF // GIVE PED THE WEAPON WITH THE STORED AMMO IF eWeaponStored != WEAPONTYPE_INVALID IF eWeaponStored != WEAPONTYPE_UNARMED IF NOT HAS_PED_GOT_WEAPON(ped, eWeaponStored) PRINTLN("...giving weapon ", GET_WEAPON_NAME(eWeaponStored)) GIVE_WEAPON_TO_PED(ped, eWeaponStored, 0, FALSE, FALSE) ENDIF // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iAmmoStored SET_PED_AMMO(ped, eWeaponStored, iAmmoStored) PRINTLN("....setting stored ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iAmmoStored) ENDIF // Set the tints IF HAS_PED_GOT_WEAPON(ped, eWeaponStored) SET_PED_WEAPON_TINT_INDEX(ped, eWeaponStored, sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iTint) ENDIF // Make sure we get all the weapon mods back iAvailableComp = 0 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS_SP(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA_SP(iDLCIndex, iComponent, compData) IF NOT IGNORE_DLC_WEAPON_COMPONENT(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) IF IS_BIT_SET(sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iModsAsBitfield, iAvailableComp) IF NOT HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) GIVE_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) GIVE_SECONDARY_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) // Set camo tint IF IS_WEAPON_COMP_A_CAMO_MOD(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) // sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo = GET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) SET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName), sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo) SET_PED_WEAPON_SECONDARY_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName), sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo) ENDIF ENDIF ELSE IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) ENDIF ENDIF iAvailableComp++ ENDIF ENDIF ENDREPEAT ENDIF // REMOVE THE WEAPON ELIF bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT PRINTLN("...removing weapon ", GET_WEAPON_NAME(eWeaponStored)) REMOVE_WEAPON_FROM_PED(ped, eWeaponInSlot) REPEAT GET_NUM_DLC_WEAPON_COMPONENTS_SP(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA_SP(iDLCIndex, iComponent, compData) IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) ENDIF ENDIF ENDREPEAT ENDIF ENDIF // KEEPING THE WEAPON SO SET THE AMMO THAT WE HAD IF NOT bRemoveCurrentWeapons IF eWeaponStored != WEAPONTYPE_INVALID AND eWeaponStored != WEAPONTYPE_UNARMED // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iCurrentDLCAmmo[iDLCIndex] SET_PED_AMMO(ped, eWeaponStored, iCurrentDLCAmmo[iDLCIndex]) PRINTLN("....setting current ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iCurrentDLCAmmo[iDLCIndex]) ENDIF ENDIF ENDIF ENDIF ENDREPEAT // Fill the clip so we dont see ped reload. IF GET_CURRENT_PED_WEAPON(ped, eWeaponInSlot) AND eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT iAmmoStored = GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) IF iAmmoStored > 1 AND iAmmoStored > GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot) SET_PED_AMMO(ped, eWeaponInSlot, iAmmoStored-GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot)) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot)) ENDIF ENDIF ENDIF ENDPROC /// PURPOSE: Sets the peds weapon based on the info in the WEAPON_INFO struct /// NOTE: Set bRemoveCurrentWeapons to false if you want to add instead of set. PROC SET_PED_WEAPONS_MP(PED_INDEX ped, PED_WEAPONS_MP_STRUCT &sWeapons, BOOL bRemoveCurrentWeapons = TRUE) #IF IS_DEBUG_BUILD DEBUG_PRINTCALLSTACK() PRINTLN("SET_PED_WEAPONS_MP(", GET_STRING_FROM_BOOL(bRemoveCurrentWeapons), ")") #ENDIF IF NOT IS_PED_INJURED(ped) INT iAmmoStored WEAPON_SLOT eWeaponSlot WEAPON_TYPE eWeaponInSlot WEAPON_TYPE eWeaponStored WEAPONCOMPONENT_TYPE eWeaponComp INT iWeaponSlot INT iComponent INT iPass INT iDLCIndex scrShopWeaponData weaponData scrShopWeaponComponentData compData INT iWeaponSlotToUse INT iAvailableComp INT iCurrentAmmo[NUM_WEAPONSLOTS] INT iCurrentDLCAmmo[NUMBER_OF_DLC_WEAPONS_MP] REPEAT 2 iPass // Weapons share ammo so we need to remove all to begin with FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID AND eWeaponSlot != WEAPONSLOT_UNARMED eWeaponInSlot = GET_PED_WEAPONTYPE_IN_SLOT(ped, eWeaponSlot) IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED IF IS_WEAPON_AVAILABLE_FOR_GAME(eWeaponInSlot) IF iPass = 0 iCurrentAmmo[iWeaponSlot] = GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) ELSE SET_PED_AMMO(ped, eWeaponInSlot, 0) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, 0) ENDIF ELSE iCurrentAmmo[iWeaponSlot] = 0 SET_PED_AMMO(ped, eWeaponInSlot, 0) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, 0) ENDIF ENDIF ENDIF ENDFOR // Do the same for DLC weapons REPEAT GET_NUM_DLC_WEAPONS() iDLCIndex IF GET_DLC_WEAPON_DATA(iDLCIndex, weaponData) IF NOT IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) IF iPass = 0 iCurrentDLCAmmo[iDLCIndex] = GET_AMMO_IN_PED_WEAPON(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) ELSE SET_PED_AMMO(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) SET_AMMO_IN_CLIP(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) ENDIF ELSE iCurrentDLCAmmo[iDLCIndex] = 0 SET_PED_AMMO(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) SET_AMMO_IN_CLIP(ped, INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash), 0) ENDIF ENDIF ENDREPEAT ENDREPEAT // Now give/remove the weapons and set mods/ammo. FOR iWeaponSlot = 0 TO ENUM_TO_INT(NUM_WEAPONSLOTS)-1 eWeaponSlot = GET_PLAYER_PED_WEAPON_SLOT_FROM_INT(iWeaponSlot) IF eWeaponSlot != WEAPONSLOT_INVALID AND eWeaponSlot != WEAPONSLOT_UNARMED eWeaponInSlot = GET_PED_WEAPONTYPE_IN_SLOT(ped, eWeaponSlot) eWeaponStored = sWeapons.sWeaponInfo[iWeaponSlot].eWeaponType iAmmoStored = sWeapons.sWeaponInfo[iWeaponSlot].iAmmoCount // Fix for bug 1472000 - SCEE First Sub #094 - DRM Debug options cause issues with test DLC packages // - we need to make sure player doesnt keep weapons that they have uninstalled. IF NOT IS_WEAPON_AVAILABLE_FOR_GAME(eWeaponStored) sWeapons.sWeaponInfo[iWeaponSlot].eWeaponType = WEAPONTYPE_INVALID eWeaponStored = WEAPONTYPE_INVALID ENDIF // GIVE PED THE WEAPON WITH THE STORED AMMO IF eWeaponStored != WEAPONTYPE_INVALID IF eWeaponStored != WEAPONTYPE_UNARMED IF NOT HAS_PED_GOT_WEAPON(ped, eWeaponStored) PRINTLN("...giving weapon ", GET_WEAPON_NAME(eWeaponStored)) GIVE_WEAPON_TO_PED(ped, eWeaponStored, 0, FALSE, FALSE) ENDIF // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iAmmoStored SET_PED_AMMO(ped, eWeaponStored, iAmmoStored) PRINTLN("....setting stored ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iAmmoStored) ENDIF // Set the tints IF eWeaponStored != WEAPONTYPE_PETROLCAN AND HAS_PED_GOT_WEAPON(ped, eWeaponStored) SET_PED_WEAPON_TINT_INDEX(ped, eWeaponStored, sWeapons.sWeaponInfo[iWeaponSlot].iTint) ENDIF // Make sure we get all the weapon mods back iComponent = 0 eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponStored, iComponent) WHILE eWeaponComp != WEAPONCOMPONENT_INVALID IF IS_BIT_SET(sWeapons.sWeaponInfo[iWeaponSlot].iModsAsBitfield, iComponent) IF NOT HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, eWeaponComp) GIVE_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, eWeaponComp) GIVE_SECONDARY_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, eWeaponComp) // Set camo tint IF IS_WEAPON_COMP_A_CAMO_MOD(eWeaponComp) // sWeapons.sWeaponInfo[iWeaponSlot].iCamo = GET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp) SET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp, sWeapons.sWeaponInfo[iWeaponSlot].iCamo) SET_PED_WEAPON_SECONDARY_COMPONENT_TINT_INDEX(ped, eWeaponStored, eWeaponComp, sWeapons.sWeaponInfo[iWeaponSlot].iCamo) ENDIF ENDIF ELSE IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, eWeaponComp) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, eWeaponComp) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, eWeaponComp) ENDIF ENDIF iComponent++ eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponStored, iComponent) ENDWHILE ENDIF // REMOVE THE WEAPON ELIF bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT PRINTLN("...removing weapon ", GET_WEAPON_NAME(eWeaponInSlot), ". Weapon Stored = ", GET_WEAPON_NAME(eWeaponStored)) REMOVE_WEAPON_FROM_PED(ped, eWeaponInSlot) iComponent = 0 eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponInSlot, iComponent) WHILE eWeaponComp != WEAPONCOMPONENT_INVALID IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponInSlot, eWeaponComp) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, eWeaponComp) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, eWeaponComp) ENDIF iComponent++ eWeaponComp = GET_PLAYER_PED_WEAPON_COMP_FROM_INT(eWeaponInSlot, iComponent) ENDWHILE ENDIF ENDIF // KEEPING THE WEAPON SO SET THE AMMO THAT WE HAD IF NOT bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) < iCurrentAmmo[iWeaponSlot] SET_PED_AMMO(ped, eWeaponInSlot, iCurrentAmmo[iWeaponSlot]) PRINTLN("....setting current ammo for ", GET_WEAPON_NAME(eWeaponInSlot), " to ", iCurrentAmmo[iWeaponSlot]) ENDIF ENDIF ENDIF ENDIF ENDFOR // Do the same for DLC weapons. REPEAT COUNT_OF(sWeapons.sDLCWeaponInfo) iWeaponSlotToUse eWeaponStored = sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].eWeaponType iAmmoStored = sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iAmmoCount // Get the DLC data this weapon. iDLCIndex = GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeaponStored, weaponData) IF iDLCIndex != -1 AND NOT IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) // Fix for bug 1472000 - SCEE First Sub #094 - DRM Debug options cause issues with test DLC packages // - we need to make sure player doesnt keep weapons that they have uninstalled. IF IS_CONTENT_ITEM_LOCKED(weaponData.m_lockHash) OR IS_DLC_WEAPON_LOCKED_BY_SCRIPT(INT_TO_ENUM(WEAPON_TYPE, weaponData.m_nameHash)) sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].eWeaponType = WEAPONTYPE_INVALID eWeaponStored = WEAPONTYPE_INVALID ENDIF // GIVE PED THE WEAPON WITH THE STORED AMMO IF eWeaponStored != WEAPONTYPE_INVALID IF eWeaponStored != WEAPONTYPE_UNARMED IF NOT HAS_PED_GOT_WEAPON(ped, eWeaponStored) PRINTLN("...giving weapon ", GET_WEAPON_NAME(eWeaponStored)) GIVE_WEAPON_TO_PED(ped, eWeaponStored, 0, FALSE, FALSE) ENDIF // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iAmmoStored SET_PED_AMMO(ped, eWeaponStored, iAmmoStored) PRINTLN("....setting stored ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iAmmoStored) ENDIF // Set the tints IF HAS_PED_GOT_WEAPON(ped, eWeaponStored) SET_PED_WEAPON_TINT_INDEX(ped, eWeaponStored, sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iTint) ENDIF // Make sure we get all the weapon mods back iAvailableComp = 0 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComponent, compData) IF NOT IGNORE_DLC_WEAPON_COMPONENT(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) IF IS_BIT_SET(sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iModsAsBitfield, iAvailableComp) IF NOT HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) GIVE_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) GIVE_SECONDARY_WEAPON_COMPONENT_TO_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) // Set camo tint IF IS_WEAPON_COMP_A_CAMO_MOD(INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) // sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo = GET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) SET_PED_WEAPON_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName), sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo) SET_PED_WEAPON_SECONDARY_COMPONENT_TINT_INDEX(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName), sWeapons.sDLCWeaponInfo[iWeaponSlotToUse].iCamo) ENDIF ENDIF ELSE IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponStored, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) ENDIF ENDIF iAvailableComp++ ENDIF ENDIF ENDREPEAT ENDIF // REMOVE THE WEAPON ELIF bRemoveCurrentWeapons IF eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT PRINTLN("...removing weapon ", GET_WEAPON_NAME(eWeaponStored)) REMOVE_WEAPON_FROM_PED(ped, eWeaponInSlot) REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComponent IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComponent, compData) IF HAS_PED_GOT_WEAPON_COMPONENT(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) REMOVE_SECONDARY_WEAPON_COMPONENT_FROM_PED(ped, eWeaponInSlot, INT_TO_ENUM(WEAPONCOMPONENT_TYPE, compData.m_componentName)) ENDIF ENDIF ENDREPEAT ENDIF ENDIF // KEEPING THE WEAPON SO SET THE AMMO THAT WE HAD IF NOT bRemoveCurrentWeapons IF eWeaponStored != WEAPONTYPE_INVALID AND eWeaponStored != WEAPONTYPE_UNARMED // Make sure the ammo counts are the same or more than. IF GET_AMMO_IN_PED_WEAPON(ped, eWeaponStored) < iCurrentDLCAmmo[iDLCIndex] SET_PED_AMMO(ped, eWeaponStored, iCurrentDLCAmmo[iDLCIndex]) PRINTLN("....setting current ammo for ", GET_WEAPON_NAME(eWeaponStored), " to ", iCurrentDLCAmmo[iDLCIndex]) ENDIF ENDIF ENDIF ENDIF ENDREPEAT // Fill the clip so we dont see ped reload. IF GET_CURRENT_PED_WEAPON(ped, eWeaponInSlot) AND eWeaponInSlot != WEAPONTYPE_INVALID AND eWeaponInSlot != WEAPONTYPE_UNARMED AND eWeaponInSlot != WEAPONTYPE_OBJECT iAmmoStored = GET_AMMO_IN_PED_WEAPON(ped, eWeaponInSlot) IF iAmmoStored > 1 AND iAmmoStored > GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot) SET_PED_AMMO(ped, eWeaponInSlot, iAmmoStored-GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot)) SET_AMMO_IN_CLIP(ped, eWeaponInSlot, GET_MAX_AMMO_IN_CLIP(ped, eWeaponInSlot)) ENDIF ENDIF ENDIF ENDPROC FUNC INT GET_KIT_INDEX_FROM_PLAYERKIT_TYPE(PLAYERKIT aplayerkit) RETURN ENUM_TO_INT(GET_KIT_BITSET_FROM_KITTYPE (aplayerkit)) ENDFUNC //Convertion functions from code enum to script enum - Hash to int FUNC INT GET_WEAPON_INDEX_FROM_WEAPON_TYPE(WEAPON_TYPE aWeapon) RETURN ENUM_TO_INT(GET_WEAPON_BITSET_FROM_WEAPONTYPE(aWeapon)) ENDFUNC FUNC INT GET_WEAPON_ADDON_INDEX_FROM_WEAPONS(WEAPONCOMPONENT_TYPE aWeaponComponent, WEAPON_TYPE aWeapon) RETURN ENUM_TO_INT(GET_AMMO_BITSET_FROM_WEAPONS(aWeaponComponent, aWeapon)) ENDFUNC FUNC INT GET_WEAPON_INDEX_FROM_WEAPONUNLOCK(WEAPON_BITSET aWeapon) RETURN ENUM_TO_INT(aWeapon) ENDFUNC FUNC INT GET_WEAPON_BITSET(INT iWeapon) RETURN (iWeapon / 32) ENDFUNC FUNC INT GET_WEAPON_INDEX_BITSET(INT iWeapon) RETURN iWeapon % 32 ENDFUNC FUNC INT GET_DLC_WEAPON_BITSET(INT iWeapon, INT iFirstDLCWeaponIndex) INT iBitSet = ( ( iWeapon - iFirstDLCWeaponIndex ) / 32) //CDEBUG3LN(DEBUG_WEAPONS, " - weapons_public - GET_DLC_WEAPON_BITSET - iBitSet: ", iBitSet, " - for weapon: ", iWeapon) RETURN iBitSet // DLC weapons start at bitset index 45 (WEAPON_BITSET) ENDFUNC FUNC INT GET_DLC_WEAPON_INDEX_BITSET(INT iWeapon, INT iFirstDLCWeaponIndex) INT iBitIndex = ( ( iWeapon - ( iFirstDLCWeaponIndex % 32 ) ) % 32 ) //CDEBUG3LN(DEBUG_WEAPONS, " - weapons_public - GET_DLC_WEAPON_INDEX_BITSET - iBitIndex: ", iBitIndex, " - for weapon: ", iWeapon) RETURN iBitIndex // DLC weapons start at bitset index 45 (WEAPON_BITSET) - This drops it to 32 so when modulus its starts at 0. ENDFUNC FUNC INT GET_U64_BITSET(INT iWeapon) RETURN (iWeapon / 64) ENDFUNC FUNC INT GET_U64_INDEX_BITSET(INT iWeapon) RETURN iWeapon % 64 ENDFUNC FUNC INT GET_KIT_BITSET(INT iKit) RETURN (iKit / 32) ENDFUNC FUNC INT GET_KIT_INDEX_BITSET(INT iKit) RETURN iKit % 32 ENDFUNC FUNC INT GET_WEAPON_ADDON_BITSET(INT iWeaponAddon) RETURN (iWeaponAddon / 32) ENDFUNC FUNC INT GET_WEAPON_ADDON_INDEX_BITSET(INT iWeaponAddon) RETURN iWeaponAddon % 32 ENDFUNC FUNC INT GET_UINT8_BLOCK(INT iEnumValue) RETURN (iEnumValue / 4) ENDFUNC FUNC INT GET_UINT8_INDEX(INT iEnumValue) RETURN iEnumValue % 4 ENDFUNC FUNC INT GET_UINT16_BLOCK(INT iEnumValue) RETURN (iEnumValue / 2) ENDFUNC FUNC INT GET_UINT16_INDEX(INT iEnumValue) RETURN iEnumValue % 2 ENDFUNC PROC GET_PARACHUTE_SMOKE_COLOUR(INT iTint, INT &iR, INT &iG, INT &iB) iR = 255 iG = 255 iB = 255 SWITCH iTint CASE 0 // None iR = 255 iG = 255 iB = 255 BREAK CASE 1 // Red iR = 255 iG = 0 iB = 0 BREAK CASE 2 // Orange iR = 255 iG = 165 iB = 0 BREAK CASE 3 // Yellow iR = 255 iG = 255 iB = 0 BREAK CASE 4 // Blue iR = 0 iG = 0 iB = 255 BREAK CASE 5 // Black iR = 20 iG = 20 iB = 20 BREAK CASE 6 // Crew iR = g_Private_LocalPlayerCrew_Colour_Red iG = g_Private_LocalPlayerCrew_Colour_Green iB = g_Private_LocalPlayerCrew_Colour_Blue BREAK CASE 7 // Patriot (Red, White, and Blue) iR = 0 iG = 0 iB = 0 BREAK ENDSWITCH ENDPROC FUNC INT GET_PARACHUTE_CANOPY_INDEX_FROM_MODEL_AND_TINT(MODEL_NAMES eModelOverride, INT iTint, PARACHUTE_CANOPY_TYPE eCanopyType = PARACHUTE_CANOPY_STANDARD) SWITCH eCanopyType CASE PARACHUTE_CANOPY_TEAM_COLOUR SWITCH ENUM_TO_INT(eModelOverride) CASE HASH("xm_prop_x17_Para_SP_S") RETURN iTint BREAK ENDSWITCH BREAK CASE PARACHUTE_CANOPY_STANDARD SWITCH ENUM_TO_INT(eModelOverride) CASE HASH("lts_P_Para_Pilot2_SP_S") SWITCH iTint CASE 0 RETURN 0 BREAK // Rainbow Chute CASE 1 RETURN 1 BREAK // Red Chute CASE 2 RETURN 2 BREAK // Seaside Stripes Chute CASE 3 RETURN 3 BREAK // Widowmaker Chute CASE 4 RETURN 4 BREAK // Patriot Chute CASE 5 RETURN 5 BREAK // Blue Chute CASE 6 RETURN 6 BREAK // Black Chute CASE 7 RETURN 7 BREAK // Hornet Chute CASE 8 RETURN 8 BREAK // Air Force Chute CASE 9 RETURN 9 BREAK // Desert Chute CASE 10 RETURN 10 BREAK // Shadow Chute CASE 11 RETURN 11 BREAK // High Altitude Chute CASE 12 RETURN 12 BREAK // Airborne Chute CASE 13 RETURN 13 BREAK // Sunrise Chute ENDSWITCH BREAK CASE HASH("tr_prop_TR_Para_SP_S_01a") SWITCH iTint CASE 0 RETURN 0 BREAK // Rainbow Chute CASE 1 RETURN 14 BREAK // Sprunk Chute CASE 2 RETURN 15 BREAK // eCola Chute CASE 3 RETURN 16 BREAK // Halloween Chute ENDSWITCH BREAK CASE HASH("reh_prop_reh_Para_SP_S_01a") SWITCH iTint CASE 0 RETURN 0 BREAK // Rainbow Chute CASE 1 RETURN 17 BREAK // Junk Energy ENDSWITCH BREAK ENDSWITCH BREAK ENDSWITCH RETURN 0 ENDFUNC FUNC BOOL GET_PARACHUTE_MODEL_AND_TINT_FROM_CANOPY_INDEX(INT iCanopyIndex, PARACHUTE_CANOPY_TYPE eCanopyType, MODEL_NAMES &eModelOverride, INT &iTint) eModelOverride = DUMMY_MODEL_FOR_SCRIPT iTint = 0 SWITCH eCanopyType CASE PARACHUTE_CANOPY_TEAM_COLOUR eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("xm_prop_x17_Para_SP_S")) iTint = iCanopyIndex BREAK CASE PARACHUTE_CANOPY_STANDARD SWITCH iCanopyIndex CASE 0 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 0 BREAK // Rainbow Chute CASE 1 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 1 BREAK // Red Chute CASE 2 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 2 BREAK // Seaside Stripes Chute CASE 3 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 3 BREAK // Widowmaker Chute CASE 4 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 4 BREAK // Patriot Chute CASE 5 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 5 BREAK // Blue Chute CASE 6 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 6 BREAK // Black Chute CASE 7 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 7 BREAK // Hornet Chute CASE 8 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 8 BREAK // Air Force Chute CASE 9 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 9 BREAK // Desert Chute CASE 10 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 10 BREAK // Shadow Chute CASE 11 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 11 BREAK // High Altitude Chute CASE 12 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 12 BREAK // Airborne Chute CASE 13 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("lts_P_Para_Pilot2_SP_S")) iTint = 13 BREAK // Sunrise Chute CASE 14 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("tr_prop_TR_Para_SP_S_01a")) iTint = 1 BREAK // Sprunk Chute CASE 15 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("tr_prop_TR_Para_SP_S_01a")) iTint = 2 BREAK // eCola Chute CASE 16 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("tr_prop_TR_Para_SP_S_01a")) iTint = 3 BREAK // Halloween Chute CASE 17 eModelOverride = INT_TO_ENUM(MODEL_NAMES, HASH("reh_prop_reh_Para_SP_S_01a")) iTint = 1 BREAK // Junk Energy Chute ENDSWITCH BREAK ENDSWITCH RETURN (eModelOverride != DUMMY_MODEL_FOR_SCRIPT) ENDFUNC /// PURPOSE: Helper function to consolidate tint index and model override calls for parachute canopies. /// PROC SET_PLAYER_PARACHUTE_CANOPY(PLAYER_INDEX playerID, INT iCanopyIndex, PARACHUTE_CANOPY_TYPE eCanopyType = PARACHUTE_CANOPY_STANDARD) MODEL_NAMES eModelOverride INT iTint IF GET_PARACHUTE_MODEL_AND_TINT_FROM_CANOPY_INDEX(iCanopyIndex, eCanopyType, eModelOverride, iTint) PRINTLN("SET_PLAYER_PARACHUTE_CANOPY - Setting tint index ", iTint, " for model ", GET_MODEL_NAME_FOR_DEBUG(eModelOverride)) SET_PLAYER_PARACHUTE_TINT_INDEX(playerID, iTint) SET_PLAYER_PARACHUTE_MODEL_OVERRIDE(playerID, ENUM_TO_INT(eModelOverride)) ELSE PRINTLN("SET_PLAYER_PARACHUTE_CANOPY - Setting tint index 0") SET_PLAYER_PARACHUTE_TINT_INDEX(playerID, 0) CLEAR_PLAYER_PARACHUTE_MODEL_OVERRIDE(playerID) ENDIF ENDPROC /// PURPOSE: Helper function to consolidate tint index and model override calls for reserve parachute canopies. /// PROC SET_PLAYER_RESERVE_PARACHUTE_CANOPY(PLAYER_INDEX playerID, INT iCanopyIndex, PARACHUTE_CANOPY_TYPE eCanopyType = PARACHUTE_CANOPY_STANDARD) MODEL_NAMES eModelOverride INT iTint IF GET_PARACHUTE_MODEL_AND_TINT_FROM_CANOPY_INDEX(iCanopyIndex, eCanopyType, eModelOverride, iTint) PRINTLN("SET_PLAYER_RESERVE_PARACHUTE_CANOPY - Setting tint index ", iTint, " for model ", GET_MODEL_NAME_FOR_DEBUG(eModelOverride)) SET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(playerID, iTint) SET_PLAYER_RESERVE_PARACHUTE_MODEL_OVERRIDE(playerID, ENUM_TO_INT(eModelOverride)) ELSE PRINTLN("SET_PLAYER_RESERVE_PARACHUTE_CANOPY - Setting tint index 0") SET_PLAYER_RESERVE_PARACHUTE_TINT_INDEX(playerID, 0) CLEAR_PLAYER_RESERVE_PARACHUTE_MODEL_OVERRIDE(playerID) ENDIF ENDPROC /// PURPOSE: Turns on the reserve parachute for the a player. /// NOTE: Set iTint to -1 to use the last purchased chute index. PROC GIVE_RESERVE_PARACHUTE_TO_PLAYER(INT iTint = -1, BOOL bUpdateSavedTint = FALSE) IF NETWORK_IS_GAME_IN_PROGRESS() IF iTint = -1 iTint = GET_PACKED_STAT_INT(PACKED_MP_STAT_RESERVE_PARACHUTE_TINT) ELIF bUpdateSavedTint SET_PACKED_STAT_INT(PACKED_MP_STAT_RESERVE_PARACHUTE_TINT, iTint) ENDIF ENDIF SET_PLAYER_HAS_RESERVE_PARACHUTE(PLAYER_ID()) SET_PLAYER_RESERVE_PARACHUTE_CANOPY(PLAYER_ID(), iTint) ENDPROC FUNC BOOL HAS_PED_WEAPON_GOT_A_SCOPE(PED_INDEX pedID, WEAPON_TYPE eWeapon) IF NOT IS_PED_INJURED(pedID) IF HAS_PED_GOT_WEAPON(pedID, eWeapon) // Check pre-defined scopes IF HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_MACRO) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_MACRO_02) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_SMALL) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_SMALL_02) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_MEDIUM) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_LARGE) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_AT_SCOPE_MAX) OR HAS_PED_GOT_WEAPON_COMPONENT(pedID, eWeapon, WEAPONCOMPONENT_DLC_AT_SCOPE_LARGE_FIXED_ZOOM) RETURN TRUE ENDIF // Check DLC components INT iDLCIndex INT iComp scrShopWeaponData weaponData scrShopWeaponComponentData compData iDLCIndex = GET_DLC_WEAPON_DATA_FOR_WEAPON_TYPE(eWeapon, weaponData) IF iDLCIndex != -1 REPEAT GET_NUM_DLC_WEAPON_COMPONENTS(iDLCIndex) iComp IF GET_DLC_WEAPON_COMPONENT_DATA(iDLCIndex, iComp, compData) IF compData.ModType = HASH("WAPScop") RETURN TRUE ENDIF ENDIF ENDREPEAT ENDIF ENDIF ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Check if WEAPON_TYPE is valid FUNC BOOL IS_MP_WEAPONTYPE_VALID(WEAPON_TYPE eWeaponType) SWITCH eWeaponType CASE WEAPONTYPE_PISTOL CASE WEAPONTYPE_COMBATPISTOL CASE WEAPONTYPE_APPISTOL CASE WEAPONTYPE_MICROSMG CASE WEAPONTYPE_SMG CASE WEAPONTYPE_ASSAULTRIFLE CASE WEAPONTYPE_CARBINERIFLE CASE WEAPONTYPE_ADVANCEDRIFLE CASE WEAPONTYPE_MG CASE WEAPONTYPE_COMBATMG CASE WEAPONTYPE_PUMPSHOTGUN CASE WEAPONTYPE_SAWNOFFSHOTGUN CASE WEAPONTYPE_ASSAULTSHOTGUN CASE WEAPONTYPE_SNIPERRIFLE CASE WEAPONTYPE_HEAVYSNIPER CASE WEAPONTYPE_GRENADELAUNCHER CASE WEAPONTYPE_RPG CASE WEAPONTYPE_MINIGUN CASE WEAPONTYPE_GRENADE CASE WEAPONTYPE_SMOKEGRENADE CASE WEAPONTYPE_STICKYBOMB CASE WEAPONTYPE_MOLOTOV CASE WEAPONTYPE_FLARE CASE WEAPONTYPE_KNIFE CASE WEAPONTYPE_NIGHTSTICK CASE WEAPONTYPE_HAMMER CASE WEAPONTYPE_DLC_PISTOL50 CASE WEAPONTYPE_DLC_ASSAULTSMG CASE WEAPONTYPE_DLC_HEAVYRIFLE CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN CASE WEAPONTYPE_DLC_ASSAULTMG CASE WEAPONTYPE_DLC_ASSAULTSNIPER CASE WEAPONTYPE_DLC_SPECIALCARBINE CASE WEAPONTYPE_DLC_BOTTLE CASE WEAPONTYPE_DLC_BULLPUPRIFLE CASE WEAPONTYPE_DLC_HEAVYPISTOL CASE WEAPONTYPE_DLC_SNSPISTOL CASE WEAPONTYPE_DLC_DAGGER CASE WEAPONTYPE_DLC_VINTAGEPISTOL CASE WEAPONTYPE_DLC_GUSENBERG CASE WEAPONTYPE_DLC_FLAREGUN CASE WEAPONTYPE_DLC_FIREWORK CASE WEAPONTYPE_DLC_MUSKET CASE WEAPONTYPE_DLC_AMRIFLE CASE WEAPONTYPE_DLC_HEAVYSHOTGUN CASE WEAPONTYPE_DLC_MARKSMANRIFLE CASE WEAPONTYPE_DLC_HOMINGLAUNCHER CASE WEAPONTYPE_DLC_PROXMINE CASE WEAPONTYPE_DLC_SNOWBALL CASE WEAPONTYPE_DLC_COMBATPDW CASE WEAPONTYPE_DLC_KNUCKLE CASE WEAPONTYPE_DLC_MARKSMANPISTOL CASE WEAPONTYPE_DLC_HATCHET CASE WEAPONTYPE_DLC_COMPACTRIFLE CASE WEAPONTYPE_DLC_DBSHOTGUN CASE WEAPONTYPE_DLC_MACHETE CASE WEAPONTYPE_DLC_MACHINEPISTOL CASE WEAPONTYPE_DLC_FLASHLIGHT CASE WEAPONTYPE_DLC_REVOLVER CASE WEAPONTYPE_DLC_SWITCHBLADE CASE WEAPONTYPE_PETROLCAN CASE WEAPONTYPE_BAT CASE WEAPONTYPE_CROWBAR CASE WEAPONTYPE_GOLFCLUB CASE WEAPONTYPE_DLC_AUTOSHOTGUN CASE WEAPONTYPE_DLC_MINISMG CASE WEAPONTYPE_DLC_COMPACTLAUNCHER CASE WEAPONTYPE_DLC_BATTLEAXE CASE WEAPONTYPE_DLC_PIPEBOMB CASE WEAPONTYPE_DLC_POOLCUE CASE WEAPONTYPE_DLC_WRENCH CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 CASE WEAPONTYPE_DLC_COMBATMG_MK2 CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 CASE WEAPONTYPE_DLC_PISTOL_MK2 CASE WEAPONTYPE_DLC_SMG_MK2 CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 CASE WEAPONTYPE_DLC_REVOLVER_MK2 CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 CASE WEAPONTYPE_DLC_DOUBLEACTION CASE WEAPONTYPE_DLC_STONE_HATCHET CASE WEAPONTYPE_DLC_RAYPISTOL CASE WEAPONTYPE_DLC_RAYCARBINE CASE WEAPONTYPE_DLC_RAYMINIGUN CASE WEAPONTYPE_DLC_NAVYREVOLVER CASE WEAPONTYPE_DLC_CERAMICPISTOL #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON CASE WEAPONTYPE_DLC_POLICERIFLE #ENDIF CASE WEAPONTYPE_DLC_GADGETPISTOL CASE WEAPONTYPE_DLC_MILITARYRIFLE CASE WEAPONTYPE_DLC_COMBATSHOTGUN CASE WEAPONTYPE_DLC_EMPLAUNCHER CASE WEAPONTYPE_DLC_FERTILIZERCAN CASE WEAPONTYPE_DLC_STUNGUNG_MP #IF FEATURE_DLC_1_2022 //CASE WEAPONTYPE_DLC_METALDETECTOR CASE WEAPONTYPE_DLC_TACTICALRIFLE CASE WEAPONTYPE_DLC_PRECISIONRIFLE #ENDIF RETURN TRUE BREAK ENDSWITCH RETURN FALSE ENDFUNC /// PURPOSE: /// Gets the packed stat for hide/show weapon /// remember to update RESET_CUSTOM_WEAPON_LOADOUT_STATS /// ALWAYS CHECK IS_MP_WEAPONTYPE_VALID before calling this FUNC STATS_PACKED GET_WEAPON_HIDE_PACKED_STAT(WEAPON_TYPE eWeaponType) SWITCH eWeaponType CASE WEAPONTYPE_PISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_1 BREAK CASE WEAPONTYPE_COMBATPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_2 BREAK CASE WEAPONTYPE_APPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_3 BREAK CASE WEAPONTYPE_SMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_4 BREAK CASE WEAPONTYPE_ASSAULTRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_5 BREAK CASE WEAPONTYPE_CARBINERIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_6 BREAK CASE WEAPONTYPE_ADVANCEDRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_7 BREAK CASE WEAPONTYPE_MG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_8 BREAK CASE WEAPONTYPE_COMBATMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_9 BREAK CASE WEAPONTYPE_PUMPSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_10 BREAK CASE WEAPONTYPE_SAWNOFFSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_11 BREAK CASE WEAPONTYPE_ASSAULTSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_12 BREAK CASE WEAPONTYPE_SNIPERRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_13 BREAK CASE WEAPONTYPE_GRENADELAUNCHER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_14 BREAK CASE WEAPONTYPE_RPG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_15 BREAK CASE WEAPONTYPE_MINIGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_16 BREAK CASE WEAPONTYPE_GRENADE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_17 BREAK CASE WEAPONTYPE_SMOKEGRENADE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_18 BREAK CASE WEAPONTYPE_STICKYBOMB RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_19 BREAK CASE WEAPONTYPE_MOLOTOV RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_20 BREAK CASE WEAPONTYPE_FLARE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_21 BREAK CASE WEAPONTYPE_KNIFE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_22 BREAK CASE WEAPONTYPE_NIGHTSTICK RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_23 BREAK CASE WEAPONTYPE_HAMMER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_24 BREAK CASE WEAPONTYPE_DLC_PISTOL50 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_25 BREAK CASE WEAPONTYPE_DLC_ASSAULTSMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_26 BREAK CASE WEAPONTYPE_DLC_HEAVYRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_27 BREAK CASE WEAPONTYPE_DLC_BULLPUPSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_28 BREAK CASE WEAPONTYPE_DLC_ASSAULTMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_29 BREAK CASE WEAPONTYPE_DLC_ASSAULTSNIPER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_30 BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_31 BREAK CASE WEAPONTYPE_DLC_BOTTLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_32 BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_33 BREAK CASE WEAPONTYPE_DLC_HEAVYPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_34 BREAK CASE WEAPONTYPE_DLC_SNSPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_35 BREAK CASE WEAPONTYPE_DLC_DAGGER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_36 BREAK CASE WEAPONTYPE_DLC_VINTAGEPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_37 BREAK CASE WEAPONTYPE_DLC_GUSENBERG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_38 BREAK CASE WEAPONTYPE_DLC_FLAREGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_39 BREAK CASE WEAPONTYPE_DLC_FIREWORK RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_40 BREAK CASE WEAPONTYPE_DLC_MUSKET RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_41 BREAK CASE WEAPONTYPE_DLC_AMRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_42 BREAK CASE WEAPONTYPE_DLC_HEAVYSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_43 BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_44 BREAK CASE WEAPONTYPE_DLC_HOMINGLAUNCHER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_45 BREAK CASE WEAPONTYPE_DLC_PROXMINE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_46 BREAK CASE WEAPONTYPE_DLC_SNOWBALL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_47 BREAK CASE WEAPONTYPE_DLC_COMBATPDW RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_48 BREAK CASE WEAPONTYPE_DLC_KNUCKLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_49 BREAK CASE WEAPONTYPE_DLC_MARKSMANPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_50 BREAK CASE WEAPONTYPE_DLC_HATCHET RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_51 BREAK CASE WEAPONTYPE_DLC_COMPACTRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_52 BREAK CASE WEAPONTYPE_DLC_DBSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_53 BREAK CASE WEAPONTYPE_DLC_MACHETE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_54 BREAK CASE WEAPONTYPE_DLC_MACHINEPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_55 BREAK CASE WEAPONTYPE_DLC_FLASHLIGHT RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_56 BREAK CASE WEAPONTYPE_DLC_REVOLVER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_57 BREAK CASE WEAPONTYPE_DLC_SWITCHBLADE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_58 BREAK CASE WEAPONTYPE_MICROSMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_59 BREAK CASE WEAPONTYPE_HEAVYSNIPER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_60 BREAK CASE WEAPONTYPE_PETROLCAN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_61 BREAK CASE WEAPONTYPE_GOLFCLUB RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_62 BREAK CASE WEAPONTYPE_BAT RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_63 BREAK CASE WEAPONTYPE_CROWBAR RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64 BREAK CASE WEAPONTYPE_DLC_AUTOSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_65 BREAK CASE WEAPONTYPE_DLC_BATTLEAXE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_66 BREAK CASE WEAPONTYPE_DLC_COMPACTLAUNCHER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_67 BREAK CASE WEAPONTYPE_DLC_MINISMG RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_68 BREAK CASE WEAPONTYPE_DLC_PIPEBOMB RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_69 BREAK CASE WEAPONTYPE_DLC_POOLCUE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_70 BREAK CASE WEAPONTYPE_DLC_WRENCH RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_71 BREAK CASE WEAPONTYPE_DLC_PISTOL_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_72 BREAK CASE WEAPONTYPE_DLC_SMG_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_73 BREAK CASE WEAPONTYPE_DLC_HEAVYSNIPER_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_74 BREAK CASE WEAPONTYPE_DLC_COMBATMG_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_75 BREAK CASE WEAPONTYPE_DLC_ASSAULTRIFLE_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_76 BREAK CASE WEAPONTYPE_DLC_CARBINERIFLE_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_77 BREAK CASE WEAPONTYPE_DLC_BULLPUPRIFLE_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_79 BREAK CASE WEAPONTYPE_DLC_MARKSMANRIFLE_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_80 BREAK CASE WEAPONTYPE_DLC_PUMPSHOTGUN_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_81 BREAK CASE WEAPONTYPE_DLC_REVOLVER_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_82 BREAK CASE WEAPONTYPE_DLC_SNSPISTOL_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_83 BREAK CASE WEAPONTYPE_DLC_SPECIALCARBINE_MK2 RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_84 BREAK CASE WEAPONTYPE_DLC_DOUBLEACTION RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_78 BREAK CASE WEAPONTYPE_DLC_STONE_HATCHET RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_85 BREAK CASE WEAPONTYPE_DLC_RAYPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_86 BREAK CASE WEAPONTYPE_DLC_RAYCARBINE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_87 BREAK CASE WEAPONTYPE_DLC_RAYMINIGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_88 BREAK CASE WEAPONTYPE_DLC_CERAMICPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_89 BREAK CASE WEAPONTYPE_DLC_NAVYREVOLVER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_90 BREAK #IF FEATURE_COPS_N_CROOKS CASE WEAPONTYPE_DLC_BATON RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_91 BREAK CASE WEAPONTYPE_DLC_POLICERIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_92 BREAK #ENDIF CASE WEAPONTYPE_DLC_MILITARYRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_93 BREAK CASE WEAPONTYPE_DLC_GADGETPISTOL RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_94 BREAK CASE WEAPONTYPE_DLC_COMBATSHOTGUN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_95 BREAK #IF FEATURE_FIXER CASE WEAPONTYPE_DLC_EMPLAUNCHER RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_96 BREAK CASE WEAPONTYPE_DLC_FERTILIZERCAN RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_97 BREAK CASE WEAPONTYPE_DLC_STUNGUNG_MP RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_98 BREAK #ENDIF #IF FEATURE_DLC_1_2022 CASE WEAPONTYPE_DLC_TACTICALRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_99 BREAK CASE WEAPONTYPE_DLC_PRECISIONRIFLE RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_100 BREAK #ENDIF ENDSWITCH SCRIPT_ASSERT("GET_WEAPON_HIDE_PACKED_STAT - Invalid eWeaponType passed in - Tell Ata Tabrizi") PRINTLN("GET_WEAPON_HIDE_PACKED_STAT - Invalid eWeaponType: ", eWeaponType) RETURN PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_0 ENDFUNC /// PURPOSE: /// Check if hide all option is active for weapon group FUNC BOOL IS_WEAPON_TYPE_HIDE_ALL_ACTIVE(WEAPON_GROUP eWeaponGroup,WEAPON_TYPE eWeaponType) IF eWeaponType = WEAPONTYPE_DLC_KNUCKLE IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF IF eWeaponType = WEAPONTYPE_DLC_MUSKET IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN) RETURN TRUE ELSE RETURN FALSE ENDIF ENDIF SWITCH eWeaponGroup CASE WEAPONGROUP_MELEE IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_PISTOL IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_PISTOL) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_HEAVY IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_HEAVY) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_SNIPER IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SNIPER) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_SHOTGUN IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_THROWN IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_MG CASE WEAPONGROUP_SMG IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SMG) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK CASE WEAPONGROUP_RIFLE IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_RIFLE) RETURN TRUE ELSE RETURN FALSE ENDIF BREAK ENDSWITCH IF eWeaponType = WEAPONTYPE_PETROLCAN // spacial case for jerry can AND GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN) RETURN TRUE ENDIF RETURN FALSE ENDFUNC /// PURPOSE: /// Reset packed stat for custom weapon loadout PROC RESET_CUSTOM_WEAPON_LOADOUT_STATS() INT iStart, iEnd, iLoop//, iStartBiker, iEndBiker, iStartGunrunning, iEndGunrunning iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_0) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_63) FOR iLoop = iStart TO iEnd SET_PACKED_STAT_BOOL(INT_TO_ENUM(STATS_PACKED,iLoop), FALSE) ENDFOR SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64, FALSE) // Reset biker pack weapons iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_65) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_71) FOR iLoop = iStart TO iEnd SET_PACKED_STAT_BOOL(INT_TO_ENUM(STATS_PACKED,iLoop), FALSE) ENDFOR // Reset gunrunnning pack weapons iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_72) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_77) FOR iLoop = iStart TO iEnd SET_PACKED_STAT_BOOL(INT_TO_ENUM(STATS_PACKED,iLoop), FALSE) ENDFOR // Reset Smuggler pack weapon SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_78, FALSE) // Reset gang ops pack weapon iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_79) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_84) FOR iLoop = iStart TO iEnd SET_PACKED_STAT_BOOL(INT_TO_ENUM(STATS_PACKED,iLoop), FALSE) ENDFOR // Reset Business battle pack weapon SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_85, FALSE) // Reset Arena wars pack weapon SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_86, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_87, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_88, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_89, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_90, FALSE) #IF FEATURE_COPS_N_CROOKS SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_91, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_92, FALSE) #ENDIF SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_93, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_94, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_95, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_96, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_97, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_98, FALSE) #IF FEATURE_DLC_1_2022 SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_99, FALSE) SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_100, FALSE) #ENDIF // Reset hide all options iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN) FOR iLoop = iStart TO iEnd SET_PACKED_STAT_BOOL(INT_TO_ENUM(STATS_PACKED,iLoop), FALSE) ENDFOR ENDPROC PROC PRINT_WEAPON_LOADOUT_PACKED_STAT_INFO() INT iStart, iEnd, iLoop, iStartBiker, iEndBiker, iStartGunrunning, iEndGunrunning iStart = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_0) iEnd = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_63) INT iNum = 0 FOR iLoop = iStart TO iEnd PRINTLN("PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_",iNum, ":", INT_TO_ENUM(STATS_PACKED, iLoop), ", ", GET_BOOL_PACKED_STAT_KEY(INT_TO_ENUM(STATS_PACKED, iLoop)), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(INT_TO_ENUM(STATS_PACKED, iLoop))) iNum++ ENDFOR // print biker pack weapons iStartBiker = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_65) iEndBiker = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_71) iNum = 65 FOR iLoop = iStartBiker TO iEndBiker PRINTLN("PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_",iNum, ":", INT_TO_ENUM(STATS_PACKED, iLoop), ", ", GET_BOOL_PACKED_STAT_KEY(INT_TO_ENUM(STATS_PACKED, iLoop)), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(INT_TO_ENUM(STATS_PACKED, iLoop))) iNum++ ENDFOR // print gunrunning pack weapons iStartGunrunning = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_72) iEndGunrunning = ENUM_TO_INT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_77) iNum = 72 FOR iLoop = iStartGunrunning TO iEndGunrunning PRINTLN("PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_",iNum, ":", INT_TO_ENUM(STATS_PACKED, iLoop), ", ", GET_BOOL_PACKED_STAT_KEY(INT_TO_ENUM(STATS_PACKED, iLoop)), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(INT_TO_ENUM(STATS_PACKED, iLoop))) iNum++ ENDFOR PRINTLN("PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64:",PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_L_HIDE_WEAPON_64)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_MELEE)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_PISTOL :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_PISTOL, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_PISTOL), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_PISTOL)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SMG :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SMG, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SMG), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SMG)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_RIFLE :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_RIFLE, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_RIFLE), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_RIFLE)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SHOTGUN)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SNIPER :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SNIPER, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SNIPER), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_SNIPER)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_HEAVY :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_HEAVY, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_HEAVY), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_HEAVY)) PRINTLN("PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN :",PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN, ", ", GET_BOOL_PACKED_STAT_KEY(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN), ", ", GET_BOOL_PACKED_STAT_BITSHIFT(PACKED_MP_BOOL_CUSTOM_HIDE_ALL_THROWN)) ENDPROC