36584 lines
1.8 MiB
Plaintext
Executable File
36584 lines
1.8 MiB
Plaintext
Executable File
//////////////////////////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// MISSION NAME : ped_component_public.sch //
|
|
// AUTHOR : Kenneth Ross //
|
|
// DESCRIPTION : Handles all the component related procs such as browsing, //
|
|
// buying, removing, and changing. //
|
|
// //
|
|
//////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
USING "rage_builtins.sch"
|
|
USING "globals.sch"
|
|
USING "commands_ped.sch"
|
|
|
|
USING "ped_component_data.sch"
|
|
USING "stats_public.sch"
|
|
USING "Net_Scoring_Common.sch"
|
|
|
|
USING "screens_header_private.sch"
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
FUNC STRING DEBUG_get_string_from_namehash(INT iNameHash)
|
|
|
|
SWITCH iNameHash
|
|
CASE HASH("FM_Ind_M_Tshirt_000") RETURN "FM_Ind_M_Tshirt_000" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_001") RETURN "FM_Ind_M_Tshirt_001" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_002") RETURN "FM_Ind_M_Tshirt_002" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_003") RETURN "FM_Ind_M_Tshirt_003" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_004") RETURN "FM_Ind_M_Tshirt_004" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_005") RETURN "FM_Ind_M_Tshirt_005" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_007") RETURN "FM_Ind_M_Tshirt_007" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_008") RETURN "FM_Ind_M_Tshirt_008" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_009") RETURN "FM_Ind_M_Tshirt_009" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_010") RETURN "FM_Ind_M_Tshirt_010" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_011") RETURN "FM_Ind_M_Tshirt_011" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_012") RETURN "FM_Ind_M_Tshirt_012" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_013") RETURN "FM_Ind_M_Tshirt_013" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_014") RETURN "FM_Ind_M_Tshirt_014" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_015") RETURN "FM_Ind_M_Tshirt_015" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_017") RETURN "FM_Ind_M_Tshirt_017" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_019") RETURN "FM_Ind_M_Tshirt_019" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_020") RETURN "FM_Ind_M_Tshirt_020" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_021") RETURN "FM_Ind_M_Tshirt_021" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_022") RETURN "FM_Ind_M_Tshirt_022" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_023") RETURN "FM_Ind_M_Tshirt_023" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_024") RETURN "FM_Ind_M_Tshirt_024" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_025") RETURN "FM_Ind_M_Tshirt_025" BREAK
|
|
CASE HASH("FM_Ind_M_Tshirt_026") RETURN "FM_Ind_M_Tshirt_026" BREAK
|
|
CASE HASH("FM_Ind_M_Award_000") RETURN "FM_Ind_M_Award_000" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_000") RETURN "FM_Ind_F_Tshirt_000" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_001") RETURN "FM_Ind_F_Tshirt_001" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_002") RETURN "FM_Ind_F_Tshirt_002" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_003") RETURN "FM_Ind_F_Tshirt_003" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_004") RETURN "FM_Ind_F_Tshirt_004" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_005") RETURN "FM_Ind_F_Tshirt_005" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_007") RETURN "FM_Ind_F_Tshirt_007" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_008") RETURN "FM_Ind_F_Tshirt_008" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_009") RETURN "FM_Ind_F_Tshirt_009" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_010") RETURN "FM_Ind_F_Tshirt_010" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_011") RETURN "FM_Ind_F_Tshirt_011" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_012") RETURN "FM_Ind_F_Tshirt_012" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_013") RETURN "FM_Ind_F_Tshirt_013" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_014") RETURN "FM_Ind_F_Tshirt_014" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_015") RETURN "FM_Ind_F_Tshirt_015" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_017") RETURN "FM_Ind_F_Tshirt_017" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_019") RETURN "FM_Ind_F_Tshirt_019" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_020") RETURN "FM_Ind_F_Tshirt_020" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_021") RETURN "FM_Ind_F_Tshirt_021" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_022") RETURN "FM_Ind_F_Tshirt_022" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_023") RETURN "FM_Ind_F_Tshirt_023" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_024") RETURN "FM_Ind_F_Tshirt_024" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_025") RETURN "FM_Ind_F_Tshirt_025" BREAK
|
|
CASE HASH("FM_Ind_F_Tshirt_026") RETURN "FM_Ind_F_Tshirt_026" BREAK
|
|
CASE HASH("FM_Ind_F_Award_000") RETURN "FM_Ind_F_Award_000" BREAK
|
|
ENDSWITCH
|
|
SWITCH iNameHash
|
|
CASE HASH("ARM_LEFT_1") RETURN "ARM_LEFT_1" BREAK
|
|
CASE HASH("ARM_LEFT_2") RETURN "ARM_LEFT_2" BREAK
|
|
CASE HASH("ARM_LEFT_ELBOW") RETURN "ARM_LEFT_ELBOW" BREAK
|
|
CASE HASH("ARM_LEFT_FULL_SLEEVE") RETURN "ARM_LEFT_FULL_SLEEVE" BREAK
|
|
CASE HASH("ARM_LEFT_LOWER_INNER") RETURN "ARM_LEFT_LOWER_INNER" BREAK
|
|
CASE HASH("ARM_LEFT_LOWER_OUTER") RETURN "ARM_LEFT_LOWER_OUTER" BREAK
|
|
CASE HASH("ARM_LEFT_LOWER_SLEEVE") RETURN "ARM_LEFT_LOWER_SLEEVE" BREAK
|
|
CASE HASH("ARM_LEFT_SHORT_SLEEVE") RETURN "ARM_LEFT_SHORT_SLEEVE" BREAK
|
|
CASE HASH("ARM_LEFT_SHOULDER") RETURN "ARM_LEFT_SHOULDER" BREAK
|
|
CASE HASH("ARM_LEFT_SLEEVE") RETURN "ARM_LEFT_SLEEVE" BREAK
|
|
CASE HASH("ARM_LEFT_UPPER_BICEP") RETURN "ARM_LEFT_UPPER_BICEP" BREAK
|
|
CASE HASH("ARM_LEFT_UPPER_SIDE") RETURN "ARM_LEFT_UPPER_SIDE" BREAK
|
|
CASE HASH("ARM_LEFT_UPPER_SLEEVE") RETURN "ARM_LEFT_UPPER_SLEEVE" BREAK
|
|
CASE HASH("ARM_LEFT_UPPER_TRICEP") RETURN "ARM_LEFT_UPPER_TRICEP" BREAK
|
|
CASE HASH("ARM_LEFT_WRIST") RETURN "ARM_LEFT_WRIST" BREAK
|
|
CASE HASH("ARM_RIGHT") RETURN "ARM_RIGHT" BREAK
|
|
CASE HASH("ARM_RIGHT_ELBOW") RETURN "ARM_RIGHT_ELBOW" BREAK
|
|
CASE HASH("ARM_RIGHT_FULL_SLEEVE") RETURN "ARM_RIGHT_FULL_SLEEVE" BREAK
|
|
CASE HASH("ARM_RIGHT_LOWER") RETURN "ARM_RIGHT_LOWER" BREAK
|
|
CASE HASH("ARM_RIGHT_LOWER_INNER") RETURN "ARM_RIGHT_LOWER_INNER" BREAK
|
|
CASE HASH("ARM_RIGHT_LOWER_OUTER") RETURN "ARM_RIGHT_LOWER_OUTER" BREAK
|
|
CASE HASH("ARM_RIGHT_LOWER_SLEEVE") RETURN "ARM_RIGHT_LOWER_SLEEVE" BREAK
|
|
CASE HASH("ARM_RIGHT_SHORT_SLEEVE") RETURN "ARM_RIGHT_SHORT_SLEEVE" BREAK
|
|
CASE HASH("ARM_RIGHT_SHOULDER") RETURN "ARM_RIGHT_SHOULDER" BREAK
|
|
CASE HASH("ARM_RIGHT_UPPER_BICEP") RETURN "ARM_RIGHT_UPPER_BICEP" BREAK
|
|
CASE HASH("ARM_RIGHT_UPPER_SIDE") RETURN "ARM_RIGHT_UPPER_SIDE" BREAK
|
|
CASE HASH("ARM_RIGHT_UPPER_SLEEVE") RETURN "ARM_RIGHT_UPPER_SLEEVE" BREAK
|
|
CASE HASH("ARM_RIGHT_UPPER_TRICEP") RETURN "ARM_RIGHT_UPPER_TRICEP" BREAK
|
|
CASE HASH("ARM_RIGHT_WRIST") RETURN "ARM_RIGHT_WRIST" BREAK
|
|
CASE HASH("BACK_1") RETURN "BACK_1" BREAK
|
|
CASE HASH("BACK_2") RETURN "BACK_2" BREAK
|
|
CASE HASH("BACK_3") RETURN "BACK_3" BREAK
|
|
CASE HASH("BACK_4") RETURN "BACK_4" BREAK
|
|
CASE HASH("BACK_FULL") RETURN "BACK_FULL" BREAK
|
|
CASE HASH("BACK_FULL_ARMS_FULL_BACK") RETURN "BACK_FULL_ARMS_FULL_BACK" BREAK
|
|
CASE HASH("BACK_FULL_SHORT") RETURN "BACK_FULL_SHORT" BREAK
|
|
CASE HASH("BACK_LOWER") RETURN "BACK_LOWER" BREAK
|
|
CASE HASH("BACK_LOWER_LEFT") RETURN "BACK_LOWER_LEFT" BREAK
|
|
CASE HASH("BACK_LOWER_MID") RETURN "BACK_LOWER_MID" BREAK
|
|
CASE HASH("BACK_LOWER_RIGHT") RETURN "BACK_LOWER_RIGHT" BREAK
|
|
CASE HASH("BACK_MID") RETURN "BACK_MID" BREAK
|
|
CASE HASH("BACK_UPPER") RETURN "BACK_UPPER" BREAK
|
|
CASE HASH("BACK_UPPER_LEFT") RETURN "BACK_UPPER_LEFT" BREAK
|
|
CASE HASH("BACK_UPPER_RIGHT") RETURN "BACK_UPPER_RIGHT" BREAK
|
|
CASE HASH("CHEST_FULL") RETURN "CHEST_FULL" BREAK
|
|
CASE HASH("CHEST_LEFT") RETURN "CHEST_LEFT" BREAK
|
|
CASE HASH("CHEST_LEFT_UPPER") RETURN "CHEST_LEFT_UPPER" BREAK
|
|
CASE HASH("CHEST_MID") RETURN "CHEST_MID" BREAK
|
|
CASE HASH("CHEST_RIGHT") RETURN "CHEST_RIGHT" BREAK
|
|
CASE HASH("CHEST_STOM") RETURN "CHEST_STOM" BREAK
|
|
CASE HASH("CHEST_STOM_FULL") RETURN "CHEST_STOM_FULL" BREAK
|
|
CASE HASH("CHEST_UPPER_LEFT") RETURN "CHEST_UPPER_LEFT" BREAK
|
|
CASE HASH("CHEST_UPPER_RIGHT") RETURN "CHEST_UPPER_RIGHT" BREAK
|
|
CASE HASH("crewLogo") RETURN "crewLogo" BREAK
|
|
CASE HASH("FACE") RETURN "FACE" BREAK
|
|
CASE HASH("FOOT_LEFT") RETURN "FOOT_LEFT" BREAK
|
|
CASE HASH("FOOT_RIGHT") RETURN "FOOT_RIGHT" BREAK
|
|
CASE HASH("hairOverlay") RETURN "hairOverlay" BREAK
|
|
CASE HASH("HAND_LEFT") RETURN "HAND_LEFT" BREAK
|
|
CASE HASH("HAND_RIGHT") RETURN "HAND_RIGHT" BREAK
|
|
CASE HASH("HEAD_LEFT") RETURN "HEAD_LEFT" BREAK
|
|
CASE HASH("HEAD_RIGHT") RETURN "HEAD_RIGHT" BREAK
|
|
CASE HASH("LEG_LEFT") RETURN "LEG_LEFT" BREAK
|
|
CASE HASH("LEG_LEFT_ANKLE") RETURN "LEG_LEFT_ANKLE" BREAK
|
|
CASE HASH("LEG_LEFT_CALF") RETURN "LEG_LEFT_CALF" BREAK
|
|
CASE HASH("LEG_LEFT_FULL_BACK") RETURN "LEG_LEFT_FULL_BACK" BREAK
|
|
CASE HASH("LEG_LEFT_FULL_FRONT") RETURN "LEG_LEFT_FULL_FRONT" BREAK
|
|
CASE HASH("LEG_LEFT_FULL_SLEEVE") RETURN "LEG_LEFT_FULL_SLEEVE" BREAK
|
|
CASE HASH("LEG_LEFT_KNEE") RETURN "LEG_LEFT_KNEE" BREAK
|
|
CASE HASH("LEG_LEFT_LOWER_BACK") RETURN "LEG_LEFT_LOWER_BACK" BREAK
|
|
CASE HASH("LEG_LEFT_LOWER_FRONT") RETURN "LEG_LEFT_LOWER_FRONT" BREAK
|
|
CASE HASH("LEG_LEFT_LOWER_INNER") RETURN "LEG_LEFT_LOWER_INNER" BREAK
|
|
CASE HASH("LEG_LEFT_LOWER_OUTER") RETURN "LEG_LEFT_LOWER_OUTER" BREAK
|
|
CASE HASH("LEG_LEFT_LOWER_SLEEVE") RETURN "LEG_LEFT_LOWER_SLEEVE" BREAK
|
|
CASE HASH("LEG_LEFT_UPPER_BACK") RETURN "LEG_LEFT_UPPER_BACK" BREAK
|
|
CASE HASH("LEG_LEFT_UPPER_FRONT") RETURN "LEG_LEFT_UPPER_FRONT" BREAK
|
|
CASE HASH("LEG_LEFT_UPPER_INNER") RETURN "LEG_LEFT_UPPER_INNER" BREAK
|
|
CASE HASH("LEG_LEFT_UPPER_OUTER") RETURN "LEG_LEFT_UPPER_OUTER" BREAK
|
|
CASE HASH("LEG_LEFT_UPPER_SLEEVE") RETURN "LEG_LEFT_UPPER_SLEEVE" BREAK
|
|
CASE HASH("LEG_LEG") RETURN "LEG_LEG" BREAK
|
|
CASE HASH("LEG_RIGHT") RETURN "LEG_RIGHT" BREAK
|
|
CASE HASH("LEG_RIGHT_ANKLE") RETURN "LEG_RIGHT_ANKLE" BREAK
|
|
CASE HASH("LEG_RIGHT_CALF") RETURN "LEG_RIGHT_CALF" BREAK
|
|
CASE HASH("LEG_RIGHT_FULL_BACK") RETURN "LEG_RIGHT_FULL_BACK" BREAK
|
|
CASE HASH("LEG_RIGHT_FULL_FRONT") RETURN "LEG_RIGHT_FULL_FRONT" BREAK
|
|
CASE HASH("LEG_RIGHT_FULL_SLEEVE") RETURN "LEG_RIGHT_FULL_SLEEVE" BREAK
|
|
CASE HASH("LEG_RIGHT_KNEE") RETURN "LEG_RIGHT_KNEE" BREAK
|
|
CASE HASH("LEG_RIGHT_LOWER_BACK") RETURN "LEG_RIGHT_LOWER_BACK" BREAK
|
|
CASE HASH("LEG_RIGHT_LOWER_FRONT") RETURN "LEG_RIGHT_LOWER_FRONT" BREAK
|
|
CASE HASH("LEG_RIGHT_LOWER_INNER") RETURN "LEG_RIGHT_LOWER_INNER" BREAK
|
|
CASE HASH("LEG_RIGHT_LOWER_OUTER") RETURN "LEG_RIGHT_LOWER_OUTER" BREAK
|
|
CASE HASH("LEG_RIGHT_LOWER_SLEEVE") RETURN "LEG_RIGHT_LOWER_SLEEVE" BREAK
|
|
CASE HASH("LEG_RIGHT_UPPER_BACK") RETURN "LEG_RIGHT_UPPER_BACK" BREAK
|
|
CASE HASH("LEG_RIGHT_UPPER_FRONT") RETURN "LEG_RIGHT_UPPER_FRONT" BREAK
|
|
CASE HASH("LEG_RIGHT_UPPER_INNER") RETURN "LEG_RIGHT_UPPER_INNER" BREAK
|
|
CASE HASH("LEG_RIGHT_UPPER_OUTER") RETURN "LEG_RIGHT_UPPER_OUTER" BREAK
|
|
CASE HASH("LEG_RIGHT_UPPER_SLEEVE") RETURN "LEG_RIGHT_UPPER_SLEEVE" BREAK
|
|
CASE HASH("NECK_BACK") RETURN "NECK_BACK" BREAK
|
|
CASE HASH("NECK_FRONT") RETURN "NECK_FRONT" BREAK
|
|
CASE HASH("NECK_LEFT") RETURN "NECK_LEFT" BREAK
|
|
CASE HASH("NECK_LEFT_BACK") RETURN "NECK_LEFT_BACK" BREAK
|
|
CASE HASH("NECK_LEFT_FULL") RETURN "NECK_LEFT_FULL" BREAK
|
|
CASE HASH("NECK_RIGHT") RETURN "NECK_RIGHT" BREAK
|
|
CASE HASH("NECK_RIGHT_2") RETURN "NECK_RIGHT_2" BREAK
|
|
CASE HASH("NECK_RIGHT_BACK") RETURN "NECK_RIGHT_BACK" BREAK
|
|
CASE HASH("NECK_RIGHT_FULL") RETURN "NECK_RIGHT_FULL" BREAK
|
|
CASE HASH("SIDE_RIGHT") RETURN "SIDE_RIGHT" BREAK
|
|
CASE HASH("STOMACH_FULL") RETURN "STOMACH_FULL" BREAK
|
|
CASE HASH("STOMACH_LEFT") RETURN "STOMACH_LEFT" BREAK
|
|
CASE HASH("STOMACH_LOWER") RETURN "STOMACH_LOWER" BREAK
|
|
CASE HASH("STOMACH_LOWER_LEFT") RETURN "STOMACH_LOWER_LEFT" BREAK
|
|
CASE HASH("STOMACH_LOWER_RIGHT") RETURN "STOMACH_LOWER_RIGHT" BREAK
|
|
CASE HASH("STOMACH_MID") RETURN "STOMACH_MID" BREAK
|
|
CASE HASH("STOMACH_RIGHT") RETURN "STOMACH_RIGHT" BREAK
|
|
CASE HASH("STOMACH_UPPER") RETURN "STOMACH_UPPER" BREAK
|
|
CASE HASH("STOMACH_UPPER_LEFT") RETURN "STOMACH_UPPER_LEFT" BREAK
|
|
CASE HASH("STOMACH_UPPER_RIGHT") RETURN "STOMACH_UPPER_RIGHT" BREAK
|
|
CASE HASH("TORSO_SIDE_LEFT") RETURN "TORSO_SIDE_LEFT" BREAK
|
|
CASE HASH("TORSO_SIDE_RIGHT") RETURN "TORSO_SIDE_RIGHT" BREAK
|
|
CASE HASH("torsoDecal") RETURN "torsoDecal" BREAK
|
|
ENDSWITCH
|
|
|
|
TEXT_LABEL_63 str = iNameHash
|
|
RETURN GET_STRING_FROM_STRING(str, 0, GET_LENGTH_OF_LITERAL_STRING(str))
|
|
ENDFUNC
|
|
#ENDIF
|
|
|
|
/// PURPOSE: Checks to see if the component item is available for the ped model
|
|
FUNC BOOL IS_PED_COMP_ITEM_AVAILABLE_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
RETURN (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Checks to see if the component item is available for the ped model
|
|
FUNC BOOL IS_PED_COMP_ITEM_AVAILABLE_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
RETURN (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Checks to see if the component item has been used
|
|
FUNC BOOL IS_PED_COMPONENT_ITEM_NEW_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
RETURN (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_NEW_BIT))
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Checks to see if the component item has been used
|
|
FUNC BOOL IS_PED_COMPONENT_ITEM_NEW_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
RETURN (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_NEW_BIT))
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Returns TRUE if the specificed outfit item is the same as the default outfit
|
|
FUNC BOOL IS_PED_COMPONENT_DEFAULT_OUTFIT(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eOutfit)
|
|
|
|
PED_COMP_OUTFIT_DATA_STRUCT sDefaultOutfit = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOtherOutfit = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eOutfit)
|
|
|
|
INT i
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sDefaultOutfit.eItems[i] != sOtherOutfit.eItems[i]
|
|
AND sDefaultOutfit.eItems[i] != DUMMY_PED_COMP
|
|
AND sOtherOutfit.eItems[i] != DUMMY_PED_COMP
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Checks to see if the component item is current for the ped
|
|
/// NOTE: If this command is used in a loop we may run over the script instructions per frame limit
|
|
FUNC BOOL IS_PED_COMP_ITEM_CURRENT_MP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
IF IS_PED_INJURED(ped)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
INT iLastDLCNameItem = g_iLastDLCItemNameHash
|
|
INT iLastDLCLockHash = g_iLastDLCItemLockHash
|
|
|
|
// First check that the ped model can have the component item
|
|
IF NOT(IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// -----------OUTFITS -----------------------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
|
|
INT i, j, k, iLoop
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
|
|
REPEAT 7 iLoop
|
|
SWITCH iLoop
|
|
CASE 0 i = ENUM_TO_INT(COMP_TYPE_BERD) BREAK
|
|
CASE 1 i = ENUM_TO_INT(COMP_TYPE_LEGS) BREAK
|
|
CASE 2 i = ENUM_TO_INT(COMP_TYPE_FEET) BREAK
|
|
CASE 3 i = ENUM_TO_INT(COMP_TYPE_TEETH) BREAK
|
|
CASE 4 i = ENUM_TO_INT(COMP_TYPE_SPECIAL) BREAK
|
|
CASE 5 i = ENUM_TO_INT(COMP_TYPE_JBIB) BREAK
|
|
CASE 6 i = ENUM_TO_INT(COMP_TYPE_PROPGROUP) BREAK
|
|
ENDSWITCH
|
|
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
|
|
// MP OUTFITS ARE ALL ONE PIECE - NO MIX/MATCH ALLOWED
|
|
PRINTLN("IS_PED_COMP_ITEM_CURRENT_MP - Outfit item not current: eType = ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), " eItem = ", sOutfitData.eItems[i])
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
RETURN FALSE
|
|
|
|
// -----------PROPGROUP FOR OUTFIT----------------------------------------
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_PROPGROUP
|
|
|
|
// Grab all the prop data for this outfits propgroup
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[i])
|
|
|
|
// For each item in the propgroup
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
// Find the current item and check to see if it is safe to mix with this outfit
|
|
FOR k = 0 TO PED_COMPONENTS_PROPGROUPS-1
|
|
|
|
// If this prop has the same anchor as the current prop
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k))
|
|
|
|
IF g_sTempCompData[2].ePropPos = INT_TO_ENUM(PED_PROP_POSITION, j)
|
|
IF IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k))
|
|
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k), sOutfitData, g_sTempCompData[2])
|
|
// This component item is not safe to mix with this outfit
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
ENDFOR
|
|
ELSE
|
|
// -------NORMAL ITEM IN OUTFIT -------------------------------------
|
|
// Lookup the current item and check to see if it is safe to mix with this outfit
|
|
eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))
|
|
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), eCurrentItem)
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), eCurrentItem, sOutfitData, g_sTempCompData[2])
|
|
// This component item is not safe to mix with this outfit
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Check the DECL for t-shirt overlays.
|
|
IF ENUM_TO_INT(sOutfitData.eItems[COMP_TYPE_DECL]) != 0 AND ENUM_TO_INT(sOutfitData.eItems[COMP_TYPE_DECL]) != 1849449579 // 1849449579 = "0"
|
|
AND sOutfitData.bUsesTattooDecals
|
|
|
|
IF GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH, g_iPedComponentSlot) != ENUM_TO_INT(sOutfitData.eItems[COMP_TYPE_DECL])
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// None of the items in this outfit are invalid
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
RETURN TRUE
|
|
|
|
// -------PROPGROUPS -----------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
INT i
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
FOR i = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[i])
|
|
//CPRINTLN(DEBUG_PED_COMP, "This prop item is invalid for this group: sPropGroupData.eItems[i]= ", sPropGroupData.eItems[i])
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "None of the prop items in this group are invalid")
|
|
RETURN TRUE
|
|
|
|
// ------------PROPS-----------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
IF GET_PED_PROP_INDEX(ped, g_sTempCompData[1].ePropPos) = g_sTempCompData[1].iDrawable
|
|
AND (GET_PED_PROP_TEXTURE_INDEX(ped, g_sTempCompData[1].ePropPos) = g_sTempCompData[1].iTexture OR g_sTempCompData[1].iDrawable = -1)
|
|
// Prop item is current
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
// Check DLC variant
|
|
IF g_sTempCompData[1].ePropPos = ANCHOR_HEAD
|
|
AND (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
AND GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(g_iLastDLCItemNameHash) > 0
|
|
|
|
INT iAltProp
|
|
INT iRetNameHash, iRetPropEnum, iRetPropPos
|
|
INT iAltPropCount = GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(g_iLastDLCItemNameHash)
|
|
scrShopPedProp propItem
|
|
|
|
REPEAT iAltPropCount iAltProp
|
|
GET_VARIANT_PROP(g_iLastDLCItemNameHash, iAltProp, iRetNameHash, iRetPropEnum, iRetPropPos)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
INIT_SHOP_PED_PROP(propItem)
|
|
GET_SHOP_PED_PROP(iRetNameHash, propItem)
|
|
IF propItem.m_propIndex = GET_PED_PROP_INDEX(ped, g_sTempCompData[1].ePropPos)
|
|
AND propItem.m_textureIndex = GET_PED_PROP_TEXTURE_INDEX(ped, g_sTempCompData[1].ePropPos)
|
|
// Alt prop item is current
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ELSE
|
|
|
|
// ---------NORMAL ITEMS-------------------------------------------
|
|
IF g_sTempCompData[1].iDrawable = GET_PED_DRAWABLE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
AND g_sTempCompData[1].iTexture = GET_PED_TEXTURE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
// Component item is current
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
|
|
// Not current, try dress / non dress version for legs...
|
|
IF eType = COMP_TYPE_LEGS
|
|
|
|
g_iPedComponentDressLegsCheck++
|
|
|
|
IF g_iPedComponentDressLegsCheck = 1
|
|
PED_COMP_NAME_ENUM eReturnLegsItem
|
|
IF IS_ITEM_A_DRESS(ePedModel, COMP_TYPE_JBIB, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB))
|
|
// Check non dress version
|
|
IF GET_PED_COMP_ITEM_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eItem, eReturnLegsItem)
|
|
RETURN IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eReturnLegsItem)
|
|
ENDIF
|
|
ELSE
|
|
// Check dress version
|
|
IF GET_PED_COMP_ITEM_NON_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eItem, eReturnLegsItem)
|
|
RETURN IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eReturnLegsItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
g_iPedComponentDressLegsCheck--
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Checks to see if the component item is current for the ped
|
|
/// NOTE: If this command is used in a loop we may run over the script instructions per frame limit
|
|
FUNC BOOL IS_PED_COMP_ITEM_CURRENT_SP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "IS_PED_COMP_ITEM_CURRENT_SP: eType = ", GET_PED_COMP_TYPE_STRING(eType), " eItem = ", eItem)
|
|
|
|
IF IS_PED_INJURED(ped)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// -----------OUTFITS -----------------------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
|
|
INT i, j, k
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) <> COMP_TYPE_OUTFIT
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) <> COMP_TYPE_PROPS
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
|
|
// -----------PROPGROUP FOR OUTFIT----------------------------------------
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_PROPGROUP
|
|
|
|
// Grab all the prop data for this outfits propgroup
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[i])
|
|
|
|
// For each item in the propgroup
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
// Find the current item and check to see if it is safe to mix with this outfit
|
|
FOR k = 0 TO PED_COMPONENTS_PROPGROUPS-1
|
|
|
|
// If this prop has the same anchor as the current prop
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k))
|
|
|
|
IF g_sTempCompData[2].ePropPos = INT_TO_ENUM(PED_PROP_POSITION, j)
|
|
IF IS_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k))
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, k), sOutfitData, g_sTempCompData[2])
|
|
// This component item is not safe to mix with this outfit
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
ENDFOR
|
|
ELSE
|
|
// -------NORMAL ITEM IN OUTFIT -------------------------------------
|
|
// Lookup the current item and check to see if it is safe to mix with this outfit
|
|
eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))
|
|
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), eCurrentItem)
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), eCurrentItem, sOutfitData, g_sTempCompData[2])
|
|
// This component item is not safe to mix with this outfit
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
// None of the items in this outfit are invalid
|
|
RETURN TRUE
|
|
|
|
// -------PROPGROUPS -----------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
INT i
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
FOR i = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[i])
|
|
//CPRINTLN(DEBUG_PED_COMP, "This prop item is invalid for this group: sPropGroupData.eItems[i]= ", sPropGroupData.eItems[i])
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "None of the prop items in this group are invalid")
|
|
RETURN TRUE
|
|
|
|
// ------------PROPS-----------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
IF GET_PED_PROP_INDEX(ped, g_sTempCompData[1].ePropPos) = g_sTempCompData[1].iDrawable
|
|
AND (GET_PED_PROP_TEXTURE_INDEX(ped, g_sTempCompData[1].ePropPos) = g_sTempCompData[1].iTexture OR g_sTempCompData[1].iDrawable = -1)
|
|
// Prop item is current
|
|
RETURN TRUE
|
|
ELSE
|
|
//CPRINTLN(DEBUG_PED_COMP, "Prop item not current. g_sTempCompData[1].ePropPos =", g_sTempCompData[1].ePropPos, " g_sTempCompData[1].iDrawable=", g_sTempCompData[1].iDrawable, " g_sTempCompData[1].iTexture=", g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ELSE
|
|
|
|
// ---------NORMAL ITEMS-------------------------------------------
|
|
IF g_sTempCompData[1].iDrawable = GET_PED_DRAWABLE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
AND g_sTempCompData[1].iTexture = GET_PED_TEXTURE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
// Component item is current
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Marks the component item as available for the ped model
|
|
FUNC BOOL SET_PED_COMP_ITEM_AVAILABLE_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAvailable, BOOL bClearNewFlag = FALSE)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_AVAILABLE_MP] Component item[", g_sTempCompData[1].iDrawable, " , ", g_sTempCompData[1].iTexture, "], type: ", GET_PED_COMP_TYPE_STRING(eType) , " available: ", bAvailable, ", ", GET_THIS_SCRIPT_NAME())
|
|
|
|
// Set the depth so we can tell if we should be acquiring copies
|
|
g_iPedComponentNest++
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
|
|
#IF USE_TU_CHANGES
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
#ENDIF
|
|
IF bAvailable
|
|
//INCREMENT_MP_INT_CHARACTER_STAT(MP_STAT_NO_CLOTHES_UNLOCK)
|
|
IF eType = COMP_TYPE_LEGS
|
|
OR eType = COMP_TYPE_JBIB
|
|
OR eType = COMP_TYPE_FEET
|
|
OR eType = COMP_TYPE_HEAD
|
|
OR eType = COMP_TYPE_PROPS
|
|
OR eType = COMP_TYPE_TEETH
|
|
SET_HEAVILY_ACCESSED_MP_INT_CHARACTER_STAT(MP_STAT_NO_CLOTHES_UNLOCK, g_MP_STAT_NO_CLOTHES_UNLOCK[GET_SLOT_NUMBER(-1)]+1)
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_BERD
|
|
INCREMENT_BY_MP_INT_CHARACTER_STAT( MP_STAT_NO_MASKS_UNLOCK, 1)
|
|
ENDIF
|
|
ELSE
|
|
|
|
IF eType = COMP_TYPE_LEGS
|
|
OR eType = COMP_TYPE_JBIB
|
|
OR eType = COMP_TYPE_FEET
|
|
OR eType = COMP_TYPE_HEAD
|
|
OR eType = COMP_TYPE_PROPS
|
|
OR eType = COMP_TYPE_TEETH
|
|
SET_HEAVILY_ACCESSED_MP_INT_CHARACTER_STAT(MP_STAT_NO_CLOTHES_UNLOCK, g_MP_STAT_NO_CLOTHES_UNLOCK[GET_SLOT_NUMBER(-1)]-1)
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_BERD
|
|
INCREMENT_BY_MP_INT_CHARACTER_STAT( MP_STAT_NO_MASKS_UNLOCK, -1)
|
|
ENDIF
|
|
|
|
ENDIF
|
|
|
|
// Set appropriate multiplayer data
|
|
#IF USE_TU_CHANGES
|
|
IF eType != COMP_TYPE_HAND // All hands are acquired.
|
|
#ENDIF
|
|
INT iStatValue = GET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_AVAILABLE_STAT(eType, g_sTempCompData[1].iBitset), g_iPedComponentSlot)
|
|
IF bAvailable
|
|
SET_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ELSE
|
|
CLEAR_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ENDIF
|
|
SET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_AVAILABLE_STAT(eType, g_sTempCompData[1].iBitset), iStatValue, g_iPedComponentSlot)
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF bClearNewFlag
|
|
MP_INT_STATS eStat
|
|
IF GET_MP_PED_COMPONENT_USED_STAT(eType, g_sTempCompData[1].iBitset, eStat)
|
|
INT iNewStatValue = GET_MP_INT_CHARACTER_STAT(eStat, g_iPedComponentSlot)
|
|
SET_BIT(iNewStatValue, g_sTempCompData[1].iItemBit)
|
|
SET_MP_INT_CHARACTER_STAT(eStat, iNewStatValue, g_iPedComponentSlot)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Some items have multiple copies (like forwards / backwards caps)
|
|
// setting one of them available does the others too
|
|
// IF THIS IS EDITED- UPDATE SET_MP_PED_COMP_ITEM_NO_LONGER_NEW + SET_PED_COMP_ITEM_ACQUIRED_MP
|
|
IF g_iPedComponentNest = 1
|
|
AND bAvailable = TRUE
|
|
INT iCopyItem
|
|
PED_COMP_NAME_ENUM eCopyItem
|
|
|
|
// ------------male-------------------------------
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF eType = COMP_TYPE_PROPS
|
|
// buying a forwards cap gets you the backwards one too
|
|
IF (eItem >= PROPS_FMM_HAT_10_0 AND eItem <= PROPS_FMM_HAT_10_7)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: a forwards cap- adding backwards version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_9_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying a backwards cap gets you the forwards one too
|
|
ELIF (eItem >= PROPS_FMM_HAT_9_0 AND eItem <= PROPS_FMM_HAT_9_7)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: a backwards cap- adding forwards version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_10_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying an open collar special item gives you the closed collar version
|
|
IF (eItem >= SPECIAL_FMM_3_0 AND eItem <= SPECIAL_FMM_3_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_4_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_4_0 AND eItem <= SPECIAL_FMM_4_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_3_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_6_0 AND eItem <= SPECIAL_FMM_6_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_7_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_7_0 AND eItem <= SPECIAL_FMM_7_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_6_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_11_0 AND eItem <= SPECIAL_FMM_11_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_10_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_10_0 AND eItem <= SPECIAL_FMM_10_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_11_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
// buying a special item worn under leather jacket gives you jbib version
|
|
ELIF (eItem >= SPECIAL_FMM_2_0 AND eItem <= SPECIAL_FMM_2_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: item under leather jacket giving jbib item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_0_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
ELIF (eItem >= SPECIAL_FMM_14_0 AND eItem <= SPECIAL_FMM_14_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: item under leather jacket giving jbib item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_1_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_JBIB
|
|
// buying a jbib that can be worn under leather jacket gives you under leather jacket version
|
|
IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: jbib that can be worn under leather jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_2_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
|
|
ELIF (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: jbib that can be worn under leather jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_14_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ------------female-------------------------------
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbib that can be worn under sports jacket gets you extra special version
|
|
IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: jbib that can be worn under sports jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMF_1_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, bClearNewFlag)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// copies that are needed for male + female characters
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbibs that can be worn under jackets also gets you the under jacket special item
|
|
eCopyItem = GET_SPECIAL_FROM_JBIB(ePedModel, eItem, g_sTempCompData[1].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: jacket compatible jbib- adding special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_SPECIAL, eCopyItem, TRUE, bClearNewFlag)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying items worn under jackets also gets you the normal jbib version
|
|
eCopyItem = GET_JBIB_FROM_SPECIAL(ePedModel, eItem, g_sTempCompData[1].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
//CPRINTLN(DEBUG_PED_COMP, "Available: under jacket special item- adding jbib: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_JBIB, eCopyItem, TRUE, bClearNewFlag)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
g_iPedComponentNest--
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_AVAILABLE_MP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]", "eType = ", GET_PED_COMP_TYPE_STRING(eType))
|
|
ENDIF
|
|
|
|
g_iPedComponentNest--
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Marks the component item as available for the ped model
|
|
FUNC BOOL SET_PED_COMP_ITEM_AVAILABLE_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAvailable)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
|
|
// Set appropriate singleplayer data
|
|
IF bAvailable
|
|
// set the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_AVAILABLE_SLOT, g_sTempCompData[1].iItemBit, TRUE, FALSE)
|
|
ELSE
|
|
// clear the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_AVAILABLE_SLOT, g_sTempCompData[1].iItemBit, FALSE, TRUE)
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_AVAILABLE_SP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]", "eType = ", GET_PED_COMP_TYPE_STRING(eType))
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Sets the item as acquired or not acquired.
|
|
/// If the item is an outfit, all items in the outfit get set as acquired too.
|
|
/// (this is only done for acquiring outfits, so we don't remove things from wardrobe unnecessarily)
|
|
/// PARAMS:
|
|
/// ePedModel - the ped this item belongs to
|
|
/// eType - the ped component type of the item we are using
|
|
/// eItem - the item we are using
|
|
/// bAcquired - are we setting the item to be acquired?
|
|
/// RETURNS:
|
|
/// TRUE if the ped can have this item. FALSE otherwise
|
|
FUNC BOOL SET_PED_COMP_ITEM_ACQUIRED_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAcquired, BOOL bAcquireCopies = TRUE)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
IF bAcquired
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ELSE
|
|
CLEAR_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
// Skip
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
IF bAcquired
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ELSE
|
|
CLEAR_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ENDIF
|
|
ELSE
|
|
IF bAcquired
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ELSE
|
|
CLEAR_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Flag alt items as acquired also...
|
|
IF bAcquireCopies = TRUE
|
|
AND bAcquired = TRUE
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(g_iLastDLCItemNameHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(g_iLastDLCItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(iRetNameHash, PED_COMPONENT_ACQUIRED_SLOT)
|
|
// Alternative on-disk item
|
|
ELSE
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iRetType)), INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum), TRUE, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
// If this item is an outfit, set all of the outfit items as acquired + available
|
|
// (this is only done for acquiring outfits, so we don't remove things from wardrobe unnecessarily)
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
INT iItem, iProp
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
|
|
FOR iItem = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[iItem] <> DUMMY_PED_COMP
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_OUTFIT
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPS
|
|
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPGROUP
|
|
// normal items
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
ELSE
|
|
// propgroups
|
|
// Grab all the prop data for this outfits propgroup
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[iItem])
|
|
|
|
// For each item in the propgroup
|
|
FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF ENUM_TO_INT(sPropGroupData.eItems[iProp]) >= 10 // we start the props at 10.
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
ELSE
|
|
#ENDIF
|
|
|
|
// Set appropriate multiplayer data
|
|
#IF USE_TU_CHANGES
|
|
IF eType != COMP_TYPE_HAND // All hands are acquired.
|
|
#ENDIF
|
|
INT iStatValue = GET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_ACQUIRED_STAT(eType, g_sTempCompData[1].iBitset), g_iPedComponentSlot)
|
|
IF bAcquired
|
|
SET_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ELSE
|
|
CLEAR_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ENDIF
|
|
SET_MP_INT_CHARACTER_STAT(GET_MP_PED_COMPONENT_ACQUIRED_STAT(eType, g_sTempCompData[1].iBitset), iStatValue, g_iPedComponentSlot)
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// If this item is an outfit, set all of the outfit items as acquired + available
|
|
// (this is only done for acquiring outfits, so we don't remove things from wardrobe unnecessarily)
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
INT iItem, iProp
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
|
|
FOR iItem = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[iItem] <> DUMMY_PED_COMP
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_OUTFIT
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPS
|
|
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPGROUP
|
|
// normal items
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
ELSE
|
|
// propgroups
|
|
// Grab all the prop data for this outfits propgroup
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[iItem])
|
|
|
|
// For each item in the propgroup
|
|
FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
ENDFOR
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
ENDIF
|
|
|
|
// Some items have multiple copies (like forwards / backwards caps)
|
|
// acquiring one of them acquires the others too
|
|
// IF THIS IS EDITED- UPDATE SET_MP_PED_COMP_ITEM_NO_LONGER_NEW + SET_PED_COMP_ITEM_AVAILABLE_MP
|
|
IF bAcquireCopies = TRUE
|
|
AND bAcquired = TRUE
|
|
INT iCopyItem
|
|
PED_COMP_NAME_ENUM eCopyItem
|
|
|
|
// ------------male-------------------------------
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF eType = COMP_TYPE_PROPS
|
|
// buying a forwards cap gets you the backwards one too
|
|
IF (eItem >= PROPS_FMM_HAT_10_0 AND eItem <= PROPS_FMM_HAT_10_7)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a forwards cap- adding backwards version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_9_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying a backwards cap gets you the forwards one too
|
|
ELIF (eItem >= PROPS_FMM_HAT_9_0 AND eItem <= PROPS_FMM_HAT_9_7)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a backwards cap- adding forwards version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_10_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying an open collar special item gives you the closed collar version
|
|
IF (eItem >= SPECIAL_FMM_3_0 AND eItem <= SPECIAL_FMM_3_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_4_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_4_0 AND eItem <= SPECIAL_FMM_4_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_3_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_6_0 AND eItem <= SPECIAL_FMM_6_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_7_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_7_0 AND eItem <= SPECIAL_FMM_7_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_6_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_11_0 AND eItem <= SPECIAL_FMM_11_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired an open collar item giving closed collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_10_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_10_0 AND eItem <= SPECIAL_FMM_10_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a closed collar item giving open collar version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_11_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
// buying a special item worn under leather jacket gives you jbib version
|
|
ELIF (eItem >= SPECIAL_FMM_2_0 AND eItem <= SPECIAL_FMM_2_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired item under leather jacket giving jbib item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_0_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= SPECIAL_FMM_14_0 AND eItem <= SPECIAL_FMM_14_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired item under leather jacket giving jbib item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_1_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_JBIB
|
|
// buying a jbib that can be worn under leather jacket gives you under leather jacket version
|
|
IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired jbib that can be worn under leather jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_2_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired jbib that can be worn under leather jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_14_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Buying the checked shirts gives you the DLC special version
|
|
ELIF (eItem >= JBIB_FMM_14_0 AND eItem <= JBIB_FMM_14_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired checked shirt jbib so setting DLC special as acquired")
|
|
SWITCH eItem
|
|
CASE JBIB_FMM_14_0
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_0"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_0"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_1
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_1"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_1"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_2
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_2"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_2"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_3
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_3"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_3"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_4
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_4"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_4"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_5
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_5"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_5"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_6
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_6"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_6"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_7
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_7"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_7"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_8
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_8"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_8"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_9
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_9"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_9"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_10
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_10"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_10"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_11
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_11"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_11"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_12
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_12"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_12"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_13
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_13"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_13"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_14
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_14"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_14"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_15
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_15"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_15"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Buying the untucked shirt gives you the DLC special version
|
|
ELIF (eItem >= JBIB_FMM_12_0 AND eItem <= JBIB_FMM_12_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired untucked shirt jbib so setting DLC special as acquired")
|
|
SWITCH eItem
|
|
CASE JBIB_FMM_12_0
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_0"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_0"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_1
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_1"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_1"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_2
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_2"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_2"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_3
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_3"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_3"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_4
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_4"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_4"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_5
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_5"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_5"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_6
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_6"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_6"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_7
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_7"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_7"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_8
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_8"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_8"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_9
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_9"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_9"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_10
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_10"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_10"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_11
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_11"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_11"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_12
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_12"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_12"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_13
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_13"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_13"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_14
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_14"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_14"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_12_15
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_8_15"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_M_SPECIAL_9_15"), COMP_TYPE_SPECIAL, 3), TRUE, FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
#ENDIF
|
|
|
|
ENDIF
|
|
#IF USE_TU_CHANGES
|
|
ELIF eType = COMP_TYPE_TEETH
|
|
// buying a tie also gives you the vest version
|
|
IF (eItem >= TEETH_FMM_10_0 AND eItem <= TEETH_FMM_10_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Viewed a normal tie item so we are giving giving the waistcoat version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SWITCH g_sTempCompData[2].iTexture
|
|
CASE 0
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_0"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_0"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 1
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_1"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_1"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 2
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_2"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_2"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 3
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_3"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_3"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 4
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_4"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_4"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 5
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_5"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_5"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 6
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_6"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_6"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 7
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_7"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_7"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 8
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_8"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_8"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 9
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_9"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_9"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 10
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_10"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_10"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 11
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_11"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_11"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 12
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_12"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_12"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 13
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_13"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_13"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 14
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_14"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_14"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 15
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_15"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_15"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ELIF (eItem >= TEETH_FMM_12_0 AND eItem <= TEETH_FMM_12_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Viewed a skinny tie item so we are giving giving the waistcoat version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SWITCH g_sTempCompData[2].iTexture
|
|
CASE 0
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_0"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_0"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 1
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_1"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_1"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 2
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_2"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_2"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 3
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_3"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_3"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 4
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_4"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_4"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 5
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_5"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_5"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 6
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_6"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_6"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 7
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_7"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_7"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 8
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_8"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_8"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 9
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_9"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_9"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 10
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_10"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_10"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 11
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_11"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_11"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 12
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_12"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_12"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 13
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_13"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_13"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 14
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_14"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_14"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
CASE 15
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_15"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_15"), COMP_TYPE_TEETH, 3), TRUE, FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
// ------------female-------------------------------
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbib that can be worn under sports jacket gets you extra special version
|
|
IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired jbib that can be worn under sports jacket giving special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMF_1_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// copies that are needed for male + female characters
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbibs that can be worn under jackets also gets you the under jacket special item
|
|
eCopyItem = GET_SPECIAL_FROM_JBIB(ePedModel, eItem, g_sTempCompData[1].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired jacket compatible jbib- adding special item: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_SPECIAL, eCopyItem, TRUE, FALSE)
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Buying the camisole shirts gives you the DLC special version
|
|
IF (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMM_12_15)
|
|
SWITCH eItem
|
|
CASE JBIB_FMF_12_7
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_0"), COMP_TYPE_TEETH, 4), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMF_12_8
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_1"), COMP_TYPE_TEETH, 4), TRUE, FALSE)
|
|
BREAK
|
|
CASE JBIB_FMF_12_9
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_2"), COMP_TYPE_TEETH, 4), TRUE, FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying items worn under jackets also gets you the normal jbib version
|
|
eCopyItem = GET_JBIB_FROM_SPECIAL(ePedModel, eItem, g_sTempCompData[1].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired under jacket special item- adding jbib: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, COMP_TYPE_JBIB, eCopyItem, TRUE, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bAcquired
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
IF (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_0"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_1"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_2"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_3"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_4"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_5"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_6"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_7"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_8"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_9"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_10"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_11"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_12"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_13"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_14"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_15"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_16"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_17"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_18"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_19"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_20"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_M_OUTFIT_SCUBA_21"))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCUBA_OUTFIT_PURCH)
|
|
CPRINTLN(DEBUG_PED_COMP, "Already acquired a male scuba outfit")
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a male scuba outfit, setting packstat")
|
|
SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCUBA_OUTFIT_PURCH, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
IF (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_0"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_1"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_2"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_3"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_4"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_5"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_6"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_7"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_8"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_9"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_10"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_11"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_12"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_13"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_14"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_15"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_16"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_17"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_18"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_19"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_20"))
|
|
OR (g_iLastDLCItemNameHash = HASH("DLC_MP_X17_F_OUTFIT_SCUBA_21"))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF GET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCUBA_OUTFIT_PURCH)
|
|
CPRINTLN(DEBUG_PED_COMP, "Already acquired a female scuba outfit")
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired a female scuba outfit, setting packstat")
|
|
SET_PACKED_STAT_BOOL(PACKED_MP_BOOL_SCUBA_OUTFIT_PURCH, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
ENDIF // IF NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
#ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_ACQUIRED_MP] Component item[", g_sTempCompData[1].iDrawable, " , ", g_sTempCompData[1].iTexture, "], type: ", GET_PED_COMP_TYPE_STRING(eType) , " acquired: ", bAcquired, ", ", GET_THIS_SCRIPT_NAME())
|
|
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_ACQUIRED_MP] Component item[", g_sTempCompData[1].iDrawable, " , ", g_sTempCompData[1].iTexture, "], type: ", GET_PED_COMP_TYPE_STRING(eType) , " doesn't belong to ped[", g_sTempCompData[1].iPedID, "]", GET_THIS_SCRIPT_NAME())
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Sets the item as acquired or not acquired.
|
|
/// If the item is an outfit, all items in the outfit get set as acquired too.
|
|
/// (this is only done for acquiring outfits, so we don't remove things from wardrobe unnecessarily)
|
|
/// PARAMS:
|
|
/// ePedModel - the ped this item belongs to
|
|
/// eType - the ped component type of the item we are using
|
|
/// eItem - the item we are using
|
|
/// bAcquired - are we setting the item to be acquired?
|
|
/// bAcquireCopies - If this is true then any copies of this item are also acquired
|
|
/// (used for Franklin's ties / jbibs etc)
|
|
/// RETURNS:
|
|
/// TRUE if the ped can have this item. FALSE otherwise
|
|
FUNC BOOL SET_PED_COMP_ITEM_ACQUIRED_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAcquired, BOOL bAcquireCopies = TRUE)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
|
|
// Set appropriate singleplayer data
|
|
IF bAcquired
|
|
// set the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_ACQUIRED_SLOT, g_sTempCompData[1].iItemBit, TRUE, FALSE)
|
|
|
|
|
|
// If this item is an outfit, set all of the outfit items as acquired + available
|
|
// (this is only done for acquiring outfits, so we don't remove things from wardrobe unnecessarily)
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
|
|
// don't acquire the parts of the jewel heist suit
|
|
// as it is just the SE suit with a tie and gloves
|
|
BOOL bAcquireComponents = TRUE
|
|
IF ePedModel = PLAYER_ZERO
|
|
IF eItem = OUTFIT_P0_JEWEL_HEIST
|
|
bAcquireComponents = FALSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Not acquiring the component parts of the jewel heist suit.")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bAcquireComponents = TRUE
|
|
INT iItem, iProp
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
|
|
FOR iItem = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[iItem] <> DUMMY_PED_COMP
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_OUTFIT
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPS
|
|
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem) <> COMP_TYPE_PROPGROUP
|
|
// normal items
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, iItem), sOutfitData.eItems[iItem], TRUE)
|
|
ELSE
|
|
// propgroups
|
|
// Grab all the prop data for this outfits propgroup
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[iItem])
|
|
|
|
// For each item in the propgroup
|
|
FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp], TRUE)
|
|
ENDFOR
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
// clear the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_ACQUIRED_SLOT, g_sTempCompData[1].iItemBit, FALSE, TRUE)
|
|
ENDIF
|
|
|
|
// Some items have multiple copies (like franklin's ties and jbibs)
|
|
// acquiring one of them acquires the others too
|
|
IF bAcquireCopies = TRUE
|
|
AND bAcquired = TRUE
|
|
INT iCopyItem
|
|
SWITCH ePedModel
|
|
CASE PLAYER_ZERO
|
|
BREAK
|
|
|
|
CASE PLAYER_ONE
|
|
SWITCH eType
|
|
CASE COMP_TYPE_TORSO
|
|
// buying one of Franklin's suit jackets gets you the open + closed versions
|
|
IF (eItem >= TORSO_P1_SUIT AND eItem <= TORSO_P1_SUIT_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired one of Franklin's open suit jackets- adding closed version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(TORSO_P1_3PCSUIT) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_TORSO, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= TORSO_P1_3PCSUIT AND eItem <= TORSO_P1_3PCSUIT_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired one of Franklin's closed suit jackets- adding open version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(TORSO_P1_SUIT) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_TORSO, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_JBIB
|
|
// buyng one of Franklin's waistcoat jbibs gets you the open + closed collar versions
|
|
IF (eItem >= JBIB_P1_WAISTCOAT_A AND eItem <= JBIB_P1_WAISTCOAT_A_15)
|
|
iCopyItem = ENUM_TO_INT(JBIB_P1_WAISTCOAT_B) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= JBIB_P1_WAISTCOAT_B AND eItem <= JBIB_P1_WAISTCOAT_B_15)
|
|
iCopyItem = ENUM_TO_INT(JBIB_P1_WAISTCOAT_A) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_SPECIAL
|
|
// buying one of Franklin's ties gets you the short, medium + long versions
|
|
IF (eItem >= SPECIAL_P1_TIE_SHORT AND eItem <= SPECIAL_P1_TIE_SHORT_15)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_MEDIUM) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_LONG) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= SPECIAL_P1_TIE_MEDIUM AND eItem <= SPECIAL_P1_TIE_MEDIUM_15)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_SHORT) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_LONG) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
|
|
ELIF (eItem >= SPECIAL_P1_TIE_LONG AND eItem <= SPECIAL_P1_TIE_LONG_15)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_SHORT) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_P1_TIE_MEDIUM) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
CASE COMP_TYPE_PROPS
|
|
// buying one of Franklin's forwards caps gets you the backwards version
|
|
IF (eItem >= PROPS_P1_CAP_FRONT_0 AND eItem <= PROPS_P1_CAP_FRONT_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired one of Franklin's forwards caps- adding backwards version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_P1_GREEN_CAP) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE PLAYER_TWO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_LEGS
|
|
// buying Trevor's underwear also gives you the barefoot vesion
|
|
IF (eItem >= LEGS_P2_UNDERWEAR AND eItem <= LEGS_P2_UNDERWEAR_9)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired one of Trevor's underwear- adding barefoot version: g_sTempCompData[1].iTexture ", g_sTempCompData[1].iTexture)
|
|
iCopyItem = ENUM_TO_INT(LEGS_P2_UNDERWEAR_BF_0) + g_sTempCompData[1].iTexture
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_LEGS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
// acquring Trevor's docks outfit will also give the beanie
|
|
IF (eItem = OUTFIT_P2_DOCK_WORKER)
|
|
CPRINTLN(DEBUG_PED_COMP, "Acquired one of Trevor's docks outfit - adding beanie hat")
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, PROPS_P2_BEANIE_HAT), TRUE, FALSE)
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_ACQUIRED_SP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]")
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the dummy or default item for this character in this slot
|
|
/// PARAMS:
|
|
/// eModel - model of the character we're checking (just uses player characters at the moment)
|
|
/// eType - the ped component type we are checking
|
|
/// RETURNS:
|
|
/// PED_COMP_NAME_ENUM of the dummy / default item or DUMMY_PED_COMP if there isn't one
|
|
#if USE_CLF_DLC
|
|
FUNC PED_COMP_NAME_ENUM GET_DUMMY_COMPONENT_FOR_SLOTCLF(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, INT iPropPos)
|
|
|
|
IF eType = COMP_TYPE_PROPS
|
|
PED_PROP_POSITION ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos)
|
|
RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos)
|
|
ENDIF
|
|
|
|
SWITCH eModel
|
|
// Michael
|
|
CASE PLAYER_ZERO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P0_0_0 BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P0_HEAVY_JACKET BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P0_CASUAL_JEANS BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P0_BOOTS BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P0_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P0_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P0_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P0_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P0_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P0_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P0_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[0].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// FRANKLIN
|
|
CASE PLAYER_ONE
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P1_0_0 BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P1_BLUE_SHIRT BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P1_BLACK_JEANS BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P1_DUMMY BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P1_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P1_DUMMY BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P1_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P1_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P1_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P1_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P1_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[1].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// TREVOR
|
|
CASE PLAYER_TWO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P2_NONE BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P2_TUXEDO BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P2_SUIT_PANTS_8 BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P2_DUMMY BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P2_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P2_DUMMY BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P2_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P2_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P2_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P2_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P2_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[2].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
|
|
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode male
|
|
CASE MP_M_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMM_5_0
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMM_0_10
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMM_0_2 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode female
|
|
CASE MP_F_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMF_14_9
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMF_1_0
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMF_4_14 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
DEFAULT
|
|
BREAK // not a player character
|
|
ENDSWITCH
|
|
|
|
RETURN DUMMY_PED_COMP // there isn't a suitable dummy component set up for this slot
|
|
ENDFUNC
|
|
#endif
|
|
#if USE_NRM_DLC
|
|
FUNC PED_COMP_NAME_ENUM GET_DUMMY_COMPONENT_FOR_SLOTNRM(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, INT iPropPos)
|
|
|
|
IF eType = COMP_TYPE_PROPS
|
|
PED_PROP_POSITION ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos)
|
|
RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos)
|
|
ENDIF
|
|
|
|
SWITCH eModel
|
|
// Michael
|
|
CASE PLAYER_ZERO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P0_0_0 BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P0_HEAVY_JACKET BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P0_CASUAL_JEANS BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P0_BOOTS BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P0_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P0_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P0_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P0_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P0_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P0_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P0_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[0].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// NEEDS TO BE REPLACED FOR JIMMY
|
|
CASE PLAYER_ONE
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P1_0_0 BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P1_BLUE_SHIRT BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P1_BLACK_JEANS BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P1_DUMMY BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P1_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P1_DUMMY BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P1_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P1_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P1_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P1_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P1_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[1].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// NEEDS TO BE REPLACED FOR TRACEY
|
|
CASE PLAYER_TWO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD RETURN HEAD_P2_NONE BREAK
|
|
CASE COMP_TYPE_TORSO RETURN TORSO_P2_WHITE_TSHIRT BREAK
|
|
CASE COMP_TYPE_LEGS RETURN LEGS_P2_SWEAT_PANTS BREAK
|
|
CASE COMP_TYPE_FEET RETURN FEET_P2_DUMMY BREAK
|
|
CASE COMP_TYPE_HAND RETURN HAND_P2_NONE BREAK
|
|
CASE COMP_TYPE_SPECIAL RETURN SPECIAL_P2_DUMMY BREAK
|
|
CASE COMP_TYPE_SPECIAL2 RETURN SPECIAL2_P2_NONE BREAK
|
|
CASE COMP_TYPE_DECL RETURN DECL_P2_NONE BREAK
|
|
CASE COMP_TYPE_BERD RETURN BERD_P2_NONE BREAK
|
|
CASE COMP_TYPE_TEETH RETURN TEETH_P2_NONE BREAK
|
|
CASE COMP_TYPE_JBIB RETURN JBIB_P2_NONE BREAK
|
|
CASE COMP_TYPE_PROPGROUP RETURN PROPGROUP_NONE BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[2].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
|
|
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode male
|
|
CASE MP_M_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMM_5_0
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMM_0_10
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMM_0_2 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode female
|
|
CASE MP_F_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMF_14_9
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMF_1_0
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMF_4_14 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
DEFAULT
|
|
BREAK // not a player character
|
|
ENDSWITCH
|
|
|
|
RETURN DUMMY_PED_COMP // there isn't a suitable dummy component set up for this slot
|
|
ENDFUNC
|
|
#endif
|
|
FUNC PED_COMP_NAME_ENUM GET_DUMMY_COMPONENT_FOR_SLOT(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, INT iPropPos)
|
|
#if USE_CLF_DLC
|
|
return GET_DUMMY_COMPONENT_FOR_SLOTCLF(eModel,eType,iPropPos)
|
|
#endif
|
|
#if USE_NRM_DLC
|
|
return GET_DUMMY_COMPONENT_FOR_SLOTNRM(eModel,eType,iPropPos)
|
|
#endif
|
|
|
|
#if not USE_CLF_DLC
|
|
#if not USE_NRM_DLC
|
|
IF eType = COMP_TYPE_PROPS
|
|
PED_PROP_POSITION ePropPos = INT_TO_ENUM(PED_PROP_POSITION, iPropPos)
|
|
RETURN GET_DUMMY_PROP_FOR_ANCHOR(ePropPos)
|
|
ENDIF
|
|
|
|
SWITCH eModel
|
|
// Michael
|
|
CASE PLAYER_ZERO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
RETURN HEAD_P0_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobals.sPlayerData.sInfo.sVariations[0].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
// pick default suit jacket based on wrecked suit flowflag
|
|
IF g_savedGlobals.sFlow.controls.flagIDs[FLOWFLAG_MIC_HAS_HAGGARD_SUIT]
|
|
RETURN TORSO_P0_GREY_SUIT_01
|
|
ELSE
|
|
RETURN TORSO_P0_GREY_SUIT
|
|
ENDIF
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
// pick default suit pants based on wrecked suit flowflag
|
|
IF g_savedGlobals.sFlow.controls.flagIDs[FLOWFLAG_MIC_HAS_HAGGARD_SUIT]
|
|
RETURN LEGS_P0_GREY_SUIT_1
|
|
ELSE
|
|
RETURN LEGS_P0_GREY_SUIT
|
|
ENDIF
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_P0_1
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
RETURN HAND_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_P0_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
CASE COMP_TYPE_PROPGROUP
|
|
RETURN PROPGROUP_NONE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Franklin
|
|
CASE PLAYER_ONE
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
RETURN HEAD_P1_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobals.sPlayerData.sInfo.sVariations[1].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_P1_BLUE_SHIRT
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_P1_BLACK_JEANS
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_P1_DUMMY
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
RETURN HAND_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_P1_DUMMY
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_P1_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
CASE COMP_TYPE_PROPGROUP
|
|
RETURN PROPGROUP_NONE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Trevor
|
|
CASE PLAYER_TWO
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
RETURN HEAD_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
RETURN g_savedGlobals.sPlayerData.sInfo.sVariations[2].eStoredHairstyle
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_P2_WHITE_TSHIRT
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_P2_SWEAT_PANTS
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_P2_DUMMY
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
RETURN HAND_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_P2_DUMMY
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_P2_NONE
|
|
BREAK
|
|
CASE COMP_TYPE_OUTFIT
|
|
BREAK// skipped over by CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM
|
|
CASE COMP_TYPE_PROPGROUP
|
|
RETURN PROPGROUP_NONE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode male
|
|
CASE MP_M_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMM_5_0
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMM_0_10
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMM_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMM_0_2 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Free mode female
|
|
CASE MP_F_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_HEAD
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_HAIR
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_TORSO
|
|
RETURN TORSO_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_LEGS
|
|
RETURN LEGS_FMF_14_9
|
|
BREAK
|
|
CASE COMP_TYPE_FEET
|
|
RETURN FEET_FMF_1_0
|
|
BREAK
|
|
CASE COMP_TYPE_HAND
|
|
//No default -will return DUMMY_PED_COMP
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL
|
|
RETURN SPECIAL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_SPECIAL2
|
|
RETURN SPECIAL2_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_DECL
|
|
RETURN DECL_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_BERD
|
|
RETURN BERD_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_TEETH
|
|
RETURN TEETH_FMF_0_0
|
|
BREAK
|
|
CASE COMP_TYPE_JBIB
|
|
RETURN JBIB_FMF_4_14 // if this changes- update GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
DEFAULT
|
|
BREAK // not a player character
|
|
ENDSWITCH
|
|
|
|
RETURN DUMMY_PED_COMP // there isn't a suitable dummy component set up for this slot
|
|
#endif
|
|
#endif
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Marks the component item as new for the ped model
|
|
FUNC BOOL SET_PED_COMP_ITEM_IS_NEW_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bNew)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
|
|
// Set appropriate singleplayer data
|
|
|
|
IF bNew
|
|
// clear the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_USED_SLOT, g_sTempCompData[1].iItemBit, FALSE, TRUE)
|
|
ELSE
|
|
// set the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_USED_SLOT, g_sTempCompData[1].iItemBit, TRUE, FALSE)
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_IS_NEW_SP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]")
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Marks the component item as new for the ped model
|
|
FUNC BOOL SET_PED_COMP_ITEM_IS_NEW_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bNew)
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
|
|
// Set appropriate multiplayer data
|
|
MP_INT_STATS eStat
|
|
IF GET_MP_PED_COMPONENT_USED_STAT(eType, g_sTempCompData[1].iBitset, eStat)
|
|
INT iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, g_iPedComponentSlot)
|
|
IF bNew
|
|
CLEAR_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ELSE
|
|
SET_BIT(iStatValue, g_sTempCompData[1].iItemBit)
|
|
ENDIF
|
|
SET_MP_INT_CHARACTER_STAT(eStat, iStatValue, g_iPedComponentSlot)
|
|
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_COMP_ITEM_NEW_MP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]")
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Returns the ped component item for the ped.
|
|
/// NOTE: DUMMY_PED_COMP returned if no item found or prop
|
|
FUNC PED_COMP_NAME_ENUM GET_PED_COMP_ITEM_CURRENT_MP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, INT iPropPos = -1)
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "GET_PED_COMPONENT_ITEM_CURRENT: eType= ", GET_PED_COMP_TYPE_STRING(eType))
|
|
|
|
IF NOT IS_PED_INJURED(ped)
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
// Cycle through each item for the specified component type
|
|
INT i
|
|
FOR i = 0 TO PED_COMPONENTS_OUTFITS-1
|
|
IF IS_PED_COMP_ITEM_CURRENT_MP(ped, eType, INT_TO_ENUM(PED_COMP_NAME_ENUM, i))
|
|
RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, i)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
// Cycle through each item for the specified component type
|
|
INT i
|
|
FOR i = 0 TO PED_COMPONENTS_PROPGROUPS-1
|
|
IF IS_PED_COMP_ITEM_CURRENT_MP(ped, eType, INT_TO_ENUM(PED_COMP_NAME_ENUM, i))
|
|
RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, i)
|
|
ENDIF
|
|
ENDFOR
|
|
RETURN PROPGROUP_NONE
|
|
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
// prop
|
|
IF iPropPos = -1
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), "GET_PED_COMP_ITEM_CURRENT_SP checking prop type without a prop pos: ")
|
|
SCRIPT_ASSERT("GET_PED_COMP_ITEM_CURRENT_SP checking prop type without a prop pos. Bug for Andy Minghella")
|
|
ELSE
|
|
RETURN GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, INT_TO_ENUM(PED_PROP_POSITION, iPropPos))
|
|
ENDIF
|
|
ELSE
|
|
// normal item
|
|
RETURN GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, eType)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN DUMMY_PED_COMP
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Returns the ped component item for the ped.
|
|
/// NOTE: DUMMY_PED_COMP returned if no item found or prop
|
|
FUNC PED_COMP_NAME_ENUM GET_PED_COMP_ITEM_CURRENT_SP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, INT iPropPos = -1)
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "GET_PED_COMPONENT_ITEM_CURRENT: eType= ", GET_PED_COMP_TYPE_STRING(eType))
|
|
IF NOT IS_PED_INJURED(ped)
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
// Cycle through each item for the specified component type
|
|
INT i
|
|
FOR i = 0 TO PED_COMPONENTS_OUTFITS-1
|
|
IF IS_PED_COMP_ITEM_CURRENT_SP(ped, eType, INT_TO_ENUM(PED_COMP_NAME_ENUM, i))
|
|
RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, i)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
// Cycle through each item for the specified component type
|
|
INT i
|
|
FOR i = 0 TO PED_COMPONENTS_PROPGROUPS-1
|
|
IF IS_PED_COMP_ITEM_CURRENT_SP(ped, eType, INT_TO_ENUM(PED_COMP_NAME_ENUM, i))
|
|
RETURN INT_TO_ENUM(PED_COMP_NAME_ENUM, i)
|
|
ENDIF
|
|
ENDFOR
|
|
RETURN PROPGROUP_NONE
|
|
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
// prop
|
|
IF iPropPos = -1
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), "GET_PED_COMP_ITEM_CURRENT_SP checking prop type without a prop pos: ")
|
|
SCRIPT_ASSERT("GET_PED_COMP_ITEM_CURRENT_SP checking prop type without a prop pos. Bug for Andy Minghella")
|
|
ELSE
|
|
RETURN GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, INT_TO_ENUM(PED_PROP_POSITION, iPropPos))
|
|
ENDIF
|
|
ELSE
|
|
// normal item
|
|
RETURN GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, eType)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN DUMMY_PED_COMP
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Only used in SET_PED_COMP_ITEM_CURRENT functions, uses global struct
|
|
FUNC BOOL CAN_PED_HAVE_PED_COMP_ITEM(BOOL bMustBeAvailable #IF IS_DEBUG_BUILD , PED_COMP_NAME_ENUM eItem, PED_COMP_TYPE_ENUM eType #ENDIF)
|
|
// First check that the ped model can have the component item
|
|
IF NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[CAN_PED_HAVE_PED_COMP_ITEM] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]" , GET_PED_COMP_TYPE_STRING(eType))
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF bMustBeAvailable = TRUE
|
|
IF NOT IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
CPRINTLN(DEBUG_PED_COMP, "[CAN_PED_HAVE_PED_COMP_ITEM] Component item[", ENUM_TO_INT(eItem), "] not available for ped[", g_sTempCompData[1].iPedID, "]" , GET_PED_COMP_TYPE_STRING(eType))
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF NOT IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_ACQUIRED_BIT)
|
|
CPRINTLN(DEBUG_PED_COMP, "[CAN_PED_HAVE_PED_COMP_ITEM] Component item[", ENUM_TO_INT(eItem), "] not acquired for ped[", g_sTempCompData[1].iPedID, "]" , GET_PED_COMP_TYPE_STRING(eType))
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ped can have this item
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
|
|
|
|
/// PURPOSE: Only used in SET_PED_COMP_ITEM_CURRENT functions
|
|
PROC SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bDoCopies = TRUE)
|
|
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
|
|
IF g_iPedComponentSlot != GET_ACTIVE_CHARACTER_SLOT()
|
|
#IF USE_TU_CHANGES
|
|
OR eItem = DUMMY_PED_COMP
|
|
#ENDIF
|
|
EXIT
|
|
ENDIF
|
|
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
#IF USE_TU_CHANGES
|
|
|
|
IF (IS_BIT_SET(g_sTempCompData[2].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
AND (IS_BIT_SET(g_sTempCompData[2].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
// Skip
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ELSE
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ENDIF
|
|
|
|
// Flag alt items as viewed also...
|
|
IF bDoCopies
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(g_iLastDLCItemNameHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
INT iVarCount = 0
|
|
REPEAT iAltComps iAltComp
|
|
|
|
IF iVarCount < COUNT_OF(g_iPedComponentUsedDLCVariantHashes)
|
|
g_iPedComponentUsedDLCVariantHashes[iVarCount] = -1
|
|
g_iPedComponentUsedDLCVariantTypes[iVarCount] = -1
|
|
ELSE
|
|
#IF IS_DEBUG_BUILD
|
|
SCRIPT_ASSERT("Need to increase size of g_iPedComponentUsedDLCVariantHashes, tell Kenneth R.")
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
GET_VARIANT_COMPONENT(g_iLastDLCItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType != ENUM_TO_INT(PED_COMP_DECL)
|
|
AND iRetType != ENUM_TO_INT(PED_COMP_SPECIAL2)
|
|
IF (eType = COMP_TYPE_LEGS AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
// The shoes that come with the stocking feet can be viewed and purchased separately so don't clear in this case.
|
|
// Alternative DLC item
|
|
ELIF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(iRetNameHash, PED_COMPONENT_USED_SLOT)
|
|
|
|
// Incase we have not added all the variants for each DLC item we should cache items and then do another copy check.
|
|
IF iVarCount < COUNT_OF(g_iPedComponentUsedDLCVariantHashes)
|
|
g_iPedComponentUsedDLCVariantHashes[iVarCount] = iRetNameHash
|
|
g_iPedComponentUsedDLCVariantTypes[iVarCount] = iRetType
|
|
iVarCount++
|
|
ENDIF
|
|
|
|
// Alternative on-disk item
|
|
ELSE
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iRetType)), INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum), FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
|
|
// Do another check for copies on the DLC items...
|
|
g_iPedComponentUsedNest++
|
|
IF (g_iPedComponentUsedNest < 2)
|
|
REPEAT iVarCount iAltComp
|
|
IF iAltComp < COUNT_OF(g_iPedComponentUsedDLCVariantHashes)
|
|
IF g_iPedComponentUsedDLCVariantHashes[iAltComp] != -1
|
|
PRINTLN("[kr] CLOTHES - processing copies for alt dlc item ", g_iPedComponentUsedDLCVariantHashes[iAltComp], " of type ", g_iPedComponentUsedDLCVariantTypes[iAltComp])
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_iPedComponentUsedDLCVariantTypes[iAltComp])), GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, g_iPedComponentUsedDLCVariantHashes[iAltComp], GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_iPedComponentUsedDLCVariantTypes[iAltComp])), 3), TRUE)
|
|
ELSE
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_iPedComponentUsedDLCVariantTypes[iAltComp])), GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, g_iPedComponentUsedDLCVariantHashes[iAltComp], GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, g_iPedComponentUsedDLCVariantTypes[iAltComp])), 4), TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
g_iPedComponentUsedNest--
|
|
ENDIF
|
|
|
|
// Processed DLC item so bail out
|
|
EXIT
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF (IS_BIT_SET(g_sTempCompData[2].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[2].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
// Set appropriate multiplayer data
|
|
MP_INT_STATS eStat
|
|
IF GET_MP_PED_COMPONENT_USED_STAT(eType, g_sTempCompData[1].iBitset, eStat)
|
|
INT iStatValue = GET_MP_INT_CHARACTER_STAT(eStat, g_iPedComponentSlot)
|
|
SET_BIT(iStatValue, g_sTempCompData[2].iItemBit)
|
|
SET_MP_INT_CHARACTER_STAT(eStat, iStatValue, g_iPedComponentSlot)
|
|
ENDIF
|
|
|
|
// Some items have multiple copies (like forwards / backwards caps)
|
|
// setting one as no longer new does the same for the copy item
|
|
// IF THIS IS EDITED- UPDATE SET_PED_COMP_ITEM_ACQUIRED_MP + SET_PED_COMP_ITEM_AVAILABLE_MP
|
|
IF bDoCopies = TRUE
|
|
INT iCopyItem
|
|
PED_COMP_NAME_ENUM eCopyItem
|
|
|
|
// ------------male-------------------------------
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF eType = COMP_TYPE_PROPS
|
|
// buying a forwards cap gets you the backwards one too
|
|
IF (eItem >= PROPS_FMM_HAT_10_0 AND eItem <= PROPS_FMM_HAT_10_7)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a forwards cap- adding backwards version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_9_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying a backwards cap gets you the forwards one too
|
|
ELIF (eItem >= PROPS_FMM_HAT_9_0 AND eItem <= PROPS_FMM_HAT_9_7)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a backwards cap- adding forwards version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(PROPS_FMM_HAT_10_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying an open collar special item gives you the closed collar version
|
|
IF (eItem >= SPECIAL_FMM_3_0 AND eItem <= SPECIAL_FMM_3_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed an open collar item giving closed collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_4_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_4_0 AND eItem <= SPECIAL_FMM_4_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a closed collar item giving open collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_3_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_6_0 AND eItem <= SPECIAL_FMM_6_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed an open collar item giving closed collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_7_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_7_0 AND eItem <= SPECIAL_FMM_7_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a closed collar item giving open collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_6_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying an open collar special item gives you the closed collar version
|
|
ELIF (eItem >= SPECIAL_FMM_11_0 AND eItem <= SPECIAL_FMM_11_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed an open collar item giving closed collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_10_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying a closed collar special item gives you the open collar version
|
|
ELIF (eItem >= SPECIAL_FMM_10_0 AND eItem <= SPECIAL_FMM_10_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a closed collar item giving open collar version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_11_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
// buying a special item worn under leather jacket gives you jbib version
|
|
ELIF (eItem >= SPECIAL_FMM_2_0 AND eItem <= SPECIAL_FMM_2_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed item under leather jacket giving jbib item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_0_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
ELIF (eItem >= SPECIAL_FMM_14_0 AND eItem <= SPECIAL_FMM_14_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed item under leather jacket giving jbib item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(JBIB_FMM_1_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_JBIB, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_JBIB
|
|
// buying a jbib that can be worn under leather jacket gives you under leather jacket version
|
|
IF (eItem >= JBIB_FMM_0_0 AND eItem <= JBIB_FMM_0_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed jbib that can be worn under leather jacket giving special item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_2_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
ELIF (eItem >= JBIB_FMM_1_0 AND eItem <= JBIB_FMM_1_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed jbib that can be worn under leather jacket giving special item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMM_14_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Buying the checked shirts gives you the DLC special version
|
|
ELIF (eItem >= JBIB_FMM_14_0 AND eItem <= JBIB_FMM_14_15)
|
|
|
|
SWITCH eItem
|
|
CASE JBIB_FMM_14_0
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_0"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_0"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_1
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_1"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_1"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_2
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_2"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_2"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_3
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_3"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_3"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_4
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_4"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_4"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_5
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_5"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_5"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_6
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_6"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_6"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_7
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_7"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_7"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_8
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_8"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_8"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_9
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_9"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_9"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_10
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_10"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_10"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_11
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_11"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_11"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_12
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_12"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_12"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_13
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_13"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_13"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_14
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_14"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_14"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMM_14_15
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS4_15"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_M_ACCS5_15"), COMP_TYPE_SPECIAL, 3), FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
#ENDIF
|
|
|
|
ENDIF
|
|
#IF USE_TU_CHANGES
|
|
ELIF eType = COMP_TYPE_TEETH
|
|
// buying a tie also gives you the vest version
|
|
IF (eItem >= TEETH_FMM_10_0 AND eItem <= TEETH_FMM_10_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a normal tie item so we are giving giving the waistcoat version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SWITCH g_sTempCompData[2].iTexture
|
|
CASE 0
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_0"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_0"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 1
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_1"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_1"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 2
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_2"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_2"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 3
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_3"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_3"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 4
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_4"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_4"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 5
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_5"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_5"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 6
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_6"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_6"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 7
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_7"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_7"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 8
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_8"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_8"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 9
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_9"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_9"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 10
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_10"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_10"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 11
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_11"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_11"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 12
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_12"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_12"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 13
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_13"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_13"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 14
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_14"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_14"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 15
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH0_15"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH2_15"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ELIF (eItem >= TEETH_FMM_12_0 AND eItem <= TEETH_FMM_12_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed a skinny tie item so we are giving giving the waistcoat version: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SWITCH g_sTempCompData[2].iTexture
|
|
CASE 0
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_0"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_0"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 1
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_1"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_1"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 2
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_2"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_2"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 3
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_3"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_3"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 4
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_4"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_4"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 5
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_5"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_5"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 6
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_6"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_6"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 7
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_7"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_7"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 8
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_8"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_8"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 9
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_9"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_9"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 10
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_10"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_10"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 11
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_11"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_11"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 12
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_12"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_12"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 13
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_13"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_13"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 14
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_14"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_14"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
CASE 15
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH1_15"), COMP_TYPE_TEETH, 3), FALSE)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI2_M_TEETH3_15"), COMP_TYPE_TEETH, 3), FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
// ------------female-------------------------------
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbib that can be worn under sports jacket gets you extra special version
|
|
IF (eItem >= JBIB_FMF_0_0 AND eItem <= JBIB_FMF_0_15)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed jbib that can be worn under sports jacket giving special item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
iCopyItem = ENUM_TO_INT(SPECIAL_FMF_1_0) + g_sTempCompData[2].iTexture
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, INT_TO_ENUM(PED_COMP_NAME_ENUM, iCopyItem), FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// copies that are needed for male + female characters
|
|
g_sTempCompData[2] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
IF eType = COMP_TYPE_JBIB
|
|
// buying jbibs that can be worn under jackets also gets you the under jacket special item
|
|
eCopyItem = GET_SPECIAL_FROM_JBIB(ePedModel, eItem, g_sTempCompData[2].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed jacket compatible jbib- adding special item: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_SPECIAL, eCopyItem, FALSE)
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Buying the camisole shirts gives you the DLC special version
|
|
IF (eItem >= JBIB_FMF_12_0 AND eItem <= JBIB_FMM_12_15)
|
|
SWITCH eItem
|
|
CASE JBIB_FMF_12_7
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_0"), COMP_TYPE_TEETH, 4), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMF_12_8
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_1"), COMP_TYPE_TEETH, 4), FALSE)
|
|
BREAK
|
|
CASE JBIB_FMF_12_9
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BUSI_F_ACCS2_2"), COMP_TYPE_TEETH, 4), FALSE)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// buying items worn under jackets also gets you the normal jbib version
|
|
eCopyItem = GET_JBIB_FROM_SPECIAL(ePedModel, eItem, g_sTempCompData[2].iTexture)
|
|
IF eCopyItem <> DUMMY_PED_COMP
|
|
//CPRINTLN(DEBUG_PED_COMP, "Viewed under jacket special item- adding jbib: g_sTempCompData[2].iTexture ", g_sTempCompData[2].iTexture)
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_JBIB, eCopyItem, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Only used in SET_PED_COMP_ITEM_CURRENT functions, uses global struct
|
|
PROC SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(PED_COMP_TYPE_ENUM eType)
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
AND NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
|
|
// set the appropriate bit
|
|
GET_BITSET_FROM_COMP_TYPE(eType, g_sTempCompData[1].iPedID, g_sTempCompData[1].iBitset, PED_COMPONENT_USED_SLOT, g_sTempCompData[1].iItemBit, TRUE, FALSE)
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
AND (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
// Skip
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ELSE
|
|
SET_BIT_SHOP_PED_APPAREL_SCRIPT(g_iLastDLCItemNameHash, PED_COMPONENT_USED_SLOT)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// If the prop is valid it gets set on. Otherwise it gets cleared.
|
|
/// PARAMS:
|
|
/// mPed - the ped we want to equip the prop for
|
|
/// ePropPos - the anchor position of this prop
|
|
/// iDrawable - drawable number of prop
|
|
/// iTexture - texture variation of prop
|
|
PROC SAFE_SET_PROP(PED_INDEX mPed, PED_PROP_POSITION ePropPos, INT iDrawable, INT iTexture)
|
|
IF iDrawable = -1
|
|
PRINTLN("SAFE_SET_PROP: Clearing ped prop on anchor ", GET_PROP_POSITION_STRING(ePropPos))
|
|
CLEAR_PED_PROP(mPed, ePropPos)
|
|
|
|
IF ePropPos = ANCHOR_HEAD
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_HasHelmet, FALSE)
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_DontTakeOffHelmet, FALSE)
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("SAFE_SET_PROP: Setting ped prop ", iDrawable, ",", iTexture, " on anchor ", GET_PROP_POSITION_STRING(ePropPos))
|
|
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
// Can't wear watch+hat+glasses+earpiece so clear one of them.
|
|
IF ePropPos = ANCHOR_LEFT_WRIST
|
|
IF GET_PED_PROP_INDEX(mPed, ANCHOR_HEAD) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EYES) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EARS) != -1
|
|
CLEAR_PED_PROP(mPed, ANCHOR_EARS)
|
|
ENDIF
|
|
ELIF ePropPos = ANCHOR_HEAD
|
|
IF GET_PED_PROP_INDEX(mPed, ANCHOR_LEFT_WRIST) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EYES) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EARS) != -1
|
|
CLEAR_PED_PROP(mPed, ANCHOR_EARS)
|
|
ENDIF
|
|
ELIF ePropPos = ANCHOR_EARS
|
|
IF GET_PED_PROP_INDEX(mPed, ANCHOR_LEFT_WRIST) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_HEAD) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EYES) != -1
|
|
CLEAR_PED_PROP(mPed, ANCHOR_LEFT_WRIST)
|
|
ENDIF
|
|
ELIF ePropPos = ANCHOR_EYES
|
|
IF GET_PED_PROP_INDEX(mPed, ANCHOR_LEFT_WRIST) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_HEAD) != -1
|
|
AND GET_PED_PROP_INDEX(mPed, ANCHOR_EARS) != -1
|
|
CLEAR_PED_PROP(mPed, ANCHOR_EARS)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
SET_PED_PROP_INDEX(mPed, ePropPos, iDrawable, iTexture, NETWORK_IS_GAME_IN_PROGRESS())
|
|
|
|
IF ePropPos = ANCHOR_HEAD
|
|
PED_COMP_NAME_ENUM eItem = GET_PROP_ITEM_FROM_VARIATIONS(mPed, iDrawable, iTexture, ePropPos)
|
|
IF IS_ITEM_A_HELMET(GET_ENTITY_MODEL(mPed), COMP_TYPE_PROPS, eItem, GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(mPed), ENUM_TO_INT(ANCHOR_HEAD), iDrawable, iTexture))
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_HasHelmet, TRUE)
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_DontTakeOffHelmet, TRUE)
|
|
ELSE
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_HasHelmet, FALSE)
|
|
SET_PED_CONFIG_FLAG(mPed, PCF_DontTakeOffHelmet, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the ped's hair is currently forced changed by an item
|
|
/// If so, checks if it is now safe to restore the saved hair
|
|
/// NOTE: Only use force restore for Franklin's balaclava- a hair item that forces hair change!
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_HAIRCLF(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eHairToRestore, BOOL bForceRestore = FALSE)
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODELCLF(ePedModel)
|
|
IF g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange <> DUMMY_PED_COMP
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange, g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange)
|
|
OR bForceRestore = TRUE
|
|
// the item that forced the change is no longer equipped, restore hair + reset values
|
|
eHairToRestore = g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eStoredHairstyle
|
|
g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange = DUMMY_PED_COMP
|
|
g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange = COMP_TYPE_HAIR
|
|
CPRINTLN(DEBUG_PED_COMP, "Hair for ", eChar, " can now safely be reset to ", eHairToRestore, " bForceRestore = ", bForceRestore)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_HAIRNRM(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eHairToRestore, BOOL bForceRestore = FALSE)
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODELNRM(ePedModel)
|
|
IF g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange <> DUMMY_PED_COMP
|
|
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange, g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange)
|
|
OR bForceRestore = TRUE
|
|
// the item that forced the change is no longer equipped, restore hair + reset values
|
|
eHairToRestore = g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eStoredHairstyle
|
|
g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange = DUMMY_PED_COMP
|
|
g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange = COMP_TYPE_HAIR
|
|
CPRINTLN(DEBUG_PED_COMP, "Hair for ", eChar, " can now safely be reset to ", eHairToRestore, " bForceRestore = ", bForceRestore)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_HAIR(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eHairToRestore, BOOL bForceRestore = FALSE)
|
|
|
|
#if USE_CLF_DLC
|
|
if g_bLoadedClifford
|
|
return IS_SAFE_TO_RESTORE_SAVED_HAIRCLF(mPed,ePedModel,eHairToRestore,bForceRestore)
|
|
endif
|
|
#endif
|
|
#if USE_NRM_DLC
|
|
if g_bLoadedNorman
|
|
return IS_SAFE_TO_RESTORE_SAVED_HAIRNRM(mPed,ePedModel,eHairToRestore,bForceRestore)
|
|
endif
|
|
#endif
|
|
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODEL(ePedModel)
|
|
IF g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange <> DUMMY_PED_COMP
|
|
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange, g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange)
|
|
OR bForceRestore = TRUE
|
|
// the item that forced the change is no longer equipped, restore hair + reset values
|
|
eHairToRestore = g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eStoredHairstyle
|
|
g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange = DUMMY_PED_COMP
|
|
g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange = COMP_TYPE_HAIR
|
|
CPRINTLN(DEBUG_PED_COMP, "Hair for ", eChar, " can now safely be reset to ", eHairToRestore, " bForceRestore = ", bForceRestore)
|
|
RETURN TRUE
|
|
ELSE
|
|
//CPRINTLN(DEBUG_PED_COMP, "Force change item still equipped. ", GET_PED_COMP_TYPE_STRING(g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedHairChange), " item: ", g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedHairChange)
|
|
ENDIF
|
|
ELSE
|
|
//CPRINTLN(DEBUG_PED_COMP, "Hair for ", eChar, " isn't force changed at the moment.")
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the ped's beard is currently forced changed by an item
|
|
/// If so, checks if it is now safe to restore the saved beard
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_BEARDCLF(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eBeardToRestore)
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODELCLF(ePedModel)
|
|
IF g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange <> DUMMY_PED_COMP
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange, g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange)
|
|
// the item that forced the change is no longer equipped, restore beard + reset values
|
|
eBeardToRestore = g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eStoredBeard
|
|
g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange = DUMMY_PED_COMP
|
|
g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange = COMP_TYPE_BERD
|
|
CPRINTLN(DEBUG_PED_COMP, "Beard for ", eChar, " can now safely be reset to ", eBeardToRestore)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_BEARDNRM(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eBeardToRestore)
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODELNRM(ePedModel)
|
|
IF g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange <> DUMMY_PED_COMP
|
|
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange, g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange)
|
|
// the item that forced the change is no longer equipped, restore beard + reset values
|
|
eBeardToRestore = g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eStoredBeard
|
|
g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange = DUMMY_PED_COMP
|
|
g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange = COMP_TYPE_BERD
|
|
CPRINTLN(DEBUG_PED_COMP, "Beard for ", eChar, " can now safely be reset to ", eBeardToRestore)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_BEARD(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM &eBeardToRestore)
|
|
|
|
#if USE_CLF_DLC
|
|
if g_bLoadedClifford
|
|
return IS_SAFE_TO_RESTORE_SAVED_BEARDCLF(mPed,ePedModel,eBeardToRestore)
|
|
endif
|
|
#endif
|
|
#if USE_NRM_DLC
|
|
if g_bLoadedNorman
|
|
return IS_SAFE_TO_RESTORE_SAVED_BEARDNRM(mPed,ePedModel,eBeardToRestore)
|
|
endif
|
|
#endif
|
|
|
|
|
|
// check if we are now safe to restore the ped's stored hair (singleplayer only)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODEL(ePedModel)
|
|
IF g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange <> DUMMY_PED_COMP
|
|
|
|
// player's hair is currently force changed
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(mPed, g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange, g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange)
|
|
// the item that forced the change is no longer equipped, restore beard + reset values
|
|
eBeardToRestore = g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eStoredBeard
|
|
g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange = DUMMY_PED_COMP
|
|
g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange = COMP_TYPE_BERD
|
|
CPRINTLN(DEBUG_PED_COMP, "Beard for ", eChar, " can now safely be reset to ", eBeardToRestore)
|
|
RETURN TRUE
|
|
ELSE
|
|
//CPRINTLN(DEBUG_PED_COMP, "Beard Force change item still equipped. ", GET_PED_COMP_TYPE_STRING(g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eTypeThatForcedBeardChange), " item: ", g_savedGlobals.sPlayerData.sInfo.sVariations[eChar].eItemThatForcedBeardChange)
|
|
ENDIF
|
|
ELSE
|
|
//CPRINTLN(DEBUG_PED_COMP, "Beard for ", eChar, " isn't force changed at the moment.")
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// If the player equips a golf top or golf pants it becomes part of his golf outfit
|
|
PROC UPDATE_GOLF_OUTFIT(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
// is this item is a golf item, update the player's golf outfit
|
|
// only done after the player has unlocked the golf outfit
|
|
PED_COMP_NAME_ENUM eGolfOutfit
|
|
IF ePedModel = PLAYER_ZERO eGolfOutfit = OUTFIT_P0_GOLF
|
|
ELIF ePedModel = PLAYER_ONE eGolfOutfit = OUTFIT_P1_GOLF
|
|
ELIF ePedModel = PLAYER_TWO eGolfOutfit = OUTFIT_P2_GOLF
|
|
ENDIF
|
|
IF IS_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, COMP_TYPE_OUTFIT, eGolfOutfit)
|
|
IF IS_GOLF_ITEM(ePedModel, eType, eItem)
|
|
enumCharacterList eChar = GET_PLAYER_CHARACTER_FROM_MODEL(ePedModel)
|
|
IF eType = COMP_TYPE_TORSO
|
|
g_savedGlobals.sPlayerData.sInfo.eGolfTop[eChar] = eItem
|
|
CPRINTLN(DEBUG_PED_COMP, "Updating golf top for ", eChar, " to ", eItem)
|
|
|
|
ELIF eType = COMP_TYPE_LEGS
|
|
g_savedGlobals.sPlayerData.sInfo.eGolfPants[eChar] = eItem
|
|
CPRINTLN(DEBUG_PED_COMP, "Updating golf pants for ", eChar, " to ", eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Sets the current component item for the ped
|
|
FUNC BOOL SET_PED_COMP_ITEM_CURRENT_SP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bMustBeAvailable = TRUE, INT iPaletteOverride = -1, BOOL bUseGlobalOutfitData = FALSE, BOOL bPreviewing = FALSE, BOOL bReEquipAccessories = FALSE, INT iHairTint1 = -1, INT iHairTint2 = -1, INT iSlot = -1, BOOL bBlockTorsoDecal = FALSE, BOOL bForceOnSpawning=FALSE, BOOL bSkipTorsoUpdate = FALSE)
|
|
|
|
UNUSED_PARAMETER(iHairTint1)
|
|
UNUSED_PARAMETER(iHairTint2)
|
|
UNUSED_PARAMETER(iSlot)
|
|
UNUSED_PARAMETER(bSkipTorsoUpdate)
|
|
|
|
IF IS_PED_INJURED(ped)
|
|
OR eItem = DUMMY_PED_COMP
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
unused_parameter(bBlockTorsoDecal)
|
|
unused_parameter(bForceOnSpawning)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_PED_COMP_ITEM_CURRENT_SP: eType= ", GET_PED_COMP_TYPE_STRING(eType), " called by ", GET_THIS_SCRIPT_NAME())
|
|
|
|
// Set the depth so we can tell if we should be setting any requisites
|
|
g_iPedComponentNest++
|
|
|
|
INT i, j, k
|
|
|
|
PED_COMP_NAME_ENUM eRequisite
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
|
|
// items we may want to restore after outfit equip
|
|
PED_COMP_NAME_ENUM eSpecialItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eSpecial2Item = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eEyeProp = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eHeadProp = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eEarProp = DUMMY_PED_COMP
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
IF bUseGlobalOutfitData = FALSE
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// check ped can have this item
|
|
IF NOT CAN_PED_HAVE_PED_COMP_ITEM(bMustBeAvailable #IF IS_DEBUG_BUILD ,eItem, eType #ENDIF)
|
|
g_iPedComponentNest--
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// set SP only data
|
|
SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(eType)
|
|
ENDIF
|
|
|
|
// ------------ OUTFITS---------------------------------------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
|
|
// store some of the current items so that we can re-equip them after the outfit if possible
|
|
IF bReEquipAccessories = TRUE
|
|
|
|
// ----special items----
|
|
IF ePedModel = PLAYER_ONE
|
|
// Franklin's bandana mask is the only special item we keep
|
|
eSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL)
|
|
IF eSpecialItem <> SPECIAL_P1_MASK
|
|
eSpecialItem = DUMMY_PED_COMP
|
|
ENDIF
|
|
ENDIF
|
|
|
|
//------ special 2 items------
|
|
// Masks available from the shop are only special2 items we keep
|
|
eSpecial2Item = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL2)
|
|
IF ePedModel = PLAYER_ZERO
|
|
IF (eSpecial2Item >= SPECIAL2_P0_WRESTLER_MASK_0 AND eSpecial2Item <= SPECIAL2_P0_WRESTLER_MASK_5)
|
|
// store this item
|
|
ELSE
|
|
eSpecial2Item = DUMMY_PED_COMP
|
|
ENDIF
|
|
|
|
ELIF ePedModel = PLAYER_ONE
|
|
IF (eSpecial2Item >= SPECIAL2_P1_WRESTLER_MASK_0 AND eSpecial2Item <= SPECIAL2_P1_WRESTLER_MASK_5)
|
|
// store this item
|
|
ELSE
|
|
eSpecial2Item = DUMMY_PED_COMP
|
|
ENDIF
|
|
|
|
ELIF ePedModel = PLAYER_TWO
|
|
IF (eSpecial2Item >= SPECIAL2_P2_WRESTLER_MASK_0 AND eSpecial2Item <= SPECIAL2_P2_WRESTLER_MASK_5)
|
|
OR (eSpecial2Item >= SPECIAL2_P2_MASK_MONSTER_GREEN AND eSpecial2Item <= SPECIAL2_P2_MASK_MONSTER_RED)
|
|
// store this item
|
|
ELSE
|
|
eSpecial2Item = DUMMY_PED_COMP
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ---------eye props --------------------
|
|
// only keep glasses
|
|
eEyeProp = GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, ANCHOR_EYES)
|
|
IF NOT IS_ITEM_PAIR_OF_GLASSES(ePedModel, COMP_TYPE_PROPS, eEyeProp)
|
|
eEyeProp = DUMMY_PED_COMP
|
|
ENDIF
|
|
|
|
// ---------head props -------------------
|
|
// keep masks and hats
|
|
eHeadProp = GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, ANCHOR_HEAD)
|
|
IF NOT IS_ITEM_A_MASK(ePedModel, COMP_TYPE_PROPS, eHeadProp)
|
|
AND NOT IS_ITEM_A_HAT(ePedModel, COMP_TYPE_PROPS, eHeadProp)
|
|
eHeadProp = DUMMY_PED_COMP
|
|
ENDIF
|
|
|
|
// ---------ear props --------------------
|
|
// keep Franklin's earrings
|
|
IF ePedModel = PLAYER_ONE
|
|
eEarProp = GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, ANCHOR_EARS)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Always clear ped props so we dont go over prop limit
|
|
CLEAR_ALL_PED_PROPS(ped)
|
|
|
|
// get outfit info
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData
|
|
IF bUseGlobalOutfitData = TRUE
|
|
sOutfitData = g_sTempOutfitData
|
|
ELSE
|
|
sOutfitData= GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
ENDIF
|
|
|
|
// Set all the flagged component items
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
|
|
// -------PROP GROUP FOR OUTFIT---------------------------------
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_PROPGROUP
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData
|
|
IF bUseGlobalOutfitData = TRUE
|
|
sPropGroupData = g_sTempPropGroupData
|
|
ELSE
|
|
sPropGroupData= GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[i])
|
|
ENDIF
|
|
|
|
// Set all the flagged props
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(COMP_TYPE_PROPS)
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_SP(ped, ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j], INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//-------COMPONENT ITEM FOR OUTFIT---------------------------------------------
|
|
ELIF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) != COMP_TYPE_PROPS
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) != COMP_TYPE_OUTFIT
|
|
|
|
// hack for Franklin's balaclava
|
|
// it is a hair item that force changes hair
|
|
// so we have to save the hair info here, before we equip it
|
|
IF ePedModel = PLAYER_ONE
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_HAIR
|
|
AND sOutfitData.eItems[i] = HAIR_P1_MASK
|
|
CPRINTLN(DEBUG_PED_COMP, "Doing hair / mask hack for Franklin's balaclava.")
|
|
DOES_ITEM_FORCE_HAIR_CHANGE(ePedModel, COMP_TYPE_HAIR, HAIR_P1_MASK, eReturnItem)
|
|
ENDIF
|
|
|
|
//PRINTLN("Setting ", g_sTempCompData[1].iDrawable, ",", g_sTempCompData[1].iTexture, " for ped_component ", GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)))
|
|
IF iPaletteOverride = -1
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, GET_PED_PALETTE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))))
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, iPaletteOverride)
|
|
ENDIF
|
|
|
|
SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_SP(ped, ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i], INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF i != ENUM_TO_INT(COMP_TYPE_OUTFIT)
|
|
AND i != ENUM_TO_INT(COMP_TYPE_PROPS)
|
|
// Not required to set anything, but if current part is outfit only, grab the default
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), GET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)))
|
|
IF IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
|
|
IF i = ENUM_TO_INT(COMP_TYPE_HAIR)
|
|
IF ePedModel = PLAYER_ONE
|
|
// hack for Franklin's balaclava- hair item that force changes hair
|
|
CPRINTLN(DEBUG_PED_COMP, "Doing outfit change hair / mask hack for Franklin's balaclava.")
|
|
IF IS_SAFE_TO_RESTORE_SAVED_HAIR(ped, ePedModel, eReturnItem, TRUE)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_HAIR, eReturnItem, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
PED_COMP_OUTFIT_DATA_STRUCT sDefaultOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sDefaultOutfitData.eItems[i], FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// try to re-equip the stored accessories now
|
|
IF bReEquipAccessories = TRUE
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT mItemDetails
|
|
mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_SPECIAL, eSpecialItem)
|
|
IF eSpecialItem <> DUMMY_PED_COMP
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_SPECIAL, eSpecialItem, sOutfitData, mItemDetails)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_SPECIAL, eSpecialItem, bMustBeAvailable, iPaletteOverride, bUseGlobalOutfitData, bPreviewing, bReEquipAccessories)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_SPECIAL2, eSpecial2Item)
|
|
IF eSpecial2Item <> DUMMY_PED_COMP
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_SPECIAL2, eSpecial2Item, sOutfitData, mItemDetails)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_SPECIAL2, eSpecial2Item, bMustBeAvailable, iPaletteOverride, bUseGlobalOutfitData, bPreviewing, bReEquipAccessories)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, eEyeProp)
|
|
IF eEyeProp <> DUMMY_PED_COMP
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_PROPS, eEyeProp, sOutfitData, mItemDetails)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, eEyeProp, bMustBeAvailable, iPaletteOverride, bUseGlobalOutfitData, bPreviewing, bReEquipAccessories)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, eHeadProp)
|
|
IF eHeadProp <> DUMMY_PED_COMP
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_PROPS, eHeadProp, sOutfitData, mItemDetails)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, eHeadProp, bMustBeAvailable, iPaletteOverride, bUseGlobalOutfitData, bPreviewing, bReEquipAccessories)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, eEarProp)
|
|
IF eEarProp <> DUMMY_PED_COMP
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_OUTFIT(ePedModel, eItem, COMP_TYPE_PROPS, eEarProp, sOutfitData, mItemDetails)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_PROPS, eEarProp, bMustBeAvailable, iPaletteOverride, bUseGlobalOutfitData, bPreviewing, bReEquipAccessories)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ------PROP GROUP----------------------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
|
|
// Set all the flagged props
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(COMP_TYPE_PROPS)
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_SP(ped, ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j], INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
|
|
//------- PROP-------------------------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
SET_SP_PED_COMP_ITEM_NO_LONGER_NEW(eType)
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_SP(ped, ePedModel, eType, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
// ---------COMPONENT ITEM---------------------------------------------------------------
|
|
ELSE
|
|
//PRINTLN("***Setting ", g_sTempCompData[1].iDrawable, ",", g_sTempCompData[1].iTexture, " for ped_component ", GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
IF iPaletteOverride = -1
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, GET_PED_PALETTE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType)))
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, iPaletteOverride)
|
|
ENDIF
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_SP(ped, ePedModel, eType, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
IF bPreviewing = FALSE
|
|
UPDATE_GOLF_OUTFIT(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// --------------------HAIR / BEARD / MASKS RESTORE CHECK-------------------------------------
|
|
IF g_iPedComponentNest = 1
|
|
IF IS_SAFE_TO_RESTORE_SAVED_HAIR(ped, ePedModel, eReturnItem)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_HAIR, eReturnItem, FALSE)
|
|
ENDIF
|
|
IF IS_SAFE_TO_RESTORE_SAVED_BEARD(ped, ePedModel, eReturnItem)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_BERD, eReturnItem, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// item is now current
|
|
g_iPedComponentNest--
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_PARACHUTE_TEXTURE_FOR_MP(PED_INDEX ped, INT iBagIndex)
|
|
UNUSED_PARAMETER(ped)
|
|
|
|
// Texture order is based on the ped component assets that get exported.
|
|
|
|
SWITCH iBagIndex
|
|
// Disc
|
|
CASE 0 RETURN 0 BREAK // Classic Chute Bag
|
|
|
|
// mpPilot
|
|
CASE 1 RETURN 0 BREAK // USA Chute Bag
|
|
CASE 2 RETURN 1 BREAK // Australia Chute Bag
|
|
CASE 3 RETURN 2 BREAK // Brazil Chute Bag
|
|
CASE 4 RETURN 3 BREAK // Spain Chute Bag
|
|
CASE 5 RETURN 4 BREAK // Canada Chute Bag
|
|
CASE 6 RETURN 5 BREAK // France Chute Bag
|
|
CASE 7 RETURN 6 BREAK // Germany Chute Bag
|
|
CASE 8 RETURN 7 BREAK // Japan Chute Bag
|
|
CASE 9 RETURN 8 BREAK // Scotland Chute Bag
|
|
CASE 10 RETURN 9 BREAK // United Kingdom Chute Bag
|
|
CASE 11 RETURN 10 BREAK // Italy Chute Bag
|
|
CASE 12 RETURN 11 BREAK // Switzerland Chute Bag
|
|
CASE 13 RETURN 12 BREAK // High Flyer Chute Bag
|
|
CASE 14 RETURN 13 BREAK // Jamaica Chute Bag
|
|
CASE 15 RETURN 14 BREAK // Columbia Chute Bag
|
|
CASE 16 RETURN 15 BREAK // Norway Chute Bag
|
|
CASE 17 RETURN 16 BREAK // Sweden Chute Bag
|
|
CASE 18 RETURN 17 BREAK // Belgium Chute Bag
|
|
CASE 19 RETURN 18 BREAK // Mexico Chute Bag
|
|
CASE 20 RETURN 19 BREAK // Austria Chute Bag
|
|
CASE 21 RETURN 20 BREAK // Russian Federation Chute Bag
|
|
CASE 22 RETURN 21 BREAK // Argentina Chute Bag
|
|
CASE 23 RETURN 22 BREAK // Turkey Chute Bag
|
|
CASE 24 RETURN 23 BREAK // Ireland Chute Bag
|
|
CASE 25 RETURN 24 BREAK // Wales Chute Bag
|
|
CASE 26 RETURN 25 BREAK // England Chute Bag
|
|
|
|
// mpLTS
|
|
CASE 27 RETURN 0 BREAK // Finland Chute Bag
|
|
CASE 28 RETURN 1 BREAK // Denmark Chute Bag
|
|
CASE 29 RETURN 2 BREAK // Netherlands Chute Bag
|
|
CASE 30 RETURN 3 BREAK // Portugal Chute Bag
|
|
CASE 31 RETURN 4 BREAK // China Chute Bag
|
|
CASE 32 RETURN 5 BREAK // Croatia Chute Bag
|
|
CASE 33 RETURN 6 BREAK // Czech Republic Chute Bag
|
|
CASE 34 RETURN 7 BREAK // Hungary Chute Bag
|
|
CASE 35 RETURN 8 BREAK // Liechtenstein Chute Bag
|
|
CASE 36 RETURN 9 BREAK // Malta Chute Bag
|
|
CASE 37 RETURN 10 BREAK // New Zealand Chute Bag
|
|
CASE 38 RETURN 11 BREAK // Nigeria Chute Bag
|
|
CASE 39 RETURN 12 BREAK // Poland Chute Bag
|
|
CASE 40 RETURN 13 BREAK // Puerto Rico Chute Bag
|
|
CASE 41 RETURN 14 BREAK // Slovakia Chute Bag
|
|
CASE 42 RETURN 15 BREAK // Slovenia Chute Bag
|
|
CASE 43 RETURN 16 BREAK // South Africa Chute Bag
|
|
CASE 44 RETURN 17 BREAK // South Korea Chute Bag
|
|
CASE 45 RETURN 18 BREAK // Palestine Chute Bag
|
|
CASE 46 RETURN 19 BREAK // Israel Chute Bag
|
|
//CASE 47 RETURN 20 BREAK // Not used - Chile
|
|
//CASE 47 RETURN 21 BREAK // Not used - Greece
|
|
//CASE 47 RETURN 22 BREAK // Not used - Thailand
|
|
//CASE 47 RETURN 23 BREAK // Not used - Romania
|
|
//CASE 47 RETURN 24 BREAK // Not used - Egypt
|
|
//CASE 47 RETURN 25 BREAK // Not used - Hong Kong
|
|
|
|
// mpChristmas2
|
|
CASE 47 RETURN 0 BREAK // Black Combat Chute Bag
|
|
CASE 48 RETURN 1 BREAK // Gray Combat Chute Bag
|
|
CASE 49 RETURN 2 BREAK // Charcoal Combat Chute Bag
|
|
CASE 50 RETURN 3 BREAK // Tan Combat Chute Bag
|
|
CASE 51 RETURN 4 BREAK // Forest Combat Chute Bag
|
|
|
|
// mpJanuary2016
|
|
CASE 52 RETURN 0 BREAK // January 2016 Green
|
|
CASE 53 RETURN 1 BREAK // January 2016 Orange
|
|
CASE 54 RETURN 1 BREAK // January 2016 Purple
|
|
CASE 55 RETURN 2 BREAK // January 2016 Pink
|
|
CASE 56 RETURN 3 BREAK // January 2016 Red
|
|
CASE 57 RETURN 4 BREAK // January 2016 Blue
|
|
CASE 58 RETURN 5 BREAK // January 2016 Gray
|
|
CASE 59 RETURN 6 BREAK // January 2016 Brown
|
|
CASE 60 RETURN 7 BREAK // January 2016 White
|
|
CASE 61 RETURN 8 BREAK // January 2016 Black
|
|
|
|
// mpChristmas2018
|
|
CASE 62 RETURN 0 BREAK // India Chute Bag
|
|
CASE 63 RETURN 1 BREAK // Pakistan Chute Bag
|
|
|
|
// mpTuner
|
|
CASE 64 RETURN 0 BREAK // Sprunk
|
|
CASE 65 RETURN 1 BREAK // Halloween
|
|
CASE 66 RETURN 2 BREAK // eCola
|
|
|
|
// mpSum2
|
|
CASE 67 RETURN 0 BREAK // Junk Energy
|
|
ENDSWITCH
|
|
|
|
CASSERTLN(DEBUG_SHOPS, "GET_PARACHUTE_TEXTURE_FOR_MP - Bag index ", iBagIndex, " missing from lookup")
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(PED_INDEX ped, INT iBagIndex, PARACHUTE_BAG_ALT eBagAlt)
|
|
UNUSED_PARAMETER(ped)
|
|
|
|
// Drawable index is based on the ped component assets that get exported.
|
|
// See //depot/gta5/docs/art/Characters/GTAO/Global/Component_IDs_Male/GTAO_IDs_Male_HAND.xlsx for details.
|
|
|
|
SWITCH iBagIndex
|
|
// Disc
|
|
CASE 0 // Classic Chute Bag
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 1 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 2 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 3 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 4 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 5 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 6 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 7 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 8 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 19 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 48 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 62 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpPilot
|
|
CASE 1 // USA Chute Bag
|
|
CASE 2 // Australia Chute Bag
|
|
CASE 3 // Brazil Chute Bag
|
|
CASE 4 // Spain Chute Bag
|
|
CASE 5 // Canada Chute Bag
|
|
CASE 6 // France Chute Bag
|
|
CASE 7 // Germany Chute Bag
|
|
CASE 8 // Japan Chute Bag
|
|
CASE 9 // Scotland Chute Bag
|
|
CASE 10 // United Kingdom Chute Bag
|
|
CASE 11 // Italy Chute Bag
|
|
CASE 12 // Switzerland Chute Bag
|
|
CASE 13 // High Flyer Chute Bag
|
|
CASE 14 // Jamaica Chute Bag
|
|
CASE 15 // Columbia Chute Bag
|
|
CASE 16 // Norway Chute Bag
|
|
CASE 17 // Sweden Chute Bag
|
|
CASE 18 // Belgium Chute Bag
|
|
CASE 19 // Mexico Chute Bag
|
|
CASE 20 // Austria Chute Bag
|
|
CASE 21 // Russian Federation Chute Bag
|
|
CASE 22 // Argentina Chute Bag
|
|
CASE 23 // Turkey Chute Bag
|
|
CASE 24 // Ireland Chute Bag
|
|
CASE 25 // Wales Chute Bag
|
|
CASE 26 // England Chute Bag
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 10 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 11 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 12 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 13 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 14 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 15 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 16 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 17 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 18 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 49 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 64 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpLTS
|
|
CASE 27 // Finland Chute Bag
|
|
CASE 28 // Denmark Chute Bag
|
|
CASE 29 // Netherlands Chute Bag
|
|
CASE 30 // Portugal Chute Bag
|
|
CASE 31 // China Chute Bag
|
|
CASE 32 // Croatia Chute Bag
|
|
CASE 33 // Czech Republic Chute Bag
|
|
CASE 34 // Hungary Chute Bag
|
|
CASE 35 // Liechtenstein Chute Bag
|
|
CASE 36 // Malta Chute Bag
|
|
CASE 37 // New Zealand Chute Bag
|
|
CASE 38 // Nigeria Chute Bag
|
|
CASE 39 // Poland Chute Bag
|
|
CASE 40 // Puerto Rico Chute Bag
|
|
CASE 41 // Slovakia Chute Bag
|
|
CASE 42 // Slovenia Chute Bag
|
|
CASE 43 // South Africa Chute Bag
|
|
CASE 44 // South Korea Chute Bag
|
|
CASE 45 // Palestine Chute Bag
|
|
CASE 46 // Israel Chute Bag
|
|
//CASE 47 // Not used - Chile
|
|
//CASE 47 // Not used - Greece
|
|
//CASE 47 // Not used - Thailand
|
|
//CASE 47 // Not used - Romania
|
|
//CASE 47 // Not used - Egypt
|
|
//CASE 47 // Not used - Hong Kong
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 21 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 22 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 23 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 24 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 25 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 26 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 27 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 28 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 29 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 50 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 65 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpChristmas2
|
|
CASE 47 // Black Combat Chute Bag
|
|
CASE 48 // Gray Combat Chute Bag
|
|
CASE 49 // Charcoal Combat Chute Bag
|
|
CASE 50 // Tan Combat Chute Bag
|
|
CASE 51 // Forest Combat Chute Bag
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 31 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 32 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 33 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 34 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 35 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 36 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 37 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 38 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 39 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 51 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 66 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpJanuary2016
|
|
CASE 52 // January 2016 Green
|
|
CASE 53 // January 2016 Orange
|
|
CASE 54 // January 2016 Purple
|
|
CASE 55 // January 2016 Pink
|
|
CASE 56 // January 2016 Red
|
|
CASE 57 // January 2016 Blue
|
|
CASE 58 // January 2016 Gray
|
|
CASE 59 // January 2016 Brown
|
|
CASE 60 // January 2016 White
|
|
CASE 61 // January 2016 Black
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 52 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 53 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 54 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 55 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 56 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 57 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 58 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 59 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 60 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 61 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 69 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpChristmas2018
|
|
CASE 62 // India Chute Bag
|
|
CASE 63 // Pakistan Chute Bag
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 70 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 71 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 72 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 73 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 74 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 75 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 76 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 77 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 78 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 79 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 80 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// mpTuner
|
|
CASE 64 // Sprunk
|
|
CASE 65 // Halloween
|
|
CASE 66 // eCola
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 89 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 90 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 91 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 92 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 93 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 94 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 95 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 96 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 97 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 98 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 99 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
//mpSum2
|
|
CASE 67 // Junk Energy
|
|
SWITCH eBagAlt
|
|
CASE PARACHUTE_BAG_ALT01 RETURN 100 BREAK
|
|
CASE PARACHUTE_BAG_ALT02 RETURN 101 BREAK
|
|
CASE PARACHUTE_BAG_ALT03 RETURN 102 BREAK
|
|
CASE PARACHUTE_BAG_ALT04 RETURN 103 BREAK
|
|
CASE PARACHUTE_BAG_ALT05 RETURN 104 BREAK
|
|
CASE PARACHUTE_BAG_ALT06 RETURN 105 BREAK
|
|
CASE PARACHUTE_BAG_ALT07 RETURN 106 BREAK
|
|
CASE PARACHUTE_BAG_ALT08 RETURN 107 BREAK
|
|
CASE PARACHUTE_BAG_ALT09 RETURN 108 BREAK
|
|
CASE PARACHUTE_BAG_ALT10 RETURN 109 BREAK
|
|
CASE PARACHUTE_BAG_ALT11 RETURN 110 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
CASSERTLN(DEBUG_SHOPS, "GET_PARACHUTE_ALT_DRAWABLE_FOR_MP - Bag index ", iBagIndex, " with alt version, ", eBagAlt, " missing from lookup")
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_PARACHUTE_PALETTE_FOR_MP(PED_INDEX ped, INT iBagIndex)
|
|
UNUSED_PARAMETER(ped)
|
|
UNUSED_PARAMETER(iBagIndex)
|
|
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
FUNC INT PRIVATE_GetUncachedParachuteDrawableForMp(PED_INDEX ped #IF USE_TU_CHANGES, INT iBagIndex #ENDIF)
|
|
|
|
INT iUpperVariation = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
BOOL bHasArmor
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL2) != 0
|
|
bHasArmor = TRUE
|
|
ENDIF
|
|
|
|
MODEL_NAMES eModel = GET_ENTITY_MODEL(ped)
|
|
|
|
// If player is wearing the body armour then we need to query the accs.
|
|
#IF USE_TU_CHANGES
|
|
INT iSpecialHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_2, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_H4_DRAW_1, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_2 /m/ <!-- Ultralight Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_H4_DRAW_0, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_3 /m/ <!-- Light Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_4 /m/ <!-- Mid Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_5 /m/ <!-- Heavy Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_6 /m/ <!-- Extreme Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_2, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_2 /f/ <!-- Ultralight Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_H4_DRAW_0, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_H4_DRAW_1, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_3 /f/ <!-- Light Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_4, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_4 /f/ <!-- Mid Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_5, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_5 /f/ <!-- Heavy Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET+X17_DRAW_6 /f/ <!-- Extreme Strike Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - special:OVER_JACKET")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF IS_PED_WEARING_DUNGAREES(ped)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IS_PED_WEARING_DUNGAREES")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// We dont have one of the on-disk drawables to so we need to do the DLC checks!
|
|
#IF USE_TU_CHANGES
|
|
IF iUpperVariation > 15
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), iUpperVariation, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
|
|
#IF FEATURE_FIXER
|
|
// Specific tag set.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT01, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT02, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT03, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT04, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT05, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT05)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT06, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT07, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT08, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT09, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT09)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PARA_ALT11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// Dress needs to force a particular para.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HIPSTER_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HIPSTER_DRESS")
|
|
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MINI_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HIPSTER_DRESS")
|
|
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - DRESS")
|
|
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - PILOT_SUIT")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT09)
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_COMBAT_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - COMBAT_GEAR")
|
|
|
|
IF eModel = MP_M_FREEMODE_01
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET + BIKER_DRAW_5")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_32, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET + BIKER_DRAW_32")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET + BIKER_DRAW_33")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_30, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET + BIKER_DRAW_30")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HOODED_JACKET")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_COAT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT iLuxeDraw = GET_LUXE_DRAW_INDEX_FROM_LUXE_CLOTH(iDLCJbibHash, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
SWITCH iLuxeDraw
|
|
CASE 0 //leather fur jacket
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_DRAW_", iLuxeDraw, ", leather fur jacket")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
BREAK
|
|
CASE 2 //wool coat
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_DRAW_", iLuxeDraw, ", wool coat")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT09)
|
|
BREAK
|
|
DEFAULT
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_COAT [iLuxeDraw: ", iLuxeDraw, "]")
|
|
iUpperVariation = GET_DLC_DRAW_TAG(iDLCJbibHash)
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - luxe cloth drawable changed to ", iUpperVariation)
|
|
BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH iLuxeDraw
|
|
CASE 2 //trench coat
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_DRAW_", iLuxeDraw, ", trench coat")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
BREAK
|
|
|
|
DEFAULT
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_COAT [iLuxeDraw: ", iLuxeDraw, "]")
|
|
iUpperVariation = GET_DLC_DRAW_TAG(iDLCJbibHash)
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - luxe cloth drawable changed to ", iUpperVariation)
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_BOMB, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
//bomber
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_BOMB (LUXE_DRAW_7) bomber")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
//zipped bomber
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_BOMB (LUXE_DRAW_unknown) zipped bomber")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT iHeistDraw = GET_HEIST_DRAW_INDEX_FROM_HEIST_GEAR(iDLCJbibHash, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
SWITCH iHeistDraw
|
|
CASE 4
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw)
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
BREAK
|
|
CASE 5
|
|
IF eModel = MP_M_FREEMODE_01
|
|
//
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
BREAK
|
|
CASE 6
|
|
IF eModel = MP_M_FREEMODE_01
|
|
//
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
BREAK
|
|
CASE 7
|
|
IF eModel = MP_M_FREEMODE_01
|
|
//
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
BREAK
|
|
CASE 11
|
|
IF eModel = MP_M_FREEMODE_01
|
|
//
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
BREAK
|
|
CASE 12
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
BREAK
|
|
CASE 13
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw, " /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
BREAK
|
|
CASE 14
|
|
IF eModel = MP_M_FREEMODE_01
|
|
//
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_DRAW_", iHeistDraw)
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
BREAK
|
|
|
|
DEFAULT
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - HEIST_GEAR [iHeistDraw: ", iHeistDraw, "]")
|
|
iUpperVariation = GET_DLC_DRAW_TAG(iDLCJbibHash)
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - heist gear drawable changed to ", iUpperVariation)
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - XMAS2_DRAW_0")
|
|
|
|
IF eModel = MP_M_FREEMODE_01
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ELSE
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_0 /m/ <!-- Baggy T-Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_0 /f/ <!-- Tucked T-Shirt -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_1 /m/ <!-- Football Top -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_1 /f/ <!-- Loose Tank -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_2 /m/ <!-- Loose Polo -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_2 /f/ <!-- Baseball Tee -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_3 /m/ <!-- Baseball Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_3 /f/ <!-- Baseball Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_4 /m/ <!-- Windshirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_4 /f/ <!-- Windbreaker -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_5 /m/ <!-- Windbreaker Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_5 /f/ <!-- Sports Hoody -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_6 /m/ <!-- Sport Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT09)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_6 /f/ <!-- Sweater -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_7 /m/ <!-- Varsity (closed) -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_7 /f/ <!-- Crew Varsity Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JAN_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - AIR_DRAW_3 /m/ <!-- Flight Jacket open -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_8 /m/ <!-- Varsity (open) -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_8 /f/ <!-- Varsity Jacket (close) -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW_DRAW_9 /m/ <!-- Sweater -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_XMAS2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW_SWEAT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - XMAS2_DRAW_1 or LUXE_SWEAT")
|
|
|
|
IF eModel = MP_M_FREEMODE_01
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ENDIF
|
|
ELSE
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_0 /m/ <!-- Hippy Hoody -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT09)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_0 /m/ <!-- The Body Dress -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_5 /m/ <!-- Cross Check Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_1 /f/ <!-- Rolled Tee -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_2 /m/ <!-- Work Shirt -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_2 /f/ <!-- Work Shirt -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_3 /m/ <!-- Work Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_3 /f/ <!-- Open Check Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_4 /m/ <!-- Chore Coat -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_4 /f/ <!-- Closed Check Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_5 /m/ <!-- Cross Check Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_5 /f/ <!-- Chorse Coat -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_6 /m/ <!-- Open Check Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_6 /f/ <!-- Hippy Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_F_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_6 /f/ <!-- Frill Shirt -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_9 /f/ <!-- Football Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_3 /m/ <!-- Tucked Polo Shirts -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ENDIF
|
|
ELSE
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_5 /m/ <!-- Flying Bravo Hoodies -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_5 /f/ <!-- Flying Bravo / Liberty Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_8 /m/ <!-- Open Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_8 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_9 /m/ <!-- Continental Closed Jackets -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_9 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_10 /m/ <!-- FlyOpen Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_10 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_11 /m/ <!-- Closed Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_11 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_12 /m/ <!-- Gold Print Open Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_12 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_13 /m/ <!-- Closed Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_13 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_14 /m/ <!-- Loose Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_14 /f/ <!-- Loose Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_15 /m/ <!-- Quilted Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_15 /f/ <!-- Quilted Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_16 /m/ <!-- Oriental Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_16 /f/ <!-- Oriental Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_18 /m/ <!-- Sweater Vests -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_18 /f/ <!-- Sweater Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04) //will clip at sides
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_19 /m/ <!-- Leather Field Jackets -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_20 /f/ <!-- Leather Field Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_21 /m/ <!-- long suit jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_21 /f/ <!-- Polo Neck sweater -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_22 /m/ <!-- Tracksuit top -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_22 /f/ <!-- XXXXXX -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_24 /m/ <!-- cashmere -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_24 /f/ <!-- Tracksuit Top -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07) //there will be some clipping
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_25 /f/ <!-- Cashmere Coat -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_0 /m/ <!-- Firesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_0 /f/ <!-- Firesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_1 /m/ <!-- Racesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_1 /f/ <!-- Racesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_2 /m/ <!-- Stuntman -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_2 /f/ <!-- Stuntman -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_3 /m/ <!-- Tour Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_3 /f/ <!-- Tour Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_4 /m/ <!-- Retro Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_4 /f/ <!-- Retro Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_5 /m/ <!-- Motocross Jersey -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_5 /f/ <!-- Motocross Jersey -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_6 /m/ <!-- Satin Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_6 /f/ <!-- Satin Jacket -->")
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_7 /m/ <!-- Racing Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_7 /f/ <!-- Racing Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_8 /m/ <!-- Stuntman Shiny -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_8 /f/ <!-- Stuntman Shiny -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_9 /m/ <!-- Retro Jacket 2 -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - STUNT_DRAW_9 /f/ <!-- Retro Jacket 2 -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_0 /m/ <!-- Lthr Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_0 /f/ <!-- Lthr Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_1 /m/ <!-- Lthr Vest Defender -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_1 /f/ <!-- Lthr Vest Defender -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_2 /m/ <!-- Lthr Vest Dart -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_2 /f/ <!-- Lthr Vest Dart -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_3 /m/ <!-- Lthr Vest NoCollor -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_3 /f/ <!-- Lthr Vest NoCollor -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_4 /m/ <!-- Lthr Jacket A -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_4 /f/ <!-- Lthr Jacket A -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_5 /m/ <!-- Lthr Jacket A Sleeveless -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_5 /f/ <!-- Lthr Jacket A Sleeveless -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_6 /m/ <!-- Lthr Jacket Jean Style -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_6 /f/ <!-- Lthr Jacket Jean Style -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_7 /m/ <!-- Lthr Baseball Jersey -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_7 /f/ <!-- Lthr Baseball Jersey -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_8 /m/ <!-- Lthr Transform Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_8 /f/ <!-- Lthr Transform Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_9 /m/ <!-- Lthr Jacket B Open -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_9 /f/ <!-- Lthr Jacket B Open -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_10 /m/ <!-- Puffa Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_10 /f/ <!-- Puffa Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_11 /m/ <!-- Leather Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_11 /f/ <!-- Leather Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_12 /m/ <!-- Denim Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_12 /f/ <!-- Denim Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_13 /m/ <!-- Denim Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_13 /f/ <!-- Denim Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_14 /m/ <!-- Garbage Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_14 /f/ <!-- TShirt Cropped A -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_15 /m/ <!-- Denim Jacket Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_15 /f/ <!-- TShirt Cropped B -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_16 /m/ <!-- Denim Vest Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_16 /f/ <!-- TShirt Cropped C -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_17 /m/ <!-- Leather Jacket A Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_17 /f/ <!-- Shirt Cropped -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_18 /m/ <!-- Leather Jacket A Sleeveless Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_18 /f/ <!-- Garbage Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_19 /m/ <!-- Lthr Vest Dart Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_19 /f/ <!-- Leather Halter -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_20 /m/ <!-- Lthr Transform Vest Sleeveless -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_20 /f/ <!-- Denim Jacket Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_21 /m/ <!-- Tron -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_21 /f/ <!-- Denim Vest Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_22 /m/ <!-- Lthr Vest Overlay -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_22 /f/ <!-- Lthr Jacket A Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_23 /m/ <!-- Lthr Vest Defender Overlay -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_23 /f/ <!-- Lthr Jacket A Sleeveless patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_24 /m/ <!-- Lthr Jacket B Open Overlay -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_24 /f/ <!-- Lthr Vest Dart Patches -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_14 /m/ <!-- Garbage Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_25 /f/ <!-- Lthr Transform Vest Sleeveless -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_27 /m/ <!-- Closed Parka -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_28 /m/ <!-- Open Parka -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_30, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_30 /f/ <!-- Garbage Hoodie -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_32, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_32 /f/ <!-- Closed Parka -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_BIKER_DRAW_33, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - BIKER_DRAW_33 /f/ <!-- Open Parka -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_1 /m/ <!-- Hoodie Longline -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_1 /f/ <!-- Hoodie Longline -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_2 /m/ <!-- Parka Closed -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_2 /f/ <!-- Parka Closed -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_3 /m/ <!-- Parka Open -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_3 /f/ <!-- Parka Open -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_4 /m/ <!-- Crewneck Sweater -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_4 /f/ <!-- Crewneck Sweater -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_5 /m/ <!-- Puffa Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_5 /f/ <!-- Puffa Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - GUN_DRAW_19 /f/ <!-- Sleeveless Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - GUN_DRAW_20 /f/ <!-- Combat Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - GUN_DRAW_23 /f/ <!-- Sleeveless Puffer -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GUN_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - GUN_DRAW_24 /f/ <!-- Puffer -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMUG_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - SMUG_DRAW_2 /f/ <!-- Shortsleeve Shirt -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_AIR_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - AIR_DRAW_2 /f/ <!-- Flight Jacket -->")
|
|
iUpperVariation = 7
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_2 /m/ <!-- Scuba Gear -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_2 /f/ <!-- Scuba Gear -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_3 /m/ <!-- Tactical Blouson -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_3 /f/ <!-- Tactical Blouson Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_6 /f/ <!-- Tactical Sleeveless Vest -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_X17_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_7 /m/ <!-- Tactical Midlength -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - X17_DRAW_7 /f/ <!-- Tactical Midlength Jacket -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ASSAULT_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ASSAULT_DRAW_0 /m/ <!-- Classic Racing Suit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ASSAULT_DRAW_0 /f/ <!-- Classic Racing Suit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_DRAW_4 /m/ <!-- Crew Tee Untucked -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE_DRAW_4 /f/ <!-- Crew Tee Untucked -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 + ARENA_DRAW_14 /m/ <!-- RSRangers Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 + ARENA_DRAW_14 /f/ <!-- RSRangers Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELSE
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- Morphsuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- Morphsuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_3 /m/ <!-- Dystopia Wasteland -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_3 /f/ <!-- Dystopia Wasteland -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_4 /m/ <!-- Dystopian Leather -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_4 /f/ <!-- Dystopian Leather -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- Alien Body -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- Alien Body -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- Retro Space Suit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- Retro Space Suit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_5 /m/ <!-- Garbage Hoodie Hood-Down -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - APART_DRAW_5 /f/ <!-- Garbage Hoodie Hood-Down -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE2_DRAW_2 /m/ <!-- Sweater B -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE2_DRAW_2 /f/ <!-- Sweater B -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LOW2_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_9 /m/ <!-- Sports Jersey Tee -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LOW2_DRAW_9 /f/ <!-- Sports Jersey Tee -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- Modern Spacesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- Modern Spacesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_12 /m/ <!-- Racing Firsuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_12 /f/ <!-- Racing Firsuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- Pogo Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- Pogo Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- RSRangers Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- RSRangers Outfit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_IE_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /m/ <!-- SciFi Spacesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - IE_DRAW_15 /f/ <!-- SciFi Spacesuit -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE2_DRAW_2 /m/ <!-- Sweater B -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - LUXE2_DRAW_2 /f/ <!-- Sweater B -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_ARENA_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_17 /m/ <!-- Dystopia Military -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT11)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - ARENA_DRAW_17 /f/ <!-- Dystopia Military -->")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT10)
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND eModel = MP_F_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - VEST_SHIRT")
|
|
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND eModel = MP_F_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - TAILS_JACKET")
|
|
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - SMOKING_JACKET /m/")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - SMOKING_JACKET /f/")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CDEBUG1LN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp ", GET_MODEL_NAME_FOR_DEBUG(eModel), ", iBagIndex:", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - SILK_PYJAMAS or SILK_ROBE or SANTA_SUIT")
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
INT iPrevUpperVariation = iUpperVariation
|
|
iUpperVariation = GET_DLC_DRAW_TAG(iDLCJbibHash)
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - DLC drawable changed from ", iPrevUpperVariation, " to ", iUpperVariation, " for jbib \"", iDLCJbibHash, "\"")
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// Male
|
|
IF eModel = MP_M_FREEMODE_01
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - iUpperVariation ", iUpperVariation, ", iBagIndex ", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - /m/")
|
|
|
|
SWITCH iUpperVariation
|
|
CASE 0
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 1
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 2
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 3
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
BREAK
|
|
CASE 4
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
BREAK
|
|
CASE 5
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 6
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
BREAK
|
|
CASE 7
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
BREAK
|
|
CASE 8
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 9
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 10
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
BREAK
|
|
CASE 11
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
BREAK
|
|
CASE 12
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 13
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ENDIF
|
|
BREAK
|
|
CASE 14
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ENDIF
|
|
BREAK
|
|
CASE 15
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT05)
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Female
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "PRIVATE_GetUncachedParachuteDrawableForMp - iUpperVariation ", iUpperVariation, ", iBagIndex ", iBagIndex, PICK_STRING(bHasArmor, ", bHasArmor", ""), " - /f/")
|
|
|
|
SWITCH iUpperVariation
|
|
CASE 0
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 1
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 2
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT03)
|
|
ENDIF
|
|
BREAK
|
|
CASE 3
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT06)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT05)
|
|
ENDIF
|
|
BREAK
|
|
CASE 4
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 5
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 6
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 7
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 8
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 9
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
BREAK
|
|
CASE 10
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT07)
|
|
ENDIF
|
|
BREAK
|
|
CASE 11
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 12
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 13
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
CASE 14
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT08)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT04)
|
|
ENDIF
|
|
BREAK
|
|
CASE 15
|
|
IF bHasArmor
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT02)
|
|
ELSE
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01)
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
RETURN GET_PARACHUTE_ALT_DRAWABLE_FOR_MP(ped, iBagIndex, PARACHUTE_BAG_ALT01) // default to 1 otherwise we will keep taking a parachute off.
|
|
#ENDIF
|
|
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
PROC RESET_CACHED_PARACHUTE_DRAWABLE_FOR_MP_VARIABLES()
|
|
CPRINTLN(DEBUG_PED_COMP, "RESET_CACHED_PARACHUTE_DRAWABLE_FOR_MP_VARIABLES called from ", GET_THIS_SCRIPT_NAME())
|
|
g_bCachedArmourForParachuteDrawable = FALSE
|
|
g_iCachedBagIndexForParachuteDrawable = -1
|
|
g_iCachedSpecHashForParachuteDrawable = -1
|
|
g_iCachedJbibHashForParachuteDrawable = -1
|
|
g_iCachedLegsHashForParachuteDrawable = -1
|
|
|
|
g_iCachedParachuteDrawableForMP = -1
|
|
ENDPROC
|
|
|
|
FUNC INT GET_PARACHUTE_DRAWABLE_FOR_MP(PED_INDEX ped #IF USE_TU_CHANGES, INT iBagIndex #ENDIF)
|
|
|
|
INT iSpecDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL)
|
|
INT iJbibDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iLegsDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_LEG)
|
|
|
|
BOOL bHasArmor = (GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL2) != 0)
|
|
|
|
INT iSpecHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_SPECIAL), iSpecDraw, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
INT iJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), iJbibDraw, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
INT iLegsHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_LEG), iLegsDraw, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_LEG))
|
|
|
|
IF bHasArmor != g_bCachedArmourForParachuteDrawable
|
|
OR iBagIndex != g_iCachedBagIndexForParachuteDrawable
|
|
OR iSpecHash != g_iCachedSpecHashForParachuteDrawable
|
|
OR iJbibHash != g_iCachedJbibHashForParachuteDrawable
|
|
OR iLegsHash != g_iCachedLegsHashForParachuteDrawable
|
|
OR iSpecDraw != g_iCachedSpecDrawForParachuteDrawable
|
|
OR iJbibDraw != g_iCachedJbibDrawForParachuteDrawable
|
|
OR iLegsDraw != g_iCachedLegsDrawForParachuteDrawable
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
BOOL bPrevHasArmor = g_bCachedArmourForParachuteDrawable
|
|
INT iPrevBagIndex = g_iCachedBagIndexForParachuteDrawable
|
|
INT iPrevSpecHash = g_iCachedSpecHashForParachuteDrawable
|
|
INT iPrevJbibHash = g_iCachedJbibHashForParachuteDrawable
|
|
INT iPrevLegsHash = g_iCachedLegsHashForParachuteDrawable
|
|
INT iPrevSpecDraw = g_iCachedSpecDrawForParachuteDrawable
|
|
INT iPrevJbibDraw = g_iCachedJbibDrawForParachuteDrawable
|
|
INT iPrevLegsDraw = g_iCachedLegsDrawForParachuteDrawable
|
|
INT iPrevChuteDraw = g_iCachedParachuteDrawableForMP
|
|
#ENDIF
|
|
|
|
g_bCachedArmourForParachuteDrawable = bHasArmor
|
|
g_iCachedBagIndexForParachuteDrawable = iBagIndex
|
|
g_iCachedSpecHashForParachuteDrawable = iSpecHash
|
|
g_iCachedJbibHashForParachuteDrawable = iJbibHash
|
|
g_iCachedLegsHashForParachuteDrawable = iLegsHash
|
|
g_iCachedSpecDrawForParachuteDrawable = iSpecDraw
|
|
g_iCachedJbibDrawForParachuteDrawable = iJbibDraw
|
|
g_iCachedLegsDrawForParachuteDrawable = iLegsDraw
|
|
|
|
g_iCachedParachuteDrawableForMP = PRIVATE_GetUncachedParachuteDrawableForMp(ped #IF USE_TU_CHANGES, iBagIndex #ENDIF)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF bPrevHasArmor != g_bCachedArmourForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- bPrevHasArmor:", bPrevHasArmor, ", bHasArmor:", g_bCachedArmourForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevBagIndex != g_iCachedBagIndexForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevBagIndex:", iPrevBagIndex, ", iBagIndex:", g_iCachedBagIndexForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevSpecHash != g_iCachedSpecHashForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevSpecHash:", iPrevSpecHash, ", iSpecHash:", g_iCachedSpecHashForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevJbibHash != g_iCachedJbibHashForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevJbibHash:", iPrevJbibHash, ", iJbibHash:", g_iCachedJbibHashForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevLegsHash != g_iCachedLegsHashForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevLegsHash:", iPrevLegsHash, ", iLegsHash:", g_iCachedLegsHashForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevSpecDraw != g_iCachedSpecDrawForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevSpecDraw:", iPrevSpecDraw, ", iSpecDraw:", g_iCachedSpecDrawForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevJbibDraw != g_iCachedJbibDrawForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevJbibDraw:", iPrevJbibDraw, ", iJbibDraw:", g_iCachedJbibDrawForParachuteDrawable)
|
|
ENDIF
|
|
IF iPrevLegsDraw != g_iCachedLegsDrawForParachuteDrawable
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevLegsDraw:", iPrevLegsDraw, ", iLegsDraw:", g_iCachedLegsDrawForParachuteDrawable)
|
|
ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP -- iPrevChuteDraw:", iPrevChuteDraw, ", iParachuteDrawable:", g_iCachedParachuteDrawableForMP)
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_PARACHUTE_DRAWABLE_FOR_MP - g_iCachedParachuteDrawableForMP:", g_iCachedParachuteDrawableForMP)
|
|
RETURN g_iCachedParachuteDrawableForMP
|
|
ENDFUNC
|
|
|
|
FUNC MODEL_NAMES GET_MP_PARACHUTE_BAG_MODEL(INT iBagIndex)
|
|
IF iBagIndex > 66
|
|
RETURN reh_p_para_bag_reh_s_01a
|
|
ELIF iBagIndex > 63
|
|
RETURN INT_TO_ENUM(MODEL_NAMES, HASH("p_para_bag_tr_s_01a"))
|
|
ELIF iBagIndex > 61
|
|
RETURN INT_TO_ENUM(MODEL_NAMES, HASH("vw_p_para_bag_vine_s"))
|
|
ELIF iBagIndex > 51
|
|
RETURN lts_P_para_bag_Pilot2_S
|
|
ELIF iBagIndex > 46
|
|
RETURN P_para_bag_Xmas_S
|
|
ELIF iBagIndex > 26
|
|
RETURN lts_P_para_bag_LTS_S
|
|
ELIF iBagIndex > 0
|
|
RETURN lts_P_para_bag_Pilot2_S
|
|
ENDIF
|
|
RETURN P_Parachute_S
|
|
ENDFUNC
|
|
|
|
FUNC MODEL_NAMES GET_CURRENT_STORED_PARACHUTE_MODEL()
|
|
|
|
INT iParachutePack = GET_MP_INT_CHARACTER_STAT(MP_STAT_PARACHUTE_CURRENT_PACK)
|
|
MODEL_NAMES eParachuteBagModel = GET_MP_PARACHUTE_BAG_MODEL(iParachutePack)
|
|
|
|
RETURN eParachuteBagModel
|
|
ENDFUNC
|
|
|
|
PROC SET_MP_PARACHUTE_BAG_OVERRIDE(PLAYER_INDEX playerID, INT iBagIndex)
|
|
|
|
// Index range can be found in GET_GUNCLUB_WEAPON_TINT_DATA
|
|
|
|
MODEL_NAMES eParachuteBagModel = GET_MP_PARACHUTE_BAG_MODEL(iBagIndex)
|
|
|
|
IF eParachuteBagModel != P_Parachute_S
|
|
SET_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(playerID, ENUM_TO_INT(eParachuteBagModel))
|
|
ELSE
|
|
CLEAR_PLAYER_PARACHUTE_PACK_MODEL_OVERRIDE(playerID)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
FUNC INT GB_GET_ORGANISATION_PARACHUTE_TINT(INT bossStyle)
|
|
|
|
// g_sMagnateOutfitStruct.iBossStyle > ENUM_TO_INT(GB_BOSS_STYLE_NONE)
|
|
GB_MAGNATE_OUTFIT_BOSS_STYLE bossStyleenum = INT_TO_ENUM(GB_MAGNATE_OUTFIT_BOSS_STYLE, bossStyle)
|
|
PRINTLN("GB_GET_ORGANISATION_PARACHUTE_TINT", GB_OUTFITS_GET_BOSS_STYLE_STRING_FOR_HELP(bossStyleenum))
|
|
PRINTLN("GB_GET_ORGANISATION_PARACHUTE_TINT bossStyle = ", bossStyle)
|
|
SWITCH bossStyleenum
|
|
|
|
CASE GB_BOSS_STYLE_DRUG_BARON RETURN 9 BREAK // Desert Chute
|
|
CASE GB_BOSS_STYLE_EL_JEFE RETURN 9 BREAK // Desert Chute
|
|
CASE GB_BOSS_STYLE_MEDIA_MOGUL RETURN 3 BREAK // Widowmaker Chute
|
|
CASE GB_BOSS_STYLE_ENTREPRENEUR RETURN 3 BREAK // Widowmaker Chute
|
|
CASE GB_BOSS_STYLE_ARMS_DEALER RETURN 8 BREAK // Air Force Chute
|
|
CASE GB_BOSS_STYLE_INVESTOR RETURN 8 BREAK // Air Force Chute
|
|
CASE GB_BOSS_STYLE_MOB RETURN 11 BREAK // High Altitude Chute
|
|
CASE GB_BOSS_STYLE_KINGPIN RETURN 11 BREAK // High Altitude Chute
|
|
CASE GB_BOSS_STYLE_OLIGARCH RETURN 6 BREAK // BLACK Chute
|
|
CASE GB_BOSS_STYLE_OIL_MAGNATE RETURN 6 BREAK // BLACK Chute
|
|
CASE GB_BOSS_STYLE_SHIPPING RETURN 10 BREAK // Shadow Chute
|
|
CASE GB_BOSS_STYLE_SYNDICATE RETURN 10 BREAK // Shadow Chute
|
|
|
|
ENDSWITCH
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
PROC EQUIP_STORED_MP_PARACHUTE(PLAYER_INDEX playerID, INT iParachuteTint = -1, INT iBagIndex = -1)
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
RESET_CACHED_PARACHUTE_DRAWABLE_FOR_MP_VARIABLES()
|
|
|
|
PRINTLN("EQUIP_STORED_MP_PARACHUTE(", GET_PLAYER_NAME(playerID), ", iParachuteTint:", iParachuteTint, ", iBagIndex:", iBagIndex, ") from ", GET_THIS_SCRIPT_NAME())
|
|
|
|
IF iBagIndex = -1
|
|
iBagIndex = GET_MP_INT_CHARACTER_STAT(MP_STAT_PARACHUTE_CURRENT_PACK)
|
|
PRINTLN(" EQUIP_STORED_MP_PARACHUTE new iBagIndex:", iBagIndex)
|
|
ENDIF
|
|
SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE(playerID, PED_COMP_HAND, GET_PARACHUTE_DRAWABLE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex), GET_PARACHUTE_TEXTURE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex))
|
|
SET_PLAYER_PARACHUTE_PACK_TINT_INDEX(playerID, GET_PARACHUTE_PALETTE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex))
|
|
SET_PED_COMPONENT_VARIATION(GET_PLAYER_PED(playerID), PED_COMP_HAND, GET_PARACHUTE_DRAWABLE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex), GET_PARACHUTE_TEXTURE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex), GET_PARACHUTE_PALETTE_FOR_MP(GET_PLAYER_PED(playerID), iBagIndex))
|
|
IF iParachuteTint = -1
|
|
iParachuteTint = GET_MP_INT_CHARACTER_STAT(MP_STAT_PARACHUTE_CURRENT_TINT)
|
|
PRINTLN(" EQUIP_STORED_MP_PARACHUTE new iParachuteTint:", iParachuteTint)
|
|
ENDIF
|
|
|
|
IF GB_IS_LOCAL_PLAYER_MEMBER_OF_A_GANG(TRUE)
|
|
AND GB_OUTFITS_IS_PLAYER_WEARING_GANG_OUTFIT(playerID)
|
|
PRINTLN(" [KW WEAPONS]EQUIP_STORED_MP_PARACHUTE Got equipped GADGETTYPE_PARACHUTE is member of gang. Equiping gang parachute tint")
|
|
SET_PLAYER_PARACHUTE_CANOPY(playerID,GB_GET_ORGANISATION_PARACHUTE_TINT(g_sMagnateOutfitStruct.iBossStyle))
|
|
ELSE
|
|
SET_PLAYER_PARACHUTE_CANOPY(playerID, iParachuteTint)
|
|
ENDIF
|
|
|
|
IF IS_BIT_SET(g_FMMC_STRUCT.iOptionsMenuBitSetEighteen, ciOptionsBS18_ENABLE_TEAM_COLOUR_PARACHUTES)
|
|
SET_PLAYER_PARACHUTE_CANOPY(playerID, g_i_Mission_team, PARACHUTE_CANOPY_TEAM_COLOUR)
|
|
ENDIF
|
|
|
|
SET_MP_PARACHUTE_BAG_OVERRIDE(playerID, iBagIndex)
|
|
|
|
SET_PED_RESET_FLAG(GET_PLAYER_PED(playerID), PRF_DisableTakeOffParachutePack, TRUE)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC UPDATE_STORED_MP_PARACHUTE(INT iBagIndex, BOOL bUpdatePlayerDrawable)
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
RESET_CACHED_PARACHUTE_DRAWABLE_FOR_MP_VARIABLES()
|
|
|
|
PRINTLN("UPDATE_STORED_MP_PARACHUTE - Updating stored parachute bag to ", iBagIndex, " for script ", GET_THIS_SCRIPT_NAME())
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_PARACHUTE_CURRENT_PACK, iBagIndex)
|
|
SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE(PLAYER_ID(), PED_COMP_HAND, GET_PARACHUTE_DRAWABLE_FOR_MP(PLAYER_PED_ID(), iBagIndex), GET_PARACHUTE_TEXTURE_FOR_MP(PLAYER_PED_ID(), iBagIndex))
|
|
SET_MP_PARACHUTE_BAG_OVERRIDE(PLAYER_ID(), iBagIndex)
|
|
SET_PLAYER_PARACHUTE_PACK_TINT_INDEX(PLAYER_ID(), GET_PARACHUTE_PALETTE_FOR_MP(PLAYER_PED_ID(), iBagIndex))
|
|
|
|
IF bUpdatePlayerDrawable
|
|
AND NOT IS_PED_INJURED(PLAYER_PED_ID())
|
|
AND GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_HAND) != 0
|
|
EQUIP_STORED_MP_PARACHUTE(PLAYER_ID())
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: If you are changing the players hairdo it must go through this proc.
|
|
PROC SET_STORED_FM_HAIRDO(PED_COMP_NAME_ENUM eHair)
|
|
#IF IS_DEBUG_BUILD
|
|
DEBUG_PRINTCALLSTACK()
|
|
#ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_STORED_FM_HAIRDO - Hairdo getting set to ped comp ", eHair, " by script '", GET_THIS_SCRIPT_NAME(), "', slot=", g_iPedComponentSlot)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO, ENUM_TO_INT(eHair), g_iPedComponentSlot)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA, ENUM_TO_INT(eHair), g_iPedComponentSlot)
|
|
SET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT, TRUE)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:IS_SAFE_TO_RESTORE_SAVED_HAIR_MP
|
|
/// Checks if the ped's hair is currently forced changed by an item
|
|
/// If so, checks if it is now safe to restore the saved hair
|
|
FUNC BOOL IS_SAFE_TO_RESTORE_SAVED_HAIR_MP(PED_INDEX mPed, PED_COMP_NAME_ENUM &eHairToRestore)
|
|
|
|
#IF USE_TU_CHANGES
|
|
eHairToRestore = GET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_HAIR) // store current hair value as default incase the below fails (see 1690020)
|
|
#ENDIF
|
|
|
|
// check if we are now safe to restore the ped's stored hair
|
|
IF INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, g_iPedComponentSlot)) <> DUMMY_PED_COMP
|
|
AND HAS_IMPORTANT_STATS_LOADED()
|
|
#IF USE_TU_CHANGES
|
|
|
|
IF GET_CURRENT_HUD_STATE() = HUD_STATE_SELECT_CHARACTER_FM
|
|
PRINTLN("IS_SAFE_TO_RESTORE_SAVED_HAIR_MP - Allow in character selection screen")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
IF GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, g_iPedComponentSlot) = 0
|
|
AND GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_TYPE, g_iPedComponentSlot) = 0
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT, g_iPedComponentSlot)
|
|
IF GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA, g_iPedComponentSlot) = 0
|
|
PRINTLN("IS_SAFE_TO_RESTORE_SAVED_HAIR_MP - GET_MP_INT_CHARACTER_STAT not working!")
|
|
|
|
SCRIPT_ASSERT("IS_SAFE_TO_RESTORE_SAVED_HAIR_MP - Bald 1 ! Add a bug and send logs to Kenneth R.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ELSE
|
|
IF GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO, g_iPedComponentSlot) = 0
|
|
PRINTLN("IS_SAFE_TO_RESTORE_SAVED_HAIR_MP - GET_MP_INT_CHARACTER_STAT not working!")
|
|
SCRIPT_ASSERT("IS_SAFE_TO_RESTORE_SAVED_HAIR_MP - Bald 2! Add a bug and send logs to Kenneth R.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Forced hair item = ", GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, g_iPedComponentSlot))
|
|
|
|
// player's hair is currently force changed
|
|
PED_COMP_NAME_ENUM eItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, g_iPedComponentSlot))
|
|
PED_COMP_TYPE_ENUM eType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_TYPE, g_iPedComponentSlot))
|
|
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(mPed, eType, eItem)
|
|
// the item that forced the change is no longer equipped, restore hair + reset values
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT, g_iPedComponentSlot)
|
|
eHairToRestore = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA, g_iPedComponentSlot))
|
|
ELSE
|
|
eHairToRestore = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO, g_iPedComponentSlot))
|
|
ENDIF
|
|
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, ENUM_TO_INT(DUMMY_PED_COMP), g_iPedComponentSlot)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_TYPE, ENUM_TO_INT(COMP_TYPE_HAIR), g_iPedComponentSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, "Hair for FM can now safely be reset to ", eHairToRestore)
|
|
RETURN TRUE
|
|
ELSE
|
|
// CPRINTLN(DEBUG_PED_COMP, "Force change item still equipped. ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_TYPE, g_iPedComponentSlot))), " item: ", INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_FORCED_HAIR_ITEM, g_iPedComponentSlot)))
|
|
ENDIF
|
|
ELSE
|
|
// CPRINTLN(DEBUG_PED_COMP, "Hair for ", CHAR_MULTIPLAYER, " isn't force changed at the moment.")
|
|
ENDIF
|
|
|
|
|
|
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
#IF USE_TU_CHANGES
|
|
FUNC BOOL SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT(PED_INDEX pedID, BOOL bDirectorMode = FALSE)
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
// Drawable info obtained from GET_TORSO_DECAL_TATTOO_MP
|
|
INT iDrawable, iTexture
|
|
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB)
|
|
SWITCH iDrawable
|
|
CASE 0
|
|
SWITCH iTexture
|
|
CASE 1
|
|
CASE 3
|
|
CASE 5
|
|
CASE 7
|
|
CASE 4
|
|
CASE 8
|
|
CASE 11
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 1
|
|
SWITCH iTexture
|
|
CASE 3
|
|
CASE 5
|
|
CASE 6
|
|
CASE 8
|
|
CASE 4
|
|
CASE 14
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE 1 //Los Santos Belle V Neck
|
|
CASE 7 //Rockstar V Neck
|
|
CASE 12 //Red Skull V Neck
|
|
TATTOO_NAME_ENUM eTorsoDecal
|
|
eTorsoDecal = GET_TORSO_DECAL_TATTOO_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB))
|
|
|
|
IF (iTexture = 1 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
OR (iTexture = 7 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
OR (iTexture = 12 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 2
|
|
SWITCH iTexture
|
|
CASE 9
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE 5
|
|
IF NOT bDirectorMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo A!!")
|
|
RETURN NOT FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B) //Crew Emblem Small
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo B!!")
|
|
RETURN NOT FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo C!!")
|
|
RETURN NOT FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo D!!")
|
|
RETURN NOT FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo E!!")
|
|
RETURN NOT FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo F")
|
|
ELIF GB_IS_PLAYER_MEMBER_OF_A_BIKER_GANG(PLAYER_ID())
|
|
AND GlobalplayerBD_FM_3[NATIVE_TO_INT(PLAYER_ID())].sMagnateGangBossData.sGangOutfitData.iEmblemToDisplay != 0
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew emblem ", GlobalplayerBD_FM_3[NATIVE_TO_INT(PLAYER_ID())].sMagnateGangBossData.sGangOutfitData.iEmblemToDisplay, "!!")
|
|
RETURN NOT FALSE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo - no crew tattoo")
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") blocked for crew tattoo - bDirectorMode")
|
|
ENDIF
|
|
BREAK
|
|
|
|
DEFAULT
|
|
IF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMM_DLC
|
|
INT iDLCNameHash
|
|
iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eItem, COMP_TYPE_JBIB, 3)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") hash:", iDLCNameHash)
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") hash:", iDLCNameHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL)
|
|
SWITCH iDrawable
|
|
CASE 0
|
|
SWITCH iTexture
|
|
CASE 1
|
|
CASE 3
|
|
CASE 5
|
|
CASE 7
|
|
CASE 4
|
|
CASE 8
|
|
CASE 11
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 1
|
|
SWITCH iTexture
|
|
CASE 3
|
|
CASE 5
|
|
CASE 6
|
|
CASE 8
|
|
CASE 4
|
|
CASE 14
|
|
CASE 1
|
|
CASE 7
|
|
CASE 12
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 2
|
|
SWITCH iTexture
|
|
CASE 1
|
|
CASE 3
|
|
CASE 5
|
|
CASE 7
|
|
CASE 4
|
|
CASE 8
|
|
CASE 11
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 14
|
|
SWITCH iTexture
|
|
CASE 3
|
|
CASE 5
|
|
CASE 6
|
|
CASE 8
|
|
CASE 4
|
|
CASE 14
|
|
CASE 1
|
|
CASE 7
|
|
CASE 12
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
DEFAULT
|
|
IF iDrawable > 15
|
|
// Does the DLC SPECIAL with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_SPECIAL)
|
|
IF eItem >= SPECIAL_FMM_DLC
|
|
INT iDLCNameHash
|
|
iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eItem, COMP_TYPE_SPECIAL, 3)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ") hash:", iDLCNameHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB), ", ", GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB), ") SPECIAL (", GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL), ", ", GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL), ")")
|
|
ELIF GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01
|
|
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB)
|
|
SWITCH iDrawable
|
|
CASE 0
|
|
SWITCH iTexture
|
|
CASE 1 //Salamanders T-shirt [T-SHIRTS 9/13]
|
|
CASE 2 //The Feud T-Shirt [T-SHIRTS 6/13]
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") - t-shirt")
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE 7 //Los Santos Belle V Neck
|
|
CASE 4 //Rockstar V Neck
|
|
CASE 9 //Red Skull V Neck
|
|
TATTOO_NAME_ENUM eTorsoDecal
|
|
eTorsoDecal = GET_TORSO_DECAL_TATTOO_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB))
|
|
|
|
IF (iTexture = 7 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
OR (iTexture = 4 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
OR (iTexture = 9 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 2
|
|
SWITCH iTexture
|
|
CASE 0
|
|
CASE 1
|
|
CASE 2
|
|
CASE 3
|
|
CASE 4
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 3
|
|
SWITCH iTexture
|
|
CASE 14 //Pounders Hoodie
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 11
|
|
SWITCH iTexture
|
|
CASE 10
|
|
CASE 11
|
|
CASE 15
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
DEFAULT
|
|
IF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMF_DLC
|
|
INT iDLCNameHash
|
|
iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_F_FREEMODE_01, eItem, COMP_TYPE_JBIB, 4)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture,
|
|
") TAT_DECL: ", GET_STRING_FROM_BOOL(DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))),
|
|
", MULTI_DECAL: ", GET_STRING_FROM_BOOL(DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))),
|
|
", TAT_DECL_NO_SAVE, : ", GET_STRING_FROM_BOOL(DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))),
|
|
", COMBAT_TOP, : ", GET_STRING_FROM_BOOL(DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))))
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ") hash:", iDLCNameHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL)
|
|
SWITCH iDrawable
|
|
CASE 0 //Wearing Denim Jacket + T-shirt
|
|
SWITCH iTexture
|
|
CASE 1 //Salamanders T-shirt [T-SHIRTS 9/13]
|
|
CASE 2 //The Feud T-Shirt [T-SHIRTS 6/13]
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ") - t-shirt")
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE 7 //Los Santos Belle V Neck
|
|
CASE 4 //Rockstar V Neck
|
|
CASE 9 //Red Skull V Neck
|
|
TATTOO_NAME_ENUM eTorsoDecal
|
|
eTorsoDecal = GET_TORSO_DECAL_TATTOO_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB))
|
|
|
|
IF (iTexture = 7 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
OR (iTexture = 4 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
OR (iTexture = 9 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 1 //Wearing Track Jacket + T-shirt
|
|
SWITCH iTexture
|
|
CASE 1 //Salamanders T-shirt [T-SHIRTS 9/13]
|
|
CASE 2 //The Feud T-Shirt [T-SHIRTS 6/13]
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ") - t-shirt")
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE 7 //Los Santos Belle V Neck
|
|
CASE 4 //Rockstar V Neck
|
|
CASE 9 //Red Skull V Neck
|
|
TATTOO_NAME_ENUM eTorsoDecal
|
|
eTorsoDecal = GET_TORSO_DECAL_TATTOO_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB))
|
|
|
|
IF (iTexture = 7 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
OR (iTexture = 4 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
OR (iTexture = 9 AND eTorsoDecal = TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ", ", eTorsoDecal, ") - v-neck")
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 2
|
|
SWITCH iTexture
|
|
CASE 1
|
|
CASE 3
|
|
CASE 5
|
|
CASE 7
|
|
CASE 4
|
|
CASE 8
|
|
CASE 11
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 11
|
|
SWITCH iTexture
|
|
CASE 10 //Los Santos 01
|
|
CASE 11 //LS Racerback
|
|
CASE 15 //LC Penetrator
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE 14
|
|
SWITCH iTexture
|
|
CASE 3
|
|
CASE 5
|
|
CASE 6
|
|
CASE 8
|
|
CASE 4
|
|
CASE 14
|
|
CASE 1
|
|
CASE 7
|
|
CASE 12
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
DEFAULT
|
|
IF iDrawable > 15
|
|
// Does the DLC SPECIAL with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_SPECIAL)
|
|
IF eItem >= SPECIAL_FMF_DLC
|
|
INT iDLCNameHash
|
|
iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_F_FREEMODE_01, eItem, COMP_TYPE_SPECIAL, 4)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_COMBAT_TOP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 SPECIAL (", iDrawable, ", ", iTexture, ") hash:", iDLCNameHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_chest_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB), ", ", GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB), ") SPECIAL (", GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL), ", ", GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL), ")")
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL SHOULD_CREW_EMBLEMS_BE_BLOCKED_FOR_OUTFIT(PED_INDEX pedID)
|
|
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
int iTeamChosen = GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen
|
|
if iTeamChosen != -1
|
|
AND iTeamChosen < MAX_MISS_CONTROLER_TEAMS
|
|
IF GET_LOCAL_DEFAULT_OUTFIT(iTeamChosen)!= enum_to_int(OUTFIT_MP_DEFAULT ) //g_FMMC_STRUCT.iHeistOutfit
|
|
and GET_LOCAL_DEFAULT_OUTFIT(iTeamChosen)!= enum_to_int(OUTFIT_MP_FREEMODE)
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CREW_EMBLEMS_BE_BLOCKED_FOR_OUTFIT blocked because they are wearing a team outfit ")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_crew_emblems_be_blocked_for_outfit GET_LOCAL_DEFAULT_OUTFIT = OUTFIT_MP_DEFAULT or OUTFIT_MP_FREEMODE ")
|
|
ENDIF
|
|
else
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_crew_emblems_be_blocked_for_outfit iTeamChosen = -1")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
// Remove when player has bear chest.
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB) = 15 // Bare chest
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_CREW_EMBLEMS_BE_BLOCKED_FOR_OUTFIT blocked MP_M_FREEMODE_01 JBIB (15, 0)")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_crew_emblems_be_blocked_for_outfit")
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT_DM(PED_INDEX pedID)
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
INT iDrawable, iTexture
|
|
|
|
IF GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB)
|
|
|
|
IF iDrawable = 3
|
|
IF iTexture = 14
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT_DM (TRUE)- MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT(PED_INDEX pedID, INT iTShirtDecalHashOverride = -1)
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
INT iDrawable, iTexture, iTShirtDecalHash
|
|
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTShirtDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
IF iTShirtDecalHashOverride != -1
|
|
iTShirtDecalHash = iTShirtDecalHashOverride
|
|
ENDIF
|
|
|
|
IF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMM_DLC
|
|
INT iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eItem, COMP_TYPE_JBIB, 3)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
SWITCH iTShirtDecalHash
|
|
CASE HASH("MP_Elite_M_Tshirt_1")
|
|
CASE HASH("MP_Battle_Clothing_000_M")
|
|
CASE HASH("MP_Heist4_Tee_039_M")
|
|
CASE HASH("MP_Heist4_Tee_041_M")
|
|
CASE HASH("MP_Heist4_Tee_043_M")
|
|
CASE HASH("MP_Heist4_Tee_049_M")
|
|
CASE HASH("MP_Heist4_Tee_051_M")
|
|
CASE HASH("MP_Heist4_Tee_055_M")
|
|
CASE HASH("MP_Heist4_Tee_057_M")
|
|
CASE HASH("MP_Heist4_Tee_059_M")
|
|
CASE HASH("MP_Heist4_Tee_061_M")
|
|
CASE HASH("MP_Heist4_Tee_063_M")
|
|
CASE HASH("MP_Heist4_Tee_065_M")
|
|
CASE HASH("MP_Tuner_Tee_000_M")
|
|
CASE HASH("MP_Tuner_Tee_002_M")
|
|
CASE HASH("MP_Tuner_Tee_003_M")
|
|
CASE HASH("MP_Tuner_Tee_005_M")
|
|
CASE HASH("MP_Tuner_Tee_006_M")
|
|
CASE HASH("MP_Tuner_Tee_008_M")
|
|
CASE HASH("MP_Tuner_Tee_010_M")
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), iTShirtDecalHash: ", iTShirtDecalHash)
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, "), iDLCNameHash: ", iDLCNameHash, ", iTShirtDecalHash: ", iTShirtDecalHash)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), jacket")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, "), iDLCNameHash: ", iDLCNameHash, ", iTShirtDecalHash: ", iTShirtDecalHash)
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, "), iTShirtDecalHash: ", iTShirtDecalHash)
|
|
RETURN FALSE
|
|
ELIF GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTexture = GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB)
|
|
iTShirtDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
IF iTShirtDecalHashOverride != -1
|
|
iTShirtDecalHash = iTShirtDecalHashOverride
|
|
ENDIF
|
|
|
|
IF iDrawable = 3
|
|
IF iTexture = 14
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, ", ", iTexture, ")")
|
|
RETURN TRUE //JBIB_FMF_3_14, TATTOO_MP_FM_FTD_36
|
|
ENDIF
|
|
ELIF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMF_DLC
|
|
INT iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_F_FREEMODE_01, eItem, COMP_TYPE_JBIB, 4)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_TAT_DECL_NO_SAVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
SWITCH iTShirtDecalHash
|
|
CASE HASH("MP_Elite_F_Tshirt_1")
|
|
CASE HASH("MP_Battle_Clothing_000_F")
|
|
CASE HASH("MP_Heist4_Tee_039_F")
|
|
CASE HASH("MP_Heist4_Tee_041_F")
|
|
CASE HASH("MP_Heist4_Tee_043_F")
|
|
CASE HASH("MP_Heist4_Tee_049_F")
|
|
CASE HASH("MP_Heist4_Tee_051_F")
|
|
CASE HASH("MP_Heist4_Tee_055_F")
|
|
CASE HASH("MP_Heist4_Tee_057_F")
|
|
CASE HASH("MP_Heist4_Tee_059_F")
|
|
CASE HASH("MP_Heist4_Tee_061_F")
|
|
CASE HASH("MP_Heist4_Tee_063_F")
|
|
CASE HASH("MP_Heist4_Tee_065_F")
|
|
CASE HASH("MP_Tuner_Tee_000_F")
|
|
CASE HASH("MP_Tuner_Tee_002_F")
|
|
CASE HASH("MP_Tuner_Tee_003_F")
|
|
CASE HASH("MP_Tuner_Tee_005_F")
|
|
CASE HASH("MP_Tuner_Tee_006_F")
|
|
CASE HASH("MP_Tuner_Tee_008_F")
|
|
CASE HASH("MP_Tuner_Tee_010_F")
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), iTShirtDecalHash: ", iTShirtDecalHash)
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), jacket")
|
|
RETURN TRUE
|
|
ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", iDrawable, "), iDLCNameHash: ", iDLCNameHash, ", iTShirtDecalHash: ", iTShirtDecalHash)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", iDrawable, "), iTShirtDecalHash: ", iTShirtDecalHash)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_back_tattoos_be_blocked_for_outfit")
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT(PED_INDEX pedID)
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
|
|
INT iDrawable //, iTexture
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
IF (NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID) != INVALID_PLAYER_INDEX())
|
|
AND GB_OUTFITS_IS_PLAYER_WEARING_GANG_OUTFIT(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 gb outfits is player wearing gang outfit")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
#IF IS_DEBUG_BUILD
|
|
INT iTShirtDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
#ENDIF
|
|
IF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMM_DLC
|
|
INT iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eItem, COMP_TYPE_JBIB, 3)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), BIKER_DRAW_11 (Leather Hoodie)")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_17, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_18, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_20, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_27, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), BIKER_VEST")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), JUGG_SUIT")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), STUNT_DRAW_1")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), JUGG_SUIT")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_M_FREEMODE_01 JBIB (", iDrawable, "), X17_DRAW_6")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_torso_decals_be_blocked_for_outfit - MP_M_FREEMODE_01 JBIB (", iDrawable, "), iDLCNameHash: ", iDLCNameHash, ", iTShirtDecalHash: ", iTShirtDecalHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01
|
|
IF (NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID) != INVALID_PLAYER_INDEX())
|
|
AND GB_OUTFITS_IS_PLAYER_WEARING_GANG_OUTFIT(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 gb outfits is player wearing gang outfit")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB)
|
|
#IF IS_DEBUG_BUILD
|
|
INT iTShirtDecalHash = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
#ENDIF
|
|
IF iDrawable > 15
|
|
// Does the DLC JBIB with a tattoo decl?
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= JBIB_FMM_DLC
|
|
INT iDLCNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_F_FREEMODE_01, eItem, COMP_TYPE_JBIB, 4)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), BIKER_DRAW_11 (Leather Hoodie)")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_22, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_23, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_26, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_28, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_32, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), BIKER_VEST")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), JUGG_SUIT")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_STUNT_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), STUNT_DRAW_1")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_JUGG_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), JUGG_SUIT")
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_X17_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT - MP_F_FREEMODE_01 JBIB (", iDrawable, "), X17_DRAW_6")
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "not should_torso_decals_be_blocked_for_outfit - MP_F_FREEMODE_01 JBIB (", iDrawable, "), iDLCNameHash: ", iDLCNameHash, ", iTShirtDecalHash: ", iTShirtDecalHash)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_TATTOO_SAFE_TO_APPLY_DM(STRING sLabel, INT iCollection, INT iUpgradeGroup, BOOL bBlockChestTattoos, BOOL bBlockCrewEmblems, BOOL bBlockTorsoDecals, BOOL bBlockBackTattoos)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "-IS_TATTOO_SAFE_TO_APPLY_DM(\"", sLabel, "\", iUpgradeGroup:", DEBUG_get_string_from_namehash(iUpgradeGroup), ", bBlockChestTattoos: ", GET_STRING_FROM_BOOL(bBlockChestTattoos), ", bBlockCrewEmblems: ", GET_STRING_FROM_BOOL(bBlockCrewEmblems), ", bBlockTorsoDecals: ", GET_STRING_FROM_BOOL(bBlockTorsoDecals), ", bBlockBackTattoos: ", GET_STRING_FROM_BOOL(bBlockBackTattoos), "):", GET_STRING_FROM_TEXT_FILE(sLabel))
|
|
|
|
IF iCollection = HASH("mpDummy")
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM() FALSE!! mpDummy collection!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
SWITCH iUpgradeGroup
|
|
CASE HASH("CHEST_MID")
|
|
CASE HASH("SIDE_RIGHT")
|
|
CASE HASH("STOMACH_RIGHT")
|
|
CASE HASH("CHEST_LEFT")
|
|
CASE HASH("CHEST_RIGHT")
|
|
CASE HASH("CHEST_FULL")
|
|
CASE HASH("STOMACH_LEFT")
|
|
CASE HASH("STOMACH_MID")
|
|
CASE HASH("STOMACH FULL")
|
|
CASE HASH("TORSO_SIDE_LEFT")
|
|
CASE HASH("TORSO_SIDE_RIGHT")
|
|
CASE HASH("STOMACH_LOWER_LEFT")
|
|
CASE HASH("STOMACH_LOWER_RIGHT")
|
|
CASE HASH("CHEST_STOM")
|
|
CASE HASH("CHEST_STOM_FULL")
|
|
CASE HASH("STOMACH_FULL")
|
|
IF bBlockChestTattoos
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM(chest) FALSE!! blocked for bBlockChestTattoos!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("BACK_1")
|
|
CASE HASH("BACK_FULL_ARMS_FULL_BACK")
|
|
DEBUG_PRINTCALLSTACK()
|
|
|
|
IF bBlockBackTattoos
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM(back) FALSE!! blocked for bBlockBackTattoos!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("crewLogo")
|
|
IF bBlockCrewEmblems
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM(crewLogo) FALSE!! blocked for bBlockCrewEmblems!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE 0
|
|
CASE HASH("")
|
|
CASE HASH("rank")
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF DOES_TEXT_LABEL_EXIST(sLabel)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), ": IS_BLOCKED_CHEST_TATTOO_SAFE_TO_APPLY(\"", sLabel, "\", iUpgradeGroup:", iUpgradeGroup, ", bBlockChestTattoos: ", bBlockChestTattoos, ", bBlockCrewEmblems: ", bBlockCrewEmblems, ", bBlockTorsoDecals: ", bBlockTorsoDecals, "):", GET_STRING_FROM_TEXT_FILE(sLabel))
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), ": IS_UNKNOWN_BLOCKED_CHEST_TATTOO_SAFE_TO_APPLY(\"", sLabel, "\", iUpgradeGroup:", iUpgradeGroup, ", bBlockChestTattoos: ", bBlockChestTattoos, ", bBlockCrewEmblems: ", bBlockCrewEmblems, ", bBlockTorsoDecals: ", bBlockTorsoDecals, ")")
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF bBlockChestTattoos
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sLabel)
|
|
SWITCH GET_HASH_KEY(sLabel)
|
|
CASE HASH("TAT_FM_011") //Blackjack / TATTOO_MP_FM_ARMOURED_VAN_TAKEDOWN
|
|
CASE HASH("TAT_FM_012") //Hustler / TATTOO_MP_FM_HUSTLER
|
|
CASE HASH("TAT_FM_019") //Blank Scroll / TATTOO_MP_FM_REACH_RANK_1
|
|
CASE HASH("TAT_FM_020") //Embellished Scroll / TATTOO_MP_FM_REACH_RANK_2
|
|
CASE HASH("TAT_FM_021") //Seven Deadly Sins / TATTOO_MP_FM_REACH_RANK_3
|
|
CASE HASH("TAT_FM_218") //LS Flames / TATTOO_MP_FM_18
|
|
CASE HASH("TAT_FM_219") //Faith / TATTOO_MP_FM_19
|
|
CASE HASH("TAT_FM_220") //Los Santos Bills / TATTOO_MP_FM_20
|
|
CASE HASH("TAT_FM_225") //Flaming Cross / TATTOO_MP_FM_25
|
|
CASE HASH("TAT_FM_226") //LS Bold / TATTOO_MP_FM_26
|
|
CASE HASH("TAT_FM_230") //Trinity Knot / TATTOO_MP_FM_30
|
|
CASE HASH("TAT_FM_233") //Faith / TATTOO_MP_FM_33
|
|
CASE HASH("TAT_FM_235") //Flaming Shamrock / TATTOO_MP_FM_35
|
|
CASE HASH("TAT_FM_237") //Way of the Gun / TATTOO_MP_FM_37
|
|
CASE HASH("TAT_FM_245") //Stone Cross / TATTOO_MP_FM_45
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM(0) FALSE!! blocked FM tattoo!!")
|
|
RETURN FALSE
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("torsoDecal")
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM torsoDecal check (bBlockTorsoDecals:", GET_STRING_FROM_BOOL(bBlockTorsoDecals), ")")
|
|
IF bBlockTorsoDecals
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY_DM(torsoDecal) FALSE!! blocked for bBlockTorsoDecals!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
FUNC BOOL IS_TATTOO_SAFE_TO_APPLY(PED_INDEX pedID, STRING sLabel, TATTOO_NAME_ENUM eTattoo, INT iCollection, INT iUpgradeGroup, BOOL bBlockChestTattoos, BOOL bBlockCrewEmblems, BOOL bBlockTorsoDecals, BOOL bBlockBackTattoos)
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(pedID)
|
|
|
|
IF iUpgradeGroup = 0
|
|
TATTOO_GROUP_ENUM group = GET_TATTOO_GROUP_FROM_LABEL(ePedModel, sLabel, iUpgradeGroup)
|
|
iUpgradeGroup = GET_HASH_KEY(GET_STRING_FROM_TATTOO_GROUP(group))
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(eTattoo)
|
|
CPRINTLN(DEBUG_PED_COMP, "-IS_TATTOO_SAFE_TO_APPLY(\"", sLabel, "\" eTattoo:", eTattoo,
|
|
" (bitset:", GET_TATTOO_CURRENT_BITSET(eTattoo), ", bitindex:", GET_WEAPON_INDEX_BITSET(ENUM_TO_INT(eTattoo)), ") ",
|
|
DEBUG_get_string_from_namehash(iUpgradeGroup), PICK_STRING(bBlockChestTattoos, ", bBlockChestTattoos ", ""), PICK_STRING(bBlockCrewEmblems, ", bBlockCrewEmblems ", ""), PICK_STRING(bBlockTorsoDecals, ", bBlockTorsoDecals ", ""), PICK_STRING(bBlockBackTattoos, ", bBlockBackTattoos):", "):"), GET_STRING_FROM_TEXT_FILE(sLabel))
|
|
DEBUG_PRINTCALLSTACK()
|
|
|
|
IF iCollection = HASH("mpDummy")
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY() FALSE!! mpDummy collection!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
SWITCH iUpgradeGroup
|
|
CASE HASH("CHEST_FULL")
|
|
CASE HASH("CHEST_LEFT")
|
|
CASE HASH("CHEST_MID")
|
|
CASE HASH("CHEST_RIGHT")
|
|
CASE HASH("CHEST_STOM")
|
|
CASE HASH("CHEST_STOM_FULL")
|
|
CASE HASH("SIDE_RIGHT")
|
|
CASE HASH("TORSO_SIDE_LEFT")
|
|
CASE HASH("TORSO_SIDE_RIGHT")
|
|
CASE HASH("STOMACH FULL")
|
|
CASE HASH("STOMACH_FULL")
|
|
CASE HASH("STOMACH_LEFT")
|
|
CASE HASH("STOMACH_LOWER_LEFT")
|
|
CASE HASH("STOMACH_LOWER_RIGHT")
|
|
CASE HASH("STOMACH_MID")
|
|
CASE HASH("STOMACH_RIGHT")
|
|
IF bBlockChestTattoos
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for bBlockChestTattoos!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF (iUpgradeGroup = HASH("CHEST_FULL"))
|
|
OR (iUpgradeGroup = HASH("CHEST_MID") AND ePedModel = MP_F_FREEMODE_01)
|
|
OR (iUpgradeGroup = HASH("CHEST_RIGHT"))
|
|
OR (iUpgradeGroup = HASH("CHEST_STOM"))
|
|
OR (iUpgradeGroup = HASH("CHEST_STOM_FULL"))
|
|
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B) //Crew Emblem Small
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo D!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B) //Crew Emblem Small
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo D!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E) //Crew Emblem Large
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F) //Crew Emblem Back
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELIF (iUpgradeGroup = HASH("CHEST_LEFT"))
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B) //Crew Emblem Small
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo D!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B) //Crew Emblem Small
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo D!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) FALSE!! blocked for preview crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(chest) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELIF (iUpgradeGroup = HASH("STOMACH_FULL"))
|
|
OR (iUpgradeGroup = HASH("STOMACH_MID"))
|
|
OR (iUpgradeGroup = HASH("STOMACH_LEFT"))
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for crew tattoo A!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B) //Crew Emblem Large
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C) //Crew Emblem Large
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for crew tattoo D")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for preview crew tattoo A!!")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for preview crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C) //Crew Emblem Large
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for preview crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for preview crew tattoo D")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E) //Crew Emblem Large
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) FALSE!! blocked for preview crew tattoo E!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(stomach) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELIF (iUpgradeGroup = HASH("BACK_UPPER"))
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo A!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B) //Crew Emblem Large
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo B!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C) //Crew Emblem Large
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo C!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo D")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo E!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo A!!")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo B!!")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C) //Crew Emblem Large
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo C!!")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo D")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E) //Crew Emblem Large
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo E!!")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("BACK_1")
|
|
CASE HASH("BACK_FULL")
|
|
CASE HASH("BACK_FULL_ARMS_FULL_BACK")
|
|
CASE HASH("BACK_FULL_SHORT")
|
|
CASE HASH("BACK_LOWER")
|
|
// CASE HASH("BACK_LOWER_LEFT")
|
|
// CASE HASH("BACK_LOWER_MID")
|
|
// CASE HASH("BACK_LOWER_RIGHT")
|
|
CASE HASH("BACK_MID")
|
|
CASE HASH("BACK_UPPER")
|
|
CASE HASH("BACK_UPPER_LEFT")
|
|
CASE HASH("BACK_UPPER_RIGHT")
|
|
IF bBlockBackTattoos
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) FALSE!! blocked for bBlockBackTattoos!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo A")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo B")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) FALSE!! blocked for crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo D")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for crew tattoo E")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F) //Crew Emblem Back
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) FALSE!! blocked for crew tattoo F!!")
|
|
RETURN FALSE
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo A")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo B")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) FALSE!! blocked for preview crew tattoo C!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo D")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked for preview crew tattoo E")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F) //Crew Emblem Back
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) FALSE!! blocked for preview crew tattoo F!!")
|
|
RETURN FALSE
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(back) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("crewLogo")
|
|
IF bBlockBackTattoos
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for bBlockBackTattoos - crew tattoo C!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for preview bBlockBackTattoos - crew tattoo C!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
IF bBlockCrewEmblems
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for bBlockCrewEmblems!!")
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF bBlockChestTattoos
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
IF NOT ARE_STRINGS_EQUAL(sLabel, "TAT_FMM_CLB")
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for crew tattoo C ", sLabel, "!!")
|
|
RETURN FALSE
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for crew tattoo C ", sLabel)
|
|
ENDIF
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for crew tattoo D")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for crew tattoo E")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for preview crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for preview crew tattoo B!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
IF NOT ARE_STRINGS_EQUAL(sLabel, "TAT_FMM_CLB")
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for preview crew tattoo C ", sLabel, "!!")
|
|
RETURN FALSE
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for preview crew tattoo C ", sLabel)
|
|
ENDIF
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for preview crew tattoo D")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for preview crew tattoo E")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// IF ePedModel = MP_M_FREEMODE_01
|
|
//
|
|
// ELIF ePedModel = MP_F_FREEMODE_01
|
|
// IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
// CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(crewLogo) FALSE!! blocked for crew tattoo A!!")
|
|
// RETURN FALSE
|
|
// ENDIF
|
|
// ENDIF
|
|
BREAK
|
|
|
|
CASE 0
|
|
CASE HASH("")
|
|
CASE HASH("rank")
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF DOES_TEXT_LABEL_EXIST(sLabel)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), ": IS_BLOCKED_CHEST_TATTOO_SAFE_TO_APPLY(\"", sLabel, "\", iUpgradeGroup:", iUpgradeGroup, ", bBlockChestTattoos: ", bBlockChestTattoos, ", bBlockCrewEmblems: ", bBlockCrewEmblems, ", bBlockTorsoDecals: ", bBlockTorsoDecals, "):", GET_STRING_FROM_TEXT_FILE(sLabel))
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), ": IS_UNKNOWN_BLOCKED_CHEST_TATTOO_SAFE_TO_APPLY(\"", sLabel, "\", iUpgradeGroup:", iUpgradeGroup, ", bBlockChestTattoos: ", bBlockChestTattoos, ", bBlockCrewEmblems: ", bBlockCrewEmblems, ", bBlockTorsoDecals: ", bBlockTorsoDecals, ")")
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF bBlockChestTattoos
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(sLabel)
|
|
SWITCH GET_HASH_KEY(sLabel)
|
|
CASE HASH("TAT_FM_011") //Blackjack / TATTOO_MP_FM_ARMOURED_VAN_TAKEDOWN
|
|
CASE HASH("TAT_FM_012") //Hustler / TATTOO_MP_FM_HUSTLER
|
|
CASE HASH("TAT_FM_019") //Blank Scroll / TATTOO_MP_FM_REACH_RANK_1
|
|
CASE HASH("TAT_FM_020") //Embellished Scroll / TATTOO_MP_FM_REACH_RANK_2
|
|
CASE HASH("TAT_FM_021") //Seven Deadly Sins / TATTOO_MP_FM_REACH_RANK_3
|
|
CASE HASH("TAT_FM_218") //LS Flames / TATTOO_MP_FM_18
|
|
CASE HASH("TAT_FM_219") //Faith / TATTOO_MP_FM_19
|
|
CASE HASH("TAT_FM_220") //Los Santos Bills / TATTOO_MP_FM_20
|
|
CASE HASH("TAT_FM_225") //Flaming Cross / TATTOO_MP_FM_25
|
|
CASE HASH("TAT_FM_226") //LS Bold / TATTOO_MP_FM_26
|
|
CASE HASH("TAT_FM_230") //Trinity Knot / TATTOO_MP_FM_30
|
|
CASE HASH("TAT_FM_233") //Faith / TATTOO_MP_FM_33
|
|
CASE HASH("TAT_FM_235") //Flaming Shamrock / TATTOO_MP_FM_35
|
|
CASE HASH("TAT_FM_237") //Way of the Gun / TATTOO_MP_FM_37
|
|
CASE HASH("TAT_FM_245") //Stone Cross / TATTOO_MP_FM_45
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) FALSE!! blocked FM tattoo!!")
|
|
RETURN FALSE
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
|
|
IF NOT bBlockCrewEmblems
|
|
IF (g_eCurrentPreviewEmblem = INVALID_TATTOO)
|
|
IF NOT g_sShopSettings.bPreviewTattooMode
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo A!!")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo B")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo C")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo D")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo E")
|
|
ELIF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked - no crew tattoo")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_A)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) FALSE!! blocked for preview crew tattoo A!!")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_B)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for preview crew tattoo B")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_C)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) FALSE!! blocked for preview crew tattoo C")
|
|
RETURN FALSE
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_D)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for preview crew tattoo D")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_E)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for preview crew tattoo E")
|
|
ELIF (g_eCurrentPreviewEmblem = TATTOO_MP_FM_CREW_F)
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked for preview crew tattoo F")
|
|
ELSE
|
|
CDEBUG1LN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY(0) not blocked - no preview crew tattoo [", g_eCurrentPreviewEmblem, "]")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE HASH("torsoDecal")
|
|
IF bBlockTorsoDecals
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY torsoDecal FALSE!! blocked for bBlockTorsoDecals!!")
|
|
DEBUG_PRINTCALLSTACK()
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_TATTOO_SAFE_TO_APPLY torsoDecal \"", sLabel, "\" check (bBlockTorsoDecals:", GET_STRING_FROM_BOOL(bBlockTorsoDecals), "):", GET_STRING_FROM_TEXT_FILE(sLabel))
|
|
DEBUG_PRINTCALLSTACK()
|
|
BREAK
|
|
|
|
|
|
ENDSWITCH
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
#ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
/// PURPOSE:
|
|
/// Returns whether the jbib can be used with a non-decal based crew logo
|
|
FUNC BOOL CAN_JBIB_HAVE_CREW_LOGO(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eJbib, TATTOO_NAME_ENUM eCrewLogo)
|
|
|
|
IF NOT IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbib)
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
|
|
INT iDLCJbibCheck = -1
|
|
INT iDLCJbibNameHash = -1
|
|
IF eJbib >= JBIB_FMM_DLC
|
|
iDLCJbibNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbib, COMP_TYPE_JBIB, 3)
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibNameHash)
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND GET_LUXE_DRAW_INDEX_FROM_LUXE_CLOTH(iDLCJbibNameHash, ENUM_TO_INT(SHOP_PED_COMPONENT)) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with any Luxe tops.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND GET_LUXE2_DRAW_INDEX_FROM_LUXE_CLOTH(iDLCJbibNameHash, ENUM_TO_INT(SHOP_PED_COMPONENT)) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with any Luxe2 tops.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_NO_CREW_EMBLEM, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with this jbib.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash = HASH("DLC_MP_VAL_M_JBIB2_0")
|
|
OR iDLCJbibNameHash = HASH("DLC_MP_VAL_M_JBIB2_1")
|
|
OR iDLCJbibNameHash = HASH("DLC_MP_VAL_M_JBIB2_2")
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with valentine tops.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// male
|
|
IF (eJbib >= JBIB_FMM_0_0 AND eJbib <= JBIB_FMM_0_15)
|
|
OR (eJbib >= JBIB_FMM_1_0 AND eJbib <= JBIB_FMM_1_15)
|
|
OR (eJbib >= JBIB_FMM_8_0 AND eJbib <= JBIB_FMM_8_15)
|
|
OR iDLCJbibCheck = 0
|
|
OR iDLCJbibCheck = 1
|
|
OR iDLCJbibCheck = 8
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_C
|
|
RETURN TRUE // back logo is fine
|
|
|
|
ELIF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_B
|
|
// front logo only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Cant have front crew logo with this top: has a tshirt decal")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMM_5_0 AND eJbib <= JBIB_FMM_5_15)
|
|
OR iDLCJbibCheck = 5
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_D
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_E
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_F
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMM_9_0 AND eJbib <= JBIB_FMM_9_15)
|
|
OR iDLCJbibCheck = 9
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_C
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
|
|
INT iDLCJbibCheck = -1
|
|
INT iDLCJbibNameHash = -1
|
|
IF eJbib >= JBIB_FMF_DLC
|
|
iDLCJbibNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbib, COMP_TYPE_JBIB, 4)
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibNameHash)
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND GET_LUXE_DRAW_INDEX_FROM_LUXE_CLOTH(iDLCJbibNameHash, ENUM_TO_INT(SHOP_PED_COMPONENT)) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with any Luxe tops.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND GET_LUXE2_DRAW_INDEX_FROM_LUXE_CLOTH(iDLCJbibNameHash, ENUM_TO_INT(SHOP_PED_COMPONENT)) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with any Luxe2 tops.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF iDLCJbibNameHash != -1
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_NO_CREW_EMBLEM, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "Crew logos don't work with this jbib.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// female
|
|
IF (eJbib >= JBIB_FMF_0_0 AND eJbib <= JBIB_FMF_0_15)
|
|
OR iDLCJbibCheck = 0
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_C
|
|
// front logo only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Cant have front crew logo A/C with this top: has a tshirt decal")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_2_0 AND eJbib <= JBIB_FMF_2_15)
|
|
OR iDLCJbibCheck = 2
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
OR eCrewLogo = TATTOO_MP_FM_CREW_D
|
|
// front logo only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
RETURN TRUE
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Cant have front crew logo A/D with this top: has a tshirt decal")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_4_0 AND eJbib <= JBIB_FMF_4_15)
|
|
OR iDLCJbibCheck = 4
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_C
|
|
IF iDLCJbibCheck != 4 OR NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_TAT_DECL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_5_0 AND eJbib <= JBIB_FMF_5_15)
|
|
OR iDLCJbibCheck = 05
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_A
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_9_0 AND eJbib <= JBIB_FMF_9_15)
|
|
OR iDLCJbibCheck = 09
|
|
IF eCrewLogo = TATTOO_MP_FM_CREW_B
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the int value of the tattoo enum used with this jbib
|
|
/// iOption - each jbib can have a max of 3 options (small, large, back)
|
|
/// this corresponds to the order they will appear in shop menu
|
|
FUNC TATTOO_NAME_ENUM GET_TATTOO_FROM_JBIB(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eJbib, INT iOption)
|
|
|
|
IF NOT IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbib)
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
|
|
INT iDLCJbibCheck = -1
|
|
IF eJbib >= JBIB_FMM_DLC
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbib, COMP_TYPE_JBIB, 3))
|
|
ENDIF
|
|
|
|
// male
|
|
IF (eJbib >= JBIB_FMM_0_0 AND eJbib <= JBIB_FMM_0_15)
|
|
OR (eJbib >= JBIB_FMM_1_0 AND eJbib <= JBIB_FMM_1_15)
|
|
OR (eJbib >= JBIB_FMM_8_0 AND eJbib <= JBIB_FMM_8_15)
|
|
OR iDLCJbibCheck = 0
|
|
OR iDLCJbibCheck = 1
|
|
OR iDLCJbibCheck = 8
|
|
// front logos only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
// no logo, all 3 options available
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_B
|
|
ELIF iOption = 2 RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
ELSE
|
|
// jbib has logo, only back option available
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMM_5_0 AND eJbib <= JBIB_FMM_5_15)
|
|
OR iDLCJbibCheck = 5
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_D
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_E
|
|
ELIF iOption = 2 RETURN TATTOO_MP_FM_CREW_F
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMM_9_0 AND eJbib <= JBIB_FMM_9_15)
|
|
OR iDLCJbibCheck = 9
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
|
|
INT iDLCJbibCheck = -1
|
|
IF eJbib >= JBIB_FMM_DLC
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eJbib, COMP_TYPE_JBIB, 4))
|
|
ENDIF
|
|
|
|
// female
|
|
IF (eJbib >= JBIB_FMF_0_0 AND eJbib <= JBIB_FMF_0_15)
|
|
OR iDLCJbibCheck = 0
|
|
// front logos only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
// no logo, all 3 options available
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_2_0 AND eJbib <= JBIB_FMF_2_15)
|
|
OR iDLCJbibCheck = 2
|
|
// front logos only used if no decal on this jbib
|
|
IF GET_TORSO_DECAL_TATTOO_MP(ePedModel, COMP_TYPE_JBIB, eJbib) = INVALID_TATTOO
|
|
// no logo, all 3 options available
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_D
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_4_0 AND eJbib <= JBIB_FMF_4_15)
|
|
OR iDLCJbibCheck = 4
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ELIF iOption = 1 RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_5_0 AND eJbib <= JBIB_FMF_5_15)
|
|
OR iDLCJbibCheck = 5
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_A
|
|
ENDIF
|
|
|
|
ELIF (eJbib >= JBIB_FMF_9_0 AND eJbib <= JBIB_FMF_9_15)
|
|
OR iDLCJbibCheck = 9
|
|
IF iOption = 0 RETURN TATTOO_MP_FM_CREW_B
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
RETURN INVALID_TATTOO
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Looks up the current jbib of the ped passed in, and gets the corresponding crew logo.
|
|
/// PARAMS:
|
|
/// ePedModel - model of the ped
|
|
/// mPed - index to the ped
|
|
/// iOption - each jbib can have a max of 3 options (small, large, back)
|
|
/// this corresponds to the order they will appear in shop menu
|
|
/// RETURNS:
|
|
/// the crew logo tattoo that appears at this point in the clothes shop menu for this jbib
|
|
FUNC TATTOO_NAME_ENUM GET_TATTOO_FROM_CURRENT_JBIB(MODEL_NAMES ePedModel, PED_INDEX mPed, INT iOption)
|
|
PED_COMP_NAME_ENUM eCurrentJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB)
|
|
RETURN GET_TATTOO_FROM_JBIB(ePedModel, eCurrentJbib, iOption)
|
|
ENDFUNC
|
|
|
|
FUNC TATTOO_NAME_ENUM GET_CURRENT_CREW_LOGO_TATTOO()
|
|
|
|
INT iSlot = g_iPedComponentSlot
|
|
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_A
|
|
ENDIF
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_B
|
|
ENDIF
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_C
|
|
ENDIF
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_D
|
|
ENDIF
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_E
|
|
ENDIF
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, iSlot)
|
|
RETURN TATTOO_MP_FM_CREW_F
|
|
ENDIF
|
|
|
|
RETURN INVALID_TATTOO
|
|
ENDFUNC
|
|
|
|
FUNC BOOL HANDLE_CREW_LOGO_TATTOOS(MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eNonJacketJbib)
|
|
TATTOO_NAME_ENUM eCrewLogo
|
|
|
|
eCrewLogo = GET_CURRENT_CREW_LOGO_TATTOO()
|
|
IF eCrewLogo <> INVALID_TATTOO
|
|
CPRINTLN(DEBUG_PED_COMP, "Player has a current crew logo tattoo: ", eCrewLogo)
|
|
IF NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eNonJacketJbib, eCrewLogo)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "HANDLE_CREW_LOGO_TATTOOS : Crew logo not compatible with JBIB, removing")
|
|
//REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(GET_HASH_KEY("crewLogo"), mPed)
|
|
SET_MP_TATTOO_CURRENT(eCrewLogo, FALSE, g_iPedComponentSlot)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
#ENDIF
|
|
|
|
PROC ADD_SECONDARY_PED_DECORATION_FROM_HASHES(PED_INDEX pedID, INT iCollection, INT iPreset)
|
|
SWITCH iCollection
|
|
#IF FEATURE_FIXER
|
|
CASE HASH("mpSecurity_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Security_Tee_000_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSecurity_overlays"), HASH("MP_Security_Tee_001_M")) BREAK
|
|
|
|
CASE HASH("MP_Security_Tee_000_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSecurity_overlays"), HASH("MP_Security_Tee_001_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
#ENDIF
|
|
#IF FEATURE_TUNER
|
|
CASE HASH("mpTuner_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Tuner_Tee_000_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_001_M")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_002_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_003_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_004_M")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_005_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_006_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_008_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_009_M")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_010_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_009_M")) BREAK
|
|
|
|
CASE HASH("MP_Tuner_Tee_000_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_001_F")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_002_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_003_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_004_F")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_005_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_006_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_007_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_008_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_009_F")) BREAK
|
|
CASE HASH("MP_Tuner_Tee_010_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpTuner_overlays"), HASH("MP_Tuner_Tee_009_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
#ENDIF
|
|
CASE HASH("mpHeist4_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Heist4_Tee_039_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_040_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_041_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_042_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_043_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_044_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_049_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_050_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_051_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_052_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_055_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_056_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_057_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_058_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_059_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_060_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_061_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_062_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_063_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_064_M")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_065_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_066_M")) BREAK
|
|
|
|
CASE HASH("MP_Heist4_Tee_039_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_040_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_041_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_042_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_043_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_044_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_049_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_050_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_051_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_052_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_055_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_056_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_057_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_058_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_059_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_060_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_061_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_062_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_063_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_064_F")) BREAK
|
|
CASE HASH("MP_Heist4_Tee_065_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist4_overlays"), HASH("MP_Heist4_Tee_066_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpVinewood_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("CasinoTop_M_0") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_000_M")) BREAK
|
|
CASE HASH("CasinoTop_M_1") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_001_M")) BREAK
|
|
CASE HASH("CasinoTop_M_2") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_001_M")) BREAK
|
|
CASE HASH("CasinoTop_M_3") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_002_M")) BREAK
|
|
CASE HASH("CasinoTop_M_4") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_002_M")) BREAK
|
|
CASE HASH("CasinoTop_M_5") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_003_M")) BREAK
|
|
CASE HASH("CasinoTop_M_6") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_003_M")) BREAK
|
|
CASE HASH("CasinoTop_M_7") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_004_M")) BREAK
|
|
CASE HASH("CasinoTop_M_8") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_005_M")) BREAK
|
|
CASE HASH("CasinoTop_M_9") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_006_M")) BREAK
|
|
CASE HASH("CasinoTop_M_10") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_006_M")) BREAK
|
|
CASE HASH("CasinoTop_M_11") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_007_M")) BREAK
|
|
CASE HASH("CasinoTop_M_12") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_008_M")) BREAK
|
|
CASE HASH("CasinoTop_M_13") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_009_M")) BREAK
|
|
CASE HASH("CasinoTop_M_14") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_010_M")) BREAK
|
|
CASE HASH("CasinoTop_M_15") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_011_M")) BREAK
|
|
CASE HASH("CasinoTop_M_16") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_012_M")) BREAK
|
|
CASE HASH("CasinoTop_M_17") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_013_M")) BREAK
|
|
CASE HASH("CasinoTop_M_18") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_014_M")) BREAK
|
|
CASE HASH("CasinoTop_M_19") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_015_M")) BREAK
|
|
CASE HASH("CasinoTop_M_20") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_016_M")) BREAK
|
|
CASE HASH("CasinoTop_M_21") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_017_M")) BREAK
|
|
CASE HASH("CasinoTop_M_22") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_017_M")) BREAK
|
|
CASE HASH("CasinoTop_M_23") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_018_M")) BREAK
|
|
CASE HASH("CasinoTop_M_24") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_019_M")) BREAK
|
|
CASE HASH("CasinoTop_M_25") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_019_M")) BREAK
|
|
CASE HASH("CasinoTop_M_26") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_020_M")) BREAK
|
|
CASE HASH("CasinoTop_M_27") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_021_M")) BREAK
|
|
CASE HASH("CasinoTop_M_28") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_021_M")) BREAK
|
|
CASE HASH("CasinoTop_M_29") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_022_M")) BREAK
|
|
CASE HASH("CasinoTop_M_30") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_022_M")) BREAK
|
|
CASE HASH("CasinoTop_M_31") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_023_M")) BREAK
|
|
CASE HASH("CasinoTop_M_32") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_023_M")) BREAK
|
|
CASE HASH("CasinoTop_M_33") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_024_M")) BREAK
|
|
CASE HASH("CasinoTop_M_34") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_024_M")) BREAK
|
|
CASE HASH("CasinoTop_M_35") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_025_M")) BREAK
|
|
CASE HASH("CasinoTop_M_36") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_025_M")) BREAK
|
|
CASE HASH("CasinoTop_M_37") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_026_M")) BREAK
|
|
CASE HASH("CasinoTop_M_38") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_026_M")) BREAK
|
|
CASE HASH("CasinoTop_M_39") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_027_M")) BREAK
|
|
CASE HASH("CasinoTop_M_40") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_027_M")) BREAK
|
|
CASE HASH("CasinoTop_M_41") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_028_M")) BREAK
|
|
CASE HASH("CasinoTop_M_42") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_028_M")) BREAK
|
|
CASE HASH("CasinoTop_M_43") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_029_M")) BREAK
|
|
CASE HASH("CasinoTop_M_44") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_029_M")) BREAK
|
|
ENDSWITCH
|
|
SWITCH iPreset
|
|
CASE HASH("CasinoTop_F_0") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_000_F")) BREAK
|
|
CASE HASH("CasinoTop_F_1") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_001_F")) BREAK
|
|
CASE HASH("CasinoTop_F_2") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_001_F")) BREAK
|
|
CASE HASH("CasinoTop_F_3") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_002_F")) BREAK
|
|
CASE HASH("CasinoTop_F_4") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_002_F")) BREAK
|
|
CASE HASH("CasinoTop_F_5") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_003_F")) BREAK
|
|
CASE HASH("CasinoTop_F_6") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_003_F")) BREAK
|
|
CASE HASH("CasinoTop_F_7") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_004_F")) BREAK
|
|
CASE HASH("CasinoTop_F_8") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_005_F")) BREAK
|
|
CASE HASH("CasinoTop_F_9") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_006_F")) BREAK
|
|
CASE HASH("CasinoTop_F_10") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_006_F")) BREAK
|
|
CASE HASH("CasinoTop_F_11") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_007_F")) BREAK
|
|
CASE HASH("CasinoTop_F_12") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_008_F")) BREAK
|
|
CASE HASH("CasinoTop_F_13") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_009_F")) BREAK
|
|
CASE HASH("CasinoTop_F_14") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_010_F")) BREAK
|
|
CASE HASH("CasinoTop_F_15") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_011_F")) BREAK
|
|
CASE HASH("CasinoTop_F_16") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_012_F")) BREAK
|
|
CASE HASH("CasinoTop_F_17") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_013_F")) BREAK
|
|
CASE HASH("CasinoTop_F_18") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_014_F")) BREAK
|
|
CASE HASH("CasinoTop_F_19") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_015_F")) BREAK
|
|
CASE HASH("CasinoTop_F_20") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_016_F")) BREAK
|
|
CASE HASH("CasinoTop_F_21") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_017_F")) BREAK
|
|
CASE HASH("CasinoTop_F_22") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_017_F")) BREAK
|
|
CASE HASH("CasinoTop_F_23") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_018_F")) BREAK
|
|
CASE HASH("CasinoTop_F_24") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_019_F")) BREAK
|
|
CASE HASH("CasinoTop_F_25") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_019_F")) BREAK
|
|
CASE HASH("CasinoTop_F_26") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_020_F")) BREAK
|
|
CASE HASH("CasinoTop_F_27") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_021_F")) BREAK
|
|
CASE HASH("CasinoTop_F_28") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_021_F")) BREAK
|
|
CASE HASH("CasinoTop_F_29") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_022_F")) BREAK
|
|
CASE HASH("CasinoTop_F_30") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_022_F")) BREAK
|
|
CASE HASH("CasinoTop_F_31") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_023_F")) BREAK
|
|
CASE HASH("CasinoTop_F_32") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_023_F")) BREAK
|
|
CASE HASH("CasinoTop_F_33") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_024_F")) BREAK
|
|
CASE HASH("CasinoTop_F_34") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_024_F")) BREAK
|
|
CASE HASH("CasinoTop_F_35") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_025_F")) BREAK
|
|
CASE HASH("CasinoTop_F_36") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_025_F")) BREAK
|
|
CASE HASH("CasinoTop_F_37") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_026_F")) BREAK
|
|
CASE HASH("CasinoTop_F_38") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_026_F")) BREAK
|
|
CASE HASH("CasinoTop_F_39") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_027_F")) BREAK
|
|
CASE HASH("CasinoTop_F_40") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_027_F")) BREAK
|
|
CASE HASH("CasinoTop_F_41") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_028_F")) BREAK
|
|
CASE HASH("CasinoTop_F_42") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_028_F")) BREAK
|
|
CASE HASH("CasinoTop_F_43") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_029_F")) BREAK
|
|
CASE HASH("CasinoTop_F_44") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpVinewood_overlays"), HASH("MP_Vinewood_Tee_029_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpBattle_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Battle_Clothing_000_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpBattle_overlays"), HASH("MP_Battle_Clothing_001_M")) BREAK
|
|
ENDSWITCH
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Battle_Clothing_000_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpBattle_overlays"), HASH("MP_Battle_Clothing_001_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpSmuggler_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("M_TankTop_Smug_5_3_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_000_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_17_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_001_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_10_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_002_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_11_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_003_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_12_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_004_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_13_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_005_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_20_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_006_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_21_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_007_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_23_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_008_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_22_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_009_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_5_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_010_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_18_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_011_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_0_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_012_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_3_b") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_013_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_25_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_014_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_7_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_015_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_4_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_016_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_1_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_017_M")) BREAK
|
|
CASE HASH("M_TankTop_Smug_5_9_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_018_M")) BREAK
|
|
ENDSWITCH
|
|
SWITCH iPreset
|
|
CASE HASH("F_TankTop_Smug_5_3_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_000_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_17_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_001_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_10_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_002_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_11_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_003_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_12_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_004_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_13_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_005_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_20_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_006_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_21_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_007_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_23_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_008_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_22_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_009_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_5_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_010_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_18_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_011_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_0_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_012_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_3_b") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_013_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_25_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_014_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_7_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_015_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_4_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_016_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_1_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_017_F")) BREAK
|
|
CASE HASH("F_TankTop_Smug_5_9_a") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpSmuggler_overlays"), HASH("MP_Smuggler_Graphic_018_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpGunrunning_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Gunrunning_Award_020_M_ALT") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpGunrunning_overlays"), HASH("MP_Gunrunning_Award_020_M")) BREAK
|
|
CASE HASH("MP_Gunrunning_Award_020_F_ALT") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpGunrunning_overlays"), HASH("MP_Gunrunning_Award_020_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpExecutive_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Securoserv_000_Mb") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpExecutive_overlays"), HASH("MP_Securoserv_000_M")) BREAK
|
|
CASE HASH("MP_Securoserv_000_Fb") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpExecutive_overlays"), HASH("MP_Securoserv_000_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpHeist_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Elite_M_Tshirt_1") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist_overlays"), HASH("MP_Elite_M_Tshirt_2")) BREAK
|
|
CASE HASH("MP_Elite_F_Tshirt_1") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpHeist_overlays"), HASH("MP_Elite_F_Tshirt_2")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("mpLuxe2_overlays")
|
|
SWITCH iPreset
|
|
CASE HASH("MP_Luxe_Tat_029_M") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpLuxe2_overlays"), HASH("MP_Luxe_Tat_030_M")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpLuxe2_overlays"), HASH("MP_Luxe_Tat_031_M")) BREAK
|
|
CASE HASH("MP_Luxe_Tat_029_F") ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpLuxe2_overlays"), HASH("MP_Luxe_Tat_030_F")) ADD_PED_DECORATION_FROM_HASHES(pedID, HASH("mpLuxe2_overlays"), HASH("MP_Luxe_Tat_031_F")) BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Removes all tattoos and then re-equips any tattoos marked as current.
|
|
/// (used for equipping hair and spawn outfits in MP)
|
|
PROC UPDATE_TATOOS_MP(PED_INDEX mPed,Bool bBlockTorsoDecals = false, BOOL bComingFromCharacterCreator = false, INT iTShirtDecalHashOverride = -1)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
INT iSlot = g_iPedComponentSlot
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), ": UPDATE_TATOOS_MP(",
|
|
PICK_STRING(bBlockTorsoDecals, "bBlockTorsoDecals=TRUE", "bBlockTorsoDecals=FALSE"), ", ",
|
|
PICK_STRING(bComingFromCharacterCreator, "bComingFromCharacterCreator=TRUE", "bComingFromCharacterCreator=FALSE"),
|
|
", iTShirtDecalHashOverride:", iTShirtDecalHashOverride,
|
|
", iSlot:", iSlot, ")")
|
|
|
|
#IF NOT USE_TU_CHANGES
|
|
CLEAR_PED_DECORATIONS(mPed)
|
|
#ENDIF
|
|
#IF USE_TU_CHANGES
|
|
CLEAR_PED_DECORATIONS_LEAVE_SCARS(mPed)
|
|
#ENDIF
|
|
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(mPed)
|
|
|
|
#IF NOT USE_TU_CHANGES
|
|
unused_parameter(bBlockTorsoDecals)
|
|
#ENDIF
|
|
#IF USE_TU_CHANGES
|
|
BOOL bBlockChestTattoos = SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT(mPed)
|
|
BOOL bBlockCrewEmblems = SHOULD_CREW_EMBLEMS_BE_BLOCKED_FOR_OUTFIT(mPed)
|
|
BOOL bBlockBackTattoos = SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT(mPed, iTShirtDecalHashOverride)
|
|
|
|
// If we're blocking torsodecal also block the crew.bug: 2196640 / 2186449
|
|
IF bBlockTorsoDecals
|
|
bBlockCrewEmblems = TRUE
|
|
ENDIF
|
|
|
|
// Always apply crew emblem if option selected in character creator (B* 2218811)
|
|
IF bComingFromCharacterCreator
|
|
bBlockCrewEmblems = FALSE
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
PRINTLN("sc_ExtraTattooDebug: UPDATE_TATOOS_MP: bBlockCrewEmblems=", bBlockCrewEmblems, ", bBlockBackTattoos=", bBlockBackTattoos, ", bBlockChestTattoos=", bBlockChestTattoos, ", bBlockTorsoDecals=", bBlockTorsoDecals)
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
INT i
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
IF IS_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, i), iSlot)
|
|
IF GET_TATTOO_DATA(sTattooData, INT_TO_ENUM(TATTOO_NAME_ENUM, i), eFaction, mPed)
|
|
#IF USE_TU_CHANGES
|
|
IF IS_TATTOO_SAFE_TO_APPLY(mPed, sTattooData.sLabel, INT_TO_ENUM(TATTOO_NAME_ENUM, i), sTattooData.iCollection, sTattooData.iUpgradeGroup, bBlockChestTattoos, bBlockCrewEmblems, bBlockTorsoDecals, bBlockBackTattoos)
|
|
#ENDIF
|
|
|
|
ADD_PED_DECORATION_FROM_HASHES(mPed, sTattooData.iCollection, sTattooData.iPreset)
|
|
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Apply fuzz overlay that was added for Beach Bum
|
|
IF IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_HO_FUZZ, iSlot)
|
|
IF GET_PED_DECORATION_ZONE_FROM_HASHES(HASH("mpBeach_overlays"), HASH("FM_Hair_Fuzz")) != PDZ_INVALID
|
|
ADD_PED_DECORATION_FROM_HASHES(mPed, HASH("mpBeach_overlays"), HASH("FM_Hair_Fuzz"))
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Apply the DLC tats.
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
TATTOO_NAME_ENUM eDLCTattoo
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF NOT IS_CONTENT_ITEM_LOCKED(sDLCTattooData.m_lockHash)
|
|
eDLCTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex)
|
|
IF IS_MP_TATTOO_CURRENT(eDLCTattoo, iSlot)
|
|
IF IS_TATTOO_SAFE_TO_APPLY(mPed, sDLCTattooData.Label, eDLCTattoo, sDLCTattooData.Collection, sDLCTattooData.UpdateGroup, bBlockChestTattoos, bBlockCrewEmblems, bBlockTorsoDecals, bBlockBackTattoos)
|
|
IF NOT IS_DLC_OVERLAY_LOCKED_BY_SCRIPT(sDLCTattooData.Collection, sDLCTattooData.Preset, eDLCTattoo)
|
|
ADD_PED_DECORATION_FROM_HASHES(mPed, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(mPed, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
#ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC SET_MP_TATTOOS_FROM_DATA(PED_INDEX mPed, INT &iCurrentTattooData[NUMBER_OF_CURRENT_TATTOO_STATS],BOOL bBlockTorsoDecals = false, INT iTShirtDecalHashOverride = -1)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
|
|
unused_parameter(bBlockTorsoDecals)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
INT iPassedTat
|
|
PRINTLN("SET_MP_TATTOOS_FROM_DATA - Details follow:............")
|
|
FOR iPassedTat = 0 TO NUMBER_OF_CURRENT_TATTOO_STATS-1 STEP 1
|
|
PRINTLN("SET_MP_TATTOOS_FROM_DATA - iCurrentTattooData[", iPassedTat, "] = ", iCurrentTattooData[iPassedTat])
|
|
ENDFOR
|
|
#ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_TATTOOS_FROM_DATA called")
|
|
|
|
#IF NOT USE_TU_CHANGES
|
|
CLEAR_PED_DECORATIONS(mPed)
|
|
#ENDIF
|
|
#IF USE_TU_CHANGES
|
|
CLEAR_PED_DECORATIONS_LEAVE_SCARS(mPed)
|
|
#ENDIF
|
|
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(mPed)
|
|
|
|
#IF USE_TU_CHANGES
|
|
BOOL bBlockChestTattoos = SHOULD_CHEST_TATTOOS_BE_BLOCKED_FOR_OUTFIT(mPed)
|
|
BOOL bBlockCrewEmblems = SHOULD_CREW_EMBLEMS_BE_BLOCKED_FOR_OUTFIT(mPed)
|
|
BOOL bBlockBackTattoos = SHOULD_BACK_TATTOOS_BE_BLOCKED_FOR_OUTFIT(mPed, iTShirtDecalHashOverride)
|
|
|
|
// If we're blocking torsodecal also block the crew.bug: 2196640 / 2186449
|
|
if bBlockTorsoDecals
|
|
bBlockCrewEmblems = true
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
PRINTLN("sc_ExtraTattooDebug: SET_MP_TATTOOS_FROM_DATA: bBlockCrewEmblems=", bBlockCrewEmblems, ", bBlockBackTattoos=", bBlockBackTattoos, ", bBlockChestTattoos=", bBlockChestTattoos, ", bBlockTorsoDecals=", bBlockTorsoDecals)
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
INT i
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
IF IS_BIT_SET(iCurrentTattooData[(i/32)], (i%32))
|
|
IF GET_TATTOO_DATA(sTattooData, INT_TO_ENUM(TATTOO_NAME_ENUM, i), eFaction, mPed)
|
|
#IF USE_TU_CHANGES
|
|
IF IS_TATTOO_SAFE_TO_APPLY(mPed, sTattooData.sLabel, INT_TO_ENUM(TATTOO_NAME_ENUM, i), sTattooData.iCollection, sTattooData.iUpgradeGroup, bBlockChestTattoos, bBlockCrewEmblems, bBlockTorsoDecals, bBlockBackTattoos)
|
|
#ENDIF
|
|
|
|
ADD_PED_DECORATION_FROM_HASHES_IN_CORONA(mPed, sTattooData.iCollection, sTattooData.iPreset)
|
|
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDREPEAT
|
|
|
|
#IF USE_TU_CHANGES
|
|
// Apply fuzz overlay that was added for Beach Bum
|
|
IF IS_BIT_SET(iCurrentTattooData[(ENUM_TO_INT(TATTOO_MP_FM_HO_FUZZ)/32)], (ENUM_TO_INT(TATTOO_MP_FM_HO_FUZZ)%32))
|
|
IF GET_PED_DECORATION_ZONE_FROM_HASHES(HASH("mpBeach_overlays"), HASH("FM_Hair_Fuzz")) != PDZ_INVALID
|
|
ADD_PED_DECORATION_FROM_HASHES_IN_CORONA(mPed, HASH("mpBeach_overlays"), HASH("FM_Hair_Fuzz"))
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Apply the DLC tats.
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
sTattooShopItemValues sDLCTattooData
|
|
TATTOO_NAME_ENUM eDLCTattoo
|
|
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
IF NOT IS_CONTENT_ITEM_LOCKED(sDLCTattooData.m_lockHash)
|
|
eDLCTattoo = INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex)
|
|
IF (ENUM_TO_INT(eDLCTattoo)/32) >= COUNT_OF(iCurrentTattooData)
|
|
// assert
|
|
SCRIPT_ASSERT("SET_MP_TATTOOS_FROM_DATA NUMBER_OF_CURRENT_TATTOO_STATS is low. You need to add new bitsets for Tattoos and bump up NUMBER_OF_CURRENT_TATTOO_STATS to match number of tattoo bitsets")
|
|
ELSE
|
|
|
|
IF IS_BIT_SET(iCurrentTattooData[(ENUM_TO_INT(eDLCTattoo)/32)], (ENUM_TO_INT(eDLCTattoo)%32))
|
|
IF IS_TATTOO_SAFE_TO_APPLY(mPed, sDLCTattooData.Label, eDLCTattoo, sDLCTattooData.Collection, sDLCTattooData.UpdateGroup, bBlockChestTattoos, bBlockCrewEmblems, bBlockTorsoDecals, bBlockBackTattoos)
|
|
ADD_PED_DECORATION_FROM_HASHES_IN_CORONA(mPed, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(mPed, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
#ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Sets tattoos in an upgrade group as not current
|
|
PROC REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(INT iUpgradeGroup, PED_INDEX mPed)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
IF iUpgradeGroup = HASH("crewLogo")
|
|
PRINTLN("sc_ExtraTattooDebug: REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(iUpgradeGroup=crewLogo)")
|
|
ELIF iUpgradeGroup = HASH("torsoDecal")
|
|
PRINTLN("sc_ExtraTattooDebug: REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(iUpgradeGroup=torsoDecal)")
|
|
ELIF iUpgradeGroup = HASH("hairOverlay")
|
|
PRINTLN("sc_ExtraTattooDebug: REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(iUpgradeGroup=hairOverlay)")
|
|
ELSE
|
|
PRINTLN("sc_ExtraTattooDebug: REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(iUpgradeGroup=", iUpgradeGroup, ")")
|
|
ENDIF
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(mPed)
|
|
|
|
IF iUpgradeGroup != 0
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF eFaction = TATTOO_MP_FM
|
|
OR eFaction = TATTOO_MP_FM_F
|
|
IF iUpgradeGroup = HASH("crewLogo")
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE, g_iPedComponentSlot)
|
|
EXIT
|
|
ELIF iUpgradeGroup = HASH("torsoDecal")
|
|
IF eFaction = TATTOO_MP_FM
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_1, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_2, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_3, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_4, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_5, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_6, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_9, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_13, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_14, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_15, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_16, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_19, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_20, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_36, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_17, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_18, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_46, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MTD_45, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_REDSKULL, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_LSBELLE, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_ROCKSTAR, FALSE, g_iPedComponentSlot)
|
|
|
|
// Remove DLC torso overlays...
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(TATTOO_MP_FM)
|
|
sTattooShopItemValues sDLCTattooData
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(TATTOO_MP_FM, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("torsoDecal")
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex), FALSE, g_iPedComponentSlot)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_27, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_28, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_34, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_36, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_48, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_52, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_53, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_54, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_55, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_56, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_58, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_67, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_68, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FTD_51, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_REDSKULL, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_LSBELLE, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TSHIRT_TRANS_MP_FM_ROCKSTAR, FALSE, g_iPedComponentSlot)
|
|
|
|
// Remove DLC torso overlays...
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(TATTOO_MP_FM_F)
|
|
sTattooShopItemValues sDLCTattooData
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(TATTOO_MP_FM_F, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("torsoDecal")
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex), FALSE, g_iPedComponentSlot)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ELIF iUpgradeGroup = HASH("hairOverlay")
|
|
IF eFaction = TATTOO_MP_FM
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_1A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_1B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_1C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_1D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_1E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_LONG_A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_LONG_B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_LONG_C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_LONG_D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_LONG_E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_3A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_3B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_3C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_3D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_3E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_6A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_6B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_6C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_6D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_6E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_8A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_8B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_8C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_8D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_MHO_8E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_HO_FUZZ, FALSE, g_iPedComponentSlot)
|
|
|
|
// Remove DLC hair overlays...
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(TATTOO_MP_FM)
|
|
sTattooShopItemValues sDLCTattooData
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(TATTOO_MP_FM, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("hairOverlay")
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex), FALSE, g_iPedComponentSlot)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_LONG_A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_LONG_B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_LONG_C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_LONG_D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_LONG_E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_3A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_3B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_3C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_3D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_3E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_5A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_5B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_5C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_5D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_5E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_6A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_6B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_6C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_6D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_6E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_13A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_13B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_13C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_13D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_13E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_14A, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_14B, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_14C, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_14D, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_FHO_14E, FALSE, g_iPedComponentSlot)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_HO_FUZZ, FALSE, g_iPedComponentSlot)
|
|
|
|
// Remove DLC hair overlays...
|
|
INT iDLCIndex
|
|
INT iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(TATTOO_MP_FM_F)
|
|
sTattooShopItemValues sDLCTattooData
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(TATTOO_MP_FM_F, iDLCIndex, sDLCTattooData)
|
|
IF sDLCTattooData.UpdateGroup = HASH("hairOverlay")
|
|
SET_MP_TATTOO_CURRENT(INT_TO_ENUM(TATTOO_NAME_ENUM, ENUM_TO_INT(TATTOO_MP_FM_DLC)+iDLCIndex), FALSE, g_iPedComponentSlot)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
EXIT
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
INT i
|
|
REPEAT MAX_NUMBER_OF_TATTOOS i
|
|
IF GET_TATTOO_DATA(sTattooData, INT_TO_ENUM(TATTOO_NAME_ENUM, i), eFaction, mPed)
|
|
IF sTattooData.iUpgradeGroup = iUpgradeGroup
|
|
SET_MP_TATTOO_CURRENT(sTattooData.eEnum, FALSE, g_iPedComponentSlot)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Removing MP tattoo: ", sTattooData.eEnum)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Temp proc to give the player ped a tattoo
|
|
/// NOTE: This does not add it to the saved globals
|
|
PROC GIVE_PED_TEMP_TATTOO_MP(PED_INDEX pedID, TATTOO_NAME_ENUM eTattoo, BOOL bPreview = FALSE)
|
|
IF NOT IS_PED_INJURED(pedID)
|
|
IF eTattoo != INVALID_TATTOO
|
|
|
|
TATTOO_FACTION_ENUM eFaction = GET_TATTOO_FACTION_FOR_PED(pedID)
|
|
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
// Do not give temp tattoo if we already have it otherwise it will assert!
|
|
IF NOT IS_MP_TATTOO_CURRENT(eTattoo)
|
|
OR bPreview
|
|
IF GET_TATTOO_DATA(sTattooData, eTattoo, eFaction, pedID)
|
|
//CPRINTLN(DEBUG_PED_COMP, "GIVE_PED_TEMP_TATTOO: ")
|
|
//CPRINTLN(DEBUG_PED_COMP, "...enum = ", ENUM_TO_INT(eTattoo))
|
|
//CPRINTLN(DEBUG_PED_COMP, "...collection = ", sTattooData.iCollection)
|
|
//CPRINTLN(DEBUG_PED_COMP, "...preset = ", sTattooData.iPreset)
|
|
//CPRINTLN(DEBUG_PED_COMP, "...label = ", sTattooData.sLabel)
|
|
//CPRINTLN(DEBUG_PED_COMP, "...name = ", GET_STRING_FROM_TEXT_FILE(sTattooData.sLabel))
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
PRINTLN("sc_ExtraTattooDebug: GIVE_PED_TEMP_TATTOO_MP: iCollection=", sTattooData.iCollection, ", sTattooData.iPreset=", sTattooData.iPreset)
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
ADD_PED_DECORATION_FROM_HASHES(pedID, sTattooData.iCollection, sTattooData.iPreset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(pedID, sTattooData.iCollection, sTattooData.iPreset)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Equips any torso decals for this torso (jbib)
|
|
/// These are tattoos. Also removes any other torso decals.
|
|
/// PARAMS:
|
|
/// mPed - the ped who is equipping the item
|
|
/// eType - the item type of the item equipped
|
|
/// eItem - the item we have equipped
|
|
/// bPreviewing - is the item just being previewed in shop / wardrobe
|
|
PROC EQUIP_TORSO_DECALS_MP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bPreviewing #IF USE_TU_CHANGES , INT iMultiDecalHash = 0 #ENDIF)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
|
|
IF SHOULD_TORSO_DECALS_BE_BLOCKED_FOR_OUTFIT(mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "EQUIP_TORSO_DECALS_MP : Skip - torso decal blocked for this outfit")
|
|
EXIT
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_JBIB
|
|
OR eType = COMP_TYPE_SPECIAL
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
|
|
IF eType = COMP_TYPE_JBIB
|
|
// if jacket jbib do the checks on the special item equipped.
|
|
IF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eItem)
|
|
eType = COMP_TYPE_SPECIAL
|
|
eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
// only do the torso decal stuff for specials if the jbib is a jacket
|
|
PED_COMP_NAME_ENUM eJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB)
|
|
IF NOT IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJbib)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "EQUIP_TORSO_DECALS_MP : Skip - Equipping special and the jbib isn't a jacket")
|
|
EXIT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// always remove previous jbib / special decals
|
|
REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(GET_HASH_KEY("torsoDecal"), mPed)
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF eType = COMP_TYPE_JBIB
|
|
IF NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_A)
|
|
AND NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_B)
|
|
AND NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_C)
|
|
AND NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_D)
|
|
AND NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_E)
|
|
AND NOT CAN_JBIB_HAVE_CREW_LOGO(ePedModel, eItem, TATTOO_MP_FM_CREW_F)
|
|
REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(GET_HASH_KEY("crewLogo"), mPed)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// do jbib / special decals
|
|
TATTOO_NAME_ENUM eTorsoDecalTattoo
|
|
eTorsoDecalTattoo = GET_TORSO_DECAL_TATTOO_MP(ePedModel, eType, eItem #IF USE_TU_CHANGES , iMultiDecalHash #ENDIF)
|
|
IF eTorsoDecalTattoo <> INVALID_TATTOO
|
|
// found a torso decal tattoo
|
|
IF bPreviewing = TRUE
|
|
GIVE_PED_TEMP_TATTOO_MP(mPed, eTorsoDecalTattoo)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(eTorsoDecalTattoo, TRUE, g_iPedComponentSlot)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "EQUIP_TORSO_DECALS_MP : Equip - eTorsoDecalTattoo=", eTorsoDecalTattoo, " iMultiDecalHash= ", iMultiDecalHash, " bPreviewing= ", bPreviewing)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Equips a crew logo tattoo (used in the character creation screen)
|
|
/// For the crew tshirts the logos are as follows:
|
|
/// Male: Small = TATTOO_MP_FM_CREW_A Large = TATTOO_MP_FM_CREW_B Back = TATTOO_MP_FM_CREW_C
|
|
/// Female: Small = TATTOO_MP_FM_CREW_A Large = TATTOO_MP_FM_CREW_C
|
|
/// PARAMS:
|
|
/// mPed - the ped equipping the decal
|
|
/// eCrewLogoTattoo - which tattoo we are equipping.
|
|
PROC EQUIP_CREW_LOGO(PED_INDEX mPed, TATTOO_NAME_ENUM eCrewLogoTattoo, BOOL bComingFromCharacterCreator = FALSE)
|
|
|
|
// always remove previous crew logoss
|
|
REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(GET_HASH_KEY("crewLogo"), mPed)
|
|
SET_MP_TATTOO_CURRENT(eCrewLogoTattoo, TRUE, g_iPedComponentSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, "Equipping crew logo ", eCrewLogoTattoo)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Updating MP tattoos for crew logo.")
|
|
|
|
IF bComingFromCharacterCreator
|
|
UPDATE_TATOOS_MP(mPed, FALSE, TRUE)
|
|
ELSE
|
|
UPDATE_TATOOS_MP(mPed)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Equips the hair overlay tattoo that goes with this hair item
|
|
/// Also removes any other hair overlays.
|
|
/// PARAMS:
|
|
/// mPed - the ped who is equipping the item
|
|
/// eItem - the hair item we have equipped
|
|
PROC EQUIP_HAIR_OVERLAY_MP(PED_INDEX mPed, PED_COMP_NAME_ENUM eItem, INT iSlot = -1, BOOL bBlockTorsoDecal = FALSE)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
|
|
// always remove previous hair overlays
|
|
REMOVE_TATTOOS_IN_UPGRADE_GROUP_MP(GET_HASH_KEY("hairOverlay"), mPed)
|
|
|
|
// equip correct hair overlay
|
|
TATTOO_NAME_ENUM eHairOverlay
|
|
eHairOverlay = GET_HAIR_OVERLAY(ePedModel, eItem)
|
|
IF eHairOverlay <> INVALID_TATTOO
|
|
// found a hair overlay
|
|
IF iSlot = -1
|
|
iSlot = g_iPedComponentSlot
|
|
ENDIF
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
PRINTLN("sc_ExtraTattooDebug: EQUIP_HAIR_OVERLAY_MP(slot=", iSlot, ")")
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
|
|
|
|
SET_MP_TATTOO_CURRENT(eHairOverlay, TRUE, iSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), "Equipping eHairOverlay ", eHairOverlay, " for item ", eItem)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Updating MP tattoos as we are updating hair overlay.")
|
|
UPDATE_TATOOS_MP(mPed,bBlockTorsoDecal)
|
|
|
|
ENDPROC
|
|
|
|
PROC RESET_PLAYER_HEAD_BLEND_TO_NORM(PED_INDEX pedID, INT iSlot = -1)
|
|
|
|
IF NOT HAS_PED_HEAD_BLEND_FINISHED(pedId)
|
|
CWARNINGLN(DEBUG_PED_COMP, "\"", GET_THIS_SCRIPT_NAME(), "\" called RESET_PLAYER_HEAD_BLEND_TO_NORM() while a head blend is already in progres. This will lead to a green scalp underlay")
|
|
ENDIF
|
|
|
|
IF IS_USING_CUSTOM_PLAYER_MODEL()
|
|
PRINTLN("RESET_PLAYER_HEAD_BLEND_TO_NORM - using a custom player model. quit out.")
|
|
EXIT
|
|
ENDIF
|
|
|
|
scrPedHeadBlendData targetBlendData
|
|
GET_PED_HEAD_BLEND_DATA(pedId, targetBlendData)
|
|
|
|
INT head0, head1, head2, tex0, tex1, tex2
|
|
FLOAT headBlend, texBlend, varBlend
|
|
BOOL parent
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
BOOL grandparent
|
|
#ENDIF
|
|
head0 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_HEAD0, iSlot)
|
|
head1 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_HEAD1, iSlot)
|
|
head2 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_HEAD2, iSlot)
|
|
tex0 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX0, iSlot)
|
|
tex1 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX1, iSlot)
|
|
tex2 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX2, iSlot)
|
|
headBlend = GET_MP_FLOAT_CHARACTER_STAT(MP_STAT_MESH_HEADBLEND, iSlot)
|
|
texBlend = GET_MP_FLOAT_CHARACTER_STAT(MP_STAT_MESH_TEXBLEND, iSlot)
|
|
varBlend = GET_MP_FLOAT_CHARACTER_STAT(MP_STAT_MESH_VARBLEND, iSlot)
|
|
parent = GET_MP_BOOL_CHARACTER_STAT(MP_STAT_MESH_ISPARENT, iSlot)
|
|
|
|
IF targetBlendData.m_head0 != head0
|
|
OR targetBlendData.m_head1 != head1
|
|
OR targetBlendData.m_head2 != head2
|
|
|
|
OR targetBlendData.m_tex0 != tex0
|
|
OR targetBlendData.m_tex1 != tex1
|
|
OR targetBlendData.m_tex2 != tex2
|
|
|
|
OR targetBlendData.m_headBlend != headBlend
|
|
OR targetBlendData.m_texBlend != texBlend
|
|
OR targetBlendData.m_varBlend != varBlend
|
|
OR targetBlendData.m_isParent != parent
|
|
CPRINTLN(DEBUG_MISSION, "[", GET_THIS_SCRIPT_NAME(), ":RESET_PLAYER_HEAD_BLEND_TO_NORM]: Force head to normal (head ", head0, ", ", head1, ", ", head2, ", tex ", tex0, ", ", tex1, ", ", tex2, ")")
|
|
SET_PED_HEAD_BLEND_DATA(pedId, head0, head1, head2, tex0, tex1, tex2,headBlend, texBlend, varBlend, parent)
|
|
|
|
// We aren't using server stats here so get gen version from this
|
|
INT iGenVersion = GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_IS_NG_VERSION, iSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, "[", GET_THIS_SCRIPT_NAME(), "]: iGenVersion: ", iGenVersion)
|
|
|
|
IF iGenVersion > 0
|
|
CPRINTLN(DEBUG_PED_COMP, "[", GET_THIS_SCRIPT_NAME(), "]: Ped: ", NATIVE_TO_INT(pedId), ", in slot: ", iSlot, ", is an NG character. Calling APPLY_CHARACTER_CREATOR_FEATURES_FROM_STATS")
|
|
APPLY_CHARACTER_CREATOR_FEATURES_FROM_STATS(pedId, iSlot, FALSE)
|
|
ENDIF
|
|
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[", GET_THIS_SCRIPT_NAME(), ":RESET_PLAYER_HEAD_BLEND_TO_NORM]: Head already set to normal")
|
|
ENDIF
|
|
ENDPROC
|
|
PROC SET_HEAD_BLEND_UPDATE(ped_index PedID,MP_OUTFITS_DATA &sOutfitsData,INT iPlayerIndex = -1)
|
|
|
|
CPRINTLN(DEBUG_MISSION, "SET_HEAD_BLEND_UPDATE called with player index ", iPlayerIndex)
|
|
|
|
if iplayerIndex = -1
|
|
iPlayerIndex = NATIVE_TO_INT(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID) )
|
|
|
|
if iplayerIndex != -1
|
|
CPRINTLN(DEBUG_MISSION, "SET_HEAD_BLEND_UPDATE updating player index to ", iPlayerIndex)
|
|
endif
|
|
endif
|
|
|
|
//Check if we need to shrink the peds head when using restricted tags
|
|
IF (sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD] > 0)
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_BERD), sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD], sOutfitsData.iComponentTextureID[COMP_TYPE_BERD]), DLC_RESTRICTION_TAG_SHRINK_HEAD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_HEAD_BLEND_UPDATE] Shrinking head as restriction tag has been hit ")
|
|
|
|
scrPedHeadBlendData playerBlendData
|
|
GET_PED_HEAD_BLEND_DATA(pedID, playerBlendData)
|
|
|
|
IF (GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01)
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_HEAD_BLEND_UPDATE] Force male head to small - Berd item tag is set: DLC_RESTRICTION_TAG_SHRINK_HEAD")
|
|
SET_PED_HEAD_BLEND_DATA(pedID, 0,0,0, playerBlendData.m_tex0, playerBlendData.m_tex1, playerBlendData.m_tex2, 0.0, playerBlendData.m_texBlend, 0.0)
|
|
ELIF (GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01)
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_HEAD_BLEND_UPDATE] Force female head to small - Berd item tag is set: DLC_RESTRICTION_TAG_SHRINK_HEAD")
|
|
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_DATA(pedID, 14,0,0, playerBlendData.m_tex0, playerBlendData.m_tex1, playerBlendData.m_tex2, 0.0, playerBlendData.m_texBlend, 0.0)
|
|
#ENDIF
|
|
#IF IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_DATA(pedID, 21,0,0, playerBlendData.m_tex0, playerBlendData.m_tex1, playerBlendData.m_tex2, 0.0, playerBlendData.m_texBlend, 0.0)
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_HAS_GRANDPARENTS(pedID, FALSE)
|
|
#ENDIF
|
|
#IF IS_NEXTGEN_BUILD
|
|
MICRO_MORPH_TYPE microMorph
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH microMorph
|
|
SET_PED_MICRO_MORPH(pedID, microMorph, 0.0)
|
|
ENDREPEAT
|
|
#ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_HEAD_BLEND_UPDATE] Resetting head to normal ")
|
|
|
|
IF iPlayerIndex != -1
|
|
and INT_TO_PLAYERINDEX(iPlayerIndex) != player_ID() //equal to player
|
|
if NETWORK_HAS_CACHED_PLAYER_HEAD_BLEND_DATA(INT_TO_PLAYERINDEX(iPlayerIndex))
|
|
and NETWORK_HAS_CONTROL_OF_ENTITY(pedID)
|
|
CPRINTLN(DEBUG_MISSION, "[SET_HEAD_BLEND_UPDATE][NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA 2]: player index ",iPlayerIndex)
|
|
NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA(pedID,INT_TO_PLAYERINDEX(iPlayerIndex) )
|
|
else
|
|
CPRINTLN(DEBUG_MISSION, "[SET_HEAD_BLEND_UPDATE]NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA no data cached for player head blend data: ",iPlayerIndex)
|
|
endif
|
|
ELSE
|
|
RESET_PLAYER_HEAD_BLEND_TO_NORM(pedID)
|
|
endif
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
FUNC INT GET_CHEMSUIT_HOOD_VARIATION(PED_INDEX pedID,Bool bHoodUp = true)
|
|
|
|
scrShopPedComponent componentItem
|
|
BOOL bMale = (GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01)
|
|
componentItem.m_drawableIndex = -1
|
|
|
|
if bmale
|
|
if bHoodUp
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_SPECIAL_7_0), componentItem)
|
|
else
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_SPECIAL_6_0), componentItem)
|
|
endif
|
|
else
|
|
if bHoodUp
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_SPECIAL_11_0), componentItem)
|
|
else
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_SPECIAL_10_0), componentItem)
|
|
endif
|
|
endif
|
|
return componentItem.m_drawableIndex
|
|
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_HOODED_JACKET(PED_INDEX ped, BOOL &bHoodIsUp, BOOL &bHoodIsTucked)
|
|
bHoodIsUp = FALSE
|
|
INT iJbibDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iJbibTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), iJbibDraw, iJbibTex)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
bHoodIsUp = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
bHoodIsTucked = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_TUCKED, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_FITTED_HOOD(PED_INDEX ped)
|
|
RETURN DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_JBIB, DLC_RESTRICTION_TAG_FITTED_HOOD)
|
|
ENDFUNC
|
|
|
|
#IF FEATURE_TUNER
|
|
FUNC BOOL IS_PED_WEARING_CAR_MEET_MERCH_STORE_ITEM(PED_INDEX ped)
|
|
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_JBIB, DLC_RESTRICTION_TAG_CAR_MEET_ITEM)
|
|
OR DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_LEG, DLC_RESTRICTION_TAG_CAR_MEET_ITEM)
|
|
OR DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_FEET, DLC_RESTRICTION_TAG_CAR_MEET_ITEM)
|
|
OR DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_DECL, DLC_RESTRICTION_TAG_CAR_MEET_ITEM)
|
|
OR DOES_CURRENT_PED_PROP_HAVE_RESTRICTION_TAG(ped, ENUM_TO_INT(ANCHOR_HEAD), DLC_RESTRICTION_TAG_CAR_MEET_ITEM)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
#ENDIF
|
|
|
|
FUNC BOOL DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(INT iDLCHash, PED_COMPONENT eForcedPedComp, INT iForcedDLCHash = -1)
|
|
IF iDLCHash != -1
|
|
INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCHash)
|
|
INT iForcedComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iForcedComps iForcedComp
|
|
GET_FORCED_COMPONENT(iDLCHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(eForcedPedComp)
|
|
AND (iForcedDLCHash = -1 OR iForcedDLCHash = iRetNameHash)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_FORCED_DLC_COMP_OF_TYPE(INT iDLCHash, PED_COMPONENT eForcedPedComp, INT &iRetNameHash)
|
|
IF iDLCHash != -1
|
|
INT iForcedComps = GET_SHOP_PED_APPAREL_FORCED_COMPONENT_COUNT(iDLCHash)
|
|
INT iForcedComp
|
|
INT iRetCompEnum, iRetType
|
|
REPEAT iForcedComps iForcedComp
|
|
GET_FORCED_COMPONENT(iDLCHash, iForcedComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(eForcedPedComp)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_ALT_DLC_PED_COMP_OF_TYPE(INT iDLCHash, PED_COMPONENT ePedComp, INT &iRetNameHash, INT iMustHaveTag = -1)
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetCompEnum, iRetType
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCHash)
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(ePedComp)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
IF iMustHaveTag = -1
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, iMustHaveTag, iRetType)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_ALT_HOODED_JACKET(INT iDLCHash, BOOL bUp, BOOL bTucked, INT &iRetNameHash)
|
|
iRetNameHash = -1
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetCompEnum, iRetType
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCHash)
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_JBIB)
|
|
AND iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
AND bUp = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND bTucked = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_HOOD_TUCKED, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDREPEAT
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_ALT_JACKET_STATE(INT iDLCHash, BOOL bOpen, INT &iRetNameHash)
|
|
iRetNameHash = -1
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetCompEnum, iRetType
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCHash)
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_JBIB)
|
|
AND iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
AND bOpen = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDREPEAT
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_HAZ_TOP(PED_INDEX pedID, INT iDLCJbibHash = -1)
|
|
|
|
IF iDLCJbibHash = -1
|
|
iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB))
|
|
ENDIF
|
|
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP(PED_INDEX ped, BOOL &bShouldBeRemoved, INT iDLCJbibHash = -1, INT iDLCBerdHash = -1, INT iDLCPropHeadHash = -1)
|
|
|
|
bShouldBeRemoved = FALSE
|
|
|
|
IF iDLCJbibHash = -1
|
|
iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
ENDIF
|
|
IF iDLCBerdHash = -1
|
|
iDLCBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD))
|
|
ENDIF
|
|
IF iDLCPropHeadHash = -1
|
|
iDLCPropHeadHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(ped), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(ped, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(ped, ANCHOR_HEAD))
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
|
|
// HOODED JACKET
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
// New hoodies
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_FITTED_HOOD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
// Work with hood hats and no hat
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHeadHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_PROP))
|
|
AND GET_PED_PROP_INDEX(ped, ANCHOR_HEAD) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Prop doesn't work with fitted hood")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Works with hood compat, haz mask, and no mask
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD) != 0
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHeadHash, DLC_RESTRICTION_TAG_HOOD_HAT, ENUM_TO_INT(SHOP_PED_PROP))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_SKI_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_BIKER_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// allow player to wear biker masks with hood hat and hood jacket
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with fitted hood + hood hat")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_BIKER_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// allow player to wear biker masks with hood jacket
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with fitted hood")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : NVG doesn't work with fitted hood")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Old hoodies
|
|
ELSE
|
|
|
|
// Work with no hat
|
|
IF GET_PED_PROP_INDEX(ped, ANCHOR_HEAD) != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Prop doesn't work with standard hood")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Works with hood compat, haz mask, and no mask
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HOOD_COMPAT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD) != 0
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with standard hood")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Success : Prop and berd work with hooded jacket")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
// CHEM SUIT
|
|
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
|
|
// Make sure we don't add a hood when we're not wearing chemical suit.
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_14, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Not wearing hazmat suit, remove")
|
|
bShouldBeRemoved = TRUE
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
SWITCH iDLCBerdHash
|
|
|
|
// - Loose Balaclava
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_0")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_1")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_2")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_3")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_4")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_5")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_6")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_7")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_21_8")
|
|
|
|
// - Paper Bag
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_0")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_1")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_2")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_3")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_4")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_5")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_6")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_7")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_8")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_9")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_10")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_11")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_12")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_13")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_14")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_15")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_16")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_17")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_18")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_19")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_20")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_21")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_22")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_23")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_24")
|
|
CASE HASH("DLC_MP_HEIST_M_BERD_14_25")
|
|
|
|
// - Vulture
|
|
CASE HASH("DLC_MP_IND_M_BERD_4_0")
|
|
CASE HASH("DLC_MP_IND_M_BERD_4_1")
|
|
|
|
// - Eagle
|
|
CASE HASH("DLC_MP_IND_M_BERD_3_0")
|
|
CASE HASH("DLC_MP_IND_M_BERD_3_1")
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with hazmat suit, remove")
|
|
bShouldBeRemoved = TRUE
|
|
RETURN FALSE
|
|
BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
// Make sure we don't add a hood when we're not wearing chemical suit.
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_15, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Not wearing hazmat suit, remove")
|
|
bShouldBeRemoved = TRUE
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_SCRUFFY_BALACLAVA, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with hazmat suit, remove")
|
|
bShouldBeRemoved = TRUE
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
SWITCH iDLCBerdHash
|
|
|
|
// - Tshirt
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_0")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_1")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_2")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_3")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_4")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_5")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_6")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_7")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_8")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_9")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_10")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_11")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_12")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_13")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_14")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_15")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_16")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_17")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_18")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_19")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_20")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_21")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_22")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_23")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_24")
|
|
CASE HASH("DLC_MP_SMUG_F_BERD_8_25")
|
|
|
|
// - Knit Balaclava
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_8")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_23_9")
|
|
|
|
// - Knit Balaclava
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_8")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_9")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_10")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_11")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_12")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_13")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_14")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_15")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_16")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_17")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_18")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_19")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_20")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_22_21")
|
|
|
|
// - Loose Balaclava
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_21_8")
|
|
|
|
// - Toggle Ski
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_20_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_20_1")
|
|
|
|
// - Tshirt
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_8")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_9")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_19_10")
|
|
|
|
// - Hooded Ski
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_18_8")
|
|
|
|
// - Tight Ski
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_8")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_9")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_17_10")
|
|
|
|
// - Paper Bag
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_4")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_5")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_6")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_7")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_8")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_9")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_10")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_11")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_12")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_13")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_14")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_15")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_16")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_17")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_18")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_19")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_20")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_21")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_22")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_23")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_24")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_14_25")
|
|
|
|
// - Tape
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_13_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_13_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_13_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_13_3")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_12_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_12_1")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_12_2")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_12_3")
|
|
|
|
// - Frank
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_7_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_7_1")
|
|
|
|
// - Mummy
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_5_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_5_1")
|
|
|
|
// - Infected
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_4_0")
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_4_1")
|
|
|
|
// - Nightvision Balaclava
|
|
CASE HASH("DLC_MP_HEIST_F_BERD_0_0")
|
|
|
|
// - Stocking mask
|
|
CASE HASH("DLC_MP_XMAS2_F_BERD_1_0")
|
|
|
|
// - LTS mask
|
|
CASE HASH("DLC_MP_LTS_F_BERD_0_0")
|
|
CASE HASH("DLC_MP_LTS_F_BERD_0_1")
|
|
CASE HASH("DLC_MP_LTS_F_BERD_0_2")
|
|
CASE HASH("DLC_MP_LTS_F_BERD_0_3")
|
|
CASE HASH("DLC_MP_LTS_F_BERD_0_4")
|
|
|
|
// - Vulture
|
|
CASE HASH("DLC_MP_IND_F_BERD_4_0")
|
|
CASE HASH("DLC_MP_IND_F_BERD_4_1")
|
|
|
|
// - Eagle
|
|
CASE HASH("DLC_MP_IND_F_BERD_3_0")
|
|
CASE HASH("DLC_MP_IND_F_BERD_3_1")
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Berd doesn't work with hazmat suit, remove")
|
|
bShouldBeRemoved = TRUE
|
|
RETURN FALSE
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Put hood up
|
|
// - Chemical Mask
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_HAZ_MASK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT IS_ITEM_A_HELMET(ePedModel, COMP_TYPE_PROPS, GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, ENUM_TO_INT(ANCHOR_HEAD)))
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Success : Hood can remain up")
|
|
RETURN TRUE
|
|
|
|
// Put hood down
|
|
// - Everything else
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Failed : Hood needs to go down")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP : Success : No erorrs reported")
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
PROC UPDATE_PED_HOOD_STATE(PED_INDEX ped)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
INT iJbibDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iJbibTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iBerdDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD)
|
|
INT iBerdTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD)
|
|
INT iSpecialDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL)
|
|
INT iSpecialTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL)
|
|
INT iDeclDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_DECL)
|
|
INT iDeclTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_DECL)
|
|
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), iJbibDraw, iJbibTex)
|
|
INT iDLCBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), iBerdDraw, iBerdTex)
|
|
INT iDLCSpecialHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_SPECIAL), iSpecialDraw, iSpecialTex)
|
|
INT iDLCPropHeadHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(ped), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(ped, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(ped, ANCHOR_HEAD))
|
|
INT iDLCDeclHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_DECL), iDeclDraw, iDeclTex)
|
|
|
|
BOOL bShouldBeRemoved = FALSE
|
|
|
|
scrShopPedComponent componentItem
|
|
|
|
// HOODED JACKET
|
|
|
|
// Force down if we are wearing a hooded jacket and the berd or head prop is not compatible.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
IF NOT DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP(ped, bShouldBeRemoved, iDLCJbibHash, iDLCBerdHash, iDLCPropHeadHash)
|
|
OR IS_PED_IN_ANY_VEHICLE(ped)
|
|
|
|
INT iAltItem
|
|
IF GET_ALT_HOODED_JACKET(iDLCJbibHash, FALSE, FALSE, iAltItem)
|
|
GET_SHOP_PED_COMPONENT(iAltItem, componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_JBIB, componentItem.m_drawableIndex, componentItem.m_textureIndex, GET_PED_PALETTE_VARIATION(ped, PED_COMP_JBIB))
|
|
|
|
// Restore forced DECL
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_DECL) = 0
|
|
AND DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "UPDATE_PED_HOOD_STATE 1 : Restoring existing DECL")
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, iDeclDraw, iDeclTex)
|
|
ELSE
|
|
// Check if this DECL has an ALT decl that forces on the JBIB we just applied.
|
|
INT iRetNameHash
|
|
IF GET_ALT_DLC_PED_COMP_OF_TYPE(iDLCDeclHash, PED_COMP_DECL, iRetNameHash)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iRetNameHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "UPDATE_PED_HOOD_STATE 1 : Setting ALT DECL for new JBIB")
|
|
scrShopPedComponent componentItemDecl
|
|
GET_SHOP_PED_COMPONENT(iRetNameHash, componentItemDecl)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItemDecl.m_drawableIndex, componentItemDecl.m_textureIndex)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update decl on sleeveless hoodie.
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_M_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_0_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_0_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - player has crew logo")
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - checking IE_DRAW_16")
|
|
IF iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_1_0")
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - set correct one for IE_DRAW_16")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - checking IE_DRAW_19")
|
|
IF iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_2_0")
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - set correct one for IE_DRAW_19")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_F_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Re-apply berd to fix hair.
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_BERD, iBerdDraw, iBerdTex)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Force up if we are wearing a fake hood hat
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_DOWN, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHeadHash, DLC_RESTRICTION_TAG_FAKE_HAT, ENUM_TO_INT(SHOP_PED_PROP))
|
|
|
|
INT iAltItem
|
|
IF GET_ALT_HOODED_JACKET(iDLCJbibHash, TRUE, FALSE, iAltItem)
|
|
GET_SHOP_PED_COMPONENT(iAltItem, componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_JBIB, componentItem.m_drawableIndex, componentItem.m_textureIndex, GET_PED_PALETTE_VARIATION(ped, PED_COMP_JBIB))
|
|
|
|
// Restore forced DECL
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_DECL) = 0
|
|
AND DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "UPDATE_PED_HOOD_STATE 2 : Restoring existing DECL")
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, iDeclDraw, iDeclTex)
|
|
ELSE
|
|
// Check if this DECL has an ALT decl that forces on the JBIB we just applied.
|
|
INT iRetNameHash
|
|
IF GET_ALT_DLC_PED_COMP_OF_TYPE(iDLCDeclHash, PED_COMP_DECL, iRetNameHash)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iRetNameHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "UPDATE_PED_HOOD_STATE 2 : Setting ALT DECL for new JBIB")
|
|
scrShopPedComponent componentItemDecl
|
|
GET_SHOP_PED_COMPONENT(iRetNameHash, componentItemDecl)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItemDecl.m_drawableIndex, componentItemDecl.m_textureIndex)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update decl on sleeveless hoodie.
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_M_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_0_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_0_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - player has crew logo")
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - checking IE_DRAW_16")
|
|
IF iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_1_0")
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - set correct one for IE_DRAW_16")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - checking IE_DRAW_19")
|
|
IF iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_2_0")
|
|
PRINTLN("UPDATE_PED_HOOD_STATE - set correct one for IE_DRAW_19")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_F_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Re-apply berd to fix hair.
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_BERD, iBerdDraw, iBerdTex)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
// CHEM SUIT
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_HAZ_HOOD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR IS_PED_WEARING_HAZ_TOP(ped, iDLCJbibHash)
|
|
|
|
//Moved here for url:bugstar:3918306
|
|
// Correct texture.
|
|
iSpecialTex = iJBIBTex
|
|
|
|
IF NOT DOES_HOOD_WORK_WITH_MASK_AND_HEAD_PROP(ped, bShouldBeRemoved, iDLCJbibHash, iDLCBerdHash, iDLCPropHeadHash)
|
|
// Mask/Prop not compatible with haz hood so force remove or pop down
|
|
IF bShouldBeRemoved
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
iSpecialDraw = 15
|
|
iSpecialTex = 0
|
|
ELSE
|
|
iSpecialDraw = 14
|
|
iSpecialTex = 0
|
|
ENDIF
|
|
ELSE
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_SPECIAL_6_0"), componentItem)
|
|
iSpecialDraw = componentItem.m_drawableIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_SPECIAL_10_0"), componentItem)
|
|
iSpecialDraw = componentItem.m_drawableIndex
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
// Mask/Prop compatible with haz hood so force up
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_SPECIAL_7_0"), componentItem)
|
|
iSpecialDraw = componentItem.m_drawableIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_SPECIAL_11_0"), componentItem)
|
|
iSpecialDraw = componentItem.m_drawableIndex
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iSpecialDraw != GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL)
|
|
OR iSpecialTex != GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_SPECIAL, iSpecialDraw, iSpecialTex, GET_PED_PALETTE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
FUNC BOOL DOES_PLAYER_PREFER_VISOR_UP(INT iSlot = -1)
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_IS_VISOR_UP, iSlot)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC SET_PLAYER_VISOR_PREFERENCE(BOOL bPreferVisorUp, INT iSlot = -1)
|
|
SET_MP_BOOL_CHARACTER_STAT(MP_STAT_IS_VISOR_UP, bPreferVisorUp, iSlot)
|
|
ENDPROC
|
|
|
|
|
|
FUNC BOOL IS_THIS_HELMET_VISOR_UP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
SWITCH ePedModel
|
|
|
|
// Freemode male
|
|
CASE MP_M_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_PROPS
|
|
IF eItem >= PROPS_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 3), DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Freemode female
|
|
CASE MP_F_FREEMODE_01
|
|
SWITCH eType
|
|
CASE COMP_TYPE_PROPS
|
|
IF eItem >= PROPS_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_PROPS, 4), DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC PED_COMP_NAME_ENUM GET_LAST_UNDER_JACKET_ITEM(PED_INDEX ped, PED_COMP_NAME_ENUM eJBIBJacket)
|
|
|
|
IF g_eLastStoredCompName != DUMMY_PED_COMP
|
|
IF g_eLastStoredCompType = COMP_TYPE_JBIB
|
|
// Grab the correct SPECIAL for this top
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(ped), COMP_TYPE_JBIB, g_eLastStoredCompName)
|
|
PED_COMP_NAME_ENUM eSpecialForJBIB = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(GET_ENTITY_MODEL(ped), g_eLastStoredCompName, eJBIBJacket, g_sTempCompData[1].iTexture)
|
|
IF eSpecialForJBIB != DUMMY_PED_COMP
|
|
PRINTLN("GET_LAST_UNDER_JACKET_ITEM: COMP_TYPE_JBIB - Returning eSpecialForJBIB")
|
|
RETURN eSpecialForJBIB
|
|
ENDIF
|
|
|
|
ELIF g_eLastStoredCompType = COMP_TYPE_SPECIAL
|
|
// Try and grab the JBIB version so we can correct the SPECIAL component
|
|
PED_COMP_NAME_ENUM eJBIBFromSpecial = GET_JBIB_FROM_SPECIAL(GET_ENTITY_MODEL(ped), g_eLastStoredCompName, g_iLastStoredCompTexture)
|
|
IF eJBIBFromSpecial != DUMMY_PED_COMP
|
|
// Grab the correct SPECIAL for this top
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(ped), COMP_TYPE_JBIB, eJBIBFromSpecial)
|
|
PED_COMP_NAME_ENUM eSpecialForJBIB = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(GET_ENTITY_MODEL(ped), eJBIBFromSpecial, eJBIBJacket, g_sTempCompData[1].iTexture)
|
|
IF eSpecialForJBIB != DUMMY_PED_COMP
|
|
PRINTLN("GET_LAST_UNDER_JACKET_ITEM: COMP_TYPE_SPECIAL - Returning eSpecialForJBIB")
|
|
RETURN eSpecialForJBIB
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("GET_LAST_UNDER_JACKET_ITEM: COMP_TYPE_SPECIAL - g_eLastStoredCompName")
|
|
RETURN g_eLastStoredCompName
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
RETURN DUMMY_PED_COMP
|
|
ENDFUNC
|
|
|
|
PROC SET_LAST_UNDER_JACKET_ITEM(PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iTexture, INT iTShirtDecalHash)
|
|
|
|
g_eLastStoredCompName = eItem
|
|
g_eLastStoredCompType = eType
|
|
g_iLastStoredCompTexture = iTexture
|
|
g_iLastStoredDecalHash = iTShirtDecalHash
|
|
|
|
PRINTLN("SET_LAST_UNDER_JACKET_ITEM(", GET_PED_COMP_TYPE_STRING(eType), ", ", eItem, ", ", iTexture, ", ", g_iLastStoredDecalHash, ")")
|
|
|
|
IF eItem != DUMMY_PED_COMP
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(PLAYER_PED_ID()), eType, eItem)
|
|
|
|
PRINTLN("...Drawable = ", g_sTempCompData[1].iDrawable)
|
|
PRINTLN("...Texture = ", g_sTempCompData[1].iTexture)
|
|
|
|
INT iRetNameHash
|
|
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT) AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
PRINTLN("...SET_LAST_UNDER_JACKET_ITEM : Invalid item 1 - clearing", "["
|
|
, IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT), ","
|
|
, IS_STRING_NULL_OR_EMPTY(g_sTempCompData[1].sLabel)
|
|
, "]")
|
|
g_eLastStoredCompName = DUMMY_PED_COMP
|
|
|
|
ELIF IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
AND NOT IS_STRING_NULL_OR_EMPTY(g_sTempCompData[1].sLabel)
|
|
AND GET_HASH_KEY(g_sTempCompData[1].sLabel) != GET_HASH_KEY("NO_LABEL")
|
|
PRINTLN("...SET_LAST_UNDER_JACKET_ITEM : [", g_sTempCompData[1].sLabel, "] ", GET_STRING_FROM_TEXT_FILE(g_sTempCompData[1].sLabel))
|
|
|
|
ELIF IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT)
|
|
AND GET_ALT_DLC_PED_COMP_OF_TYPE(g_iLastDLCItemNameHash, PED_COMP_JBIB, iRetNameHash)
|
|
PRINTLN("...SET_LAST_UNDER_JACKET_ITEM : [JBIB VARIANTS]")
|
|
|
|
ELSE
|
|
PRINTLN("...SET_LAST_UNDER_JACKET_ITEM : Invalid item 2 - clearing", "["
|
|
, IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT), ","
|
|
, IS_STRING_NULL_OR_EMPTY(g_sTempCompData[1].sLabel)
|
|
, "]")
|
|
g_eLastStoredCompName = DUMMY_PED_COMP
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("...SET_LAST_UNDER_JACKET_ITEM : Dummy item")
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Sets the current component item for the ped
|
|
/// bPreviewing - if this is true we are previewing the item in shops / wardrobe
|
|
/// so if the item has a decal tattoo it will be equipped as temporary
|
|
/// bReEquipAccessories - this is used in MP to specify whether we skip the hair overlays
|
|
FUNC BOOL SET_PED_COMP_ITEM_CURRENT_MP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bMustBeAvailable = TRUE, INT iPaletteOverride = -1, BOOL bUseGlobalOutfitData = FALSE, BOOL bPreviewing = FALSE, BOOL bReEquipAccessories = FALSE, INT iHairTint1 = -1, INT iHairTint2 = -1, INT iSlot = -1, Bool bBlockTorsoDecal = FALSE, BOOL bForceOnSpawning=FALSE, BOOL bSkipTorsoUpdate = FALSE) // bReEquipAccessories is actually bSkipHairOverlays
|
|
|
|
// B*1619600 - Handle signing out of PSN whilst in shop chair
|
|
// Rob B - should allow this in character select / create screen
|
|
IF NOT NETWORK_IS_GAME_IN_PROGRESS()
|
|
IF g_Private_HudState <> HUD_STATE_SELECT_CHARACTER_FM
|
|
AND g_Private_HudState <> HUD_STATE_CREATE_FACE
|
|
AND g_Private_HudState <> HUD_STATE_SELECTED_JOINING
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF IS_PED_INJURED(ped)
|
|
OR eItem = DUMMY_PED_COMP
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// if this is the player respawning then no need to reset the items on the clone. 1977243
|
|
IF (ped = PLAYER_PED_ID())
|
|
AND (GlobalplayerBD[NATIVE_TO_INT(PLAYER_ID())].iRespawnState = RESPAWN_STATE_JOINING)
|
|
IF NOT (bForceOnSpawning)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : player is respawning, no need to set ped comp on clone. ")
|
|
RETURN(FALSE)
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : bForceOnSpawning = TRUE")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iSlot = -1
|
|
iSlot = g_iPedComponentSlot
|
|
ENDIF
|
|
|
|
// Set the depth so we can tell if we should be setting any requisites
|
|
g_iPedComponentNest++
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Process item, Depth=", g_iPedComponentNest, ", eType=", GET_PED_COMP_TYPE_STRING(eType), ", eItem=", eItem, " called by ", GET_THIS_SCRIPT_NAME())
|
|
|
|
INT i, j, k
|
|
PED_COMP_NAME_ENUM eRequisite
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
PED_COMP_NAME_ENUM eForcedTorso = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eForcedBerd = DUMMY_PED_COMP
|
|
|
|
// For restoring special and torso when we equip a JBIB.
|
|
PED_COMP_NAME_ENUM eRestoreSpecial = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eRestoreTorso = DUMMY_PED_COMP
|
|
INT iRestoreGloveType = -1
|
|
INT iRestoreGloveTexture = -1
|
|
|
|
|
|
IF bUseGlobalOutfitData = FALSE
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
// check ped can have this item
|
|
IF NOT CAN_PED_HAVE_PED_COMP_ITEM(bMustBeAvailable #IF IS_DEBUG_BUILD ,eItem, eType #ENDIF)
|
|
g_iPedComponentNest--
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Don't set JBIB requisites as used in case we are re-using a component that can be accessed directly, i.e not a forced component.
|
|
IF eType = COMP_TYPE_JBIB
|
|
AND g_iPedComponentNest > 1
|
|
// Skip
|
|
ELSE
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ------------ OUTFITS---------------------------------------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
|
|
INT iLastDLCNameItem = g_iLastDLCItemNameHash
|
|
INT iLastDLCLockHash = g_iLastDLCItemLockHash
|
|
|
|
// Always clear ped props so we dont go over prop limit
|
|
CLEAR_ALL_PED_PROPS(ped)
|
|
|
|
// get outfit info
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData
|
|
IF bUseGlobalOutfitData = TRUE
|
|
sOutfitData = g_sTempOutfitData
|
|
ELSE
|
|
sOutfitData= GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
ENDIF
|
|
|
|
// Set all the flagged component items
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
|
|
//-------DECL COMPONENT ITEM FOR OUTFIT---------------------------------------------
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_DECL
|
|
AND sOutfitData.bUsesTattooDecals
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_DECL, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0))
|
|
|
|
IF iPaletteOverride = -1
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, GET_PED_PALETTE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))))
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, iPaletteOverride)
|
|
ENDIF
|
|
|
|
// Overlays for are managed in the shop and wardrobe scripts.
|
|
|
|
// set MP only data
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_DECL, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0))
|
|
ENDIF
|
|
ELSE
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
OR INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_PROPGROUP // propgroups dont have stats
|
|
|
|
// -------PROP GROUP FOR OUTFIT---------------------------------
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) = COMP_TYPE_PROPGROUP
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData
|
|
IF bUseGlobalOutfitData = TRUE
|
|
sPropGroupData = g_sTempPropGroupData
|
|
ELSE
|
|
sPropGroupData= GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitData.eItems[i])
|
|
ENDIF
|
|
|
|
// Set all the flagged props
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
// set MP only data
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//-------COMPONENT ITEM FOR OUTFIT---------------------------------------------
|
|
ELIF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) != COMP_TYPE_PROPS
|
|
AND INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) != COMP_TYPE_OUTFIT
|
|
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, i) != COMP_TYPE_BERD
|
|
IF iPaletteOverride = -1
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, GET_PED_PALETTE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i))))
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, iPaletteOverride)
|
|
ENDIF
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped,
|
|
INT_TO_ENUM(PED_COMP_TYPE_ENUM, i),
|
|
sOutfitData.eItems[i], FALSE)
|
|
ENDIF
|
|
|
|
// set MP only data
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF i != ENUM_TO_INT(COMP_TYPE_OUTFIT)
|
|
AND i != ENUM_TO_INT(COMP_TYPE_PROPS)
|
|
// Not required to set anything, but if current part is outfit only, grab the default
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), GET_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i)))
|
|
IF IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
PED_COMP_OUTFIT_DATA_STRUCT sDefaultOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sDefaultOutfitData.eItems[i], FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//Re-apply berd to fix hair issues.
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_BERD, GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD))
|
|
|
|
g_iLastDLCItemNameHash = iLastDLCNameItem
|
|
g_iLastDLCItemLockHash = iLastDLCLockHash
|
|
|
|
// skip these for spawn outfits
|
|
IF bUseGlobalOutfitData = FALSE
|
|
|
|
#IF USE_TU_CHANGES
|
|
// remove crew logos
|
|
TATTOO_NAME_ENUM eCrewLogo
|
|
eCrewLogo = GET_CURRENT_CREW_LOGO_TATTOO()
|
|
IF eCrewLogo <> INVALID_TATTOO
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing crew logo tattoo as an outfit is being equipped!: ", eCrewLogo)
|
|
SET_MP_TATTOO_CURRENT(eCrewLogo, FALSE, iSlot)
|
|
ENDIF
|
|
|
|
// equip torso decals for this outfit
|
|
EQUIP_TORSO_DECALS_MP(ped, COMP_TYPE_JBIB, sOutfitData.eItems[COMP_TYPE_JBIB], bPreviewing)
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
// ------PROP GROUP----------------------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
|
|
// Set all the flagged props
|
|
FOR j = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
// set MP only data
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j])
|
|
ENDIF
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[j], INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
//------- PROP-------------------------------------------------------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
// // Remove props if we no longer want props.
|
|
// INT iCurrentBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD))
|
|
// IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCurrentBerdHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// PED_COMP_NAME_ENUM eCurrentBerd = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_BERD)
|
|
// eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, COMP_TYPE_BERD, eCurrentBerd, COMP_TYPE_PROPS, g_sTempCompData[1].ePropPos)
|
|
// IF eRequisite != DUMMY_PED_COMP
|
|
// AND eRequisite != eItem
|
|
// CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Force remove berd as we forced this on the last time we equipped prop ", eRequisite)
|
|
// eForcedBerd = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_BERD, -1)
|
|
// ENDIF
|
|
// ENDIF
|
|
|
|
SAFE_SET_PROP(ped, g_sTempCompData[1].ePropPos, g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
|
|
// set MP only data
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_AVAILABLE_BIT))
|
|
SET_MP_PED_COMP_ITEM_NO_LONGER_NEW(ePedModel, eType, eItem)
|
|
ENDIF
|
|
|
|
// Update hair scale.
|
|
IF g_sTempCompData[1].ePropPos = ANCHOR_HEAD
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_SHRINK_HAIR, ENUM_TO_INT(SHOP_PED_PROP))
|
|
// Ignore, requsite will force on hair shrink berd.
|
|
ELSE
|
|
// Remove hair shrink berd
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_BERD, DLC_RESTRICTION_TAG_HAIR_SHRINK)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing hair shrinker")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_BERD, BERD_FMM_0_0, FALSE)
|
|
// Re-grab the data.
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update jbib for hooded jacket.
|
|
IF (g_sTempCompData[1].ePropPos = ANCHOR_HEAD)
|
|
UPDATE_PED_HOOD_STATE(ped)
|
|
ENDIF
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Start prop requisites")
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Props only ever deal with ANCHOR_HEAD so check ANCHOR_EYES now too for scuba suits.
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, COMP_TYPE_PROPS, ANCHOR_EYES)
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, eRequisite, FALSE)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : End prop requisites")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ---------COMPONENT ITEM---------------------------------------------------------------
|
|
ELSE
|
|
|
|
// Force remove items if we detect a change
|
|
PED_COMPONENT ePedComponent = GET_PED_COMPONENT_FROM_TYPE(eType)
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, ePedComponent) != g_sTempCompData[1].iDrawable
|
|
OR GET_PED_TEXTURE_VARIATION(ped, ePedComponent) != g_sTempCompData[1].iTexture
|
|
INT iDLCSpecialHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
INT iDLCTeethHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_TEETH), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_TEETH), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_TEETH))
|
|
|
|
// Remove TEETH
|
|
IF (eType = COMP_TYPE_JBIB AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_REMOVE_WITH_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (eType = COMP_TYPE_SPECIAL AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_REMOVE_WITH_SPECIAL, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (eType = COMP_TYPE_LEGS AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTeethHash, DLC_RESTRICTION_TAG_REMOVE_WITH_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Teeth to be force removed")
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_TEETH, 0, 0, GET_PED_PALETTE_VARIATION(ped, PED_COMP_TEETH))
|
|
ENDIF
|
|
|
|
// Remove SPECIAL
|
|
IF (eType = COMP_TYPE_JBIB AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_REMOVE_WITH_JBIB, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (eType = COMP_TYPE_LEGS AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_REMOVE_WITH_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special to be force removed")
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_SPECIAL, 15, 0, GET_PED_PALETTE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_SPECIAL, 2, 0, GET_PED_PALETTE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// If we are changing to a jacket JBIB, set the SPECIAL version for the current JBIB.
|
|
IF eType = COMP_TYPE_JBIB
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
|
|
INT iDLCJbibHash = -1
|
|
|
|
// set crew col
|
|
IF (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_IS_DLC_BIT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_CREW_COL, ENUM_TO_INT(PED_COMP_JBIB))
|
|
SET_HEAD_BLEND_PALETTE_COLOR(ped, g_Private_LocalPlayerCrew_Colour_Red, g_Private_LocalPlayerCrew_Colour_Green, g_Private_LocalPlayerCrew_Colour_Blue, 0 ) // sleeves
|
|
SET_HEAD_BLEND_PALETTE_COLOR(ped, g_Private_LocalPlayerCrew_Colour_Red, g_Private_LocalPlayerCrew_Colour_Green, g_Private_LocalPlayerCrew_Colour_Blue, 1 ) // body
|
|
SET_HEAD_BLEND_PALETTE_COLOR(ped, g_Private_LocalPlayerCrew_Colour_Red, g_Private_LocalPlayerCrew_Colour_Green, g_Private_LocalPlayerCrew_Colour_Blue, 2 ) // collar
|
|
SET_HEAD_BLEND_PALETTE_COLOR(ped, g_Private_LocalPlayerCrew_Colour_Red, g_Private_LocalPlayerCrew_Colour_Green, g_Private_LocalPlayerCrew_Colour_Blue, 3 ) // body
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM eCurrentJBIB = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL)
|
|
PED_COMP_NAME_ENUM eCurrentLegs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS)
|
|
|
|
// Restore body warmer?
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_OVER_JACKET)
|
|
// If we are trying on one of these items don't bother re-applying the body armour
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4)
|
|
ENDIF
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_ROBE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SILK_PYJAMAS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SANTA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MORPH_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_CAT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// skip
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing utility vest")
|
|
ELSE
|
|
eRestoreSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Restore gloves?
|
|
INT iCurrentTorsoHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_TORSO), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_TORSO), 0)// The lookup only deals with texture 0 so we need to work out correct hash later.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCurrentTorsoHash, DLC_RESTRICTION_TAG_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PED_COMP_NAME_ENUM eNoGlovesTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eCurrentSpecial, eCurrentJbib, eCurrentLegs)
|
|
IF eNoGlovesTorso = DUMMY_PED_COMP
|
|
eNoGlovesTorso = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, COMP_TYPE_JBIB, eCurrentJbib, COMP_TYPE_TORSO)
|
|
ENDIF
|
|
|
|
// Flapper dress force gloves, not a torso, so we need to convert.
|
|
SWITCH iCurrentTorsoHash
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_0")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_1")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_2")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_3")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_4")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_5")
|
|
|
|
eNoGlovesTorso = TORSO_FMF_11_0
|
|
|
|
// If this item isn't a dress we should clear the dress gloves.
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4)
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eNoGlovesTorso = DUMMY_PED_COMP
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
IF eNoGlovesTorso != DUMMY_PED_COMP
|
|
INT iGlove
|
|
REPEAT NUMBER_OF_GLOVE_TYPES iGlove
|
|
IF GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(eNoGlovesTorso), iGlove) = iCurrentTorsoHash
|
|
iRestoreGloveType = iGlove
|
|
iRestoreGloveTexture = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_TORSO)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iDLCJbibHash = -1
|
|
|
|
// If we are trying on a waistcoat try and grab the waistcoat shirt.
|
|
IF ePedModel = MP_F_FREEMODE_01 AND eItem >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
eCurrentJBIB = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB)
|
|
IF eCurrentJBIB >= JBIB_FMF_DLC
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 4)
|
|
ENDIF
|
|
|
|
IF eCurrentJBIB >= JBIB_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
PED_COMP_NAME_ENUM eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eCurrentJBIB, eItem, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
IF (eSpecialComp != DUMMY_PED_COMP)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : JBIB->SPECIAL : Changing shirt to waistcoat shirt, eSpecialComp=", eSpecialComp)
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eSpecialComp, FALSE, iPaletteOverride)
|
|
|
|
// We can't set requisites for this item as it may get cleared if the JBIB has a requisite of the same time.
|
|
// To get around this we use GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO once the main item has been set.
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eItem)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Item is a jacket")
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF eCurrentJBIB >= JBIB_FMM_DLC
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 3)
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eCurrentJBIB >= JBIB_FMF_DLC
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 4)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Remove body warmer
|
|
eRestoreSpecial = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing body armour [1]")
|
|
|
|
IF NOT IS_JBIB_COMPONENT_A_JACKET(ePedModel, eCurrentJBIB)
|
|
|
|
IF ePedModel = MP_F_FREEMODE_01 AND eCurrentJBIB >= JBIB_FMF_DLC AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_VEST_SHIRT, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
// If we have a vest or vest shirt on we need to force a valid item.
|
|
ELIF ePedModel = MP_F_FREEMODE_01 AND eCurrentJBIB >= JBIB_FMF_DLC
|
|
AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_STUNT_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
)
|
|
/*OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))*/
|
|
// If we don't have a compatible special we need to force a valid item.
|
|
ELSE
|
|
PED_COMP_NAME_ENUM eLastStoredUnderJacketItem = GET_LAST_UNDER_JACKET_ITEM(ped, eItem)
|
|
PED_COMP_NAME_ENUM eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eCurrentJBIB, eItem, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
IF (eSpecialComp != DUMMY_PED_COMP)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : JBIB->SPECIAL : Changing top to jacket top, eSpecialComp=", eSpecialComp)
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eSpecialComp, FALSE, iPaletteOverride)
|
|
|
|
// We can't set requisites for this item as it may get cleared if the JBIB has a requisite of the same time.
|
|
// To get around this we use GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO once the main item has been set.
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
// Clear the body warmer component so we don't attempt to restore
|
|
eRestoreSpecial = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing body armour [2]")
|
|
|
|
ELIF eLastStoredUnderJacketItem != DUMMY_PED_COMP
|
|
AND (ped = PLAYER_PED_ID() OR ped = g_pShopClonePed)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Restoring last under jacket item")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eLastStoredUnderJacketItem, FALSE, iPaletteOverride)
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
ELSE
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
PED_COMP_NAME_ENUM eJbibVersion
|
|
|
|
eJbibVersion = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eJbibVersion)
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, g_sTempCompData[1].iTexture)
|
|
|
|
INT iItemDLCHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3)
|
|
|
|
IF (eSpecialComp = DUMMY_PED_COMP)
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemDLCHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemDLCHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eSpecialComp = SPECIAL_FMM_15_0
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eSpecialComp = SPECIAL_FMF_15_0
|
|
ELSE
|
|
eSpecialComp = SPECIAL_FMF_4_14
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : JBIB->SPECIAL : Setting default top for this jacket, eSpecialComp=", eSpecialComp)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eSpecialComp, FALSE, iPaletteOverride)
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
// If we are changing from a jacket to a jacket we need to make sure the special is updated to match.
|
|
INT iDraw1, iDraw2, iSpecialVariation
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eCurrentJBIB)
|
|
iDraw1 = g_sTempCompData[1].iDrawable
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eItem)
|
|
iDraw2 = g_sTempCompData[1].iDrawable
|
|
|
|
IF iDraw1 != iDraw2
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Changing jacket, update special, eCurrentSpecial=", eCurrentSpecial)
|
|
|
|
// try using cached top.
|
|
PED_COMP_NAME_ENUM eLastStoredUnderJacketItem = GET_LAST_UNDER_JACKET_ITEM(ped, eItem)
|
|
|
|
// work out the jbib version of the current special item
|
|
PED_COMP_NAME_ENUM eJbibVersion
|
|
PED_COMP_NAME_ENUM eSpecialComp// = DUMMY_PED_COMP <TO LATE TO SET THIS TO DUMMY FOR BIKER BUT WE SHOULD CHANGE NEXT PACK !>
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_SPECIAL, eCurrentSpecial)
|
|
iSpecialVariation = g_sTempCompData[1].iTexture
|
|
eJbibVersion = GET_JBIB_FROM_SPECIAL(ePedModel, eCurrentSpecial, iSpecialVariation)
|
|
|
|
IF eLastStoredUnderJacketItem != DUMMY_PED_COMP
|
|
AND (ped = PLAYER_PED_ID() OR ped = g_pShopClonePed)
|
|
eSpecialComp = eLastStoredUnderJacketItem
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Restoring last under jacket item")
|
|
|
|
ELIF eJbibVersion = DUMMY_PED_COMP
|
|
eSpecialComp = eCurrentSpecial
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special doesn't have a JBIB version")
|
|
|
|
// if male equipping leather jacket- we need to replace the special item
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
INT iItemDLCHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3)
|
|
IF (eItem >= JBIB_FMM_6_0 AND eItem <= JBIB_FMM_6_11)
|
|
OR (GET_DLC_DRAW_TAG(iItemDLCHash) = 6)
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemDLCHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with leather jacket, set default")
|
|
eJbibVersion = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eJbibVersion)
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// if female equipping open jacket- we need to replace the special item
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
AND (eCurrentSpecial = SPECIAL_FMF_2_0 OR eCurrentSpecial = SPECIAL_FMF_3_0 OR eCurrentSpecial = SPECIAL_FMF_14_0)
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_JACKET_ONLY, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with open jacket, set default")
|
|
eJbibVersion = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eJbibVersion)
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// if special is for use under jackets we need to replace the special item
|
|
INT iSpecialDLCHash = -1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
iSpecialDLCHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentSpecial, COMP_TYPE_SPECIAL, 3)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
iSpecialDLCHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentSpecial, COMP_TYPE_SPECIAL, 4)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialDLCHash, DLC_RESTRICTION_TAG_OVERCOAT_ACCS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Jacket not compatible with overcoat accs, set default")
|
|
eJbibVersion = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eJbibVersion)
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ELSE
|
|
// convert to new special under the new jacket
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, iSpecialVariation)
|
|
|
|
// if male equipping open check shirt- we need to replace the special item if it doesn't work with the legs
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS), eJbibVersion)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with jacket, set bare chest")
|
|
eSpecialComp = SPECIAL_FMM_15_0
|
|
ENDIF
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS), eJbibVersion)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with jacket, set grey tank")
|
|
eSpecialComp = SPECIAL_FMF_4_14
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF (eSpecialComp != DUMMY_PED_COMP)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special compatible, eSpecialComp=", eSpecialComp)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eSpecialComp, FALSE, iPaletteOverride)
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with jacket, set default")
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eJbibVersion = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_JBIB, eJbibVersion)
|
|
eSpecialComp = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eJbibVersion, eItem, g_sTempCompData[1].iTexture)
|
|
IF (eSpecialComp = DUMMY_PED_COMP)
|
|
eSpecialComp = SPECIAL_FMM_15_0
|
|
ENDIF
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eSpecialComp, FALSE, iPaletteOverride)
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, SPECIAL_FMF_4_14, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#IF USE_TU_CHANGES
|
|
// equipping a jbib that is not a jacket, check if we need to remove a crew logo
|
|
HANDLE_CREW_LOGO_TATTOOS(ePedModel, eItem)
|
|
|
|
// We don't have correct rules set up for the decl components so we always remove when switching top.
|
|
// Any outfits that use decl will need to ensure the decl is hooked up to the jbibs forced components.
|
|
IF NOT bSkipTorsoUpdate
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, 0, 0, GET_PED_PALETTE_VARIATION(ped, PED_COMP_DECL))
|
|
ENDIF
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
// equip any torso decals for this jbib (tattoos)
|
|
EQUIP_TORSO_DECALS_MP(ped, eType, eItem, bPreviewing)
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
// In some cases we need to force another TORSO to match the current SPECIAL and JBIB combo,
|
|
// so grab this here and apply AFTER we do the requisistes.
|
|
eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL), eItem, GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS))
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_HAIR
|
|
|
|
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
IF iHairTint1 = -1
|
|
iHairTint1 = GET_MP_INT_CHARACTER_STAT(MP_STAT_HAIR_TINT, iSlot)
|
|
ENDIF
|
|
IF iHairTint2 = -1
|
|
iHairTint2 = GET_MP_INT_CHARACTER_STAT(MP_STAT_SEC_HAIR_TINT, iSlot)
|
|
ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Setting hair tint, iHairTint1=", iHairTint1, ", iHairTint2=", iHairTint2, ", iSlot=", iSlot, " [", g_sTempCompData[1].iDrawable, ", ", g_sTempCompData[1].iTexture, "]")
|
|
DEBUG_PRINTCALLSTACK()
|
|
SET_PED_HAIR_TINT(ped, iHairTint1, iHairTint2)
|
|
ENDIF
|
|
|
|
IF bReEquipAccessories = FALSE // if we're doing the hair overlays
|
|
IF (eItem != DUMMY_PED_COMP)
|
|
PED_COMP_NAME_ENUM eGRHairItem
|
|
eGRHairItem = DUMMY_PED_COMP
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
eGRHairItem = GET_MALE_HAIR(eItem)
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
eGRHairItem = GET_FEMALE_HAIR(eItem)
|
|
ENDIF
|
|
|
|
IF (eGRHairItem != DUMMY_PED_COMP)
|
|
AND (eItem != eGRHairItem)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP gr_hair: replacing hair enum ", eItem, " with gunrunning hair enum ", eGRHairItem)
|
|
eItem = eGRHairItem
|
|
ENDIF
|
|
ENDIF
|
|
|
|
EQUIP_HAIR_OVERLAY_MP(ped, eItem, iSlot, bBlockTorsoDecal)
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
|
|
// Restore gloves?
|
|
INT iCurrentTorsoHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_TORSO), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_TORSO), 0)// The lookup only deals with texture 0 so we need to work out correct hash later.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCurrentTorsoHash, DLC_RESTRICTION_TAG_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
PED_COMP_NAME_ENUM eCurrentJBIB = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentLegs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS)
|
|
|
|
PED_COMP_NAME_ENUM eNoGlovesTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eItem, eCurrentJbib, eCurrentLegs)
|
|
IF eNoGlovesTorso = DUMMY_PED_COMP
|
|
eNoGlovesTorso = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, COMP_TYPE_JBIB, eCurrentJbib, COMP_TYPE_TORSO)
|
|
ENDIF
|
|
|
|
// Flapper dress force gloves, not a torso, so we need to convert.
|
|
SWITCH iCurrentTorsoHash
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_0")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_1")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_2")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_3")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_4")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_5")
|
|
|
|
eNoGlovesTorso = TORSO_FMF_11_0
|
|
|
|
// If this item isn't a dress we should clear the dress gloves.
|
|
INT iDLCJbibHash
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4)
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eNoGlovesTorso = DUMMY_PED_COMP
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
IF eNoGlovesTorso != DUMMY_PED_COMP
|
|
INT iGlove
|
|
REPEAT NUMBER_OF_GLOVE_TYPES iGlove
|
|
IF GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(eNoGlovesTorso), iGlove) = iCurrentTorsoHash
|
|
iRestoreGloveType = iGlove
|
|
iRestoreGloveTexture = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_TORSO)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// equip any torso decals for this special (tattoos)
|
|
EQUIP_TORSO_DECALS_MP(ped, eType, eItem, bPreviewing)
|
|
|
|
#IF USE_TU_CHANGES
|
|
PED_COMP_NAME_ENUM eJacketJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB)
|
|
IF IS_JBIB_COMPONENT_A_JACKET(ePedModel, eJacketJbib)
|
|
// see if we need to remove any crew logo tattoos (only if player wearing a jacket)
|
|
PED_COMP_NAME_ENUM eJbibFromSpecial
|
|
eJbibFromSpecial = GET_JBIB_FROM_SPECIAL(ePedModel, eItem, g_sTempCompData[1].iTexture)
|
|
HANDLE_CREW_LOGO_TATTOOS(ePedModel, eJbibFromSpecial)
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
// In some cases we need to force another TORSO to match the current SPECIAL and JBIB combo,
|
|
// so grab this here and apply AFTER we do the requisistes.
|
|
eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eItem, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB), GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS))
|
|
ENDIF
|
|
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL2
|
|
|
|
IF (eItem >= SPECIAL2_FMM_1_0 AND eItem <= SPECIAL2_FMM_9_0)
|
|
// need to check if we need to remove the player's chain
|
|
PED_COMP_NAME_ENUM eCurrentTeethItem
|
|
eCurrentTeethItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_TEETH)
|
|
IF NOT DO_TEETH_CHECK_MP(ePedModel, eCurrentTeethItem, COMP_TYPE_SPECIAL2, DUMMY_PED_COMP, DUMMY_PED_COMP, DUMMY_PED_COMP, ped, DEFAULT, eItem)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Remove chain for special2 item")
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(COMP_TYPE_TEETH), 0, 0)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_BERD
|
|
|
|
IF (ePedModel = MP_M_FREEMODE_01 AND eItem >= BERD_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_SHRINK_HEAD, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (ePedModel = MP_F_FREEMODE_01 AND eItem >= BERD_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_SHRINK_HEAD, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
INT iSlot = -1
|
|
#ENDIF
|
|
|
|
INT tex0, tex1, tex2
|
|
tex0 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX0, iSlot)
|
|
tex1 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX1, iSlot)
|
|
tex2 = GET_MP_INT_CHARACTER_STAT(MP_STAT_MESH_TEX2, iSlot)
|
|
|
|
FLOAT texBlend
|
|
texBlend = GET_MP_FLOAT_CHARACTER_STAT(MP_STAT_MESH_TEXBLEND, iSlot)
|
|
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Force male head to small - Berd item needs a shrunken head (tex: ", tex0, ", ", tex1, ", ", tex2, ": ", texBlend, "), \" hash:", g_iLastDLCItemNameHash, "\"")
|
|
SET_PED_HEAD_BLEND_DATA(ped, 0,0,0, tex0, tex1, tex2, 0.0, texBlend, 0.0)
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Force female head to small - Berd item needs a shrunken head (tex: ", tex0, ", ", tex1, ", ", tex2, ": ", texBlend, "), \" hash:", g_iLastDLCItemNameHash, "\"")
|
|
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_DATA(ped, 14,0,0, tex0, tex1, tex2, 0.0, texBlend, 0.0)
|
|
#ENDIF
|
|
#IF IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_DATA(ped, 21,0,0, tex0, tex1, tex2, 0.0, texBlend, 0.0)
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
#IF NOT IS_NEXTGEN_BUILD
|
|
SET_PED_HEAD_BLEND_HAS_GRANDPARENTS(ped, FALSE)
|
|
#ENDIF
|
|
#IF IS_NEXTGEN_BUILD
|
|
MICRO_MORPH_TYPE microMorph
|
|
REPEAT ciCHARACTER_CREATOR_MAX_MICRO_MORPH microMorph
|
|
SET_PED_MICRO_MORPH(ped, microMorph, 0.0)
|
|
ENDREPEAT
|
|
#ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Force head to normal - Berd item is doesn't need a shrunken head, \" hash:", g_iLastDLCItemNameHash, "\"")
|
|
RESET_PLAYER_HEAD_BLEND_TO_NORM(ped, iSlot)
|
|
ENDIF
|
|
|
|
// // Remove props if we no longer want props.
|
|
// INT iCurrentBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD))
|
|
// INT iNextBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
//
|
|
// IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCurrentBerdHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iNextBerdHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
//
|
|
// PED_COMP_NAME_ENUM eCurrentBerd = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_BERD)
|
|
// PED_PROP_POSITION ePropPos
|
|
// REPEAT NUM_PLAYER_PED_PROPS ePropPos
|
|
// eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eCurrentBerd, COMP_TYPE_PROPS, ePropPos)
|
|
//
|
|
// PED_COMP_NAME_ENUM eCurrentProp
|
|
// eCurrentProp = GET_PED_PROP_CURRENT_FROM_LOOKUP(ped, ePropPos)
|
|
//
|
|
// IF eRequisite = eCurrentProp
|
|
// CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Force remove prop as we forced this on the last time we equipped berd ", eCurrentBerd)
|
|
// CLEAR_PED_PROP(ped, ePropPos)
|
|
// ENDIF
|
|
// ENDREPEAT
|
|
// ENDIF
|
|
// ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_LEGS
|
|
|
|
// Validate the accs.
|
|
PED_COMP_NAME_ENUM eCurrentJBIB = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL)
|
|
// if male equipping open check shirt- we need to replace the special item if it doesn't work with the legs
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 3), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, eItem, GET_JBIB_FROM_SPECIAL(ePedModel, eCurrentSpecial, 0))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with these legs and open check shirt, set bare chest")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, SPECIAL_FMM_15_0, FALSE, iPaletteOverride)
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, 4), DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF NOT DO_JBIB_AND_LEGS_CHECK_MP(ePedModel, eItem, GET_JBIB_FROM_SPECIAL(ePedModel, eCurrentSpecial, 0))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Special not compatible with these legs and open check shirt, set grey tank")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, SPECIAL_FMM_4_14, FALSE, iPaletteOverride)
|
|
|
|
// rebuild temp data for this item...
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
// In some cases we need to force another TORSO to match the current SPECIAL and JBIB combo,
|
|
// so grab this here and apply AFTER we do the requisistes.
|
|
eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_SPECIAL), GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB), eItem)
|
|
ENDIF
|
|
|
|
// Restore gloves?
|
|
INT iCurrentTorsoHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_TORSO), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_TORSO), 0)// The lookup only deals with texture 0 so we need to work out correct hash later.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iCurrentTorsoHash, DLC_RESTRICTION_TAG_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PED_COMP_NAME_ENUM eNoGlovesTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eCurrentSpecial, eCurrentJbib, eItem)
|
|
IF eNoGlovesTorso = DUMMY_PED_COMP
|
|
eNoGlovesTorso = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, COMP_TYPE_JBIB, eCurrentJbib, COMP_TYPE_TORSO)
|
|
ENDIF
|
|
|
|
// Flapper dress force gloves, not a torso, so we need to convert.
|
|
SWITCH iCurrentTorsoHash
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_0")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_1")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_2")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_3")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_4")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_5")
|
|
|
|
eNoGlovesTorso = TORSO_FMF_11_0
|
|
|
|
// If this item isn't a dress we should clear the dress gloves.
|
|
INT iDLCJbibHash
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_JBIB, 4)
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eNoGlovesTorso = DUMMY_PED_COMP
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
IF eNoGlovesTorso != DUMMY_PED_COMP
|
|
INT iGlove
|
|
REPEAT NUMBER_OF_GLOVE_TYPES iGlove
|
|
IF GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(eNoGlovesTorso), iGlove) = iCurrentTorsoHash
|
|
iRestoreGloveType = iGlove
|
|
iRestoreGloveTexture = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_TORSO)
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iPaletteOverride = -1
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, GET_PED_PALETTE_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType)))
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture, iPaletteOverride)
|
|
ENDIF
|
|
|
|
IF bUseGlobalOutfitData = FALSE // skip all requisites for spawn outfits
|
|
|
|
// Set any requisites for this item
|
|
IF g_iPedComponentNest = 1
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Start component requisite, eType=", GET_PED_COMP_TYPE_STRING(eType))
|
|
REPEAT NUMBER_OF_PED_COMP_TYPES k
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k))
|
|
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, k), eRequisite, FALSE, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, (eType = COMP_TYPE_DECL))
|
|
|
|
IF INT_TO_ENUM(PED_COMP_TYPE_ENUM, k) = COMP_TYPE_TORSO
|
|
SWITCH g_iLastDLCItemNameHash
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_0")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_1")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_2")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_3")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_4")
|
|
CASE HASH("DLC_MP_VAL_F_UPPR0_5")
|
|
iRestoreGloveType = -1
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF INT_TO_ENUM(PED_COMP_TYPE_ENUM, k) = COMP_TYPE_SPECIAL
|
|
IF (eForcedTorso != DUMMY_PED_COMP)
|
|
eForcedTorso = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eRequisite, GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_JBIB), GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS))
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Props only ever deal with ANCHOR_HEAD so check ANCHOR_EYES now too for scuba suits.
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, COMP_TYPE_PROPS, ANCHOR_EYES)
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, eRequisite, FALSE)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : End component requisites")
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_JBIB
|
|
OR eType = COMP_TYPE_SPECIAL
|
|
OR eType = COMP_TYPE_LEGS
|
|
// update armour
|
|
IF IS_PED_WEARING_ARMOUR(ped)
|
|
PED_COMP_NAME_ENUM eBodyArmour = GET_BODY_ARMOUR_FOR_JBIB(ped, ePedModel, eType, eItem)
|
|
|
|
IF eBodyArmour > INT_TO_ENUM(PED_COMP_NAME_ENUM, 0)
|
|
eBodyArmour += INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL2))
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL2, eBodyArmour)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL2, eBodyArmour, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL2, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0), FALSE, iPaletteOverride)
|
|
ENDIF
|
|
|
|
// Remove armour if we are wearing body warmer.
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(ped, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_OVER_JACKET)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing body armour for utility vest")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL2, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0), FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_JBIB
|
|
OR eType = COMP_TYPE_SPECIAL
|
|
// update parachute pack
|
|
INT iBagIndex = GET_MP_INT_CHARACTER_STAT(MP_STAT_PARACHUTE_CURRENT_PACK)
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_HAND) != 0
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_HAND, GET_PARACHUTE_DRAWABLE_FOR_MP(ped, iBagIndex), GET_PARACHUTE_TEXTURE_FOR_MP(ped, iBagIndex), GET_PARACHUTE_PALETTE_FOR_MP(ped, iBagIndex))
|
|
ENDIF
|
|
IF ped = PLAYER_PED_ID()
|
|
SET_PLAYER_PARACHUTE_VARIATION_OVERRIDE(PLAYER_ID(), PED_COMP_HAND, GET_PARACHUTE_DRAWABLE_FOR_MP(PLAYER_PED_ID(), iBagIndex), GET_PARACHUTE_TEXTURE_FOR_MP(PLAYER_PED_ID(), iBagIndex))
|
|
SET_PLAYER_PARACHUTE_PACK_TINT_INDEX(PLAYER_ID(), GET_PARACHUTE_PALETTE_FOR_MP(PLAYER_PED_ID(), iBagIndex))
|
|
SET_MP_PARACHUTE_BAG_OVERRIDE(PLAYER_ID(), iBagIndex)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF eType = COMP_TYPE_TEETH
|
|
// Remove armour if we are wearing big chain.
|
|
IF (ePedModel = MP_M_FREEMODE_01 AND eItem >= TEETH_FMM_DLC)
|
|
OR (ePedModel = MP_F_FREEMODE_01 AND eItem >= TEETH_FMF_DLC)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(g_iLastDLCItemNameHash, DLC_RESTRICTION_TAG_BIG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Removing body armour for big chain")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL2, INT_TO_ENUM(PED_COMP_NAME_ENUM, 0), FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
//update legs for dress
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
AND (eType = COMP_TYPE_JBIB OR eType = COMP_TYPE_LEGS)
|
|
PED_COMP_NAME_ENUM eCurrentLegsItem, eCurrentJbibItem, eReturnLegsItem
|
|
|
|
IF (eType = COMP_TYPE_JBIB)
|
|
eCurrentLegsItem = GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS)
|
|
eCurrentJbibItem = eItem
|
|
ELSE
|
|
eCurrentLegsItem = eItem
|
|
eCurrentJbibItem = GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_JBIB)
|
|
ENDIF
|
|
|
|
// Wearing a dress?
|
|
IF IS_ITEM_A_DRESS(ePedModel, COMP_TYPE_JBIB, eCurrentJbibItem)
|
|
// Make sure we have the dress legs.
|
|
IF NOT IS_PED_COMP_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eCurrentLegsItem)
|
|
IF GET_PED_COMP_ITEM_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eCurrentLegsItem, eReturnLegsItem)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Updating legs to dress version")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eReturnLegsItem, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
// Make sure we don't have the dress legs.
|
|
IF IS_PED_COMP_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eCurrentLegsItem)
|
|
IF GET_PED_COMP_ITEM_NON_DRESS_VERSION(ePedModel, COMP_TYPE_LEGS, eCurrentLegsItem, eReturnLegsItem)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Updating legs to non dress version")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eReturnLegsItem, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update alt items
|
|
IF (eType = COMP_TYPE_LEGS)
|
|
OR (eType = COMP_TYPE_FEET)
|
|
INT iFeetDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_FEET)
|
|
INT iFeetTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_FEET)
|
|
INT iDLCFeetHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_FEET), iFeetDraw, iFeetTex)
|
|
|
|
INT iLegsDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_LEG)
|
|
INT iLegsTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_LEG)
|
|
INT iDLCLegsHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_LEG), iLegsDraw, iLegsTex)
|
|
|
|
PED_COMP_NAME_ENUM eCurrentLegs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_LEGS)
|
|
PED_COMP_NAME_ENUM eCurrentFeet = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(ped, COMP_TYPE_FEET)
|
|
|
|
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
// ALT FEET
|
|
IF DOES_DLC_ITEM_HAVE_ALT_VERSION(ePedModel, iDLCFeetHash)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ALT_FEET, ENUM_TO_INT(SHOP_PED_COMPONENT)) != SHOULD_ALT_FEET_BE_USED_FOR_LEGS(ePedModel, eCurrentLegs, iDLCFeetHash)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Alt feet state is wrong")
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCFeetHash)
|
|
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCFeetHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_FEET)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eCurrentFeet = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_FEET, 3)
|
|
iDLCFeetHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_FEET, eCurrentFeet, FALSE, iPaletteOverride)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eCurrentFeet = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_FEET, 4)
|
|
iDLCFeetHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_FEET, eCurrentFeet, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
iAltComp = iAltComps+1//Bail
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ALT_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) != SHOULD_ALT_LEGS_BE_USED_FOR_FEET(ePedModel, eCurrentFeet, iDLCLegsHash)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Alt legs state is wrong")
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCLegsHash)
|
|
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCLegsHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_LEG)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eCurrentLegs = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_LEGS, 3)
|
|
iDLCLegsHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eCurrentLegs, FALSE, iPaletteOverride)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eCurrentLegs = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_LEGS, 4)
|
|
iDLCLegsHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eCurrentLegs, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
iAltComp = iAltComps+1//Bail
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ALT LEGS
|
|
IF DOES_DLC_ITEM_HAVE_ALT_VERSION(ePedModel, iDLCLegsHash)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCLegsHash, DLC_RESTRICTION_TAG_ALT_LEGS, ENUM_TO_INT(SHOP_PED_COMPONENT)) != SHOULD_ALT_LEGS_BE_USED_FOR_FEET(ePedModel, eCurrentFeet, iDLCLegsHash)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Alt legs state is wrong")
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCLegsHash)
|
|
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCLegsHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_LEG)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eCurrentLegs = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_LEGS, 3)
|
|
iDLCLegsHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eCurrentLegs, FALSE, iPaletteOverride)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eCurrentLegs = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_LEGS, 4)
|
|
iDLCLegsHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_LEGS, eCurrentLegs, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
iAltComp = iAltComps+1//Bail
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetHash, DLC_RESTRICTION_TAG_ALT_FEET, ENUM_TO_INT(SHOP_PED_COMPONENT)) != SHOULD_ALT_FEET_BE_USED_FOR_LEGS(ePedModel, eCurrentLegs, iDLCFeetHash)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Alt feet state is wrong")
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCFeetHash)
|
|
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCFeetHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_FEET)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eCurrentFeet = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_FEET, 3)
|
|
iDLCFeetHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_FEET, eCurrentFeet, FALSE, iPaletteOverride)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eCurrentFeet = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_FEET, 4)
|
|
iDLCFeetHash = iRetNameHash
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_FEET, eCurrentFeet, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
iAltComp = iAltComps+1//Bail
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update jbib for hooded jacket.
|
|
IF (eType = COMP_TYPE_JBIB OR eType = COMP_TYPE_BERD)
|
|
UPDATE_PED_HOOD_STATE(ped)
|
|
|
|
|
|
INT iBerdDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_BERD)
|
|
INT iBerdTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_BERD)
|
|
INT iDLCBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_BERD), iBerdDraw, iBerdTex)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerdHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, COMP_TYPE_PROPS, ANCHOR_HEAD)
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Setting head prop requisite, eType=", GET_PED_COMP_TYPE_STRING(COMP_TYPE_PROPS), ", anchor=,", GET_PROP_POSITION_STRING(ANCHOR_HEAD), ", eItem=", eRequisite)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, eRequisite, FALSE)
|
|
ENDIF
|
|
|
|
eRequisite = GET_PED_COMPONENT_ITEM_REQUISITE_MP(ped, ePedModel, eType, eItem, COMP_TYPE_PROPS, ANCHOR_EYES)
|
|
IF eRequisite != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Setting eye prop requisite, eType=", GET_PED_COMP_TYPE_STRING(COMP_TYPE_PROPS), ", anchor=,", GET_PROP_POSITION_STRING(ANCHOR_EYES), ", eItem=", eRequisite)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_PROPS, eRequisite, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// --------------------HAIR RESTORE CHECK-------------------------------------
|
|
#IF USE_TU_CHANGES
|
|
IF eType != COMP_TYPE_HAIR
|
|
#ENDIF
|
|
IF IS_SAFE_TO_RESTORE_SAVED_HAIR_MP(ped, eReturnItem)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Restore hair")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_HAIR, eReturnItem, FALSE)
|
|
ENDIF
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// --------------------FORCED TORSO CHECK-------------------------------------
|
|
IF (eForcedTorso != DUMMY_PED_COMP)
|
|
AND NOT bSkipTorsoUpdate
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Forcing torso to match JBIB and SPECIAL combo, eForcedTorso=", eForcedTorso)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_TORSO, eForcedTorso, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
|
|
// Restore body warmer?
|
|
IF eRestoreSpecial != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Forcing utility vest, eRestoreSpecial=", eRestoreSpecial)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eRestoreSpecial, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
|
|
// --------------------FORCED PROPS CHECK-------------------------------------
|
|
IF eForcedBerd != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Forcing berd item, eForcedBerd=", eForcedBerd)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_BERD, eForcedBerd, FALSE)
|
|
ENDIF
|
|
|
|
// Restore gloves?
|
|
IF iRestoreGloveType != -1
|
|
INT iDLCGloveHash = GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(GET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_TORSO)), iRestoreGloveType)
|
|
IF iDLCGloveHash != -1
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
eRestoreTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCGloveHash, COMP_TYPE_TORSO, 3)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
eRestoreTorso = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iDLCGloveHash, COMP_TYPE_TORSO, 4)
|
|
ENDIF
|
|
IF eRestoreTorso != DUMMY_PED_COMP
|
|
// Offset to get the correct texture.
|
|
eRestoreTorso = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eRestoreTorso)+iRestoreGloveTexture)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_PED_COMP_ITEM_CURRENT_MP : Forcing gloves back on, eRestoreTorso=", eRestoreTorso, ", iRestoreGloveType=", iRestoreGloveType)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_TORSO, eRestoreTorso, FALSE, iPaletteOverride)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// item is now current
|
|
g_iPedComponentNest--
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Sets the current component item for the ped
|
|
FUNC BOOL SET_PED_COMP_ITEM_CURRENT_ALL(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bMustBeAvailable = TRUE, INT iPaletteOverride = -1)
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
RETURN SET_PED_COMP_ITEM_CURRENT_MP(ped, eType, eItem, bMustBeAvailable, iPaletteOverride)
|
|
ELSE
|
|
RETURN SET_PED_COMP_ITEM_CURRENT_SP(ped, eType, eItem, bMustBeAvailable, iPaletteOverride)
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Removes a ped component item if it is removable
|
|
FUNC BOOL REMOVE_PED_COMP_ITEM_MP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
IF IS_PED_INJURED(ped)
|
|
OR eItem = DUMMY_PED_COMP
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_PED_COMP_ITEM_MP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Is item current?
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_MP(ped, eType, eItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_PED_COMP_ITEM_MP] Component item[", ENUM_TO_INT(eItem), "] not current")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// ---------OUTFITS -----------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
INT i
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
// Remove all the flagged component items
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
REMOVE_PED_COMP_ITEM_MP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// ----------PROPGROUPS---------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
INT i
|
|
BOOL bSuccess
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
// Remove all the flagged props
|
|
FOR i = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT REMOVE_PED_COMP_ITEM_MP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[i])
|
|
bSuccess = FALSE
|
|
ENDIF
|
|
ENDFOR
|
|
RETURN bSuccess
|
|
|
|
// ------------PROPS--------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
CLEAR_PED_PROP(ped, g_sTempCompData[1].ePropPos)
|
|
|
|
// ----------NORMAL ITEMS ------------------
|
|
ELSE
|
|
// For now just set the item to the default
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, sOutfitData.eItems[eType])
|
|
|
|
// Make sure the actual drawable and texture variations are valid
|
|
// incase the script/code data are out of sync.
|
|
IF GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(ped,GET_PED_COMPONENT_FROM_TYPE(eType)) > 0
|
|
AND GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(ped,GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable) > 0
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// --------------------HAIR RESTORE CHECK-------------------------------------
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
IF IS_SAFE_TO_RESTORE_SAVED_HAIR_MP(ped, eReturnItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "REMOVE_PED_COMP_ITEM_MP - IS_SAFE_TO_RESTORE_SAVED_HAIR_MP returned true returned hair is ", eReturnItem)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_HAIR, eReturnItem, FALSE)
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Removes a ped component item if it is removable
|
|
FUNC BOOL REMOVE_PED_COMP_ITEM_SP(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
IF IS_PED_INJURED(ped)
|
|
OR eItem = DUMMY_PED_COMP
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// First check that the ped model can have the component item
|
|
IF NOT (IS_BIT_SET(g_sTempCompData[1].iProperties, PED_COMPONENT_CAN_HAVE_BIT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_PED_COMP_ITEM_SP] Component item[", ENUM_TO_INT(eItem), "] doesn't belong to ped[", g_sTempCompData[1].iPedID, "]")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Is item current?
|
|
IF NOT IS_PED_COMP_ITEM_CURRENT_SP(ped, eType, eItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_PED_COMP_ITEM_SP] Component item[", ENUM_TO_INT(eItem), "] not current")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// ---------OUTFITS -----------------------------
|
|
IF eType = COMP_TYPE_OUTFIT
|
|
INT i
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eItem)
|
|
// Remove all the flagged component items
|
|
FOR i = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
IF sOutfitData.eItems[i] <> DUMMY_PED_COMP
|
|
REMOVE_PED_COMP_ITEM_SP(ped, INT_TO_ENUM(PED_COMP_TYPE_ENUM, i), sOutfitData.eItems[i])
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// ----------PROPGROUPS---------------------
|
|
ELIF eType = COMP_TYPE_PROPGROUP
|
|
INT i
|
|
BOOL bSuccess
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, eItem)
|
|
// Remove all the flagged props
|
|
FOR i = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
IF NOT REMOVE_PED_COMP_ITEM_SP(ped, COMP_TYPE_PROPS, sPropGroupData.eItems[i])
|
|
bSuccess = FALSE
|
|
ENDIF
|
|
ENDFOR
|
|
RETURN bSuccess
|
|
|
|
// ------------PROPS--------------------
|
|
ELIF eType = COMP_TYPE_PROPS
|
|
CLEAR_PED_PROP(ped, g_sTempCompData[1].ePropPos)
|
|
|
|
// ----------NORMAL ITEMS ------------------
|
|
ELSE
|
|
// For now just set the item to the default
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, sOutfitData.eItems[eType])
|
|
|
|
// Make sure the actual drawable and texture variations are valid
|
|
// incase the script/code data are out of sync.
|
|
IF GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(ped,GET_PED_COMPONENT_FROM_TYPE(eType)) > 0
|
|
AND GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(ped,GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable) > 0
|
|
//PRINTLN("******Setting ", g_sTempCompData[1].iDrawable, ",", g_sTempCompData[1].iTexture, " for ped_component ", GET_PED_COMPONENT_FROM_TYPE(eType))
|
|
SET_PED_COMPONENT_VARIATION(ped, GET_PED_COMPONENT_FROM_TYPE(eType), g_sTempCompData[1].iDrawable, g_sTempCompData[1].iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// --------------------HAIR / BEARD / MASKS RESTORE CHECK-------------------------------------
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
IF IS_SAFE_TO_RESTORE_SAVED_HAIR(ped, ePedModel, eReturnItem)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_HAIR, eReturnItem, FALSE)
|
|
ENDIF
|
|
IF IS_SAFE_TO_RESTORE_SAVED_BEARD(ped, ePedModel, eReturnItem)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_BERD, eReturnItem, FALSE)
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Removes a ped component item if it is removable
|
|
FUNC BOOL REMOVE_PED_COMP_ITEM_ALL(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
RETURN REMOVE_PED_COMP_ITEM_MP(ped, eType, eItem)
|
|
ELSE
|
|
RETURN REMOVE_PED_COMP_ITEM_SP(ped, eType, eItem)
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
ENUM HOODED_JACKET_STATE_ENUM
|
|
JACKET_HOOD_DOWN,
|
|
JACKET_HOOD_UP,
|
|
JACKET_HOOD_TUCKED
|
|
ENDENUM
|
|
|
|
PROC SET_HOODED_JACKET_STATE(PED_INDEX ped, HOODED_JACKET_STATE_ENUM eHoodState)
|
|
INT iJbibDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iJbibTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB)
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), iJbibDraw, iJbibTex)
|
|
|
|
INT iDeclDraw = GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_DECL)
|
|
INT iDeclTex = GET_PED_TEXTURE_VARIATION(ped, PED_COMP_DECL)
|
|
INT iDLCDeclHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_DECL), iDeclDraw, iDeclTex)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOODED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Make sure we have correct hood version
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT)) != (eHoodState = JACKET_HOOD_UP)
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HOOD_TUCKED, ENUM_TO_INT(SHOP_PED_COMPONENT)) != (eHoodState = JACKET_HOOD_TUCKED)
|
|
|
|
PRINTLN("[Script_PIM] SET HOOD STATE = change!")
|
|
|
|
INT iAltItem
|
|
IF GET_ALT_HOODED_JACKET(iDLCJbibHash, (eHoodState = JACKET_HOOD_UP), (eHoodState = JACKET_HOOD_TUCKED), iAltItem)
|
|
|
|
PRINTLN("[Script_PIM] SET HOOD STATE = found item!")
|
|
|
|
scrShopPedComponent componentItem
|
|
GET_SHOP_PED_COMPONENT(iAltItem, componentItem)
|
|
//SET_PED_COMPONENT_VARIATION(ped, PED_COMP_JBIB, componentItem.m_drawableIndex, componentItem.m_textureIndex, GET_PED_PALETTE_VARIATION(ped, PED_COMP_JBIB))
|
|
|
|
// Get rid of fake hat so that it doesn't force the hood back up.
|
|
IF (eHoodState != JACKET_HOOD_UP)
|
|
INT iDLCPropHeadHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(ped), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(ped, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(ped, ANCHOR_HEAD))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCPropHeadHash, DLC_RESTRICTION_TAG_FAKE_HAT, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_HOODED_JACKET_STATE : Removing fake hat")
|
|
CLEAR_PED_PROP(ped, ANCHOR_HEAD)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Go through ped comp functions to ensure correct rules are applied.
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_JBIB, GET_PED_COMP_ITEM_FROM_VARIATIONS(ped, componentItem.m_drawableIndex, componentItem.m_textureIndex, COMP_TYPE_JBIB), FALSE)
|
|
|
|
// Restore forced DECL
|
|
IF GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_DECL) = 0
|
|
AND DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iDLCDeclHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_HOODED_JACKET_STATE : Restoring existing DECL")
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, iDeclDraw, iDeclTex)
|
|
ELSE
|
|
// Check if this DECL has an ALT decl that forces on the JBIB we just applied.
|
|
INT iRetNameHash
|
|
IF GET_ALT_DLC_PED_COMP_OF_TYPE(iDLCDeclHash, PED_COMP_DECL, iRetNameHash)
|
|
IF DOES_DLC_ITEM_FORCE_PED_COMP_TYPE(iRetNameHash, PED_COMP_JBIB, componentItem.m_nameHash)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "SET_HOODED_JACKET_STATE : Setting ALT DECL for new JBIB")
|
|
scrShopPedComponent componentItemDecl
|
|
GET_SHOP_PED_COMPONENT(iRetNameHash, componentItemDecl)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItemDecl.m_drawableIndex, componentItemDecl.m_textureIndex)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Update decl on sleeveless hoodie.
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_M_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_M_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_M_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_0_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_0_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_M_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_M_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCDeclHash, DLC_RESTRICTION_TAG_CREW_LOGO, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_16, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_IE_DRAW_19, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_IE_F_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_IE_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_GORKA_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Re-apply
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_X17_F_DECL_10_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#IF FEATURE_FIXER
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_1_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_1_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltItem, DLC_RESTRICTION_TAG_FX_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND iDLCDeclHash != HASH("DLC_MP_FIXER_F_DECL_2_0")
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_FIXER_F_DECL_2_0"), componentItem)
|
|
SET_PED_COMPONENT_VARIATION(ped, PED_COMP_DECL, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
#ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC SET_JACKET_STATE(PED_INDEX ped, BOOL bOpen)
|
|
UNUSED_PARAMETER(ped)
|
|
UNUSED_PARAMETER(bOpen)
|
|
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT( NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_JBIB))
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND bOpen != DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
INT iAltComps
|
|
INT iAltComp
|
|
INT iRetCompEnum, iRetType, iRetNameHash
|
|
scrShopPedComponent componentItem
|
|
|
|
iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iDLCJbibHash)
|
|
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iDLCJbibHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_JBIB)
|
|
AND iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND bOpen = DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iRetNameHash, DLC_RESTRICTION_TAG_OPEN_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
GET_SHOP_PED_COMPONENT(iRetNameHash, componentItem)
|
|
// Go through ped comp functions to ensure correct rules are applied.
|
|
PED_COMP_NAME_ENUM eJBIBJacket = GET_PED_COMP_ITEM_FROM_VARIATIONS(ped, componentItem.m_drawableIndex, componentItem.m_textureIndex, COMP_TYPE_JBIB)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_JBIB, eJBIBJacket, FALSE)
|
|
|
|
// Restore last special
|
|
IF bOpen
|
|
PED_COMP_NAME_ENUM eLastStoredUnderJacketItem = GET_LAST_UNDER_JACKET_ITEM(ped, eJBIBJacket)
|
|
|
|
IF eLastStoredUnderJacketItem != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(ped, COMP_TYPE_SPECIAL, eLastStoredUnderJacketItem, FALSE)
|
|
|
|
IF g_iLastStoredDecalHash != 0
|
|
|
|
INT iDLCSpecialHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(ped), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(ped, PED_COMP_SPECIAL))
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
TATTOO_NAME_ENUM eShirtDecal = GET_TATTOO_ENUM_FROM_DLC_HASH(g_iLastStoredDecalHash, GET_TATTOO_FACTION_FOR_PED(ped))
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
PRINTLN("SET_JACKET_STATE - Setting t-shirt decal, enum=", eShirtDecal)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH, g_iLastStoredDecalHash)
|
|
SET_MP_TATTOO_CURRENT(eShirtDecal, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
EXIT
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the current style of a specific component currently assigned to a ped.
|
|
/// This is to allow other characters to comment appropriately about how a ped looks.
|
|
/// This is singleplayer only!
|
|
/// Currently only used for hair + torso. Will need updating to work for props!
|
|
/// PARAMS:
|
|
/// ped - The ped whose component is to be queried.
|
|
/// eType - The type of componenet to be queried.
|
|
/// RETURNS: An enum that represents the look of the component.
|
|
FUNC PED_COMP_STYLE_ENUM GET_PLAYABLE_PED_COMPONENT_STYLE(PED_INDEX ped, PED_COMP_TYPE_ENUM eType)
|
|
MODEL_NAMES pedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
IF NOT IS_MODEL_PLAYABLE_CHARACTER(pedModel)
|
|
SCRIPT_ASSERT("GET_PLAYABLE_PED_COMPONENT_STYLE: This command can not be called on a non playable character ped. Returning default style.")
|
|
RETURN COMP_STYLE_SENSIBLE
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM eItem = GET_PED_COMP_ITEM_CURRENT_SP(ped, eType)
|
|
IF eItem = DUMMY_PED_COMP
|
|
RETURN COMP_STYLE_EMPTY
|
|
ENDIF
|
|
|
|
g_sTempCompData[1] = GET_PED_COMP_DATA_FOR_ITEM_SP(GET_ENTITY_MODEL(ped), eType, eItem)
|
|
|
|
RETURN g_sTempCompData[1].eStyle
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Called when we are forced to change an item in the validation checks
|
|
/// PARAMS:
|
|
/// eCompType - the comp type of the item we were forced to change
|
|
/// iPropPos- the prop position of the item we were forced to change
|
|
/// iItemAltered - the int that tracks which item we have changed
|
|
/// iPropAltered - the int that tracks which prop we have changed
|
|
/// eReturnItem - the name of the new item we have been forced to equip
|
|
/// eNewItemToEquip - the item we want to overwrite eReturnItem with
|
|
PROC VALIDATION_CHECKS_ITEM_ALTERED(PED_COMP_TYPE_ENUM eCompType, INT iPropPos, INT &iItemAltered, INT &iPropAltered, PED_COMP_NAME_ENUM &eReturnItem, PED_COMP_NAME_ENUM eNewItemToEquip)
|
|
// only change the type to check next, if we haven't already changed it
|
|
// (in case on this pass we change multiple items)
|
|
IF iItemAltered = -1
|
|
iItemAltered = ENUM_TO_INT(eCompType)
|
|
eReturnItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, eNewItemToEquip)
|
|
IF eCompType = COMP_TYPE_PROPS
|
|
iPropAltered = iPropPos
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Forces the rest of the ped's outfit to be valid for wearing with the item passed in
|
|
/// PARAMS:
|
|
/// mPed - the ped whose outfit we are editing
|
|
/// eCurrentCompType - the comp type we are checking for compatibility with the new item
|
|
/// iCurrentPropPos - the prop pos of the item we are checking for compatibility
|
|
/// eCurrentItem - the currently equipped item of this type
|
|
/// eNewType - the type of the new item we are equipping
|
|
/// eNewItem - the new item we are equipping
|
|
/// iItemAltered - returns the type of the first item that was forced to change for outfit to be valid
|
|
/// iPropAltered - returns the prop pos of the first item that was forced to change for outfit to be valid
|
|
/// eReturnItem - returns the name of the first item that was forced to change for outfit to be valid
|
|
/// bMustBeAcquired - if True we only use acquired items in the checks
|
|
PROC DO_VALIDATION_CHECKS_FOR_ITEM_MP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eCurrentCompType, INT iCurrentPropPos, PED_COMP_NAME_ENUM eCurrentItem, PED_COMP_TYPE_ENUM eNewType, PED_COMP_NAME_ENUM eNewItem, INT &iItemAltered, INT &iPropAltered, PED_COMP_NAME_ENUM &eReturnItem, BOOL bMustBeAcquired)
|
|
|
|
//
|
|
// CALLS TO THIS FUNCTION MUST STEM FROM -----FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP()-----
|
|
//
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
PED_COMP_ITEM_DATA_STRUCT sTempData
|
|
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eCurrentItem, eNewType, eNewItem, mPed)
|
|
// Set suitable alternative
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Items not compatible, eNewType=", GET_PED_COMP_TYPE_STRING(eNewType), ", eNewItem=", eNewItem, ", eCurrentCompType=", GET_PED_COMP_TYPE_STRING(eCurrentCompType), " eCurrentItem=", eCurrentItem)
|
|
|
|
BOOL bItemFound = FALSE
|
|
INT iItem = 0
|
|
PED_COMP_NAME_ENUM eDummyItem
|
|
|
|
// If this is the chain item, see if we can use the alt variation
|
|
#IF USE_TU_CHANGES
|
|
|
|
INT iCurrentPed
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
iCurrentPed = 3
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
iCurrentPed = 4
|
|
ENDIF
|
|
|
|
IF (iCurrentPed = 3 AND eCurrentItem >= TEETH_FMM_DLC AND eCurrentCompType = COMP_TYPE_TEETH)
|
|
OR (iCurrentPed = 4 AND eCurrentItem >= TEETH_FMF_DLC AND eCurrentCompType = COMP_TYPE_TEETH)
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, COMP_TYPE_TEETH, iCurrentPed)
|
|
IF iItemNameHash != -1
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CHAIN, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF iRetType = ENUM_TO_INT(PED_COMP_TEETH)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_TEETH, iCurrentPed)
|
|
// Forced on-disk item
|
|
ELSE
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum)
|
|
ENDIF
|
|
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found alternative chain item, ", eDummyItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iAltComp = iAltComps+1// Bail
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if this is a long sleeve shirt that can only be worn with the waistcoat, switch to short sleeve.
|
|
#IF USE_TU_CHANGES
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND eCurrentItem >= SPECIAL_FMM_DLC
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, COMP_TYPE_SPECIAL, 3), DLC_RESTRICTION_TAG_LONG_SLEEVE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
eDummyItem = GET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB)
|
|
|
|
INT iDLCJbibCheck = -1
|
|
IF eDummyItem >= JBIB_FMM_DLC
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eDummyItem, COMP_TYPE_JBIB, 3))
|
|
ENDIF
|
|
|
|
IF (eDummyItem >= JBIB_FMM_11_0 AND eDummyItem <= JBIB_FMM_11_15)
|
|
OR (iDLCJbibCheck = 11)
|
|
eDummyItem = SPECIAL_FMM_6_0
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Player is wearing a waistcoat so forcing short sleeved shirt, ", eDummyItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND eNewType = COMP_TYPE_JBIB
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
|
|
INT iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, 3)
|
|
|
|
// if this is a tailcoat switch to a tank top.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = SPECIAL_FMM_5_0
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found tank top for tailcoat, ", eDummyItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
// if this is a scruffy jacket switch to a shirt.
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_SCRUFFY_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = SPECIAL_FMM_13_0 // White tucked shirt
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found tucked shirt for scruffy jacket, ", eDummyItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND eNewType = COMP_TYPE_JBIB
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
|
|
INT iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, 4)
|
|
|
|
// if this is one of the new jackets, switch to the first business shirt.
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_5, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_HEIST_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_8, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_9, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_11, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_12, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_13, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_APART_DRAW_25, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_HEIST_F_SPECIAL_7_0"), COMP_TYPE_SPECIAL, 4)
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found business shirt for heist jacket, ", eDummyItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if this is a utility vest force the accs for the jbib
|
|
#IF USE_TU_CHANGES
|
|
IF eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND eCurrentItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_SPECIAL)
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, eCurrentCompType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
PED_COMP_NAME_ENUM eCurrentJBIB = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentLegs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_LEGS)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentJBIB, COMP_TYPE_JBIB, iCurrentPed), DLC_RESTRICTION_TAG_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// If the jbib is a vest, skip...
|
|
ELSE
|
|
// Try and get the accs for this jbib.
|
|
eDummyItem = GET_PED_COMPONENT_ITEM_REQUISITE_MP(mPed, ePedModel, COMP_TYPE_JBIB, eCurrentJBIB, COMP_TYPE_SPECIAL)
|
|
IF eDummyItem != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found special to replace heist gear, ", eDummyItem)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, eDummyItem, FALSE)
|
|
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
|
|
|
|
// We will also need to ensure the correct torso is used.
|
|
// We may need to add some glove checks here at some point.
|
|
eDummyItem = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eDummyItem, eCurrentJBIB, eCurrentLegs)
|
|
IF eDummyItem = DUMMY_PED_COMP
|
|
eDummyItem = GET_PED_COMPONENT_ITEM_REQUISITE_MP(mPed, ePedModel, COMP_TYPE_JBIB, eCurrentJBIB, COMP_TYPE_TORSO)
|
|
ENDIF
|
|
IF eDummyItem != DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Forcing torso for JBIB and SPECIAL combo, ", eDummyItem)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TORSO, eDummyItem, FALSE)
|
|
ENDIF
|
|
|
|
// Otherwise just re-apply the jbib
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB, eCurrentJBIB, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(COMP_TYPE_JBIB, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eCurrentJBIB)
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a heist accs force a valid jbib
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_SPECIAL
|
|
AND eCurrentCompType = COMP_TYPE_JBIB
|
|
AND eNewItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_SPECIAL)
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT)) OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HEIST_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
|
|
// Force bare chest
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : JBIB not compatible with heist gear, set bare chest")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB, JBIB_FMM_15_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, eNewType, eNewItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, JBIB_FMM_15_0)
|
|
|
|
// Force bikini
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : JBIB not compatible with heist gear, set bikini")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB, JBIB_FMF_15_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, eNewType, eNewItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, JBIB_FMF_15_0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping fitted tux pants force valid shoes
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_LEGS
|
|
AND eCurrentCompType = COMP_TYPE_FEET
|
|
AND ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= LEGS_FMM_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_PANTS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SKINNY, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : FEET not compatible with tux pants, set shoes")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_FEET, FEET_FMF_10_0, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, FEET_FMF_10_0)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a biker vest force valid accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with biker vest, set bare chest")
|
|
eDummyItem = SPECIAL_FMM_15_0
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LUXE2_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with , set bikini top")
|
|
eDummyItem = SPECIAL_FMF_15_0
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping biker boots force valid legs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_FEET
|
|
AND eCurrentCompType = COMP_TYPE_LEGS
|
|
AND ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= FEET_FMM_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_BIKER_DRAW_2, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : LEGS not compatible with biker boots, set shorts")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_LEGS, LEGS_FMM_6_0, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, LEGS_FMM_6_0)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a tux jacket force a valid accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_21, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_24, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
eDummyItem = DUMMY_PED_COMP
|
|
|
|
// if this is a tux item, see if we can grab the alt variant.
|
|
INT iSpecialDLCHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, eCurrentCompType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialDLCHash, DLC_RESTRICTION_TAG_TUX_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// alt_vest used for closed_jacket
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_CLOSED_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)) != DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialDLCHash, DLC_RESTRICTION_TAG_ALT_VEST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iSpecialDLCHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iSpecialDLCHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL))
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, 3)
|
|
// Forced on-disk item
|
|
ELSE
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum)
|
|
ENDIF
|
|
iAltComp = iAltComps+1// Bail
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF eDummyItem = DUMMY_PED_COMP
|
|
// shouldn't need this, added for safety
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with tux jacket, set valid accs")
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_VWD_M_SPECIAL_6_2"), COMP_TYPE_SPECIAL, 3)
|
|
ENDIF
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a smoking jacket force a valid accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND ePedModel = MP_F_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_SMOKING_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with smoking jacket, set bikini")
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMF_15_0, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMF_15_0)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a open check shirt force a valid accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with open check shirt, set tank top")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMM_5_0, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMM_5_0)
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_OPEN_CHECK, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with open check shirt, set grey tank")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMF_4_14, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMF_4_14)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a open short sleeve shirt force a valid accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with open short shirt, set bare chest")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMM_15_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TORSO, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_H4_M_TORSO_0_0"), COMP_TYPE_TORSO, 3), FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMM_15_0)
|
|
ENDIF
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_OPEN_SHORT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : SPECIAL not compatible with open short shirt, set bikini")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMF_15_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TORSO, GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_H4_F_TORSO_0_0"), COMP_TYPE_TORSO, 4), FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMF_15_0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping high waist trousers force a valid jbib / accs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_LEGS
|
|
AND (ePedModel = MP_F_FREEMODE_01 AND eNewItem >= LEGS_FMF_DLC)
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_HIGH_WAIST, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF eCurrentCompType = COMP_TYPE_JBIB
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : JBIB not compatible with high waist trousers, set default")
|
|
|
|
INT iFrillShirt = HASH("DLC_MP_LOW2_F_JBIB_7_0")
|
|
|
|
// Check if we own any
|
|
IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_0"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iFrillShirt = HASH("DLC_MP_LOW2_F_JBIB_7_0")
|
|
ELIF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_1"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iFrillShirt = HASH("DLC_MP_LOW2_F_JBIB_7_1")
|
|
ELIF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_JBIB_7_2"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iFrillShirt = HASH("DLC_MP_LOW2_F_JBIB_7_2")
|
|
ENDIF
|
|
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iFrillShirt, COMP_TYPE_JBIB, 4)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB, eDummyItem, FALSE)
|
|
// remove scarfs
|
|
IF IS_ITEM_A_SCARF(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TEETH))
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TEETH, TEETH_FMF_0_0, FALSE)
|
|
ENDIF
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a frill/zoot shirt force valid legs
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_JBIB
|
|
AND eCurrentCompType = COMP_TYPE_LEGS
|
|
IF ((ePedModel = MP_F_FREEMODE_01 AND eNewItem >= JBIB_FMF_DLC))
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOW2_DRAW_7, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : LEGS not compatible with frill shirt, set default")
|
|
|
|
INT iHighWaistPants = HASH("DLC_MP_LOW2_F_LEGS_1_0")
|
|
|
|
// Check if we own any
|
|
IF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_0"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iHighWaistPants = HASH("DLC_MP_LOW2_F_LEGS_1_0")
|
|
ELIF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_1"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iHighWaistPants = HASH("DLC_MP_LOW2_F_LEGS_1_1")
|
|
ELIF IS_BIT_SET_SHOP_PED_APPAREL_SCRIPT(HASH("DLC_MP_LOW2_F_LEGS_1_2"), PED_COMPONENT_ACQUIRED_SLOT)
|
|
iHighWaistPants = HASH("DLC_MP_LOW2_F_LEGS_1_2")
|
|
ENDIF
|
|
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iHighWaistPants, COMP_TYPE_LEGS, 4)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_LEGS, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// if we are equipping a loose tie, see if we can find the open collar variant.
|
|
#IF USE_TU_CHANGES
|
|
IF eNewType = COMP_TYPE_TEETH // The tie
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL // The shirt
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
IF (iCurrentPed = 3 AND eNewItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (iCurrentPed = 4 AND eNewItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOOSE_TIE, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
|
|
iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, eCurrentCompType, iCurrentPed)
|
|
|
|
IF (eCurrentItem >= SPECIAL_FMM_10_0 AND eCurrentItem <= SPECIAL_FMM_10_15) // business shirt
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
eDummyItem = SPECIAL_FMM_11_0 + (eCurrentItem-SPECIAL_FMM_10_0)
|
|
|
|
// found a dummy item for this slot, see it if is suitable
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Forcing open collar shirt")
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ELIF add tux shirt? open collar check? DLC_MP_BUSI2_M_ACCS0_* and DLC_MP_BUSI2_M_ACCS1_*
|
|
// do stuff.
|
|
ENDIF
|
|
|
|
ELIF (iCurrentPed = 3 AND eNewItem >= TEETH_FMM_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (iCurrentPed = 4 AND eNewItem >= TEETH_FMF_DLC AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_LOOSE_BOWTIE, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
|
|
iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, eCurrentCompType, iCurrentPed)
|
|
|
|
eDummyItem = DUMMY_PED_COMP
|
|
|
|
IF iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_1_0")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_1_1")
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)-2)
|
|
|
|
ELIF iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_0")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_1")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_2")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_3")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_4")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_5")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_6")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_7")
|
|
OR iItemNameHash = HASH("DLC_MP_IND_M_SPECIAL_3_8")
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)-9)
|
|
|
|
ELIF (eCurrentItem >= SPECIAL_FMM_4_0 AND eCurrentItem <= SPECIAL_FMM_4_15)
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)-16)
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_4, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)-13)
|
|
|
|
ELIF (eCurrentItem >= SPECIAL_FMM_6_0 AND eCurrentItem <= SPECIAL_FMM_6_15)
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_6, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)+16)
|
|
|
|
ELIF (eCurrentItem >= SPECIAL_FMM_10_0 AND eCurrentItem <= SPECIAL_FMM_10_15)
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRAW_10, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, ENUM_TO_INT(eCurrentItem)+16)
|
|
ENDIF
|
|
|
|
IF eDummyItem != DUMMY_PED_COMP
|
|
|
|
// found a dummy item for this slot, see it if is suitable
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Forcing closed collar shirt")
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// ELIF add tux shirt? open collar check? DLC_MP_BUSI2_M_ACCS0_* and DLC_MP_BUSI2_M_ACCS1_*
|
|
// do stuff.
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// If this is a tailcoat jacket force a valid set of trousers.
|
|
#IF USE_TU_CHANGES
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
AND eCurrentCompType = COMP_TYPE_LEGS
|
|
AND eNewType = COMP_TYPE_JBIB
|
|
AND eNewItem >= JBIB_FMM_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_TAILS_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Tailcoat not compatible with trousers, set default jeans")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_LEGS, LEGS_FMM_0_0, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, LEGS_FMM_0_0)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// If this is utility pants force a valid top
|
|
#IF USE_TU_CHANGES
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
AND eCurrentCompType = COMP_TYPE_SPECIAL
|
|
AND eNewType = COMP_TYPE_LEGS
|
|
AND eNewItem >= LEGS_FMF_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_APART_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_GUN_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Utility pants not compatible with special, set grey tank accs")
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_SPECIAL, SPECIAL_FMF_4_14, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, SPECIAL_FMF_4_14)
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// Force on dress legs if the current legs do not match this dress.
|
|
#IF USE_TU_CHANGES
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
AND eNewType = COMP_TYPE_JBIB
|
|
AND (eCurrentCompType = COMP_TYPE_LEGS OR eCurrentCompType = COMP_TYPE_FEET)
|
|
AND eNewItem >= JBIB_FMF_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, eNewType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_MINI_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Force dress legs")
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_VAL_F_LEGS2_0"), COMP_TYPE_LEGS, 4)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_LEGS, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
AND eNewType = COMP_TYPE_FEET
|
|
AND (eCurrentCompType = COMP_TYPE_LEGS)
|
|
AND eCurrentItem >= LEGS_FMF_DLC
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eCurrentItem, eCurrentCompType, iCurrentPed)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemNameHash, DLC_RESTRICTION_TAG_STOCKINGS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
// current jbib is a dress
|
|
eDummyItem = GET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_JBIB)
|
|
INT iDLCJbibHash = -1
|
|
IF eDummyItem >= JBIB_FMF_DLC
|
|
iDLCJbibHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eDummyItem, COMP_TYPE_JBIB, 4)
|
|
ENDIF
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MINI_DRESS, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// set dress legs.
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Force dress legs")
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_VAL_F_LEGS2_0"), COMP_TYPE_LEGS, 4)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_LEGS, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
IF NOT bItemFound
|
|
#ENDIF
|
|
|
|
// Check some dummy components 1st- to avoid having weird combos being used (such as parachutes)
|
|
eDummyItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, eCurrentCompType, iCurrentPropPos)
|
|
IF eDummyItem <> DUMMY_PED_COMP
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Looking for default item, type=", GET_PED_COMP_TYPE_STRING(eCurrentCompType))
|
|
|
|
// found a dummy item for this slot, see it if is suitable
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem, mPed)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
|
|
// If this item has a corresponding JBIB, make sure we grab the correct SPECIAL.
|
|
IF eCurrentCompType = COMP_TYPE_SPECIAL
|
|
PED_COMP_NAME_ENUM eTempJBIB = GET_JBIB_FROM_SPECIAL(ePedModel, eDummyItem, GET_PED_TEXTURE_VARIATION(mPed, PED_COMP_SPECIAL))
|
|
IF eTempJBIB != DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eTempSpecial = GET_SPECIAL_COMP_FOR_JBIB_JACKET_VERSION(ePedModel, eDummyItem, eNewItem, GET_PED_TEXTURE_VARIATION(mPed, PED_COMP_SPECIAL))
|
|
IF eTempSpecial != DUMMY_PED_COMP
|
|
AND eTempSpecial != eDummyItem
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, eTempSpecial, eNewType, eNewItem, mPed)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eTempSpecial, FALSE)
|
|
eDummyItem = eTempSpecial
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found item, ", eDummyItem)
|
|
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Failed to set suitable item")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF USE_TU_CHANGES
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// ignore requisites
|
|
#IF USE_TU_CHANGES
|
|
IF GET_PED_COMPONENT_ITEM_REQUISITE_MP(mPed, ePedModel, eNewType, eNewItem, eCurrentCompType) = eCurrentItem
|
|
bItemFound = TRUE
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// see if DLC gives us an alternative
|
|
#IF USE_TU_CHANGES
|
|
// IF ePedModel = MP_F_FREEMODE_01
|
|
IF eNewType = COMP_TYPE_JBIB AND eNewItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_JBIB)
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, COMP_TYPE_JBIB, iCurrentPed)
|
|
IF iItemNameHash != -1
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF (iRetType = ENUM_TO_INT(PED_COMP_LEG) AND eCurrentCompType = COMP_TYPE_LEGS)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_LEGS, iCurrentPed)
|
|
// Forced on-disk item
|
|
ELSE
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum)
|
|
ENDIF
|
|
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found alternative LEGS, ", eDummyItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
|
|
iAltComp = iAltComps+1// Bail
|
|
|
|
|
|
ELIF (iRetType = ENUM_TO_INT(PED_COMP_SPECIAL) AND eCurrentCompType = COMP_TYPE_SPECIAL)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_SPECIAL, iCurrentPed)
|
|
// Forced on-disk item
|
|
ELSE
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum)
|
|
ENDIF
|
|
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found alternative SPECIAL, ", eDummyItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
|
|
iAltComp = iAltComps+1// Bail
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
ELIF eNewType = COMP_TYPE_LEGS AND eNewItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_LEG)
|
|
|
|
INT iItemNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eNewItem, COMP_TYPE_LEGS, iCurrentPed)
|
|
IF iItemNameHash != -1
|
|
INT iAltComps = GET_SHOP_PED_APPAREL_VARIANT_COMPONENT_COUNT(iItemNameHash)
|
|
INT iAltComp
|
|
INT iRetNameHash, iRetCompEnum, iRetType
|
|
REPEAT iAltComps iAltComp
|
|
GET_VARIANT_COMPONENT(iItemNameHash, iAltComp, iRetNameHash, iRetCompEnum, iRetType)
|
|
IF (iRetType = ENUM_TO_INT(PED_COMP_FEET) AND eCurrentCompType = COMP_TYPE_FEET)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
eDummyItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, iRetNameHash, COMP_TYPE_FEET, iCurrentPed)
|
|
// Forced on-disk item
|
|
ELSE
|
|
eDummyItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetCompEnum)
|
|
ENDIF
|
|
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, eDummyItem, FALSE)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found alternative FEET, ", eDummyItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
|
|
iAltComp = iAltComps+1// Bail
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDIF
|
|
//ENDIF
|
|
#ENDIF
|
|
|
|
// run through other items to find a suitable one
|
|
WHILE iItem < PED_COMPONENTS_PER_TYPE AND NOT bItemFound
|
|
sTempData = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
IF sTempData.iItemBit = ENUM_TO_INT(DUMMY_PED_COMP)
|
|
iItem = PED_COMPONENTS_PER_TYPE // Bail
|
|
ELSE
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_MP(ePedModel, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem), eNewType, eNewItem, mPed)
|
|
IF SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem), bMustBeAcquired)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Found item, ", iItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
iItem++
|
|
ENDWHILE
|
|
|
|
IF NOT bItemFound
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Failed to find suitable item, use default outfit")
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, sOutfitData.eItems[ENUM_TO_INT(eCurrentCompType)], FALSE) //force the default on. should always be available anyway
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "DO_VALIDATION_CHECKS_FOR_ITEM_MP : Items compatible, eNewType=", GET_PED_COMP_TYPE_STRING(eNewType), ", eNewItem=", eNewItem, ", eCurrentCompType=", GET_PED_COMP_TYPE_STRING(eCurrentCompType), " eCurrentItem=", eCurrentItem)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Forces a vlid combination of items for this ped.
|
|
/// PARAMS:
|
|
/// iTypeToCheck - set to -1 before validation checks. If this stays at -1 the outfit is already valid.
|
|
/// If an item is forced to change, this is set to the item type that forced the change.
|
|
///
|
|
/// iPropPosToCheck - If the type that forced the outfit to change is props,
|
|
/// this is set to the anchor of the prop that forced the change.
|
|
///
|
|
/// eNewType - the type of item we are checking.
|
|
///
|
|
/// iNewPropPos - the position of the prop we are checking. -1 if not a prop.
|
|
///
|
|
/// eItem - the name of the item we are checking.
|
|
///
|
|
/// mPed - the ped we are doing this check for.
|
|
///
|
|
/// bMustBeAcquired - if true we only used acquired items
|
|
PROC FORCE_VALID_COMBO_MP(INT &iTypeToCheck, INT &iPropPosToCheck, PED_COMP_TYPE_ENUM &eNewType, INT &iNewPropPos, PED_COMP_NAME_ENUM &eNewItem, PED_INDEX mPed, BOOL bMustBeAcquired)
|
|
|
|
//
|
|
// CALLS TO THIS FUNCTION MUST STEM FROM -----FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP()-----
|
|
//
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_PED_COMP_DEBUG_ID(), "FORCE_VALID_COMBO_MP : iTypeToCheck= ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iTypeToCheck)), ", iPropPosToCheck= ", iPropPosToCheck)
|
|
|
|
INT iCompType
|
|
INT iCurrentPropType
|
|
PED_COMP_TYPE_ENUM eCurrentCompType
|
|
|
|
INT iStartType = iTypeToCheck
|
|
INT iPropStartType = iPropPosToCheck
|
|
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
|
|
iTypeToCheck = -1 // if this stays as -1 the outfit is all sorted
|
|
|
|
// loop through and check all comp types starting with the type that was passed in
|
|
FOR iCompType = iStartType TO NUMBER_OF_PED_COMP_TYPES -1
|
|
|
|
eCurrentCompType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iCompType)
|
|
|
|
IF eCurrentCompType != COMP_TYPE_OUTFIT // Ignore outfit as these are always set in full
|
|
AND (eCurrentCompType != COMP_TYPE_HEAD OR NOT g_bInMultiplayer) // Ignoring heads for now as they mess with the MP head tech
|
|
|
|
IF eCurrentCompType = COMP_TYPE_PROPS
|
|
// props
|
|
// needs to loop through all prop anchors
|
|
FOR iCurrentPropType = iPropStartType TO NUMBER_OF_PED_PROP_TYPES -1
|
|
IF iCurrentPropType != iNewPropPos // No need to force same item
|
|
// get the current prop for this anchor
|
|
eCurrentItem = GET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType, iCurrentPropType)
|
|
DO_VALIDATION_CHECKS_FOR_ITEM_MP(mPed, eCurrentCompType, iCurrentPropType, eCurrentItem, eNewType, eNewItem, iTypeToCheck, iPropPosToCheck, eReturnItem, bMustBeAcquired)
|
|
ENDIF
|
|
ENDFOR
|
|
ELSE
|
|
IF eCurrentCompType != eNewType // No need to force same item
|
|
// Normal items and propgroups
|
|
// Not safe to mix?
|
|
eCurrentItem = GET_PED_COMP_ITEM_CURRENT_MP(mPed, eCurrentCompType)
|
|
DO_VALIDATION_CHECKS_FOR_ITEM_MP(mPed, eCurrentCompType, iCurrentPropType, eCurrentItem, eNewType, eNewItem, iTypeToCheck, iPropPosToCheck, eReturnItem, bMustBeAcquired)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// update the info of the next item we need to force a valid combo for
|
|
IF iTypeToCheck <> -1
|
|
eNewType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iTypeToCheck)
|
|
iNewPropPos = iPropPosToCheck
|
|
eNewItem = eReturnItem
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Ensure everything matches the specified item
|
|
/// NOTE: Only works for items we can set in the wardrobe, excluding outfits
|
|
/// PARAMS:
|
|
/// mPed - the ped we are setting the item on
|
|
/// eType - the comp type of the item we are equipping
|
|
/// eItem - the name of the item we are equipping
|
|
/// bMustBeAcquired - TRUE if we only want to check for suitable items that are acquired
|
|
PROC FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bMustBeAcquired = TRUE)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
AND eType != COMP_TYPE_OUTFIT
|
|
|
|
// So we do not keep grabbing the item data for the new item grab it once and re-use throughout the force valid commands.
|
|
g_sMixItemDataForMainPedComp = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(mPed), eType, eItem)
|
|
|
|
// keep forcing valid combo until whole outfit is ok
|
|
INT iTypeToCheck = ENUM_TO_INT(COMP_TYPE_HEAD)
|
|
INT iPropPosToCheck = ENUM_TO_INT(ANCHOR_HEAD)
|
|
INT iPropPos = ENUM_TO_INT(g_sMixItemDataForMainPedComp.ePropPos)
|
|
IF eType != COMP_TYPE_PROPS
|
|
iPropPos = -1
|
|
ENDIF
|
|
|
|
// force valid combo for whole outfit for this item
|
|
FORCE_VALID_COMBO_MP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
|
|
// if the outfit is not valid iTypeToCheck will have been updated
|
|
// to the comp type of the 1st item that was forced to change
|
|
|
|
|
|
// if iTypeToCheck <> -1, it means we have been forced to change an item
|
|
// re-check the outfit starting from that item type until whole outfit is ok
|
|
WHILE iTypeToCheck <> -1
|
|
FORCE_VALID_COMBO_MP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
ENDWHILE
|
|
|
|
// also need to check if we need to remove the player's tie
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
PED_COMP_NAME_ENUM eCurrentTeethItem
|
|
PED_COMP_NAME_ENUM eCurrentSpecialItem
|
|
eCurrentTeethItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_TEETH)
|
|
eCurrentSpecialItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_SPECIAL)
|
|
IF NOT DO_TEETH_CHECK_MP(ePedModel, eCurrentTeethItem, COMP_TYPE_SPECIAL, DUMMY_PED_COMP, eCurrentSpecialItem, DUMMY_PED_COMP, mPed)
|
|
CPRINTLN(DEBUG_PED_COMP, "Special item was forced to change. Removing tie.")
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TEETH, TEETH_FMM_0_0, FALSE)
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_TEETH, TEETH_FMF_0_0, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Forces the rest of the ped's outfit to be valid for wearing with the item passed in
|
|
/// PARAMS:
|
|
/// mPed - the ped whose outfit we are editing
|
|
/// eCurrentCompType - the comp type we are checking for compatibility with the new item
|
|
/// iCurrentPropPos - the prop pos of the item we are checking for compatibility
|
|
/// eCurrentItem - the currently equipped item of this type
|
|
/// eNewType - the type of the new item we are equipping
|
|
/// eNewItem - the new item we are equipping
|
|
/// iItemAltered - returns the type of the first item that was forced to change for outfit to be valid
|
|
/// iPropAltered - returns the prop pos of the first item that was forced to change for outfit to be valid
|
|
/// eReturnItem - returns the name of the first item that was forced to change for outfit to be valid
|
|
/// bMustBeAcquired - if True we only use acquired items in the checks
|
|
PROC DO_VALIDATION_CHECKS_FOR_ITEM_SP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eCurrentCompType, INT iCurrentPropPos, PED_COMP_NAME_ENUM eCurrentItem, PED_COMP_TYPE_ENUM eNewType, PED_COMP_NAME_ENUM eNewItem, INT &iItemAltered, INT &iPropAltered, PED_COMP_NAME_ENUM &eReturnItem, BOOL bMustBeAcquired)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
PED_COMP_ITEM_DATA_STRUCT sTempData
|
|
|
|
IF NOT CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_SP(ePedModel, eCurrentCompType, eCurrentItem, eNewType, eNewItem)
|
|
// Set suitable alternative
|
|
CPRINTLN(DEBUG_PED_COMP, "Item not suitable for comp: ", GET_PED_COMP_TYPE_STRING(eCurrentCompType), " current Item = ", eCurrentItem, " using alternative. Can't be mixed with new item of type: ", GET_PED_COMP_TYPE_STRING(eNewType), " ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iCurrentPropPos)))
|
|
|
|
BOOL bItemFound = FALSE
|
|
INT iItem = 0
|
|
PED_COMP_NAME_ENUM eDummyItem
|
|
|
|
// Check some dummy components 1st- to avoid having weird combos being used (such as parachutes)
|
|
eDummyItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, eCurrentCompType, iCurrentPropPos)
|
|
IF eDummyItem <> DUMMY_PED_COMP
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Checking using dummy item: ", eDummyItem , GET_PED_COMP_TYPE_STRING(eCurrentCompType))
|
|
// found a dummy item for this slot, see it if is suitable
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_SP(ePedModel, eCurrentCompType, eDummyItem, eNewType, eNewItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_SP(mPed, eCurrentCompType, eDummyItem, bMustBeAcquired)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, "...found dummy / default item: ", eDummyItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, eDummyItem)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "No Dummy item available: ", GET_PED_COMP_TYPE_STRING(eCurrentCompType))
|
|
ENDIF
|
|
|
|
// run through other items to find a suitable one
|
|
WHILE iItem < PED_COMPONENTS_PER_TYPE AND NOT bItemFound
|
|
sTempData = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
IF sTempData.iItemBit = ENUM_TO_INT(DUMMY_PED_COMP)
|
|
iItem = PED_COMPONENTS_PER_TYPE // Bail
|
|
ELSE
|
|
IF NOT IS_ITEM_LOCKED_UNTIL_ENDGAME(ePedModel, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
IF CAN_PED_COMPONENT_ITEM_MIX_WITH_ITEM_SP(ePedModel, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem), eNewType, eNewItem)
|
|
IF SET_PED_COMP_ITEM_CURRENT_SP(mPed, eCurrentCompType, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem), bMustBeAcquired)
|
|
bItemFound = TRUE
|
|
CPRINTLN(DEBUG_PED_COMP, "...found item ", iItem)
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
iItem++
|
|
ENDWHILE
|
|
|
|
IF NOT bItemFound
|
|
CPRINTLN(DEBUG_PED_COMP, "...couldn't find alternative so using default outfit item")
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitData = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, OUTFIT_DEFAULT)
|
|
SET_PED_COMP_ITEM_CURRENT_SP(mPed, eCurrentCompType, sOutfitData.eItems[ENUM_TO_INT(eCurrentCompType)], FALSE) //force the default on. should always be available anyway
|
|
VALIDATION_CHECKS_ITEM_ALTERED(eCurrentCompType, iCurrentPropPos, iItemAltered, iPropAltered, eReturnItem, INT_TO_ENUM(PED_COMP_NAME_ENUM, iItem))
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Forces a valid combination of items for this ped.
|
|
/// PARAMS:
|
|
/// iTypeToCheck - set to -1 before validation checks. If this stays at -1 the outfit is already valid.
|
|
/// If an item is forced to change, this is set to the item type that forced the change.
|
|
///
|
|
/// iPropPosToCheck - If the type that forced the outfit to change is props,
|
|
/// this is set to the anchor of the prop that forced the change.
|
|
///
|
|
/// eNewType - the type of item we are checking.
|
|
///
|
|
/// iNewPropPos - the position of the prop we are checking. -1 if not a prop.
|
|
///
|
|
/// eItem - the name of the item we are checking.
|
|
///
|
|
/// mPed - the ped we are doing this check for.
|
|
///
|
|
/// bMustBeAcquired - if true we only used acquired items
|
|
PROC FORCE_VALID_COMBO_SP(INT &iTypeToCheck, INT &iPropPosToCheck, PED_COMP_TYPE_ENUM &eNewType, INT &iNewPropPos, PED_COMP_NAME_ENUM &eNewItem, PED_INDEX mPed, BOOL bMustBeAcquired)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "FORCE_VALID_COMBO_SP: iTypeToCheck= ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iTypeToCheck)))
|
|
IF iPropPosToCheck > -1
|
|
CPRINTLN(DEBUG_PED_COMP, "FORCE_VALID_COMBO_SP: iPropPosToCheck= ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iPropPosToCheck)))
|
|
ENDIF
|
|
|
|
INT iCompType
|
|
INT iCurrentPropType
|
|
PED_COMP_TYPE_ENUM eCurrentCompType
|
|
|
|
INT iStartType = iTypeToCheck
|
|
INT iPropStartType = iPropPosToCheck
|
|
|
|
PED_COMP_NAME_ENUM eReturnItem
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
|
|
iTypeToCheck = -1 // if this stays as -1 the outfit is all sorted
|
|
|
|
// loop through and check all comp types starting with the type that was passed in
|
|
FOR iCompType = iStartType TO NUMBER_OF_PED_COMP_TYPES -1
|
|
|
|
eCurrentCompType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iCompType)
|
|
|
|
IF eCurrentCompType != COMP_TYPE_OUTFIT // Ignore outfit as these are always set in full
|
|
AND eCurrentCompType != COMP_TYPE_PROPGROUP // Ignore propgroups as they are handled by checking each prop
|
|
AND (eCurrentCompType != COMP_TYPE_HEAD OR NOT g_bInMultiplayer) // Ignoring heads for now as they mess with the MP head tech
|
|
|
|
IF eCurrentCompType = COMP_TYPE_PROPS
|
|
// props
|
|
// needs to loop through all prop anchors
|
|
FOR iCurrentPropType = iPropStartType TO NUMBER_OF_PED_PROP_TYPES -1
|
|
IF iCurrentPropType != iNewPropPos // No need to force same item
|
|
// get the current prop for this anchor
|
|
eCurrentItem = GET_PED_COMP_ITEM_CURRENT_SP(mPed, eCurrentCompType, iCurrentPropType)
|
|
DO_VALIDATION_CHECKS_FOR_ITEM_SP(mPed, eCurrentCompType, iCurrentPropType, eCurrentItem, eNewType, eNewItem, iTypeToCheck, iPropPosToCheck, eReturnItem, bMustBeAcquired)
|
|
ENDIF
|
|
ENDFOR
|
|
ELSE
|
|
IF eCurrentCompType != eNewType // No need to force same item
|
|
// Normal items
|
|
// Not safe to mix?
|
|
eCurrentItem = GET_PED_COMP_ITEM_CURRENT_SP(mPed, eCurrentCompType)
|
|
DO_VALIDATION_CHECKS_FOR_ITEM_SP(mPed, eCurrentCompType, iCurrentPropType, eCurrentItem, eNewType, eNewItem, iTypeToCheck, iPropPosToCheck, eReturnItem, bMustBeAcquired)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// update the info of the next item we need to force a valid combo for
|
|
IF iTypeToCheck <> -1
|
|
CPRINTLN(DEBUG_PED_COMP, "FORCE_VALID_COMBO_SP : iTypeToCheck <> -1 update checks, iTypeToCheck = ", iTypeToCheck)
|
|
eNewType = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iTypeToCheck)
|
|
iNewPropPos = iPropPosToCheck
|
|
eNewItem = eReturnItem
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Ensure everything matches the specified item
|
|
/// NOTE: Only works for items we can set in the wardrobe, excluding outfits
|
|
/// PARAMS:
|
|
/// ped - the ped we are setting the item on
|
|
/// eType - the comp type of the item we are equipping
|
|
/// eItem - the name of the item we are equipping
|
|
/// bMustBeAcquired - TRUE if we only want to check for suitable items that are acquired
|
|
PROC FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_SP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bMustBeAcquired = TRUE)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
AND eType != COMP_TYPE_OUTFIT
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
PED_COMP_TYPE_ENUM eInitialType = eType
|
|
PED_COMP_NAME_ENUM eInitialItem = eItem
|
|
|
|
// get info for this item
|
|
PED_COMP_ITEM_DATA_STRUCT mItemDetails = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
// keep forcing valid combo until whole outfit is ok
|
|
INT iTypeToCheck = ENUM_TO_INT(COMP_TYPE_HEAD)
|
|
INT iPropPosToCheck = ENUM_TO_INT(ANCHOR_HEAD)
|
|
INT iPropPos = ENUM_TO_INT(mItemDetails.ePropPos)
|
|
IF eType != COMP_TYPE_PROPS
|
|
iPropPos = -1
|
|
ENDIF
|
|
|
|
IF iPropPos > -1
|
|
CPRINTLN(DEBUG_PED_COMP,"FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_SP: iPropPos = ", GET_PROP_POSITION_STRING(INT_TO_ENUM(PED_PROP_POSITION, iPropPos)) , ". eType = ", GET_PED_COMP_TYPE_STRING(eType))
|
|
ENDIF
|
|
|
|
// force valid combo for whole outfit for this item
|
|
FORCE_VALID_COMBO_SP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
|
|
// if the outfit is not valid iTypeToCheck will have been updated
|
|
// to the comp type of the 1st item that was forced to change
|
|
|
|
// if iTypeToCheck <> -1, it means we have been forced to change an item
|
|
// re-check the outfit starting from that item type until whole outfit is ok
|
|
WHILE iTypeToCheck <> -1
|
|
FORCE_VALID_COMBO_SP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
ENDWHILE
|
|
|
|
// ------handle any last minute special cases here------------------
|
|
|
|
// special case for Michael's suit vest jbibs (1561846)
|
|
IF ePedModel = PLAYER_ZERO
|
|
IF eInitialType = COMP_TYPE_JBIB
|
|
IF (eInitialItem >= JBIB_P0_3_0 AND eInitialItem <= JBIB_P0_3_9)
|
|
OR (eInitialItem >= JBIB_P0_4_0 AND eInitialItem <= JBIB_P0_4_9)
|
|
OR (eInitialItem >= JBIB_P0_5_0 AND eInitialItem <= JBIB_P0_5_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Doing special case extra force valid for Michael's suit jbibs. TORSO")
|
|
iTypeToCheck = ENUM_TO_INT(COMP_TYPE_HEAD)
|
|
iPropPosToCheck = ENUM_TO_INT(ANCHOR_HEAD)
|
|
iPropPos = -1
|
|
eType = COMP_TYPE_TORSO
|
|
eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType)
|
|
FORCE_VALID_COMBO_SP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// special case for Franklin's jacket top jbibs (1541075)
|
|
ELIF ePedModel = PLAYER_ONE
|
|
IF eInitialType = COMP_TYPE_JBIB
|
|
IF (eInitialItem >= JBIB_P1_TSHIRT_0 AND eInitialItem <= JBIB_P1_TSHIRT_15)
|
|
CPRINTLN(DEBUG_PED_COMP, "Doing special case extra force valid for Franklin's jacket tops. TORSO")
|
|
iTypeToCheck = ENUM_TO_INT(COMP_TYPE_HEAD)
|
|
iPropPosToCheck = ENUM_TO_INT(ANCHOR_HEAD)
|
|
iPropPos = -1
|
|
eType = COMP_TYPE_TORSO
|
|
eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType)
|
|
FORCE_VALID_COMBO_SP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Doing final legs validation check now!!")
|
|
// ensure we dont end up with no feet
|
|
iTypeToCheck = ENUM_TO_INT(COMP_TYPE_HEAD)
|
|
iPropPosToCheck = ENUM_TO_INT(ANCHOR_HEAD)
|
|
iPropPos = -1
|
|
eType = COMP_TYPE_LEGS
|
|
eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, eType)
|
|
FORCE_VALID_COMBO_SP(iTypeToCheck, iPropPosToCheck, eType, iPropPos, eItem, mPed, bMustBeAcquired)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC ADD_PED_COMPONENT_ITEM_TO_LIMITED_WARDROBES(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eCompType, PED_COMP_NAME_ENUM eCompName, BOOL bWardrobeMustBeAvailable)
|
|
|
|
IF eCompName = DUMMY_PED_COMP
|
|
EXIT
|
|
ENDIF
|
|
#if USE_CLF_DLC
|
|
SWITCH ePedModel
|
|
CASE PLAYER_TWO
|
|
bWardrobeMustBeAvailable=bWardrobeMustBeAvailable
|
|
eCompType=eCompType
|
|
BREAK
|
|
ENDSWITCH
|
|
#endif
|
|
#if USE_NRM_DLC
|
|
SWITCH ePedModel
|
|
CASE PLAYER_ZERO
|
|
bWardrobeMustBeAvailable=bWardrobeMustBeAvailable
|
|
eCompType=eCompType
|
|
BREAK
|
|
CASE IG_JIMMYDISANTO
|
|
|
|
BREAK
|
|
CASE IG_TRACYDISANTO
|
|
|
|
BREAK
|
|
ENDSWITCH
|
|
#endif
|
|
#if not USE_CLF_DLC
|
|
#if not USE_NRM_DLC
|
|
SWITCH ePedModel
|
|
CASE PLAYER_ZERO
|
|
IF NOT bWardrobeMustBeAvailable
|
|
//OR Is_Savehouse_Respawn_Available(SAVEHOUSE_MICHAEL_CS)
|
|
OR IS_BIT_SET(g_savedGlobals.sRespawnData.iSavehouseProperties[SAVEHOUSE_MICHAEL_CS], REPAWN_FLAG_AVAILABLE_BIT)
|
|
SET_BIT(g_savedGlobals.sPlayerData.sInfo.sLimitedWardrobeItems[LPW_MICHAEL_COUNTRYSIDE].iItemBitset[eCompType][(ENUM_TO_INT(eCompName)/32)], (ENUM_TO_INT(eCompName)%32))
|
|
ENDIF
|
|
BREAK
|
|
CASE PLAYER_TWO
|
|
IF NOT bWardrobeMustBeAvailable
|
|
//OR Is_Savehouse_Respawn_Available(SAVEHOUSE_TREVOR_VB)
|
|
OR IS_BIT_SET(g_savedGlobals.sRespawnData.iSavehouseProperties[SAVEHOUSE_TREVOR_VB], REPAWN_FLAG_AVAILABLE_BIT)
|
|
SET_BIT(g_savedGlobals.sPlayerData.sInfo.sLimitedWardrobeItems[LPW_TREVOR_CITY].iItemBitset[eCompType][(ENUM_TO_INT(eCompName)/32)], (ENUM_TO_INT(eCompName)%32))
|
|
ENDIF
|
|
|
|
IF NOT bWardrobeMustBeAvailable
|
|
//OR Is_Savehouse_Respawn_Available(SAVEHOUSE_TREVOR_SC)
|
|
OR IS_BIT_SET(g_savedGlobals.sRespawnData.iSavehouseProperties[SAVEHOUSE_TREVOR_SC], REPAWN_FLAG_AVAILABLE_BIT)
|
|
SET_BIT(g_savedGlobals.sPlayerData.sInfo.sLimitedWardrobeItems[LPW_TREVOR_STRIPCLUB].iItemBitset[eCompType][(ENUM_TO_INT(eCompName)/32)], (ENUM_TO_INT(eCompName)%32))
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
#endif
|
|
#endif
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Specifies if a component item is available, acquired, and if it should be set as current
|
|
PROC SET_PED_COMP_ITEM_DETAILS_SP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAvailable, BOOL bAcquired, BOOL bAddToLimitedWardrobe = FALSE, BOOL bAddToStartWardrobe = FALSE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(ePedModel, eType, eItem, bAvailable)
|
|
SET_PED_COMP_ITEM_ACQUIRED_SP(ePedModel, eType, eItem, bAcquired)
|
|
|
|
IF bAddToLimitedWardrobe
|
|
ADD_PED_COMPONENT_ITEM_TO_LIMITED_WARDROBES(ePedModel, eType, eItem, FALSE)
|
|
ENDIF
|
|
IF bAddToStartWardrobe = TRUE
|
|
SET_PED_COMP_ITEM_IS_NEW_SP(ePedModel, eType, eItem, FALSE)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Specifies if a component item is available, acquired, and if it should be set as current
|
|
PROC SET_PED_COMP_ITEM_DETAILS_MP(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, BOOL bAvailable, BOOL bAcquired)
|
|
SET_PED_COMP_ITEM_AVAILABLE_MP(ePedModel, eType, eItem, bAvailable)
|
|
SET_PED_COMP_ITEM_ACQUIRED_MP(ePedModel, eType, eItem, bAcquired)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Gets the ID of the peds outfit. Singleplayer only!
|
|
/// PARAMS:
|
|
/// ped - the ped we are checking
|
|
/// RETURNS:
|
|
/// INT of the outfit
|
|
FUNC INT GET_CORE_OUTFIT_ID_FROM_PED(PED_INDEX ped)
|
|
INT iTorso = ENUM_TO_INT(GET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_TORSO))
|
|
INT iLegs = ENUM_TO_INT(GET_PED_COMP_ITEM_CURRENT_SP(ped, COMP_TYPE_LEGS))
|
|
|
|
RETURN iTorso + (iLegs*100)
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Gets the ID of an outfit based on torso + leg components
|
|
/// PARAMS:
|
|
/// eTorso - the torso we are using for the outfit
|
|
/// eLegs - the legs we are using for the outfit
|
|
/// RETURNS:
|
|
/// INT id of the outfit
|
|
FUNC INT GET_CORE_OUTFIT_ID_FROM_COMPONENTS(PED_COMP_NAME_ENUM eTorso, PED_COMP_NAME_ENUM eLegs)
|
|
RETURN ENUM_TO_INT(eTorso) + (ENUM_TO_INT(eLegs)*100)
|
|
ENDFUNC
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
/// PURPOSE: Debug proc to give the player all the component items
|
|
PROC SET_ALL_PED_COMPONENT_ITEMS_ACQUIRED()
|
|
g_bAllClothesAcquired = TRUE
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Debug proc to make all ped comp items available
|
|
PROC SET_ALL_PED_COMPONENT_ITEMS_AVAILABLE()
|
|
g_bAllClothesAvailable = TRUE
|
|
ENDPROC
|
|
#ENDIF
|
|
|
|
/// PURPOSE:
|
|
/// If equipping a mask purge hats it doesn't fit with, and vice versa
|
|
/// PARAMS:
|
|
/// ped -
|
|
/// eType -
|
|
/// eItem -
|
|
PROC REMOVE_INVALID_PROP_ITEMS_FOR_ITEM(PED_INDEX ped, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(ped)
|
|
|
|
IF eType = eType
|
|
ENDIF
|
|
IF eItem = eItem
|
|
ENDIF
|
|
|
|
// At some point we should change this to query the prop type - hat/mask/glasses and remove accoringly.
|
|
SWITCH ePedModel
|
|
CASE MP_M_FREEMODE_01
|
|
BREAK
|
|
|
|
CASE MP_F_FREEMODE_01
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Releases all preloaded variation data for a ped
|
|
PROC RELEASE_PRELOADED_OUTFIT(PED_INDEX mPed)
|
|
RELEASE_PED_PRELOAD_VARIATION_DATA(mPed)
|
|
RELEASE_PED_PRELOAD_PROP_DATA(mPed)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Called by PRELOAD_OUTFIT and used in switch scenes. (SP only)
|
|
/// PARAMS:
|
|
/// sOutfitInfo - struct containing the outfit info
|
|
PROC PRELOAD_OUTFIT_FROM_STRUCT(PED_INDEX mPed, MODEL_NAMES ePedModel, PED_COMP_OUTFIT_DATA_STRUCT &sOutfitInfo)
|
|
INT iItem
|
|
|
|
// struct for individual item info
|
|
PED_COMP_ITEM_DATA_STRUCT sItemInfo
|
|
|
|
// loop through the items in this outfit and preload them
|
|
FOR iItem = 0 TO NUM_PED_COMPONENTS -1
|
|
sItemInfo = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iItem)), sOutfitInfo.eItems[GET_COMP_TYPE_FROM_PED_COMPONENT(INT_TO_ENUM(PED_COMPONENT, iItem))])
|
|
|
|
IF sItemInfo.iDrawable <>-1
|
|
AND sItemInfo.iTexture <> -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading item of comp type: ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iItem)), " sItemInfo.iDrawable: ", sItemInfo.iDrawable, " sItemInfo.iTexture= ", sItemInfo.iTexture)
|
|
SET_PED_PRELOAD_VARIATION_DATA(mPed, INT_TO_ENUM(PED_COMPONENT, iItem), sItemInfo.iDrawable, sItemInfo.iTexture)
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
// propgroups
|
|
INT iProp
|
|
PED_PROP_TYPE_ENUM ePropType
|
|
PED_PROP_POSITION eAnchor
|
|
PED_COMP_NAME_ENUM eDummyProp
|
|
PED_COMP_PROPS_DATA_STRUCT sPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfitInfo.eItems[COMP_TYPE_PROPGROUP])
|
|
// Remove all the flagged props
|
|
FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
|
|
ePropType = INT_TO_ENUM(PED_PROP_TYPE_ENUM, iProp)
|
|
eAnchor = GET_ANCHOR_FOR_PED_PROP_TYPE(ePropType)
|
|
eDummyProp = GET_DUMMY_PROP_FOR_ANCHOR(eAnchor)
|
|
|
|
IF sPropGroupData.eItems[iProp] <> eDummyProp
|
|
// this propgroup contains a valid prop in this anchor
|
|
sItemInfo = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, sPropGroupData.eItems[iProp])
|
|
|
|
IF sItemInfo.iDrawable != -1
|
|
AND sItemInfo.iDrawable != 255
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading prop for propgroup anchor: ", GET_PROP_POSITION_STRING(eAnchor), " sItemInfo.iDrawable: ", sItemInfo.iDrawable, " sItemInfo.iTexture= ", sItemInfo.iTexture)
|
|
SET_PED_PRELOAD_PROP_DATA(mPed, eAnchor, sItemInfo.iDrawable, sItemInfo.iTexture)
|
|
ELSE
|
|
// this propgroup has no prop in this anchor
|
|
//CPRINTLN(DEBUG_PED_COMP, "Invalid prop in propgroup anchor: ", GET_PROP_POSITION_STRING(eAnchor))
|
|
ENDIF
|
|
ELSE
|
|
// this propgroup has no prop in this anchor
|
|
CPRINTLN(DEBUG_PED_COMP, "No prop in propgroup anchor: ", GET_PROP_POSITION_STRING(eAnchor))
|
|
ENDIF
|
|
ENDFOR
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Preloads an outfit for a particular ped. Singleplayer only!
|
|
/// PARAMS:
|
|
/// mPed - the ped who will wear the outfit
|
|
/// eOutfit - the outfit you want to preload
|
|
PROC PRELOAD_OUTFIT(PED_INDEX mPed, PED_COMP_NAME_ENUM eOutfit)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // this ped's model
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading outfit for player:", ePedModel)
|
|
|
|
// struct of outfit info
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfitInfo = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eOutfit)
|
|
|
|
PRELOAD_OUTFIT_FROM_STRUCT(mPed, ePedModel, sOutfitInfo)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Preloads a ped component. Singleplayer only
|
|
/// PARAMS:
|
|
/// mPed - the oped who will wear the component
|
|
/// eCompType - the type of component to preload
|
|
/// eCompName - the name of the component
|
|
PROC PRELOAD_PED_COMP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eCompType, PED_COMP_NAME_ENUM eCompName)
|
|
|
|
IF eCompType = COMP_TYPE_OUTFIT
|
|
OR eCompType = COMP_TYPE_PROPGROUP
|
|
EXIT
|
|
ENDIF
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT sItemInfo
|
|
sItemInfo = GET_PED_COMP_DATA_FOR_ITEM_SP(GET_ENTITY_MODEL(mPed), eCompType, eCompName)
|
|
|
|
IF eCompType = COMP_TYPE_PROPS
|
|
IF sItemInfo.iDrawable <>-1
|
|
AND sItemInfo.iDrawable <> 255
|
|
SET_PED_PRELOAD_PROP_DATA(mPed, sItemInfo.ePropPos, sItemInfo.iDrawable, sItemInfo.iTexture)
|
|
ENDIF
|
|
ELSE
|
|
IF sItemInfo.iDrawable <>-1
|
|
AND sItemInfo.iTexture <> -1
|
|
SET_PED_PRELOAD_VARIATION_DATA(mPed, GET_PED_COMPONENT_FROM_TYPE(eCompType), sItemInfo.iDrawable, sItemInfo.iTexture)
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Preloads the stored variaions for the player ped specified
|
|
/// PARAMS:
|
|
/// mPed - ped index of the player ped you are preloading for
|
|
PROC PRELOAD_STORED_PLAYER_PED_VARIATIONCLF(PED_INDEX mPed)
|
|
INT iItem
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // this ped's model
|
|
enumCharacterList ePed // which player ped we are using
|
|
|
|
ePed = GET_PLAYER_CHARACTER_FROM_MODELCLF(ePedModel)
|
|
|
|
// loop through the items this player has stored and preload them
|
|
FOR iItem = 0 TO NUM_PED_COMPONENTS -1
|
|
|
|
IF g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem] <>-1
|
|
AND g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem] <> -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading for ", ePed, ". component ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iItem)), ". Drawable ", g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], ". Variation ", g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
SET_PED_PRELOAD_VARIATION_DATA(mPed, INT_TO_ENUM(PED_COMPONENT, iItem), g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], g_savedGlobalsClifford.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
ENDIF
|
|
ENDFOR
|
|
ENDPROC
|
|
PROC PRELOAD_STORED_PLAYER_PED_VARIATIONNRM(PED_INDEX mPed)
|
|
INT iItem
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // this ped's model
|
|
enumCharacterList ePed // which player ped we are using
|
|
|
|
ePed = GET_PLAYER_CHARACTER_FROM_MODELNRM(ePedModel)
|
|
|
|
// loop through the items this player has stored and preload them
|
|
FOR iItem = 0 TO NUM_PED_COMPONENTS -1
|
|
|
|
IF g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem] <>-1
|
|
AND g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem] <> -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading for ", ePed, ". component ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iItem)), ". Drawable ", g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], ". Variation ", g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
SET_PED_PRELOAD_VARIATION_DATA(mPed, INT_TO_ENUM(PED_COMPONENT, iItem), g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], g_savedGlobalsnorman.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
ENDIF
|
|
ENDFOR
|
|
ENDPROC
|
|
PROC PRELOAD_STORED_PLAYER_PED_VARIATION(PED_INDEX mPed)
|
|
|
|
#IF USE_CLF_DLC
|
|
IF g_bLoadedClifford
|
|
PRELOAD_STORED_PLAYER_PED_VARIATIONCLF(mped)
|
|
EXIT
|
|
ENDIF
|
|
#ENDIF
|
|
#IF USE_NRM_DLC
|
|
IF g_bLoadedNorman
|
|
PRELOAD_STORED_PLAYER_PED_VARIATIONNRM(mped)
|
|
EXIT
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
INT iItem
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed) // this ped's model
|
|
enumCharacterList ePed // which player ped we are using
|
|
|
|
ePed = GET_PLAYER_CHARACTER_FROM_MODEL(ePedModel)
|
|
|
|
// loop through the items this player has stored and preload them
|
|
FOR iItem = 0 TO NUM_PED_COMPONENTS -1
|
|
|
|
IF g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem] <>-1
|
|
AND g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem] <> -1
|
|
CPRINTLN(DEBUG_PED_COMP, "Preloading for ", ePed, ". component ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iItem)), ". Drawable ", g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], ". Variation ", g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
SET_PED_PRELOAD_VARIATION_DATA(mPed, INT_TO_ENUM(PED_COMPONENT, iItem), g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iDrawableVariation[iItem], g_savedGlobals.sPlayerData.sInfo.sVariations[ePed].iTextureVariation[iItem])
|
|
ENDIF
|
|
ENDFOR
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the item speicified is part of the programmer outfit used in Lester 1a.
|
|
/// PARAMS:
|
|
/// eItem - the item we are checking.
|
|
/// eType - the type of item we are checking.
|
|
/// RETURNS:
|
|
/// TRUE if this item can bepart of the programmer outfit. FALSE otherwise.
|
|
FUNC BOOL IS_ITEM_PART_OF_PROGRAMMER_OUTFIT(PED_COMP_NAME_ENUM eItem, PED_COMP_TYPE_ENUM eType)
|
|
|
|
IF eType = COMP_TYPE_TORSO
|
|
IF (eItem >= TORSO_P0_GILET_0 AND eItem <= TORSO_P0_GILET_5)
|
|
RETURN TRUE // this item is part of the programmer outfit
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_LEGS
|
|
IF (eItem >= LEGS_P0_CARGO_SHORTS_0 AND eItem <= LEGS_P0_CARGO_SHORTS_4)
|
|
RETURN TRUE // this item is part of the programmer outfit
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE//this item is not part of the programmer outfit
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the ped has a prop equipped in any of the ped prop positions
|
|
/// (assumes you have checked the ped is alive)
|
|
/// PARAMS:
|
|
/// mPed - ped index of the ped we are checking
|
|
/// RETURNS:
|
|
/// TRUE if ped has any props equipped, false otherwise
|
|
FUNC BOOL DOES_PED_HAVE_ANY_PROPS_EQUIPPED(PED_INDEX mPed)
|
|
|
|
INT iPosition
|
|
|
|
FOR iPosition = 0 TO NUMBER_OF_PED_PROP_TYPES
|
|
IF GET_PED_PROP_INDEX(mPed, INT_TO_ENUM(PED_PROP_POSITION, iPosition)) <> -1
|
|
// if prop index isn't -1, the player has a prop equipped in this prop position
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Sets whether the boiler suits are available to buy from the shops
|
|
/// PARAMS:
|
|
/// bAvailable - TRUE = available, FALSE = unavailable
|
|
PROC SET_BOILER_SUIT_AVAILABILITY(BOOL bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_OUTFIT, OUTFIT_P0_PREP_BOILER_SUIT_1, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_OUTFIT, OUTFIT_P0_PREP_BOILER_SUIT_2, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_OUTFIT, OUTFIT_P0_PREP_BOILER_SUIT_3, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_OUTFIT, OUTFIT_P1_PREP_BOILER_SUIT_1, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_OUTFIT, OUTFIT_P1_PREP_BOILER_SUIT_2, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_OUTFIT, OUTFIT_P1_PREP_BOILER_SUIT_3, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_OUTFIT, OUTFIT_P2_PREP_BOILER_SUIT_1, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_OUTFIT, OUTFIT_P2_PREP_BOILER_SUIT_2, bAvailable)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_OUTFIT, OUTFIT_P2_PREP_BOILER_SUIT_3, bAvailable)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Sets all of the FBI prep mission masks as available
|
|
PROC MAKE_ALL_MASKS_AVAILABLE()
|
|
|
|
// Michael
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_MONSTER_GREEN, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_MONSTER_RED, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_PIG, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_PIG_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_SKULL_GREY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_SKULL_YELLOW, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_MONKEY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_HOCKEY_WHITE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_HOCKEY_RED, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_APE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_APE_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_TRIBAL_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_TRIBAL_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_PROPS, PROPS_P0_MASK_TRIBAL_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_0, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_4, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ZERO, COMP_TYPE_SPECIAL2, SPECIAL2_P0_WRESTLER_MASK_5, TRUE)
|
|
|
|
// Franklin
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_MONSTER_GREEN, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_MONSTER_RED, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_PIG, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_PIG_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_SKULL_GREY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_SKULL_YELLOW, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_MONKEY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_HOCKEY_WHITE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_HOCKEY_RED, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_APE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_APE_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_TRIBAL_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_TRIBAL_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_PROPS, PROPS_P1_MASK_TRIBAL_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_0, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_4, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_ONE, COMP_TYPE_SPECIAL2, SPECIAL2_P1_WRESTLER_MASK_5, TRUE)
|
|
|
|
// Trevor
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_PIG, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_PIG_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_SKULL_GREY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_SKULL_YELLOW, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_MONKEY, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_HOCKEY_WHITE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_HOCKEY_RED, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_APE, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_APE_DARK, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_TRIBAL_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_TRIBAL_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_PROPS, PROPS_P2_MASK_TRIBAL_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_0, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_1, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_2, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_3, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_4, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_WRESTLER_MASK_5, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_MASK_MONSTER_GREEN, TRUE)
|
|
SET_PED_COMP_ITEM_AVAILABLE_SP(PLAYER_TWO, COMP_TYPE_SPECIAL2, SPECIAL2_P2_MASK_MONSTER_RED, TRUE)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Checks whether specified item is a crew item
|
|
/// PARAMS:
|
|
/// eModel - character model used
|
|
/// eType - item type
|
|
/// eItem - enum of item we are checking
|
|
/// RETURNS:
|
|
/// TRUE if the item is a crew item. FALSE otherwise
|
|
FUNC BOOL IS_PED_COMPONENT_ITEM_CREW_ITEM(MODEL_NAMES eModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
SWITCH eModel
|
|
CASE MP_M_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
IF eItem = JBIB_FMM_0_0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
IF eItem = SPECIAL_FMM_0_0
|
|
OR eItem = SPECIAL_FMM_2_0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE MP_F_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
IF eItem = JBIB_FMF_0_0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
IF eItem = SPECIAL_FMF_0_0
|
|
OR eItem = SPECIAL_FMF_1_0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Request cut-scene component variations for an entire outfit. Singleplayer only!
|
|
/// PARAMS:
|
|
/// sSceneHandle - scene handle of the ped using this outfit
|
|
/// ePedModel - the model of the ped using the outfit
|
|
/// eOutfit - the outfit you want to request
|
|
PROC SET_CUTSCENE_PED_OUTFIT(STRING sSceneHandle, MODEL_NAMES ePedModel, PED_COMP_NAME_ENUM eOutfit)
|
|
|
|
PED_COMP_TYPE_ENUM eComponent
|
|
PED_COMP_ITEM_DATA_STRUCT mItemData
|
|
PED_COMP_PROPS_DATA_STRUCT mPropGroupData
|
|
PED_PROP_TYPE_ENUM ePropType
|
|
PED_PROP_POSITION eAnchor
|
|
PED_COMP_NAME_ENUM eDummyProp
|
|
|
|
INT iComponent
|
|
INT iProp
|
|
|
|
PED_COMP_OUTFIT_DATA_STRUCT sOutfit = GET_PED_COMPONENT_DATA_FOR_OUTFIT(ePedModel, eOutfit)
|
|
|
|
BOOL bUseStoredHair = FALSE
|
|
IF sOutfit.eItems[COMP_TYPE_HAIR] = DUMMY_PED_COMP
|
|
AND sOutfit.eItems[COMP_TYPE_HEAD] = DUMMY_PED_COMP
|
|
bUseStoredHair = TRUE
|
|
ENDIF
|
|
|
|
FOR iComponent = 0 TO NUMBER_OF_PED_COMP_TYPES-1
|
|
|
|
eComponent = INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComponent)
|
|
|
|
IF eComponent<>COMP_TYPE_OUTFIT
|
|
AND eComponent<>COMP_TYPE_PROPS
|
|
|
|
IF eComponent = COMP_TYPE_PROPGROUP
|
|
// iterate through the props in this propgroup
|
|
mPropGroupData = GET_PED_COMPONENT_DATA_FOR_PROPGROUP(ePedModel, sOutfit.eItems[iComponent])
|
|
|
|
FOR iProp = 0 TO NUMBER_OF_PED_PROP_TYPES-1
|
|
|
|
ePropType = INT_TO_ENUM(PED_PROP_TYPE_ENUM, iProp)
|
|
eAnchor = GET_ANCHOR_FOR_PED_PROP_TYPE(ePropType)
|
|
eDummyProp = GET_DUMMY_PROP_FOR_ANCHOR(eAnchor)
|
|
|
|
IF mPropGroupData.eItems[iProp] <> eDummyProp
|
|
// this propgroup contains a valid prop in this anchor
|
|
mItemData = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, COMP_TYPE_PROPS, mPropGroupData.eItems[iProp])
|
|
CPRINTLN(DEBUG_PED_COMP, "Setting cutscene prop for ", sSceneHandle, " anchor: ", GET_PROP_POSITION_STRING(eAnchor), " mItemData.iDrawable: ", mItemData.iDrawable, " mItemData.iTexture= ", mItemData.iTexture)
|
|
SET_CUTSCENE_PED_PROP_VARIATION(sSceneHandle, mItemData.ePropPos, mItemData.iDrawable, 0, ePedModel)
|
|
ELSE
|
|
// this propgroup has no prop in this anchor
|
|
CPRINTLN(DEBUG_PED_COMP, "No prop in propgroup anchor: ", GET_PROP_POSITION_STRING(eAnchor))
|
|
ENDIF
|
|
ENDFOR
|
|
ELSE
|
|
// normal item
|
|
// get the item data for this comp type and request it
|
|
mItemData = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eComponent, sOutfit.eItems[iComponent])
|
|
|
|
// Overwrite the hair and head variations if this outfit doesnt set them.
|
|
IF ((iComponent = ENUM_TO_INT(COMP_TYPE_HAIR) OR iComponent = ENUM_TO_INT(COMP_TYPE_HEAD)) AND bUseStoredHair)
|
|
OR sOutfit.eItems[iComponent] = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_CUTSCENE_PED_OUTFIT is going to use stored variation as ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComponent)), " is DUMMY_PED_COMP")
|
|
mItemData.iDrawable = g_savedGlobals.sPlayerData.sInfo.sVariations[mItemData.iPedID].iDrawableVariation[iComponent]
|
|
mItemData.iTexture = g_savedGlobals.sPlayerData.sInfo.sVariations[mItemData.iPedID].iTextureVariation[iComponent]
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Setting cutscene item for ", sSceneHandle, ", ", GET_PED_COMP_TYPE_STRING(INT_TO_ENUM(PED_COMP_TYPE_ENUM, iComponent)), " mItemData.iDrawable: ", mItemData.iDrawable, " mItemData.iTexture= ", mItemData.iTexture)
|
|
SET_CUTSCENE_PED_COMPONENT_VARIATION(sSceneHandle, GET_PED_COMPONENT_FROM_TYPE(eComponent), mItemData.iDrawable, mItemData.iTexture, ePedModel)
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Clears blood decals for the selected item
|
|
/// PARAMS:
|
|
/// mPed - player ped or the cutscene ped
|
|
/// eCompType - ped comp type of the item being tried / bought
|
|
/// eItem - the item being tried / bought
|
|
PROC CLEAR_BLOOD_DECALS_FOR_ITEM(PED_INDEX mPed, PED_COMP_TYPE_ENUM eCompType, PED_PROP_TYPE_ENUM ePropType = PROP_TYPE_DUMMY, BOOL bClearSweat = TRUE)
|
|
|
|
CPRINTLN(DEBUG_SHOPS, "Clearing blood decals for eCompType.", GET_PED_COMP_TYPE_STRING(eCompType))
|
|
|
|
IF DOES_ENTITY_EXIST(mPed)
|
|
IF NOT IS_PED_INJURED(mPed)
|
|
SWITCH eCompType
|
|
CASE COMP_TYPE_HEAD
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_HEAD)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_TORSO
|
|
CASE COMP_TYPE_DECL
|
|
CASE COMP_TYPE_JBIB
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_TORSO)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_ARM)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_ARM)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_LEGS
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_LEG)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_LEG)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_FEET
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_LEG)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_LEG)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_HAND
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_ARM)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_ARM)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_OUTFIT
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_HEAD)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_TORSO)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_LEG)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_LEG)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_ARM)
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_ARM)
|
|
BREAK
|
|
|
|
CASE COMP_TYPE_PROPS
|
|
SWITCH GET_ANCHOR_FOR_PED_PROP_TYPE(ePropType)
|
|
CASE ANCHOR_HEAD
|
|
CASE ANCHOR_EYES
|
|
CASE ANCHOR_EARS
|
|
CASE ANCHOR_MOUTH
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_HEAD)
|
|
BREAK
|
|
|
|
CASE ANCHOR_LEFT_HAND
|
|
CASE ANCHOR_LEFT_WRIST
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_LEFT_ARM)
|
|
BREAK
|
|
|
|
CASE ANCHOR_RIGHT_HAND
|
|
CASE ANCHOR_RIGHT_WRIST
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_RIGHT_ARM)
|
|
BREAK
|
|
|
|
CASE ANCHOR_HIP
|
|
CLEAR_PED_BLOOD_DAMAGE_BY_ZONE(mPed, PDZ_TORSO)
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// clear sweat too
|
|
IF bClearSweat = TRUE
|
|
IF eCompType = COMP_TYPE_OUTFIT
|
|
OR eCompType = COMP_TYPE_TORSO
|
|
OR eCompType = COMP_TYPE_DECL
|
|
OR eCompType = COMP_TYPE_JBIB
|
|
SET_PED_SWEAT(mPed, 0.0)
|
|
//CPRINTLN(DEBUG_PED_COMP, "Clearing sweat from torso / outfit / jbib / decal.")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the player has acquired any variation of this item. (SP only)
|
|
/// PARAMS:
|
|
/// mPed - the ped we are checking
|
|
/// eType - comp type we are checking
|
|
/// eItem - the item we are checking for variations of
|
|
/// iLimitedItems - set bits in here matching the texture number to only use these items in this check (set to 0 to use all)
|
|
/// RETURNS:
|
|
/// TRUE if player owns any variations of this item. FALSE otherwise
|
|
FUNC BOOL IS_ANY_VARIATION_OF_ITEM_ACQUIRED_SP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iLimitedItems)
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT mItem
|
|
PED_COMP_ITEM_DATA_STRUCT mCurrentItem
|
|
INT iNumberOfTextures
|
|
PED_COMPONENT ePedComp
|
|
MODEL_NAMES ePedModel
|
|
INT iFirstVariationEnum
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
INT iVariation
|
|
INT iCurrentVariation
|
|
|
|
// see how many variations this item has
|
|
ePedModel = GET_ENTITY_MODEL(mPed)
|
|
mItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
IF eType = COMP_TYPE_PROPS
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(mPed, mItem.ePropPos, mItem.iDrawable)
|
|
ELSE
|
|
ePedComp = GET_PED_COMPONENT_FROM_TYPE(eType)
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(mPed, ePedComp, mItem.iDrawable)
|
|
ENDIF
|
|
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: item is [", mItem.iDrawable, ",", mItem.iTexture, "]")
|
|
|
|
// work out the ped enum number of the 1st variation of this drawable
|
|
iFirstVariationEnum = ENUM_TO_INT(eItem) - mItem.iTexture
|
|
|
|
// find a suitable random item
|
|
FOR iVariation = 0 TO iNumberOfTextures -1
|
|
|
|
// turn this into a ped comp enum
|
|
iCurrentVariation = iVariation + iFirstVariationEnum
|
|
eCurrentItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iCurrentVariation)
|
|
mCurrentItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eCurrentItem)
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: eCurrentItem = ", eCurrentItem)
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: iCurrentVariation ", iCurrentVariation)
|
|
|
|
// check if this item is suitable
|
|
IF NOT IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_ACQUIRED_BIT)
|
|
AND (IS_BIT_SET(iLimitedItems, iVariation) OR iLimitedItems = 0)
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Found suitable item. ", eCurrentItem, " iCurrentVariation= ", iCurrentVariation)
|
|
RETURN TRUE
|
|
ELSE
|
|
// not suitable, try again
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Item not suitable.", eCurrentItem)
|
|
IF NOT IS_BIT_SET(iLimitedItems, iVariation)
|
|
AND iLimitedItems != 0
|
|
//CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Item limited.", eCurrentItem, " iCurrentVariation= ",iCurrentVariation)
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
RETURN FALSE // no variations of this item have been acquired
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if the player has acquired any variation of this item. (MP only)
|
|
/// PARAMS:
|
|
/// mPed - the ped we are checking
|
|
/// eType - comp type we are checking
|
|
/// eItem - the item we are checking for variations of
|
|
/// iLimitedItems - set bits in here matching the texture number to only use these items in this check (set to 0 to use all)
|
|
/// RETURNS:
|
|
/// TRUE if player owns any variations of this item. FALSE otherwise
|
|
FUNC BOOL IS_ANY_VARIATION_OF_ITEM_ACQUIRED_MP(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iLimitedItems)
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT mItem
|
|
PED_COMP_ITEM_DATA_STRUCT mCurrentItem
|
|
INT iNumberOfTextures
|
|
PED_COMPONENT ePedComp
|
|
MODEL_NAMES ePedModel
|
|
INT iFirstVariationEnum
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
INT iVariation
|
|
INT iCurrentVariation
|
|
|
|
// see how many variations this item has
|
|
ePedModel = GET_ENTITY_MODEL(mPed)
|
|
mItem = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eItem)
|
|
|
|
IF eType = COMP_TYPE_PROPS
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(mPed, mItem.ePropPos, mItem.iDrawable)
|
|
ELSE
|
|
ePedComp = GET_PED_COMPONENT_FROM_TYPE(eType)
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(mPed, ePedComp, mItem.iDrawable)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: item is [", mItem.iDrawable, ",", mItem.iTexture, "]")
|
|
|
|
// work out the ped enum number of the 1st variation of this drawable
|
|
iFirstVariationEnum = ENUM_TO_INT(eItem) - mItem.iTexture
|
|
|
|
// find a suitable random item
|
|
FOR iVariation = 0 TO iNumberOfTextures -1
|
|
|
|
// turn this into a ped comp enum
|
|
iCurrentVariation = iVariation + iFirstVariationEnum
|
|
eCurrentItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iCurrentVariation)
|
|
mCurrentItem = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, eType, eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: eCurrentItem = ", eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: iCurrentVariation ", iCurrentVariation)
|
|
|
|
// check if this item is suitable
|
|
IF NOT IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_ACQUIRED_BIT)
|
|
AND (IS_BIT_SET(iLimitedItems, iVariation) OR iLimitedItems = 0)
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Found suitable item. ", eCurrentItem, " iCurrentVariation= ", iCurrentVariation)
|
|
RETURN TRUE
|
|
ELSE
|
|
// not suitable, try again
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Item not suitable.", eCurrentItem)
|
|
IF NOT IS_BIT_SET(iLimitedItems, iVariation)
|
|
AND iLimitedItems != 0
|
|
CPRINTLN(DEBUG_PED_COMP, "IAVOIA: Item limited.", eCurrentItem, " iCurrentVariation= ",iCurrentVariation)
|
|
ENDIF
|
|
ENDIF
|
|
ENDFOR
|
|
|
|
RETURN FALSE // no variations of this item have been acquired
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns a random ped comp item of same type and drawable as one passed in
|
|
/// (item is available, acquired and not outfit only)
|
|
/// PARAMS:
|
|
/// mPed - the ped we are getting the item for
|
|
/// eType - the item type we need
|
|
/// eItem - the item we want to use same drawable as
|
|
/// iCheckAcquired - uses a bitset to specify which items we need to check the acquired status of
|
|
/// iLimitedItems - uses a bitset to limit random items to just those specified
|
|
/// iForcedLegs - used to make top and pants match- variation number is passed in
|
|
/// RETURNS:
|
|
/// Random item, or the item passed in if fails to find alternative
|
|
FUNC PED_COMP_NAME_ENUM GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(PED_INDEX mPed, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem, INT iCheckAcquired, INT iLimitedItems, INT &iForcedLegs)
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT mItem
|
|
PED_COMP_ITEM_DATA_STRUCT mRandomItem
|
|
INT iNumberOfTextures
|
|
PED_COMPONENT ePedComp
|
|
MODEL_NAMES ePedModel
|
|
INT iRandomVariation
|
|
INT iRandomTexture
|
|
INT iFirstVariationEnum
|
|
PED_COMP_NAME_ENUM eRandomItem
|
|
INT iRandomAttempts = 0
|
|
INT iCurrentVariation, iVariation
|
|
PED_COMP_ITEM_DATA_STRUCT mCurrentItem
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: For type .", GET_PED_COMP_TYPE_STRING(eType), " eItem= ", eItem)
|
|
|
|
// see how many variations this item has
|
|
ePedModel = GET_ENTITY_MODEL(mPed)
|
|
mItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eItem)
|
|
|
|
IF eType = COMP_TYPE_PROPS
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_PROP_TEXTURE_VARIATIONS(mPed, mItem.ePropPos, mItem.iDrawable)
|
|
ELSE
|
|
ePedComp = GET_PED_COMPONENT_FROM_TYPE(eType)
|
|
iNumberOfTextures = GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(mPed, ePedComp, mItem.iDrawable)
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: item is [", mItem.iDrawable, ",", mItem.iTexture, "]")
|
|
|
|
// work out the ped enum number of the 1st variation of this drawable
|
|
iFirstVariationEnum = ENUM_TO_INT(eItem) - mItem.iTexture
|
|
|
|
IF eType = COMP_TYPE_LEGS
|
|
IF iForcedLegs > -1
|
|
// we're forcing the legs to match a top we've already set
|
|
// turn this into a ped comp enum
|
|
iCurrentVariation = iForcedLegs + iFirstVariationEnum
|
|
eCurrentItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iCurrentVariation)
|
|
mCurrentItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: ForcedLegs: eCurrentItem = ", eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: ForcedLegs: iForcedLegs ", iForcedLegs)
|
|
// skip the acquired checks
|
|
// (forced legs only used for Franklin+ his jackets and matching pants get acquired together)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: ForcedLegs:Found suitable item. ", eCurrentItem, " iCurrentVariation= ", iCurrentVariation)
|
|
RETURN eCurrentItem
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// find a suitable random item
|
|
WHILE iRandomAttempts < 5
|
|
|
|
// pick a random variation
|
|
iRandomTexture = GET_RANDOM_INT_IN_RANGE(0, iNumberOfTextures)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Trying variaition .", iRandomTexture)
|
|
|
|
// turn this into a ped comp enum
|
|
iRandomVariation = iRandomTexture + iFirstVariationEnum
|
|
eRandomItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRandomVariation)
|
|
mRandomItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eRandomItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: eRandomItem = .", eRandomItem)
|
|
|
|
// check if this item is suitable
|
|
IF NOT IS_BIT_SET(mRandomItem.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
AND IS_BIT_SET(mRandomItem.iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
AND IS_BIT_SET(mRandomItem.iProperties, PED_COMPONENT_ACQUIRED_BIT)
|
|
AND (IS_BIT_SET(iLimitedItems, iRandomTexture) OR iLimitedItems=0)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Found suitable random item. ", eRandomItem)
|
|
IF eType = COMP_TYPE_TORSO
|
|
iForcedLegs = iRandomTexture
|
|
ENDIF
|
|
RETURN eRandomItem
|
|
ELSE
|
|
// not suitable, try again
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Item not suitable.", eRandomItem)
|
|
IF NOT IS_BIT_SET(iLimitedItems, iRandomTexture)
|
|
AND iLimitedItems !=0
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Item is limited. ", eRandomItem, " iRandomTexture= ", iRandomTexture)
|
|
ENDIF
|
|
iRandomAttempts++
|
|
ENDIF
|
|
ENDWHILE
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Too many attempts. Return item passed in.", eItem)
|
|
|
|
IF IS_BIT_SET(iCheckAcquired, ENUM_TO_INT(eType))
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: doing must be acquired check")
|
|
|
|
// if the bit is set for this comp type,
|
|
// run through all variations and return the 1st acquired one
|
|
// find a suitable random item
|
|
FOR iVariation = 0 TO iNumberOfTextures -1
|
|
|
|
// turn this into a ped comp enum
|
|
iCurrentVariation = iVariation + iFirstVariationEnum
|
|
eCurrentItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iCurrentVariation)
|
|
mCurrentItem = GET_PED_COMP_DATA_FOR_ITEM_SP(ePedModel, eType, eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: eCurrentItem = ", eCurrentItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: iVariation ", iVariation)
|
|
|
|
// check if this item is suitable
|
|
IF NOT IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_OUTFIT_ONLY_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_AVAILABLE_BIT)
|
|
AND IS_BIT_SET(mCurrentItem.iProperties, PED_COMPONENT_ACQUIRED_BIT)
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Found suitable item. ", eCurrentItem, " iCurrentVariation= ", iCurrentVariation)
|
|
IF eType = COMP_TYPE_TORSO
|
|
iForcedLegs = iVariation
|
|
ENDIF
|
|
RETURN eCurrentItem
|
|
ELSE
|
|
// not suitable, try again
|
|
CPRINTLN(DEBUG_PED_COMP, "GRAIODAT: Item not suitable.", eCurrentItem)
|
|
ENDIF
|
|
ENDFOR
|
|
ENDIF
|
|
|
|
// failed to find another suitable item, return the item passed in (should always be valid)
|
|
RETURN eItem
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Fills outfit data struct ready for use in a switch scene
|
|
/// PARAMS:
|
|
/// mPed - the ped we're setting the outfit for
|
|
/// mOutfit - the outfit struct we're filling
|
|
/// eTorso - the torso we want to use
|
|
/// eLegs - the legs we want to use
|
|
/// eFeet - the feet we want to use
|
|
PROC FILL_OUTFIT_FOR_SWITCH_SCENE(PED_INDEX mPed, PED_COMP_NAME_ENUM eTorso, PED_COMP_NAME_ENUM eLegs, PED_COMP_NAME_ENUM eFeet, PED_COMP_NAME_ENUM eHand, PED_COMP_NAME_ENUM eSpecial, PED_COMP_NAME_ENUM eJbib, PED_COMP_NAME_ENUM eHeadProp, PED_COMP_NAME_ENUM eEyeProp, INT iLimitedTorsos, BOOL bDoRandom = TRUE, INT iCheckAcquired = 0, BOOL bMatchingTopAndPants = FALSE)
|
|
MODEL_NAMES ePedModel
|
|
INT iForcedLegs
|
|
ePedModel = GET_ENTITY_MODEL(mPed)
|
|
|
|
IF bDoRandom = TRUE
|
|
eTorso = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_TORSO, eTorso, iCheckAcquired, iLimitedTorsos, iForcedLegs)
|
|
|
|
IF bMatchingTopAndPants =FALSE
|
|
// if we're making the top and pants match we need to get the texture number of the top
|
|
// this is done by passing iForcedLegs into the legs check below
|
|
// if we're not making them match, we just reset it to -1 here
|
|
iForcedLegs = -1
|
|
ENDIF
|
|
eLegs = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_LEGS, eLegs, iCheckAcquired, 0, iForcedLegs)
|
|
eFeet = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_FEET, eFeet, iCheckAcquired, 0, iForcedLegs)
|
|
eHand = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_HAND, eHand, iCheckAcquired, 0, iForcedLegs)
|
|
eSpecial = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_SPECIAL, eSpecial, iCheckAcquired, 0, iForcedLegs)
|
|
eJbib = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_JBIB, eJbib, iCheckAcquired, 0, iForcedLegs)
|
|
eHeadProp = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_PROPS, eHeadProp, iCheckAcquired, 0, iForcedLegs)
|
|
eEyeProp = GET_RANDOM_ACQUIRED_ITEM_OF_DRAWABLE_AND_TYPE(mPed, COMP_TYPE_PROPS, eEyeProp, iCheckAcquired, 0, iForcedLegs)
|
|
ENDIF
|
|
|
|
SWITCH ePedModel
|
|
|
|
// Michael
|
|
CASE PLAYER_ZERO
|
|
// clear decls + jbibs so requisites come through
|
|
SET_PED_COMP_ITEM_CURRENT_SP(mPed, COMP_TYPE_DECL, DECL_P0_NONE, FALSE)
|
|
|
|
// fill outfit
|
|
FILL_PED_COMPONENT_OUTFIT_DATA(g_sTempOutfitData, DUMMY_PED_COMP, DUMMY_PED_COMP, eTorso, eLegs, eFeet, eHand, eSpecial, SPECIAL2_P0_NONE, DUMMY_PED_COMP, DUMMY_PED_COMP, TEETH_P0_NONE, eJbib, PROPGROUP_NONE)
|
|
BREAK
|
|
|
|
// Franklin
|
|
CASE PLAYER_ONE
|
|
// clear decls + jbibs so requisites come through
|
|
SET_PED_COMP_ITEM_CURRENT_SP(mPed, COMP_TYPE_DECL, DECL_P1_NONE, FALSE)
|
|
|
|
// fill outfit
|
|
FILL_PED_COMPONENT_OUTFIT_DATA(g_sTempOutfitData, DUMMY_PED_COMP, DUMMY_PED_COMP, eTorso, eLegs, eFeet, eHand, eSpecial, SPECIAL2_P1_NONE, DUMMY_PED_COMP, DUMMY_PED_COMP, TEETH_P1_NONE, eJbib, PROPGROUP_NONE)
|
|
BREAK
|
|
|
|
// Trevor
|
|
CASE PLAYER_TWO
|
|
// clear decls + jbibs so requisites come through
|
|
SET_PED_COMP_ITEM_CURRENT_SP(mPed, COMP_TYPE_DECL, DECL_P2_NONE, FALSE)
|
|
|
|
// fill outfit
|
|
FILL_PED_COMPONENT_OUTFIT_DATA(g_sTempOutfitData, DUMMY_PED_COMP, DUMMY_PED_COMP, eTorso, eLegs, eFeet, eHand, eSpecial, SPECIAL2_P2_NONE, DUMMY_PED_COMP, DUMMY_PED_COMP, TEETH_P2_NONE, eJbib, PROPGROUP_NONE)
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// build prop group
|
|
FILL_PED_COMPONENT_PROPS_DATA(g_sTempPropGroupData, eHeadProp, eEyeProp)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Returns whether this legs drawable is an underwear item (SP only)
|
|
/// PARAMS:
|
|
/// ePed - the character we are checking for
|
|
/// iLegsDrawable - the drawable number of the legs component we are checking
|
|
/// RETURNS:
|
|
/// TRUE if underwear. FALSE otherwise
|
|
FUNC BOOL IS_LEGS_DRAWABLE_UNDERWEAR(enuMCharacterList ePed, INT iLegsDrawable)
|
|
|
|
IF ePed = CHAR_MICHAEL
|
|
// LEGS_P0_BED - LEGS_P0_BOXERS_7
|
|
IF iLegsDrawable = 18
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_LEGS_DRAWABLE_UNDERWEAR: CHAR_MICHAEL in underwear.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF ePed = CHAR_FRANKLIN
|
|
// LEGS_P1_BOXERS - LEGS_P1_BOXERS_5
|
|
IF iLegsDrawable = 18
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_LEGS_DRAWABLE_UNDERWEAR: CHAR_FRANKLIN in underwear.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF ePed = CHAR_TREVOR
|
|
//LEGS_P2_UNDERWEAR - LEGS_P2_UNDERWEAR_9
|
|
IF iLegsDrawable = 22
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_LEGS_DRAWABLE_UNDERWEAR: CHAR_TREVOR in underwear.")
|
|
RETURN TRUE
|
|
|
|
// LEGS_P2_UNDERWEAR_BF_0 - LEGS_P2_UNDERWEAR_BF_9
|
|
ELIF iLegsDrawable = 26
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_LEGS_DRAWABLE_UNDERWEAR: CHAR_TREVOR in underwear.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns true if the item passed in is underwear or bare chest (SP only at the moment)
|
|
/// PARAMS:
|
|
/// ePedModel - model of the ped we are checking
|
|
/// eType - comp type (torso or legs)
|
|
/// eItem - item we are checking
|
|
/// RETURNS:
|
|
/// TRUE if underwear or bare chest
|
|
FUNC BOOL IS_ITEM_UNDERWEAR(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
IF ePedModel = PLAYER_ZERO
|
|
IF eType = COMP_TYPE_LEGS
|
|
IF (eItem >= LEGS_P0_BED AND eItem <= LEGS_P0_BOXERS_7)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_TORSO
|
|
IF eItem = TORSO_P0_BARE_CHEST
|
|
OR (eItem >= TORSO_P0_BED AND eItem <= TORSO_P0_VEST_4)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = PLAYER_ONE
|
|
IF eType = COMP_TYPE_LEGS
|
|
IF (eItem >= LEGS_P1_BOXERS AND eItem <= LEGS_P1_BOXERS_5)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_TORSO
|
|
IF eItem = TORSO_P1_BARE_CHEST
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = PLAYER_TWO
|
|
IF eType = COMP_TYPE_LEGS
|
|
IF (eItem >= LEGS_P2_UNDERWEAR AND eItem <= LEGS_P2_UNDERWEAR_9)
|
|
OR (eItem >= LEGS_P2_UNDERWEAR_BF_0 AND eItem <= LEGS_P2_UNDERWEAR_BF_9)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELIF eType = COMP_TYPE_TORSO
|
|
IF eItem = TORSO_P2_NONE
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns true if the ped is wearing underwear (legs)
|
|
/// RETURNS:
|
|
/// TRUE if underwear legs equipped. FALSE otherwise
|
|
FUNC BOOL IS_PED_IN_UNDERWEAR_SP(PED_INDEX mPed)
|
|
PED_COMP_NAME_ENUM eLegs
|
|
MODEL_NAMES ePedModel
|
|
ePedModel = GET_ENTITY_MODEL(mPed)
|
|
|
|
eLegs = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_LEGS)
|
|
RETURN IS_ITEM_UNDERWEAR(ePedModel, COMP_TYPE_LEGS, eLegs)
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if Michael is smart clothes.
|
|
/// RETURNS:
|
|
/// TRUE if outfit is suitable for triggering mission in (jewel setup 1 + ). FALSE otherwise
|
|
FUNC BOOL IS_MICHAEL_WEARING_SMART_OUTFIT()
|
|
PED_COMP_NAME_ENUM eCurrentItem
|
|
|
|
// Torso
|
|
eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_TORSO)
|
|
IF (eCurrentItem >= TORSO_P0_GREY_SUIT AND eCurrentItem <= TORSO_P0_GREY_SUIT_15)
|
|
OR (eCurrentItem >= TORSO_P0_SUIT_JACKET AND eCurrentItem <= TORSO_P0_SUIT_JACKET_15)
|
|
OR (eCurrentItem >= TORSO_P0_VNECK AND eCurrentItem <= TORSO_P0_VNECK_9)
|
|
OR (eCurrentItem >= TORSO_P0_DRESS_SHIRT AND eCurrentItem <= TORSO_P0_DRESS_SHIRT_7)
|
|
OR eCurrentItem = TORSO_P0_MOVIE_TUXEDO
|
|
// torso is suitable
|
|
ELSE
|
|
// torso not suitable
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Legs
|
|
eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_LEGS)
|
|
IF (eCurrentItem >= LEGS_P0_GREY_SUIT AND eCurrentItem <= LEGS_P0_GREY_SUIT_15)
|
|
OR eCurrentItem = LEGS_P0_BLACK_TROUSERS
|
|
//legs are suitable
|
|
ELSE
|
|
// legs not suitable
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Feet
|
|
eCurrentItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(PLAYER_PED_ID(), COMP_TYPE_FEET)
|
|
IF (eCurrentItem >= FEET_P0_BLACK_SHOES AND eCurrentItem <=FEET_P0_BLACK_SHOES_5)
|
|
OR eCurrentItem = FEET_P0_1
|
|
OR eCurrentItem = FEET_P0_BED
|
|
OR eCurrentItem = FEET_P0_DRESS_LOAFERS
|
|
OR (eCurrentItem >= FEET_P0_OXFORDS_0 AND eCurrentItem <=FEET_P0_OXFORDS_15)
|
|
OR (eCurrentItem >= FEET_P0_SQ_LOAFERS_0 AND eCurrentItem <=FEET_P0_SQ_LOAFERS_15)
|
|
OR (eCurrentItem >= FEET_P0_WINGTIPS_0 AND eCurrentItem <=FEET_P0_WINGTIPS_15)
|
|
OR (eCurrentItem >= FEET_P0_LOAFERS_0 AND eCurrentItem <=FEET_P0_LOAFERS_11)
|
|
//feet are suitable
|
|
ELSE
|
|
// feet not suitable
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// the player is wearing suitable torso and leg items
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUM_OF_HAT_OPTIONS_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, PED_COMP_NAME_ENUM eCurrentHair = DUMMY_PED_COMP)
|
|
|
|
IF bIsMale = TRUE
|
|
// male
|
|
IF eOutfitType = MPSO_CASUAL RETURN 3
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO RETURN 3
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK RETURN 3
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK RETURN 2
|
|
ELIF eOutfitType = MPSO_PARTYING RETURN 2
|
|
ELIF eOutfitType = MPSO_SPORT RETURN 4
|
|
ENDIF
|
|
ELSE
|
|
// female
|
|
IF eOutfitType = MPSO_CASUAL
|
|
IF (eCurrentHair >= HAIR_FMF_15_0 AND eCurrentHair <= HAIR_FMF_15_6)
|
|
CPRINTLN(DEBUG_PED_COMP, "Blocking hat 7 as doesnt go with hair.")
|
|
RETURN 2
|
|
|
|
ELIF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 0
|
|
ELSE
|
|
RETURN 3
|
|
ENDIF
|
|
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO
|
|
IF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 1
|
|
ELSE
|
|
RETURN 3
|
|
ENDIF
|
|
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK
|
|
IF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 0
|
|
|
|
ELIF (eCurrentHair >= HAIR_FMF_6_0 AND eCurrentHair <= HAIR_FMF_6_4)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hats for illegal spawn outfit with braids haircut.")
|
|
RETURN 0
|
|
ELSE
|
|
RETURN 3
|
|
ENDIF
|
|
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK
|
|
IF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 2
|
|
ELSE
|
|
RETURN 3
|
|
ENDIF
|
|
|
|
ELIF eOutfitType = MPSO_PARTYING
|
|
IF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 0
|
|
ELSE
|
|
RETURN 2
|
|
ENDIF
|
|
|
|
ELIF eOutfitType = MPSO_SPORT
|
|
IF (eCurrentHair >= HAIR_FMF_11_0 AND eCurrentHair <= HAIR_FMF_11_6)
|
|
OR (eCurrentHair >= HAIR_FMF_4_0 AND eCurrentHair <= HAIR_FMF_4_5)
|
|
CPRINTLN(DEBUG_PED_COMP, "blocking hat / hair combos that would clip.")
|
|
RETURN 0
|
|
ELSE
|
|
RETURN 2
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN 0 // should never reach here
|
|
ENDFUNC
|
|
|
|
FUNC PED_COMP_NAME_ENUM GET_HAT_OPTION_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, INT iOption)
|
|
|
|
PED_COMP_NAME_ENUM eHeadProp = DUMMY_PED_COMP
|
|
|
|
IF bIsMale = TRUE
|
|
// male
|
|
IF eOutfitType = MPSO_CASUAL
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_5_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_7_1 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMM_HAT_7_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_3_1 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_2_0 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMM_HAT_2_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_4_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_4_1 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMM_HAT_14_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_12_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_12_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_PARTYING
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_4_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_4_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_SPORT
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMM_HAT_9_5 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMM_HAT_9_7 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMM_HAT_10_5 BREAK
|
|
CASE 3 eHeadProp = PROPS_FMM_HAT_10_7 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ELSE
|
|
// female
|
|
IF eOutfitType = MPSO_CASUAL
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_13_2 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_9_4 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMF_HAT_7_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_10_7 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_5_0 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMF_HAT_5_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_4_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_13_3 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMF_HAT_12_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK
|
|
// if more options are added here- update special case in GET_RANDOM_HAT_FOR_SPAWN_OUTFIT
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_14_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_14_4 BREAK
|
|
CASE 2 eHeadProp = PROPS_FMF_HAT_11_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_PARTYING
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_13_1 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_13_6 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_SPORT
|
|
SWITCH iOption
|
|
CASE 0 eHeadProp = PROPS_FMF_HAT_4_0 BREAK
|
|
CASE 1 eHeadProp = PROPS_FMF_HAT_9_0 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF eHeadProp = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_HAT_OPTION_FOR_SPAWN_OUTFIT returning dummy. bIsMale= ", bIsMale, " eOutfitType = ", eOutfitType, " iOption= ", iOption)
|
|
ENDIF
|
|
|
|
RETURN eHeadProp
|
|
ENDFUNC
|
|
|
|
FUNC PED_COMP_NAME_ENUM GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, PED_COMP_NAME_ENUM eCurrentHair = DUMMY_PED_COMP)
|
|
|
|
INT iNumOfOptions = GET_NUM_OF_HAT_OPTIONS_FOR_SPAWN_OUTFIT(bIsMale, eOutfitType, eCurrentHair)
|
|
IF iNumOfOptions > 0
|
|
|
|
INT iRandomItem = GET_RANDOM_INT_IN_RANGE(0, iNumOfOptions)
|
|
|
|
IF bIsMale = FALSE
|
|
AND eOutfitType = MPSO_LEGAL_WORK
|
|
// female legal work outfit should have higher probability of using sun hat (option 2- others are berets)
|
|
// as there are 3 options, it has 33% chance normally, so upping to 50% sun hat, 25% beret 1, 25% beret 2
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 99)
|
|
IF iRandomItem < 25
|
|
CPRINTLN(DEBUG_PED_COMP, "Hat option overwritten to beret 1: Female legal.")
|
|
iRandomItem = 0
|
|
|
|
ELIF iRandomItem < 50
|
|
CPRINTLN(DEBUG_PED_COMP, "Hat option overwritten to beret 2: Female legal.")
|
|
iRandomItem = 1
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "Hat option overwritten to sunhat: Female legal.")
|
|
iRandomItem = 2
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN GET_HAT_OPTION_FOR_SPAWN_OUTFIT(bIsMale, eOutfitType, iRandomItem)
|
|
ENDIF
|
|
|
|
RETURN PROPS_HEAD_NONE
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUM_OF_GLASSES_OPTIONS_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, PED_COMP_NAME_ENUM eCurrentHair = DUMMY_PED_COMP)
|
|
|
|
IF bIsMale = TRUE
|
|
// male
|
|
IF eOutfitType = MPSO_CASUAL RETURN 5
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO RETURN 5
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK RETURN 6
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK RETURN 5
|
|
ELIF eOutfitType = MPSO_PARTYING RETURN 6
|
|
ELIF eOutfitType = MPSO_SPORT RETURN 6
|
|
ENDIF
|
|
ELSE
|
|
|
|
IF (eCurrentHair >= HAIR_FMF_15_0 AND eCurrentHair <= HAIR_FMF_15_6)
|
|
// glasses blocked with this hairstyle as they clip
|
|
CPRINTLN(DEBUG_PED_COMP, "Blocking glasses as player's hair would clip.")
|
|
RETURN 0
|
|
ENDIF
|
|
|
|
// female
|
|
IF eOutfitType = MPSO_CASUAL RETURN 5
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO RETURN 5
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK RETURN 6
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK RETURN 5
|
|
ELIF eOutfitType = MPSO_PARTYING RETURN 5
|
|
ELIF eOutfitType = MPSO_SPORT RETURN 7
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN 0 // should never reach here
|
|
ENDFUNC
|
|
|
|
|
|
FUNC PED_COMP_NAME_ENUM GET_GLASSES_OPTION_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, INT iOption)
|
|
|
|
PED_COMP_NAME_ENUM eEyeProp = DUMMY_PED_COMP
|
|
|
|
IF bIsMale = TRUE
|
|
// male
|
|
IF eOutfitType = MPSO_CASUAL
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_7_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_7_2 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_8_0 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_8_2 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_8_3 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_1_1 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_2_0 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_2_1 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_13_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_13_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_2_2 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_5_0 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_5_1 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_9_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_9_1 BREAK
|
|
CASE 5 eEyeProp = PROPS_FMM_GLASSES_9_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_4_1 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_4_2 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_5_2 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_10_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_10_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_PARTYING
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_3_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_5_2 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_7_3 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_12_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_12_1 BREAK
|
|
CASE 5 eEyeProp = PROPS_FMM_GLASSES_12_7 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_SPORT
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMM_GLASSES_9_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMM_GLASSES_9_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMM_GLASSES_9_2 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMM_GLASSES_15_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMM_GLASSES_15_1 BREAK
|
|
CASE 5 eEyeProp = PROPS_FMM_GLASSES_15_2 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ELSE
|
|
// female
|
|
IF eOutfitType = MPSO_CASUAL
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_1_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_1_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_2_0 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_4_1 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_4_5 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_COUCH_POTATO
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_0_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_0_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_7_0 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_7_1 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_8_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_ILLEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_6_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_10_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_10_5 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_11_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_11_1 BREAK
|
|
CASE 5 eEyeProp = PROPS_FMF_GLASSES_11_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_LEGAL_WORK
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_1_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_1_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_4_5 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_14_0 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_14_1 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_PARTYING
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_1_2 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_3_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_3_2 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_3_5 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_6_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF eOutfitType = MPSO_SPORT
|
|
SWITCH iOption
|
|
CASE 0 eEyeProp = PROPS_FMF_GLASSES_0_0 BREAK
|
|
CASE 1 eEyeProp = PROPS_FMF_GLASSES_0_1 BREAK
|
|
CASE 2 eEyeProp = PROPS_FMF_GLASSES_0_2 BREAK
|
|
CASE 3 eEyeProp = PROPS_FMF_GLASSES_0_3 BREAK
|
|
CASE 4 eEyeProp = PROPS_FMF_GLASSES_9_0 BREAK
|
|
CASE 5 eEyeProp = PROPS_FMF_GLASSES_9_1 BREAK
|
|
CASE 6 eEyeProp = PROPS_FMF_GLASSES_9_2 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF eEyeProp = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_GLASSES_OPTION_FOR_SPAWN_OUTFIT returning dummy. bIsMale= ", bIsMale, " eOutfitType = ", eOutfitType, " iOption= ", iOption)
|
|
ENDIF
|
|
|
|
RETURN eEyeProp
|
|
ENDFUNC
|
|
|
|
FUNC PED_COMP_NAME_ENUM GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(BOOL bIsMale, MP_SPAWN_OUTFIT_TYPE eOutfitType, PED_COMP_NAME_ENUM eCurrentHair = DUMMY_PED_COMP)
|
|
|
|
INT iNumOfOptions = GET_NUM_OF_GLASSES_OPTIONS_FOR_SPAWN_OUTFIT(bIsMale, eOutfitType, eCurrentHair)
|
|
IF iNumOfOptions > 0
|
|
INT iRandomItem = GET_RANDOM_INT_IN_RANGE(0, iNumOfOptions)
|
|
RETURN GET_GLASSES_OPTION_FOR_SPAWN_OUTFIT(bIsMale, eOutfitType, iRandomItem)
|
|
ENDIF
|
|
|
|
RETURN PROPS_EYES_NONE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Puts the ped in their MP spawn outfit (X:\depot\gta5\art\peds\Multiplayer\DOCs)
|
|
/// PARAMS:
|
|
/// mPed - the ped we are using.
|
|
/// eOutfitType - casual, couch potato, illegal work etc.
|
|
/// bUseCrewTshirt- if true we ignore the uppers from the spawn outfit and use the crew tshirt instead
|
|
/// bDoDecals - are we also equipping the tshirt decals for this character?
|
|
PROC SETUP_MP_SPAWN_OUTFIT_MALE(PED_INDEX mPed, MP_SPAWN_OUTFIT_TYPE eOutfitType, BOOL bUseCrewTshirt = FALSE, BOOL bJustFillStats = FALSE, BOOL bDoDecals = TRUE, INT iOutfit = -1)
|
|
INT iRandomItem
|
|
PED_COMP_NAME_ENUM eTorsoItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eSpecialItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eLegsItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eJbibItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eFeetItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eTeefItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eBerdItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eSpecial2Item = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eHeadProp = PROPS_HEAD_NONE
|
|
PED_COMP_NAME_ENUM eEyeProp = PROPS_EYES_NONE
|
|
BOOL bGiveHat = FALSE
|
|
BOOL bGiveGlasses = FALSE
|
|
|
|
#IF IS_DEBUG_BUILD STRING sOutfitType #ENDIF
|
|
|
|
IF IS_PED_INJURED(mPed)
|
|
AND bJustFillStats = FALSE
|
|
EXIT
|
|
ENDIF
|
|
|
|
// if using crew tshirt set the jbib, special, torso and teeth items
|
|
IF bUseCrewTshirt = TRUE
|
|
eJbibItem = JBIB_FMM_0_0
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
ENDIF
|
|
|
|
// set whether we're going to have accessories
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 39 //(60% chance)
|
|
// // will give a hat
|
|
// bGiveHat = TRUE
|
|
//
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 74 // (25% chance)
|
|
// bGiveGlasses = TRUE // will give glasses
|
|
// ELSE
|
|
// eEyeProp = PROPS_EYES_NONE // no glasses
|
|
// ENDIF
|
|
// ELSE
|
|
// // no hat
|
|
// eHeadProp = PROPS_HEAD_NONE
|
|
//
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 39 //(60% chance)
|
|
// bGiveGlasses = TRUE // will give glasses
|
|
// ELSE
|
|
// eEyeProp = PROPS_EYES_NONE // no glasses
|
|
// ENDIF
|
|
// ENDIF
|
|
// this gives us the following percentages:
|
|
// Hat 60%
|
|
// Glasses 39%
|
|
// Both 15%
|
|
// Neither 16%
|
|
// Only Hat 45%
|
|
// Only Glasses 24%
|
|
CPRINTLN(DEBUG_PED_COMP, "Male spawn outfits: bGiveHat = ", bGiveHat, " bGiveGlasses = ", bGiveGlasses)
|
|
|
|
SWITCH eOutfitType
|
|
|
|
CASE MPSO_CASUAL
|
|
//--------------- CASUAL-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Casual" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Torso
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
|
|
// special
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
|
|
// Jbib
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 11)
|
|
ENDIF
|
|
SWITCH iRandomItem
|
|
// jbib 0
|
|
CASE 0 eJbibItem = JBIB_FMM_0_1 BREAK
|
|
CASE 1 eJbibItem = JBIB_FMM_0_2 BREAK
|
|
CASE 2 eJbibItem = JBIB_FMM_0_3 BREAK
|
|
// jbib 1
|
|
CASE 3 eJbibItem = JBIB_FMM_1_0 BREAK
|
|
CASE 4 eJbibItem = JBIB_FMM_1_1 BREAK
|
|
CASE 5 eJbibItem = JBIB_FMM_1_5 BREAK
|
|
CASE 6 eJbibItem = JBIB_FMM_1_12 BREAK
|
|
// jbib 9
|
|
CASE 7 eJbibItem = JBIB_FMM_9_0 BREAK
|
|
CASE 8 eJbibItem = JBIB_FMM_9_1 BREAK
|
|
CASE 9 eJbibItem = JBIB_FMM_9_2 BREAK
|
|
CASE 10 eJbibItem = JBIB_FMM_9_11 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF
|
|
|
|
SWITCH iRandomItem
|
|
// legs 0
|
|
CASE 0 eLegsItem = LEGS_FMM_0_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMM_0_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_0_2 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMM_0_3 BREAK
|
|
|
|
// legs 1
|
|
CASE 4 eLegsItem = LEGS_FMM_1_0 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMM_1_1 BREAK
|
|
CASE 6 eLegsItem = LEGS_FMM_1_2 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMM_1_3 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
ENDIF
|
|
|
|
SWITCH iRandomItem
|
|
// feet 0
|
|
CASE 0 eFeetItem = FEET_FMM_0_10 BREAK
|
|
|
|
// feet 1
|
|
CASE 1 eFeetItem = FEET_FMM_1_0 BREAK
|
|
CASE 2 eFeetItem = FEET_FMM_1_1 BREAK
|
|
CASE 3 eFeetItem = FEET_FMM_1_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// Others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_COUCH_POTATO
|
|
//--------------- COUCH POTATO-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Couch Potato" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF
|
|
SWITCH iRandomItem
|
|
// jbib 5
|
|
CASE 0
|
|
eJbibItem = JBIB_FMM_5_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMM_5_1
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMM_5_2
|
|
BREAK
|
|
// jbib 3
|
|
CASE 3
|
|
eJbibItem = JBIB_FMM_3_0
|
|
BREAK
|
|
CASE 4
|
|
eJbibItem = JBIB_FMM_3_1
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMM_3_2
|
|
BREAK
|
|
CASE 6
|
|
eJbibItem = JBIB_FMM_3_4
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMM_5_0 AND eJbibItem <= JBIB_FMM_5_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_3_0 AND eJbibItem <= JBIB_FMM_3_15)
|
|
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF
|
|
SWITCH iRandomItem
|
|
// special 1
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_1_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_1_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_1_3 BREAK
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_1_5 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMM_1_12 BREAK
|
|
// special 5
|
|
CASE 5 eSpecialItem = SPECIAL_FMM_5_0 BREAK
|
|
CASE 6 eSpecialItem = SPECIAL_FMM_5_1 BREAK
|
|
CASE 7 eSpecialItem = SPECIAL_FMM_5_2 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Torso
|
|
IF eSpecialItem = SPECIAL_FMM_15_0
|
|
eTorsoItem = TORSO_FMM_5_0
|
|
|
|
ELIF (eSpecialItem >= SPECIAL_FMM_1_0 AND eSpecialItem <= SPECIAL_FMM_1_15)
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
|
|
ELIF (eSpecialItem >= SPECIAL_FMM_5_0 AND eSpecialItem <= SPECIAL_FMM_5_15)
|
|
eTorsoItem = TORSO_FMM_6_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF
|
|
SWITCH iRandomItem
|
|
// legs 5
|
|
CASE 0 eLegsItem = LEGS_FMM_5_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMM_5_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_5_2 BREAK
|
|
|
|
// legs 6
|
|
CASE 3 eLegsItem = LEGS_FMM_6_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMM_6_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMM_6_2 BREAK
|
|
|
|
// legs 12
|
|
CASE 6 eLegsItem = LEGS_FMM_12_0 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMM_12_5 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMM_12_7 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
CASE 0 eFeetItem = FEET_FMM_5_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMM_5_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMM_5_2 BREAK
|
|
CASE 3 eFeetItem = FEET_FMM_6_0 BREAK
|
|
CASE 4 eFeetItem = FEET_FMM_6_1 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_ILLEGAL_WORK
|
|
//--------------- ILLEGAL WORK-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Illegal work" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib + Torso
|
|
|
|
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
SWITCH iRandomItem
|
|
// jbib 7
|
|
CASE 0 eJbibItem = JBIB_FMM_7_0 BREAK
|
|
CASE 1 eJbibItem = JBIB_FMM_7_1 BREAK
|
|
CASE 2 eJbibItem = JBIB_FMM_7_2 BREAK
|
|
|
|
// jbib 0
|
|
CASE 3 eJbibItem = JBIB_FMM_0_2 BREAK
|
|
|
|
// jbib 1
|
|
CASE 4 eJbibItem = JBIB_FMM_1_0 BREAK
|
|
|
|
// jbib 5
|
|
CASE 5 eJbibItem = JBIB_FMM_5_0 BREAK
|
|
CASE 6 eJbibItem = JBIB_FMM_5_1 BREAK
|
|
CASE 7 eJbibItem = JBIB_FMM_5_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// special + torso
|
|
IF (eJbibItem >= JBIB_FMM_7_0 AND eJbibItem <= JBIB_FMM_7_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
SWITCH iRandomItem
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_0_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_0_2 BREAK
|
|
ENDSWITCH
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_0_0 AND eJbibItem <= JBIB_FMM_0_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_1_0 AND eJbibItem <= JBIB_FMM_1_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_5_0 AND eJbibItem <= JBIB_FMM_5_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
eTorsoItem = TORSO_FMM_5_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
SWITCH iRandomItem
|
|
// legs 7
|
|
CASE 0 eLegsItem = LEGS_FMM_7_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMM_7_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_7_2 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMM_7_3 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMM_7_4 BREAK
|
|
|
|
// legs 15
|
|
CASE 5 eLegsItem = LEGS_FMM_15_0 BREAK
|
|
CASE 6 eLegsItem = LEGS_FMM_15_1 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMM_15_2 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMM_15_3 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// feet 7
|
|
CASE 0 eFeetItem = FEET_FMM_7_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMM_7_1 BREAK
|
|
|
|
// feet 8
|
|
CASE 2 eFeetItem = FEET_FMM_8_0 BREAK
|
|
|
|
// feet 12
|
|
CASE 3 eFeetItem = FEET_FMM_12_0 BREAK
|
|
CASE 4 eFeetItem = FEET_FMM_12_7 BREAK
|
|
CASE 5 eFeetItem = FEET_FMM_12_12 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_LEGAL_WORK
|
|
//--------------- LEGAL WORK-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Legal Work" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Torso, Jbib, Special
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
|
|
SWITCH iRandomItem
|
|
|
|
// jbib 10 (suit- do matching pants)
|
|
CASE 0
|
|
eJbibItem = JBIB_FMM_10_0
|
|
eLegsItem = LEGS_FMM_10_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMM_10_1
|
|
eLegsItem = LEGS_FMM_10_1
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMM_10_2
|
|
eLegsItem = LEGS_FMM_10_2
|
|
BREAK
|
|
|
|
// jbib 4 (suit- do matching pants)
|
|
CASE 3
|
|
eJbibItem = JBIB_FMM_4_0
|
|
eLegsItem = LEGS_FMM_10_0
|
|
BREAK
|
|
|
|
// jbib 13
|
|
CASE 4 eJbibItem = JBIB_FMM_13_0 BREAK
|
|
CASE 5 eJbibItem = JBIB_FMM_13_1 BREAK
|
|
CASE 6 eJbibItem = JBIB_FMM_13_2 BREAK
|
|
CASE 7 eJbibItem = JBIB_FMM_13_3 BREAK
|
|
ENDSWITCH
|
|
|
|
// special + torso
|
|
IF (eJbibItem >= JBIB_FMM_10_0 AND eJbibItem <= JBIB_FMM_10_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF//GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
|
|
// special 13
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_13_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_13_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_13_2 BREAK
|
|
|
|
// special 4
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_4_0 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMM_4_1 BREAK
|
|
|
|
ENDSWITCH
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15)
|
|
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
|
|
// special 13
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_13_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_13_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_13_2 BREAK
|
|
|
|
// special 3
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_3_0 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMM_3_1 BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
eTorsoItem = TORSO_FMM_11_0
|
|
ENDIF
|
|
|
|
// Teeth (Ties)
|
|
IF (eJbibItem >= JBIB_FMM_13_0 AND eJbibItem <= JBIB_FMM_13_15)
|
|
OR (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15)
|
|
// use normal / skinny tie
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
SWITCH iRandomItem
|
|
CASE 0 eTeefItem = TEETH_FMM_10_1 BREAK
|
|
CASE 1 eTeefItem = TEETH_FMM_10_2 BREAK
|
|
CASE 2 eTeefItem = TEETH_FMM_12_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eSpecialItem >= SPECIAL_FMM_4_0 AND eSpecialItem <= SPECIAL_FMM_4_15)
|
|
// use bow tie
|
|
eTeefItem = TEETH_FMM_11_2
|
|
bGiveHat = FALSE
|
|
eHeadProp = PROPS_HEAD_NONE
|
|
CPRINTLN(DEBUG_PED_COMP, "No hats allowed with bow ties.")
|
|
ELSE
|
|
// no tie
|
|
eTeefItem = TEETH_FMM_0_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF (eJbibItem >= JBIB_FMM_10_0 AND eJbibItem <= JBIB_FMM_10_15)
|
|
OR (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15)
|
|
// wearing a suit jacket- already set the legs item to match suit
|
|
ELSE
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
CASE 0 eLegsItem = LEGS_FMM_10_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMM_10_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_10_2 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMM_13_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMM_13_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMM_13_2 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
// feet 10
|
|
CASE 0 eFeetItem = FEET_FMM_10_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMM_10_12 BREAK
|
|
|
|
// feet 11
|
|
CASE 2 eFeetItem = FEET_FMM_11_12 BREAK
|
|
CASE 3 eFeetItem = FEET_FMM_11_14 BREAK
|
|
CASE 4 eFeetItem = FEET_FMM_11_15 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
IF (eJbibItem >= JBIB_FMM_10_0 AND eJbibItem <= JBIB_FMM_10_15)
|
|
OR (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <= JBIB_FMM_4_15)
|
|
// hats only allowed with full suits
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ELSE
|
|
// no hat if not suit- limit allowed hats
|
|
eHeadProp = PROPS_HEAD_NONE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_PARTYING
|
|
//--------------- PARTYING-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Partying" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Torso, Jbib
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
SWITCH iRandomItem
|
|
// jbib 4
|
|
CASE 0
|
|
eJbibItem = JBIB_FMM_4_0
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMM_4_2
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMM_4_3
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
// jbib 12
|
|
CASE 3
|
|
eJbibItem = JBIB_FMM_12_0
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 4
|
|
eJbibItem = JBIB_FMM_12_1
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMM_12_2
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 6
|
|
eJbibItem = JBIB_FMM_12_4
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
// jbib 11
|
|
CASE 7
|
|
eJbibItem = JBIB_FMM_11_0
|
|
eTorsoItem = TORSO_FMM_11_0
|
|
BREAK
|
|
CASE 8
|
|
eJbibItem = JBIB_FMM_11_1
|
|
eTorsoItem = TORSO_FMM_11_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMM_4_0 AND eJbibItem <=JBIB_FMM_4_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
SWITCH iRandomItem
|
|
// special 0
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_0_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_0_2 BREAK
|
|
|
|
// special 12
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_12_0 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMM_12_1 BREAK
|
|
CASE 5 eSpecialItem = SPECIAL_FMM_12_2 BREAK
|
|
CASE 6 eSpecialItem = SPECIAL_FMM_12_4 BREAK
|
|
|
|
// special 13
|
|
CASE 7 eSpecialItem = SPECIAL_FMM_13_0 BREAK
|
|
CASE 8 eSpecialItem = SPECIAL_FMM_13_1 BREAK
|
|
CASE 9 eSpecialItem = SPECIAL_FMM_13_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_12_0 AND eJbibItem <=JBIB_FMM_12_15)
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMM_11_0 AND eJbibItem <=JBIB_FMM_11_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_7_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_7_2 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_7_3 BREAK
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_7_4 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMM_7_5 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF (eSpecialItem >= SPECIAL_FMM_13_0 AND eSpecialItem <= SPECIAL_FMM_13_15)
|
|
// don't allow jeans with tucked in shirts
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
ELSE
|
|
// other specials work with any of the pants
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF
|
|
|
|
SWITCH iRandomItem
|
|
// legs 10
|
|
CASE 0 eLegsItem = LEGS_FMM_10_0 BREAK
|
|
|
|
// legs 8
|
|
CASE 1 eLegsItem = LEGS_FMM_8_0 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_8_4 BREAK
|
|
|
|
// legs 4
|
|
CASE 3 eLegsItem = LEGS_FMM_4_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMM_4_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMM_4_2 BREAK
|
|
|
|
// legs 0
|
|
CASE 6 eLegsItem = LEGS_FMM_0_0 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMM_0_1 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMM_0_2 BREAK
|
|
|
|
// legs 1
|
|
CASE 9 eLegsItem = LEGS_FMM_1_0 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF (eLegsItem >= LEGS_FMM_4_0 AND eLegsItem <= LEGS_FMM_4_15)
|
|
// can't use some feet with these legs so limit options
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
ELSE
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF
|
|
|
|
SWITCH iRandomItem
|
|
// feet 4
|
|
CASE 0 eFeetItem = FEET_FMM_4_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMM_4_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMM_4_2 BREAK
|
|
|
|
// feet 0
|
|
CASE 3 eFeetItem = FEET_FMM_0_10 BREAK
|
|
|
|
// feet 15
|
|
CASE 4 eFeetItem = FEET_FMM_15_0 BREAK
|
|
CASE 5 eFeetItem = FEET_FMM_15_1 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
|
|
IF (eEyeProp >= PROPS_FMM_GLASSES_3_0 AND eEyeProp <= PROPS_FMM_GLASSES_3_7)
|
|
CPRINTLN(DEBUG_PED_COMP, "Blocking hat for janitor frame glasses- party outfit.")
|
|
bGiveHat = FALSE
|
|
eHeadProp = PROPS_HEAD_NONE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_SPORT
|
|
//--------------- SPORT-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Sport" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib + Torso
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
SWITCH iRandomItem
|
|
// jbib 7
|
|
CASE 0
|
|
eJbibItem = JBIB_FMM_7_2
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMM_7_3
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMM_7_4
|
|
eTorsoItem = TORSO_FMM_1_0
|
|
BREAK
|
|
|
|
// jbib 8
|
|
CASE 3
|
|
eJbibItem = JBIB_FMM_8_0
|
|
eTorsoItem = TORSO_FMM_8_0
|
|
BREAK
|
|
CASE 4
|
|
eJbibItem = JBIB_FMM_8_10
|
|
eTorsoItem = TORSO_FMM_8_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMM_8_14
|
|
eTorsoItem = TORSO_FMM_8_0
|
|
BREAK
|
|
|
|
// jbib 0
|
|
CASE 6
|
|
eJbibItem = JBIB_FMM_0_1
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
BREAK
|
|
CASE 7
|
|
eJbibItem = JBIB_FMM_0_8
|
|
eTorsoItem = TORSO_FMM_0_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMM_7_0 AND eJbibItem <= JBIB_FMM_7_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
SWITCH iRandomItem
|
|
// special 0
|
|
CASE 0 eSpecialItem = SPECIAL_FMM_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMM_0_1 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMM_0_8 BREAK
|
|
|
|
// special 1
|
|
CASE 3 eSpecialItem = SPECIAL_FMM_1_11 BREAK
|
|
|
|
ENDSWITCH
|
|
ELSE
|
|
eSpecialItem = SPECIAL_FMM_15_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
SWITCH iRandomItem
|
|
// legs 2
|
|
CASE 0 eLegsItem = LEGS_FMM_2_11 BREAK
|
|
|
|
// legs 3
|
|
CASE 1 eLegsItem = LEGS_FMM_3_0 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMM_3_1 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMM_3_4 BREAK
|
|
|
|
// legs 5
|
|
CASE 4 eLegsItem = LEGS_FMM_5_2 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMM_5_3 BREAK
|
|
CASE 6 eLegsItem = LEGS_FMM_5_4 BREAK
|
|
|
|
// legs 12
|
|
CASE 7 eLegsItem = LEGS_FMM_12_0 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// feet 2
|
|
CASE 0 eFeetItem = FEET_FMM_2_6 BREAK
|
|
CASE 1 eFeetItem = FEET_FMM_2_13 BREAK
|
|
|
|
// feet 9
|
|
CASE 2 eFeetItem = FEET_FMM_9_0 BREAK
|
|
CASE 3 eFeetItem = FEET_FMM_9_1 BREAK
|
|
CASE 4 eFeetItem = FEET_FMM_9_2 BREAK
|
|
CASE 5 eFeetItem = FEET_FMM_9_3 BREAK
|
|
CASE 6 eFeetItem = FEET_FMM_9_4 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(TRUE, eOutfitType)
|
|
IF (eHeadProp >= PROPS_FMM_HAT_10_0 AND eHeadProp <= PROPS_FMM_HAT_10_7)
|
|
// no glasses with this hat
|
|
eEyeProp = PROPS_HEAD_NONE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMM_0_0
|
|
eTeefItem = TEETH_FMM_0_0
|
|
eSpecial2Item = SPECIAL2_FMM_0_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// check for errors
|
|
IF eTorsoItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy torso")
|
|
ENDIF
|
|
IF eSpecialItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy special")
|
|
ENDIF
|
|
IF eJbibItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy jbib")
|
|
ENDIF
|
|
IF eLegsItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eLegsItem")
|
|
ENDIF
|
|
IF eFeetItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eFeetItem")
|
|
ENDIF
|
|
IF eBerdItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eBerdItem")
|
|
ENDIF
|
|
IF eTeefItem = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eTeefItem")
|
|
ENDIF
|
|
IF eSpecial2Item = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eSpecial2Item")
|
|
ENDIF
|
|
IF eHeadProp = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eHeadProp")
|
|
ENDIF
|
|
IF eEyeProp = DUMMY_PED_COMP
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eEyeProp")
|
|
ENDIF
|
|
|
|
// set as an outfit so we don't get the rules messing up the jbib / special / torso
|
|
FILL_PED_COMPONENT_OUTFIT_DATA(g_sTempOutfitData, DUMMY_PED_COMP, DUMMY_PED_COMP, eTorsoItem, eLegsItem, eFeetItem, DUMMY_PED_COMP, eSpecialItem, eSpecial2Item, DUMMY_PED_COMP, eBerdItem, eTeefItem, eJbibItem, PROPGROUP_NONE)
|
|
// build prop group
|
|
FILL_PED_COMPONENT_PROPS_DATA(g_sTempPropGroupData, eHeadProp, eEyeProp)
|
|
|
|
IF bJustFillStats = FALSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_OUTFIT, OUTFIT_DEFAULT, FALSE, -1, TRUE)
|
|
ELSE
|
|
|
|
ENDIF
|
|
|
|
// update tattoos so we get the torso decals
|
|
IF bDoDecals = TRUE
|
|
EQUIP_TORSO_DECALS_MP(mPed, COMP_TYPE_JBIB, eJbibItem, FALSE)
|
|
UPDATE_TATOOS_MP(mPed)
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD sOutfitType = sOutfitType #ENDIF
|
|
/*
|
|
#IF IS_DEBUG_BUILD
|
|
CPRINTLN(DEBUG_PED_COMP, "-------------MP Spawn Male:", sOutfitType, "------------------")
|
|
CPRINTLN(DEBUG_PED_COMP, "eJbibItem = ", eJbibItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, eJbibItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eTorsoItem = ", eTorsoItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_TORSO, eTorsoItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eSpecialItem = ", eSpecialItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, eSpecialItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eLegsItem = ", eLegsItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_LEGS, eLegsItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eFeetItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_FEET, eFeetItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eBerdItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_BERD, eBerdItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eTeefItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_TEETH, eTeefItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eSpecial2Item)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL2, eSpecial2Item)
|
|
CPRINTLN(DEBUG_PED_COMP, "-------------MP Spawn Male:", sOutfitType, " End------------------")
|
|
PRINT_CURRENT_PED_COMP_INFO_MP(mPed)
|
|
#ENDIF
|
|
*/
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Puts the ped in their MP spawn outfit. (X:\depot\gta5\art\peds\Multiplayer\DOCs)
|
|
/// PARAMS:
|
|
/// mPed - the ped we are using.
|
|
/// eOutfitType - casual, couch potato, illegal work etc.
|
|
/// bUseCrewTshirt- if true we ignore the uppers from the spawn outfit and use the crew tshirt instead
|
|
/// bDoDecals - are we also equipping the tshirt decals for this character?
|
|
PROC SETUP_MP_SPAWN_OUTFIT_FEMALE(PED_INDEX mPed, MP_SPAWN_OUTFIT_TYPE eOutfitType, BOOL bUseCrewTshirt = FALSE, BOOL bDoDecals = TRUE, INT iOutfit = -1)
|
|
|
|
INT iRandomItem, iRandomLegs
|
|
PED_COMP_NAME_ENUM eTorsoItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eSpecialItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eLegsItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eJbibItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eFeetItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eTeefItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eBerdItem = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eSpecial2Item = DUMMY_PED_COMP
|
|
PED_COMP_NAME_ENUM eHeadProp = PROPS_HEAD_NONE
|
|
PED_COMP_NAME_ENUM eEyeProp = PROPS_EYES_NONE
|
|
|
|
PED_COMP_NAME_ENUM eCurrentHair = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_HAIR)
|
|
|
|
BOOL bGiveHat = FALSE
|
|
BOOL bGiveGlasses = FALSE
|
|
|
|
#IF IS_DEBUG_BUILD STRING sOutfitType #ENDIF
|
|
|
|
IF IS_PED_INJURED(mPed)
|
|
EXIT
|
|
ENDIF
|
|
|
|
// if using crew tshirt set the jbib, special, torso and teeth items
|
|
IF bUseCrewTshirt = TRUE
|
|
eJbibItem = JBIB_FMF_0_0
|
|
eTorsoItem = TORSO_FMF_0_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
ENDIF
|
|
|
|
// set whether we're going to have accessories
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 39 //(60% chance)
|
|
// // will give a hat
|
|
// bGiveHat = TRUE
|
|
//
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 74 // (25% chance)
|
|
// bGiveGlasses = TRUE // will give glasses
|
|
// ELSE
|
|
// eEyeProp = PROPS_EYES_NONE // no glasses
|
|
// ENDIF
|
|
// ELSE
|
|
// // no hat
|
|
// eHeadProp = PROPS_HEAD_NONE
|
|
//
|
|
// iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 100)
|
|
// IF iRandomItem > 39 //(60% chance)
|
|
// bGiveGlasses = TRUE // will give glasses
|
|
// ELSE
|
|
// eEyeProp = PROPS_EYES_NONE // no glasses
|
|
// ENDIF
|
|
// ENDIF
|
|
// this gives us the following percentages:
|
|
// Hat 60%
|
|
// Glasses 39%
|
|
// Both 15%
|
|
// Neither 16%
|
|
// Only Hat 45%
|
|
// Only Glasses 24%
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "Female spawn outfits: bGiveHat = ", bGiveHat, " bGiveGlasses = ", bGiveGlasses)
|
|
|
|
SWITCH eOutfitType
|
|
|
|
CASE MPSO_CASUAL
|
|
//--------------- CASUAL-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Casual" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib + Torso + Special
|
|
|
|
// block jbib 9 if player has pigtails- as they clip
|
|
IF (eCurrentHair >= HAIR_FMF_3_0 AND eCurrentHair <= HAIR_FMF_3_4)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
CPRINTLN(DEBUG_PED_COMP, "Blocking jbib 9 as player has pigtails")
|
|
ELSE
|
|
// other hair, allow all jbibs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF
|
|
|
|
SWITCH iRandomItem
|
|
// jbib 0
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_0_2
|
|
eTorsoItem = TORSO_FMF_0_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_0_5
|
|
eTorsoItem = TORSO_FMF_0_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_0_7
|
|
eTorsoItem = TORSO_FMF_0_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_0_11
|
|
eTorsoItem = TORSO_FMF_0_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
|
|
// jbib 14
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_14_2
|
|
eTorsoItem = TORSO_FMF_14_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_14_3
|
|
eTorsoItem = TORSO_FMF_14_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
|
|
// jbib 9
|
|
CASE 6
|
|
eJbibItem = JBIB_FMF_9_0
|
|
eTorsoItem = TORSO_FMF_9_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 7
|
|
eJbibItem = JBIB_FMF_9_2
|
|
eTorsoItem = TORSO_FMF_9_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 8
|
|
eJbibItem = JBIB_FMF_9_4
|
|
eTorsoItem = TORSO_FMF_9_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 9
|
|
eJbibItem = JBIB_FMF_9_8
|
|
eTorsoItem = TORSO_FMF_9_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// legs 0
|
|
CASE 0 eLegsItem = LEGS_FMF_0_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_0_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_0_2 BREAK
|
|
|
|
// legs 4
|
|
CASE 3 eLegsItem = LEGS_FMF_4_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_4_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_4_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// feet 1
|
|
CASE 0 eFeetItem = FEET_FMF_1_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMF_1_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_1_2 BREAK
|
|
|
|
// feet 5
|
|
CASE 3 eFeetItem = FEET_FMF_5_0 BREAK
|
|
CASE 4 eFeetItem = FEET_FMF_5_1 BREAK
|
|
|
|
// feet 13
|
|
CASE 5 eFeetItem = FEET_FMF_13_0 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_COUCH_POTATO
|
|
//--------------- COUCH POTATO-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Couch Potato" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib + Torso
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// jbib 2
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_2_0
|
|
eTorsoItem = TORSO_FMF_2_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_2_1
|
|
eTorsoItem = TORSO_FMF_2_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_2_2
|
|
eTorsoItem = TORSO_FMF_2_0
|
|
BREAK
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_2_12
|
|
eTorsoItem = TORSO_FMF_2_0
|
|
BREAK
|
|
|
|
// jbib 3
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_3_1
|
|
eTorsoItem = TORSO_FMF_3_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_3_4
|
|
eTorsoItem = TORSO_FMF_3_0
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
SWITCH iRandomItem
|
|
// legs 2
|
|
CASE 0 eLegsItem = LEGS_FMF_2_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_2_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_2_2 BREAK
|
|
|
|
// legs 3
|
|
CASE 3 eLegsItem = LEGS_FMF_3_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_3_2 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_3_14 BREAK
|
|
|
|
// legs 4
|
|
CASE 6 eLegsItem = LEGS_FMF_4_8 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMF_4_9 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
// Feet 2 can't be worn with legs 3, so only choose from feet 5 for them
|
|
IF (eLegsItem >=LEGS_FMF_3_0 AND eLegsItem <= LEGS_FMF_3_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 2)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 2)
|
|
ENDIF
|
|
SWITCH iRandomItem
|
|
CASE 0 eFeetItem = FEET_FMF_5_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMF_5_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_2_0 BREAK
|
|
CASE 3 eFeetItem = FEET_FMF_2_1 BREAK
|
|
CASE 4 eFeetItem = FEET_FMF_2_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_ILLEGAL_WORK
|
|
//--------------- ILLEGAL WORK-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Illegal Work" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Torso + Jbib
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// jbib 3
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_3_0
|
|
eTorsoItem = TORSO_FMF_3_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_3_1
|
|
eTorsoItem = TORSO_FMF_3_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_3_2
|
|
eTorsoItem = TORSO_FMF_3_0
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
BREAK
|
|
|
|
// jbib 5
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_5_0
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_5_1
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_5_7
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
|
|
// jbib 4
|
|
CASE 6
|
|
eJbibItem = JBIB_FMF_4_14
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
SWITCH iRandomItem
|
|
// legs 3
|
|
CASE 0 eLegsItem = LEGS_FMF_3_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_3_2 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_3_14 BREAK
|
|
|
|
// legs 1
|
|
CASE 3 eLegsItem = LEGS_FMF_1_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_1_2 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_1_6 BREAK
|
|
|
|
// legs 11
|
|
CASE 6 eLegsItem = LEGS_FMF_11_0 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMF_11_2 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMF_11_6 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// feet 3
|
|
CASE 0 eFeetItem = FEET_FMF_3_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMF_3_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_3_3 BREAK
|
|
|
|
// feet 4
|
|
CASE 3 eFeetItem = FEET_FMF_4_0 BREAK
|
|
CASE 4 eFeetItem = FEET_FMF_4_1 BREAK
|
|
CASE 5 eFeetItem = FEET_FMF_4_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_LEGAL_WORK
|
|
//--------------- LEGAL WORK-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Legal Work" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Jbib, Torso + Legs
|
|
|
|
// block jbib 9 if player has pigtails- as they clip
|
|
IF (eCurrentHair >= HAIR_FMF_3_0 AND eCurrentHair <= HAIR_FMF_3_4)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
CPRINTLN(DEBUG_PED_COMP, "Blocking jbib 9 as player has pigtails")
|
|
ELSE
|
|
// other hair, allow all jbibs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF
|
|
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 3)
|
|
SWITCH iRandomItem
|
|
// jbib 6
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_6_0
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_0
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_0
|
|
ELSE eLegsItem = LEGS_FMF_8_0
|
|
ENDIF
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_6_1
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_1
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_1
|
|
ELSE eLegsItem = LEGS_FMF_8_1
|
|
ENDIF
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_6_2
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_2
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_2
|
|
ELSE eLegsItem = LEGS_FMF_8_2
|
|
ENDIF
|
|
BREAK
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_6_4
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_0
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_0
|
|
ELSE eLegsItem = LEGS_FMF_8_0
|
|
ENDIF
|
|
BREAK
|
|
|
|
// jbib 7
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_7_0
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_0
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_0
|
|
ELSE eLegsItem = LEGS_FMF_8_0
|
|
ENDIF
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_7_1
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_2
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_2
|
|
ELSE eLegsItem = LEGS_FMF_8_2
|
|
ENDIF
|
|
BREAK
|
|
CASE 6
|
|
eJbibItem = JBIB_FMF_7_8
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
IF iRandomLegs = 0 eLegsItem = LEGS_FMF_6_1
|
|
ELIF iRandomLegs = 1 eLegsItem = LEGS_FMF_7_1
|
|
ELSE eLegsItem = LEGS_FMF_8_1
|
|
ENDIF
|
|
BREAK
|
|
|
|
// jbib 9
|
|
CASE 7
|
|
eJbibItem = JBIB_FMF_9_1
|
|
eTorsoItem = TORSO_FMF_9_0
|
|
|
|
// can use any of the legs with this top
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
SWITCH iRandomItem
|
|
CASE 0 eLegsItem = LEGS_FMF_6_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_6_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_6_2 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMF_7_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_7_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_7_2 BREAK
|
|
CASE 6 eLegsItem = LEGS_FMF_8_0 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMF_8_1 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMF_8_2 BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMF_6_0 AND eJbibItem <= JBIB_FMF_6_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 4)
|
|
SWITCH iRandomItem
|
|
// special 0
|
|
CASE 0 eSpecialItem = SPECIAL_FMF_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMF_0_10 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMF_0_11 BREAK
|
|
|
|
// special 13
|
|
CASE 3 eSpecialItem = SPECIAL_FMF_13_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eJbibItem >= JBIB_FMF_7_0 AND eJbibItem <= JBIB_FMF_7_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
// special 0
|
|
CASE 0 eSpecialItem = SPECIAL_FMF_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMF_0_10 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMF_0_11 BREAK
|
|
|
|
// special 13
|
|
CASE 3 eSpecialItem = SPECIAL_FMF_13_0 BREAK
|
|
|
|
// special 12
|
|
CASE 4 eSpecialItem = SPECIAL_FMF_12_9 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eJbibItem >= JBIB_FMF_9_0 AND eJbibItem <= JBIB_FMF_9_15)
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
ENDIF
|
|
|
|
ELSE
|
|
// using crew tshirt, pick random legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 9)
|
|
SWITCH iRandomItem
|
|
CASE 0 eLegsItem = LEGS_FMF_6_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_6_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_6_2 BREAK
|
|
CASE 3 eLegsItem = LEGS_FMF_7_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_7_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_7_2 BREAK
|
|
CASE 6 eLegsItem = LEGS_FMF_8_0 BREAK
|
|
CASE 7 eLegsItem = LEGS_FMF_8_1 BREAK
|
|
CASE 8 eLegsItem = LEGS_FMF_8_2 BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
ENDIF//GET_RANDOM_INT_IN_RANGE(0, 5)
|
|
SWITCH iRandomItem
|
|
// feet 6
|
|
CASE 0 eFeetItem = FEET_FMF_6_0 BREAK
|
|
|
|
// feet 0
|
|
CASE 1 eFeetItem = FEET_FMF_0_0 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_0_1 BREAK
|
|
CASE 3 eFeetItem = FEET_FMF_0_2 BREAK
|
|
CASE 4 eFeetItem = FEET_FMF_0_3 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_PARTYING
|
|
//--------------- PARTYING-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Partying" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
|
|
|
|
// Torso + Jbib
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 10)
|
|
SWITCH iRandomItem
|
|
//jbib 8
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_8_0
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_8_1
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_8_2
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
|
|
// jbib 1
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_1_0
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_1_2
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_1_14
|
|
eTorsoItem = TORSO_FMF_5_0
|
|
BREAK
|
|
|
|
// jbib 4
|
|
CASE 6
|
|
eJbibItem = JBIB_FMF_4_14
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
BREAK
|
|
|
|
// jbib 5
|
|
CASE 7
|
|
eJbibItem = JBIB_FMF_5_0
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
BREAK
|
|
CASE 8
|
|
eJbibItem = JBIB_FMF_5_1
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
BREAK
|
|
CASE 9
|
|
eJbibItem = JBIB_FMF_5_7
|
|
eTorsoItem = TORSO_FMF_4_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMF_8_0 AND eJbibItem <= JBIB_FMF_8_15)
|
|
OR (eJbibItem >= JBIB_FMF_1_0 AND eJbibItem <= JBIB_FMF_1_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// special 0
|
|
CASE 0 eSpecialItem = SPECIAL_FMF_0_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMF_0_2 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMF_0_11 BREAK
|
|
|
|
// special 5
|
|
CASE 3 eSpecialItem = SPECIAL_FMF_5_0 BREAK
|
|
CASE 4 eSpecialItem = SPECIAL_FMF_5_1 BREAK
|
|
CASE 5 eSpecialItem = SPECIAL_FMF_5_7 BREAK
|
|
|
|
// special 13
|
|
CASE 6 eSpecialItem = SPECIAL_FMF_13_0 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eJbibItem >= JBIB_FMF_4_0 AND eJbibItem <= JBIB_FMF_4_15)
|
|
OR (eJbibItem >= JBIB_FMF_5_0 AND eJbibItem <= JBIB_FMF_5_15)
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// legs 8
|
|
CASE 0 eLegsItem = LEGS_FMF_8_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_8_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_8_3 BREAK
|
|
|
|
// legs 9
|
|
CASE 3 eLegsItem = LEGS_FMF_9_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_9_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_9_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// feet 8
|
|
CASE 0 eFeetItem = FEET_FMF_8_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMF_8_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_8_3 BREAK
|
|
|
|
// feet 0
|
|
CASE 3 eFeetItem = FEET_FMF_0_0 BREAK
|
|
CASE 4 eFeetItem = FEET_FMF_0_1 BREAK
|
|
|
|
// feet 14
|
|
CASE 5 eFeetItem = FEET_FMF_14_0 BREAK
|
|
|
|
// feet 15
|
|
CASE 6 eFeetItem = FEET_FMF_15_0 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
|
|
CASE MPSO_SPORT
|
|
//--------------- SPORT-------------------
|
|
#IF IS_DEBUG_BUILD sOutfitType = "Sport" #ENDIF
|
|
|
|
IF bUseCrewTshirt = FALSE
|
|
// Torso + Jbib + Special
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 8)
|
|
SWITCH iRandomItem
|
|
// jbib 10
|
|
CASE 0
|
|
eJbibItem = JBIB_FMF_10_0
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
BREAK
|
|
CASE 1
|
|
eJbibItem = JBIB_FMF_10_1
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
BREAK
|
|
CASE 2
|
|
eJbibItem = JBIB_FMF_10_2
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
BREAK
|
|
CASE 3
|
|
eJbibItem = JBIB_FMF_10_11
|
|
eTorsoItem = TORSO_FMF_6_0
|
|
BREAK
|
|
|
|
// jbib 11
|
|
CASE 4
|
|
eJbibItem = JBIB_FMF_11_0
|
|
eTorsoItem = TORSO_FMF_11_0
|
|
BREAK
|
|
CASE 5
|
|
eJbibItem = JBIB_FMF_11_1
|
|
eTorsoItem = TORSO_FMF_11_0
|
|
BREAK
|
|
CASE 6
|
|
eJbibItem = JBIB_FMF_11_2
|
|
eTorsoItem = TORSO_FMF_11_0
|
|
BREAK
|
|
|
|
// jbib 14
|
|
CASE 7
|
|
eJbibItem = JBIB_FMF_14_5
|
|
eTorsoItem = TORSO_FMF_14_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Special
|
|
IF (eJbibItem >= JBIB_FMF_10_0 AND eJbibItem <= JBIB_FMF_10_15)
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// special 1
|
|
CASE 0 eSpecialItem = SPECIAL_FMF_1_0 BREAK
|
|
CASE 1 eSpecialItem = SPECIAL_FMF_1_2 BREAK
|
|
CASE 2 eSpecialItem = SPECIAL_FMF_1_5 BREAK
|
|
CASE 3 eSpecialItem = SPECIAL_FMF_1_11 BREAK
|
|
|
|
// special 11
|
|
CASE 4 eSpecialItem = SPECIAL_FMF_11_0 BREAK
|
|
CASE 5 eSpecialItem = SPECIAL_FMF_11_1 BREAK
|
|
CASE 6 eSpecialItem = SPECIAL_FMF_11_2 BREAK
|
|
ENDSWITCH
|
|
|
|
ELIF (eJbibItem >= JBIB_FMF_11_0 AND eJbibItem <= JBIB_FMF_11_15)
|
|
eSpecialItem = SPECIAL_FMF_2_0
|
|
|
|
ELIF (eJbibItem >= JBIB_FMF_14_0 AND eJbibItem <= JBIB_FMF_14_15)
|
|
eSpecialItem = SPECIAL_FMF_3_0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 6)
|
|
SWITCH iRandomItem
|
|
// legs 10
|
|
CASE 0 eLegsItem = LEGS_FMF_10_0 BREAK
|
|
CASE 1 eLegsItem = LEGS_FMF_10_1 BREAK
|
|
CASE 2 eLegsItem = LEGS_FMF_10_2 BREAK
|
|
|
|
// legs 2
|
|
CASE 3 eLegsItem = LEGS_FMF_2_0 BREAK
|
|
CASE 4 eLegsItem = LEGS_FMF_2_1 BREAK
|
|
CASE 5 eLegsItem = LEGS_FMF_2_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// Feet
|
|
IF iOutfit != -1
|
|
iRandomItem = iOutfit
|
|
ELSE
|
|
iRandomItem = GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
ENDIF //GET_RANDOM_INT_IN_RANGE(0, 7)
|
|
SWITCH iRandomItem
|
|
// feet 10
|
|
CASE 0 eFeetItem = FEET_FMF_10_0 BREAK
|
|
CASE 1 eFeetItem = FEET_FMF_10_1 BREAK
|
|
CASE 2 eFeetItem = FEET_FMF_10_2 BREAK
|
|
|
|
// feet 11
|
|
CASE 3 eFeetItem = FEET_FMF_11_0 BREAK
|
|
|
|
// feet 4
|
|
CASE 4 eFeetItem = FEET_FMF_4_0 BREAK
|
|
CASE 5 eFeetItem = FEET_FMF_4_1 BREAK
|
|
CASE 6 eFeetItem = FEET_FMF_4_2 BREAK
|
|
ENDSWITCH
|
|
|
|
// eye prop
|
|
IF bGiveGlasses = TRUE
|
|
eEyeProp = GET_RANDOM_GLASSES_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// head prop
|
|
IF bGiveHat = TRUE
|
|
eHeadProp = GET_RANDOM_HAT_FOR_SPAWN_OUTFIT(FALSE, eOutfitType, eCurrentHair)
|
|
ENDIF
|
|
|
|
// others
|
|
eBerdItem = BERD_FMF_0_0
|
|
eTeefItem = TEETH_FMF_0_0
|
|
eSpecial2Item = SPECIAL2_FMF_0_0
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// check for errors
|
|
IF eTorsoItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy torso")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy torso")
|
|
ENDIF
|
|
IF eSpecialItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy special")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy special")
|
|
ENDIF
|
|
IF eJbibItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy jbib")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy jbib")
|
|
ENDIF
|
|
IF eLegsItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eLegsItem")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eLegsItem")
|
|
ENDIF
|
|
IF eFeetItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eFeetItem")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eFeetItem")
|
|
ENDIF
|
|
IF eBerdItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eBerdItem")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eBerdItem")
|
|
ENDIF
|
|
IF eTeefItem = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eTeefItem")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eTeefItem")
|
|
ENDIF
|
|
IF eSpecial2Item = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eSpecial2Item")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eSpecial2Item")
|
|
ENDIF
|
|
IF eHeadProp = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eHeadProp")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eHeadProp")
|
|
ENDIF
|
|
IF eEyeProp = DUMMY_PED_COMP
|
|
CPRINTLN(DEBUG_PED_COMP, "MP spawn outfits: Dummy eEyeProp")
|
|
SCRIPT_ASSERT("MP spawn outfits: Dummy eEyeProp")
|
|
ENDIF
|
|
|
|
// set as an outfit so we don't get the rules messing up the jbib / special / torso
|
|
FILL_PED_COMPONENT_OUTFIT_DATA(g_sTempOutfitData, DUMMY_PED_COMP, DUMMY_PED_COMP, eTorsoItem, eLegsItem, eFeetItem, DUMMY_PED_COMP, eSpecialItem, eSpecial2Item, DUMMY_PED_COMP, eBerdItem, eTeefItem, eJbibItem, PROPGROUP_NONE)
|
|
// build prop group
|
|
FILL_PED_COMPONENT_PROPS_DATA(g_sTempPropGroupData, eHeadProp, eEyeProp)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(mPed, COMP_TYPE_OUTFIT, OUTFIT_DEFAULT, FALSE, -1, TRUE)
|
|
|
|
// update tattoos so we get the torso decals
|
|
IF bDoDecals = TRUE
|
|
EQUIP_TORSO_DECALS_MP(mPed, COMP_TYPE_JBIB, eJbibItem, FALSE)
|
|
UPDATE_TATOOS_MP(mPed)
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sOutfitType = sOutfitType
|
|
CPRINTLN(DEBUG_PED_COMP, "MP Spawn Female:", sOutfitType)
|
|
#ENDIF
|
|
/*
|
|
#IF IS_DEBUG_BUILD
|
|
CPRINTLN(DEBUG_PED_COMP, "-------------MP Spawn Female:", sOutfitType, "------------------")
|
|
CPRINTLN(DEBUG_PED_COMP, "eJbibItem = ", eJbibItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, eJbibItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eTorsoItem = ", eTorsoItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_TORSO, eTorsoItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eSpecialItem = ", eSpecialItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, eSpecialItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eLegsItem = ", eLegsItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_LEGS, eLegsItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eFeetItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_FEET, eFeetItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eBerdItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_BERD, eBerdItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eTeefItem)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_TEETH, eTeefItem)
|
|
CPRINTLN(DEBUG_PED_COMP, "eFeetItem = ", eSpecial2Item)
|
|
PRINT_PED_COMP_ITEM_NAME_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL2, eSpecial2Item)
|
|
CPRINTLN(DEBUG_PED_COMP, "-------------MP Spawn Female:", sOutfitType, " End------------------")
|
|
PRINT_CURRENT_PED_COMP_INFO_MP(mPed)
|
|
#ENDIF
|
|
*/
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Checks if this ped is wearing high heels
|
|
/// PARAMS:
|
|
/// mPed - the ped we are checking
|
|
/// RETURNS:
|
|
/// TRUE if the ped is wearing high heels, FALSE otherwise
|
|
FUNC BOOL IS_PED_WEARING_HIGH_HEELS(PED_INDEX mPed)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(mPed)
|
|
PED_COMP_NAME_ENUM eItem
|
|
INT iDLCFeetNameHash = -1
|
|
INT iDLCFeetCheck = -1
|
|
|
|
IF ePedModel = MP_F_FREEMODE_01
|
|
eItem = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(mPed, COMP_TYPE_FEET)
|
|
IF eItem >= FEET_FMF_DLC
|
|
iDLCFeetNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(ePedModel, eItem, COMP_TYPE_FEET, 4)
|
|
iDLCFeetCheck = GET_DLC_DRAW_TAG(iDLCFeetNameHash)
|
|
ENDIF
|
|
|
|
IF (eItem >= FEET_FMF_0_0 AND eItem <= FEET_FMF_0_15)
|
|
OR (eItem >= FEET_FMF_6_0 AND eItem <= FEET_FMF_6_15)
|
|
OR (eItem >= FEET_FMF_7_0 AND eItem <= FEET_FMF_7_15)
|
|
OR (eItem >= FEET_FMF_8_0 AND eItem <= FEET_FMF_8_15)
|
|
OR (eItem >= FEET_FMF_12_0 AND eItem <= FEET_FMF_12_15)
|
|
OR (eItem >= FEET_FMF_14_0 AND eItem <= FEET_FMF_14_15)
|
|
OR (iDLCFeetCheck = 0)
|
|
OR (iDLCFeetCheck = 6)
|
|
OR (iDLCFeetCheck = 7)
|
|
OR (iDLCFeetCheck = 8)
|
|
OR (iDLCFeetCheck = 12)
|
|
OR (iDLCFeetCheck = 14)
|
|
|
|
#IF USE_TU_CHANGES
|
|
OR (iDLCFeetNameHash != -1 AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCFeetNameHash, DLC_RESTRICTION_TAG_HIGH_HEELS, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
#ENDIF
|
|
RETURN TRUE // ped is wearing high heels
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE // not wearing high heels
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_UPPERS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(JBIB_FMM_15_0)+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(JBIB_FMF_15_15)+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_LOWERS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(LEGS_FMM_15_15)+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(LEGS_FMF_15_15)+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_SHOES(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(FEET_FMM_15_15)+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(FEET_FMF_15_15)+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_HAIRDOS(BOOL bMale)
|
|
IF bMale //TODO Set this up to return correct values when we get command to check if the dlc is installed
|
|
RETURN ((ENUM_TO_INT(HAIR_FMM_15_5)+1) - 5) - 10 //5 are only used in the character creator & aren't in the shop, 10 are DLC.
|
|
ELSE
|
|
RETURN ((ENUM_TO_INT(HAIR_FMF_15_6)+1) - 5) - 11 //5 are only used in the character creator & aren't in the shop, 11 are DLC.
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_MAKEUP(BOOL bMale) //TODO Set this up when we get command to check if sports fanatic dlc is installed
|
|
IF bMale
|
|
RETURN 32
|
|
ELSE
|
|
RETURN 32
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_MASKS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(BERD_FMM_7_3)+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(BERD_FMF_7_3)+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_HATS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(PROPS_FMM_HAT_15_7)-(ENUM_TO_INT(PROPS_FMM_HAT_2_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(PROPS_FMF_HAT_15_7)-(ENUM_TO_INT(PROPS_FMF_HAT_2_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_GLASSES(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(PROPS_FMM_GLASSES_15_10)-(ENUM_TO_INT(PROPS_FMM_GLASSES_0_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(PROPS_FMF_GLASSES_15_7)-(ENUM_TO_INT(PROPS_FMF_GLASSES_0_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_HELMETS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(PROPS_FMM_HELMET_18_7)-(ENUM_TO_INT(PROPS_FMM_HELMET_16_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(PROPS_FMF_HELMET_18_7)-(ENUM_TO_INT(PROPS_FMF_HELMET_16_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_EARDEFENDERS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(PROPS_FMM_EARDEFENDERS_0_7)-(ENUM_TO_INT(PROPS_FMM_EARDEFENDERS_0_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(PROPS_FMF_EARDEFENDERS_0_7)-(ENUM_TO_INT(PROPS_FMF_EARDEFENDERS_0_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_LEFT_WRIST(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(PROPS_FMM_WATCH_1_2)-(ENUM_TO_INT(PROPS_FMM_WATCH_0_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(PROPS_FMF_WATCH_1_2)-(ENUM_TO_INT(PROPS_FMF_WATCH_0_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_CHAINS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(TEETH_FMM_2_2)-(ENUM_TO_INT(TEETH_FMM_1_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(TEETH_FMF_7_5)-(ENUM_TO_INT(TEETH_FMF_6_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_EARRINGS(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(TEETH_FMM_3_2)-(ENUM_TO_INT(TEETH_FMM_3_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(TEETH_FMF_2_5)-(ENUM_TO_INT(TEETH_FMF_1_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_SCARVES(BOOL bMale)
|
|
IF bMale
|
|
RETURN ENUM_TO_INT(TEETH_FMM_6_5)-(ENUM_TO_INT(TEETH_FMM_5_0))+1
|
|
ELSE
|
|
RETURN ENUM_TO_INT(TEETH_FMF_9_5)-(ENUM_TO_INT(TEETH_FMF_9_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_RIGHT_WRIST(BOOL bMale)
|
|
IF bMale
|
|
RETURN 1 //ENUM_TO_INT(CUFF_FMM_3_2)-(ENUM_TO_INT(CUFF_FMM_3_0))+1
|
|
ELSE
|
|
RETURN 1 //ENUM_TO_INT(CUFF_FMF_2_5)-(ENUM_TO_INT(CUFF_FMF_1_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_NUMBER_OF_FREEMODE_GLOVES(BOOL bMale)
|
|
IF bMale
|
|
RETURN 1 //ENUM_TO_INT(GLOVE_FMM_3_2)-(ENUM_TO_INT(GLOVE_FMM_3_0))+1
|
|
ELSE
|
|
RETURN 1 //ENUM_TO_INT(GLOVE_FMF_2_5)-(ENUM_TO_INT(GLOVE_FMF_1_0))+1
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
PROC PRINT_INFO_FOR_CHAR(STRING sChar, PED_COMP_NAME_ENUM eNumOfItems, INT &iMaxItems)
|
|
|
|
INT iNumOfItems = ENUM_TO_INT(eNumOfItems)
|
|
IF eNumOfItems = DUMMY_PED_COMP
|
|
iNumOfItems = 0
|
|
ENDIF
|
|
CPRINTLN(DEBUG_PED_COMP, sChar, iNumOfItems)
|
|
IF iNumOfItems > iMaxItems
|
|
iMaxItems = iNumOfItems
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC PRINT_COMP_TYPE_HEADER(STRING sCompType, INT &iMaxItems)
|
|
CPRINTLN(DEBUG_PED_COMP, "")
|
|
CPRINTLN(DEBUG_PED_COMP, sCompType)
|
|
iMaxItems = 0
|
|
ENDPROC
|
|
|
|
PROC PRINT_COMP_TYPE_FOOTER(STRING sCompType, INT iMaxItems, INT &iTotalBitsets)
|
|
INT iBitsetsRequired = 0
|
|
iBitsetsRequired = (iMaxItems / 32) + 1
|
|
CPRINTLN(DEBUG_PED_COMP, sCompType, "iMaxItems= ", iMaxItems, "iBitsetsRequired= ", iBitsetsRequired)
|
|
CPRINTLN(DEBUG_PED_COMP, "")
|
|
iTotalBitsets = iTotalBitsets + iBitsetsRequired
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Runs through each ped comp type and checks the max number of items a character has
|
|
/// Then prints the number of bitsets we'd need to handle these items
|
|
PROC PRINT_PED_COMP_BITSETS_REQUIRED()
|
|
|
|
INT iMaxItems = 0
|
|
INT iTotalBitsets = 0
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "---------------PRINT_PED_COMP_BITSETS_REQUIRED- START ---------------------------")
|
|
// head
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_HEAD", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", HEAD_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", HEAD_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", HEAD_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", DUMMY_PED_COMP, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", DUMMY_PED_COMP, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_HEAD", iMaxItems, iTotalBitsets)
|
|
|
|
// beard
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_BERD", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", BERD_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", BERD_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", BERD_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", BERD_FMM_7_3, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", BERD_FMF_7_3, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_BERD", iMaxItems, iTotalBitsets)
|
|
|
|
// hair
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_HAIR", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", HAIR_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", HAIR_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", HAIR_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", HAIR_FMM_15_4, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", HAIR_FMF_15_5, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_HAIR", iMaxItems, iTotalBitsets)
|
|
|
|
// torso
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_TORSO", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", TORSO_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", TORSO_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", TORSO_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", TORSO_FMM_15_0, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", TORSO_FMF_15_0, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_TORSO", iMaxItems, iTotalBitsets)
|
|
|
|
// legs
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_LEGS", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", LEGS_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", LEGS_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", LEGS_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", LEGS_FMM_15_15, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", LEGS_FMF_15_15, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_LEGS", iMaxItems, iTotalBitsets)
|
|
|
|
// hand
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_HAND", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", HAND_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", HAND_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", HAND_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", DUMMY_PED_COMP, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", DUMMY_PED_COMP, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_HAND", iMaxItems, iTotalBitsets)
|
|
|
|
// feet
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_FEET", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", FEET_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", FEET_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", FEET_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", FEET_FMM_15_15, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", FEET_FMF_15_15, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_FEET", iMaxItems, iTotalBitsets)
|
|
|
|
// teeth
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_TEETH", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", TEETH_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", TEETH_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", TEETH_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", TEETH_FMM_15_0, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", TEETH_FMF_9_5, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_TEETH", iMaxItems, iTotalBitsets)
|
|
|
|
// special
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_SPECIAL", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", SPECIAL_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", SPECIAL_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", SPECIAL_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", SPECIAL_FMM_15_0, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", SPECIAL_FMF_15_15, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_SPECIAL", iMaxItems, iTotalBitsets)
|
|
|
|
// special 2
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_SPECIAL2", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", SPECIAL2_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", SPECIAL2_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", SPECIAL2_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", SPECIAL2_FMM_9_4, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", SPECIAL2_FMF_7_4, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_SPECIAL2", iMaxItems, iTotalBitsets)
|
|
|
|
// decl
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_DECL", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", DECL_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", DECL_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", DECL_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", DECL_FMM_6_0, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", DECL_FMF_5_0, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_DECL", iMaxItems, iTotalBitsets)
|
|
|
|
// jbib
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_JBIB", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", JBIB_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", JBIB_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", JBIB_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", JBIB_FMM_15_0, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", JBIB_FMF_15_15, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_JBIB", iMaxItems, iTotalBitsets)
|
|
|
|
// outfit
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_OUTFIT", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", OUTFIT_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", OUTFIT_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", OUTFIT_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", DUMMY_PED_COMP, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", DUMMY_PED_COMP, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_OUTFIT", iMaxItems, iTotalBitsets)
|
|
|
|
// propgroup
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_PROPGROUP", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", PROPGROUP_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", PROPGROUP_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", PROPGROUP_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", DUMMY_PED_COMP, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", DUMMY_PED_COMP, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_PROPGROUP", iMaxItems, iTotalBitsets)
|
|
|
|
// props
|
|
PRINT_COMP_TYPE_HEADER("COMP_TYPE_PROPS", iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Michael ", PROPS_P0_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Franklin ", PROPS_P1_DLC, iMaxItems)
|
|
PRINT_INFO_FOR_CHAR("Trevor ", PROPS_P2_DLC, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP male ", PROPS_FMM_WATCH_1_2, iMaxItems)
|
|
//PRINT_INFO_FOR_CHAR("MP female ", PROPS_FMF_WATCH_1_2, iMaxItems)
|
|
PRINT_COMP_TYPE_FOOTER("COMP_TYPE_PROPS", iMaxItems, iTotalBitsets)
|
|
|
|
INT iCurrentBitsets = 150
|
|
INT iBitsetDiff = iCurrentBitsets - iTotalBitsets
|
|
CPRINTLN(DEBUG_PED_COMP, "iCurrentBitsets = ", iCurrentBitsets, " Total bitsets = ", iTotalBitsets, " Saving of ", iBitsetDiff)
|
|
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "---------------PRINT_PED_COMP_BITSETS_REQUIRED- END ---------------------------")
|
|
ENDPROC
|
|
#ENDIF
|
|
|
|
FUNC INT GET_ARMOUR_DRAWABLE_FOR_MP(PED_INDEX ped)
|
|
// Male
|
|
IF GET_ENTITY_MODEL(ped) = MP_M_FREEMODE_01
|
|
SWITCH GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
CASE 0 RETURN 1
|
|
CASE 1 RETURN 1
|
|
CASE 2 RETURN 2
|
|
CASE 3 RETURN 3
|
|
CASE 4 RETURN 3
|
|
CASE 5 RETURN 1
|
|
CASE 6 RETURN 9
|
|
CASE 7 RETURN 3
|
|
CASE 8 RETURN 1
|
|
CASE 9 RETURN 1
|
|
CASE 10 RETURN 8
|
|
CASE 11 RETURN 7
|
|
CASE 12 RETURN 1
|
|
CASE 13 RETURN 4
|
|
CASE 14 RETURN 6
|
|
CASE 15 RETURN 5
|
|
ENDSWITCH
|
|
|
|
//Female
|
|
ELSE
|
|
SWITCH GET_PED_DRAWABLE_VARIATION(ped, PED_COMP_JBIB)
|
|
CASE 0 RETURN 1
|
|
CASE 1 RETURN 4
|
|
CASE 2 RETURN 2
|
|
CASE 3 RETURN 3
|
|
CASE 4 RETURN 1
|
|
CASE 5 RETURN 1
|
|
CASE 6 RETURN 5
|
|
CASE 7 RETURN 4
|
|
CASE 8 RETURN 1
|
|
CASE 9 RETURN 1
|
|
CASE 10 RETURN 5
|
|
CASE 11 RETURN 1
|
|
CASE 12 RETURN 1
|
|
CASE 13 RETURN 1
|
|
CASE 14 RETURN 6
|
|
CASE 15 RETURN 1
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns true if the item is one of the tshirts that get a new decal for reward unlocks
|
|
/// (and the reward has been unlocked)
|
|
/// PARAMS:
|
|
/// ePedModel - male or female mp
|
|
/// eType - type of item
|
|
/// eItem - item name
|
|
/// RETURNS:
|
|
/// TRUE if the item is a reward tshirt and the reward has been unlocked
|
|
FUNC BOOL IS_ITEM_A_REWARD_TSHIRT(MODEL_NAMES ePedModel, PED_COMP_TYPE_ENUM eType, PED_COMP_NAME_ENUM eItem)
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
|
|
IF eType = COMP_TYPE_JBIB
|
|
IF eItem = JBIB_FMM_1_7
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF eItem = JBIB_FMM_1_1
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
|
|
ELIF eItem = JBIB_FMM_1_12
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
|
|
IF eItem = SPECIAL_FMM_1_7
|
|
OR eItem = SPECIAL_FMM_14_7
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF eItem = SPECIAL_FMM_1_1
|
|
OR eItem = SPECIAL_FMM_14_1
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
|
|
ELIF eItem = SPECIAL_FMM_1_12
|
|
OR eItem = SPECIAL_FMM_14_12
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eType = COMP_TYPE_JBIB
|
|
IF eItem = JBIB_FMF_0_4
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF eItem = JBIB_FMF_0_7
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
|
|
ELIF eItem = JBIB_FMF_0_9
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_REDSKULL)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF eType = COMP_TYPE_SPECIAL
|
|
|
|
IF eItem = SPECIAL_FMF_0_4
|
|
OR eItem = SPECIAL_FMF_1_4
|
|
IF IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_ROCKSTAR)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
ELIF eItem = SPECIAL_FMF_0_7
|
|
OR eItem = SPECIAL_FMF_1_7
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
|
|
ELIF eItem = SPECIAL_FMF_0_9
|
|
OR eItem = SPECIAL_FMF_1_9
|
|
//IS_MP_TATTOO_UNLOCKED(TSHIRT_TRANS_MP_FM_LSBELLE)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC UNLOCK_REWARD_TSHIRT(MODEL_NAMES ePedModel, TATTOO_NAME_ENUM eTattooName)
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
IF eTattooName = TSHIRT_TRANS_MP_FM_ROCKSTAR
|
|
// Male: TSHIRT_TRANS_MP_FM_ROCKSTAR
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMM_1_7, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_1_7, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_14_7, TRUE)
|
|
|
|
ELIF eTattooName = TSHIRT_TRANS_MP_FM_LSBELLE
|
|
// Male: TSHIRT_TRANS_MP_FM_LSBELLE
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMM_1_1, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_1_1, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_14_1, TRUE)
|
|
|
|
ELIF eTattooName = TSHIRT_TRANS_MP_FM_REDSKULL
|
|
// Male: TSHIRT_TRANS_MP_FM_REDSKULL
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMM_1_12, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_1_12, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_M_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMM_14_12, TRUE)
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
IF eTattooName = TSHIRT_TRANS_MP_FM_ROCKSTAR
|
|
// Female: TSHIRT_TRANS_MP_FM_ROCKSTAR
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMF_0_4, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_0_4, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_1_4, TRUE)
|
|
|
|
ELIF eTattooName = TSHIRT_TRANS_MP_FM_LSBELLE
|
|
// Female: TSHIRT_TRANS_MP_FM_LSBELLE
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMF_0_7, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_0_7, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_1_7, TRUE)
|
|
|
|
ELIF eTattooName = TSHIRT_TRANS_MP_FM_REDSKULL
|
|
// Female: TSHIRT_TRANS_MP_FM_REDSKULL
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_JBIB, JBIB_FMF_0_9, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_0_9, TRUE)
|
|
SET_PED_COMP_ITEM_IS_NEW_MP(MP_F_FREEMODE_01, COMP_TYPE_SPECIAL, SPECIAL_FMF_1_9, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
FUNC BOOL IS_PED_WEARING_CHRISTMAS_CLOTHES(PED_INDEX pedID)
|
|
PED_COMP_NAME_ENUM eItem
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(pedID)
|
|
|
|
IF ePedModel != MP_M_FREEMODE_01
|
|
AND ePedModel != MP_F_FREEMODE_01
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// Hats
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_PROPS, ENUM_TO_INT(ANCHOR_HEAD))
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PROP(ePedModel)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_PROPS, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Masks
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_BERD) > 7
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_BERD)
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_BERD)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_BERD, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Jackets+Tops
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB) > 15
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_JBIB)
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_JBIB)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_JBIB, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL) > 15
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_SPECIAL)
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_SPECIAL)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_SPECIAL, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Legs
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_LEG) > 15
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_LEGS)
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_LEG)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_LEGS, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Chain
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_TEETH) > 15
|
|
eItem = GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_TEETH)
|
|
IF eItem >= GET_DEFAULT_DLC_PED_COMPONENT_FOR_PED_COMPONENT(ePedModel, PED_COMP_TEETH)
|
|
GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_TEETH, eItem)
|
|
IF g_iLastDLCItemLockHash = HASH("CU_XMAS_CLOTHES")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_PILOT_SUIT(PED_INDEX pedID, PED_COMPONENT ePedCompCheck = PED_COMP_JBIB)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, ePedCompCheck, DLC_RESTRICTION_TAG_PILOT_SUIT)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
|
|
|
|
FUNC BOOL IS_PED_WEARING_HAZ_HOOD_UP(PED_INDEX pedID)
|
|
INT iDLCHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HAZ_HOOD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_IMPOTENT_RAGE_OUTFIT(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_VWD_DRAW_1)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_HAZ_HOOD_DOWN(PED_INDEX pedID)
|
|
INT iDLCHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HAZ_HOOD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_PED_WEARING_HAZ_MASK(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_BERD, DLC_RESTRICTION_TAG_HAZ_MASK)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_JUGGERNAUT_SUIT(PED_INDEX pedID)
|
|
IF NOT DOES_ENTITY_EXIST(pedID)
|
|
OR IS_ENTITY_DEAD(pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_JUGG_SUIT)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_MORPH_MASK(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_BERD, DLC_RESTRICTION_TAG_MORPH_SUIT)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
FUNC BOOL IS_PED_WEARING_MORPH_SUIT(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_MORPH_SUIT)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_SPECIAL_OUTFIT(PED_INDEX pedID, BOOL bCheckAliens = TRUE, BOOL bCheckSpacesuits = TRUE, BOOL bCheckSpaceranger = TRUE, BOOL bCheckPogo = TRUE)
|
|
IF NOT DOES_ENTITY_EXIST(pedID)
|
|
OR IS_ENTITY_DEAD(pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
INT iTorsoHashname = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_TORSO), GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_TORSO), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_TORSO))
|
|
|
|
IF bCheckaliens
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iTorsoHashname, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
IF bCheckSpacesuits
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iTorsoHashname, DLC_RESTRICTION_TAG_ARENA_DRAW_1, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
IF bCheckSpaceranger
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iTorsoHashname, DLC_RESTRICTION_TAG_ARENA_DRAW_3, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
RETURN TRUE
|
|
ENDIF
|
|
IF bCheckPogo
|
|
// AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iTorsoHashname, DLC_RESTRICTION_TAG_bCheckPogo, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// RETURN TRUE
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_OUTFIT_BLOCKING_PARACHUTE(PED_INDEX pedID)
|
|
IF NOT DOES_ENTITY_EXIST(pedID)
|
|
OR IS_ENTITY_DEAD(pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_BLOCK_PARACHUTE)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_HELMET_VISOR(PED_INDEX pedId)
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_VEHICULAR_VENDETTA(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DCTL(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_TURF_WARZONE(g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_THIS_AN_ADVERSARY_MODE_MISSION(g_FMMC_STRUCT.iRootContentIDHash, g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(pedId)
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_ANIM(PED_INDEX pedId)
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
|
|
IF IS_LOCAL_PLAYER_IN_ARENA_SPECTATOR_BOX()
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_VEHICULAR_VENDETTA(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DCTL(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_TURF_WARZONE(g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_THIS_AN_ADVERSARY_MODE_MISSION(g_FMMC_STRUCT.iRootContentIDHash, g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(pedId)
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_MOOD(PED_INDEX pedId)
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_VEHICULAR_VENDETTA(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DCTL(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_TURF_WARZONE(g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_THIS_AN_ADVERSARY_MODE_MISSION(g_FMMC_STRUCT.iRootContentIDHash, g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(pedId)
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_WALK(PED_INDEX pedId)
|
|
IF IS_PLAYER_ON_ANY_FM_MISSION_THAT_IS_NOT_GANG_ATTACK(PLAYER_ID())
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF IS_PLAYER_USING_BALLISTIC_EQUIPMENT(PLAYER_ID())
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(pedId)
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_ILLUMINATED_CLOTHING()
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_VEHICULAR_VENDETTA(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DCTL(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_TURF_WARZONE(g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_THIS_AN_ADVERSARY_MODE_MISSION(g_FMMC_STRUCT.iRootContentIDHash, g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PLAYER_CAN_CHANGE_AUTO_HELMET(PED_INDEX pedId)
|
|
IF NETWORK_IS_ACTIVITY_SESSION()
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_VEHICULAR_VENDETTA(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DCTL(g_FMMC_STRUCT.iAdversaryModeType)
|
|
OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_TURF_WARZONE(g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_THIS_AN_ADVERSARY_MODE_MISSION(g_FMMC_STRUCT.iRootContentIDHash, g_FMMC_STRUCT.iAdversaryModeType)
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
UNUSED_PARAMETER(pedId)
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
|
|
FUNC BOOL SWAP_CHEM_SUIT_HOOD_FOR_ALTERNATE(PED_INDEX mPed)
|
|
|
|
INT HoodTxtID = GET_PED_TEXTURE_VARIATION(mPed, PED_COMP_SPECIAL)
|
|
INT iSpecialNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(mPed), ENUM_TO_INT(PED_COMP_SPECIAL), GET_PED_DRAWABLE_VARIATION(mPed, PED_COMP_SPECIAL), HoodTxtID)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_HAZ_HOOD, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT HoodID = -1
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_HOOD_UP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
HoodID = GET_CHEMSUIT_HOOD_VARIATION(mPed, FALSE)
|
|
SET_PED_COMPONENT_VARIATION(mPed, PED_COMP_SPECIAL, HoodID, HoodTxtID)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), " - SWAP_CHEM_SUIT_HOOD_FOR_ALTERNATE set \"", iSpecialNameHash, "\" from up to down - ", HoodID, ", ", HoodTxtID)
|
|
RETURN TRUE
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iSpecialNameHash, DLC_RESTRICTION_TAG_HOOD_DOWN, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
HoodID = GET_CHEMSUIT_HOOD_VARIATION(mPed, TRUE)
|
|
SET_PED_COMPONENT_VARIATION(mPed, PED_COMP_SPECIAL, HoodID, HoodTxtID)
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), " - SWAP_CHEM_SUIT_HOOD_FOR_ALTERNATE set \"", iSpecialNameHash, "\" from down to up - ", HoodID, ", ", HoodTxtID)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
CERRORLN(DEBUG_PED_COMP, GET_THIS_SCRIPT_NAME(), " - SWAP_CHEM_SUIT_HOOD_FOR_ALTERNATE wearing a chem suit hood \"", iSpecialNameHash, "\" but not tagged as UP or DOWN?!?")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
CDEBUG1LN(DEBUG_PED_COMP, "SWAP_CHEM_SUIT_HOOD_FOR_ALTERNATE not wearing a chem suit hood.")
|
|
RETURN FALSE // not wearing a chem suit hood
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_COMBAT_TOP(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_COMBAT_TOP)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_CREW_JACKET(PED_INDEX pedID)
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(pedID, PED_COMP_JBIB, DLC_RESTRICTION_TAG_CREW_JACKET)
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
|
|
|
|
FUNC BOOL IS_AIMING_THROUGH_SNIPER_SCOPE(PED_INDEX aPed )
|
|
IF IS_FIRST_PERSON_AIM_CAM_ACTIVE()
|
|
IF NOT IS_PED_INJURED(aPed)
|
|
WEAPON_TYPE aWeapon
|
|
GET_CURRENT_PED_WEAPON(aPed,aWeapon)
|
|
IF aWeapon = WEAPONTYPE_SNIPERRIFLE
|
|
OR aWeapon = WEAPONTYPE_HEAVYSNIPER
|
|
OR aWeapon = WEAPONTYPE_DLC_MARKSMANRIFLE
|
|
OR aWeapon = WEAPONTYPE_DLC_HEAVYSNIPER_MK2
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC UPDATE_PED_WEAPON_ANIMATION_OVERRIDE(PED_INDEX pedID)
|
|
IF DOES_ENTITY_EXIST(pedID)
|
|
AND NOT IS_PED_INJURED(pedID)
|
|
/////////////////////////////////////////////////////////////////
|
|
/// Use female override on male ped when wearing big jackets
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
|
|
INT iDLCJbibCheck = -1
|
|
INT iDLCJbibNameHash = -1
|
|
PED_COMP_NAME_ENUM eJbib = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(pedID, COMP_TYPE_JBIB)
|
|
|
|
IF eJbib >= JBIB_FMM_DLC
|
|
iDLCJbibNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eJbib, COMP_TYPE_JBIB, 3)
|
|
iDLCJbibCheck = GET_DLC_DRAW_TAG(iDLCJbibNameHash)
|
|
ENDIF
|
|
|
|
INT iDLCSpecialNameHash = -1
|
|
PED_COMP_NAME_ENUM eSpecial = GET_PED_COMPONENT_ITEM_CURRENT_FROM_LOOKUP(pedID, COMP_TYPE_SPECIAL)
|
|
|
|
IF eSpecial >= SPECIAL_FMM_DLC
|
|
iDLCSpecialNameHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, eSpecial, COMP_TYPE_SPECIAL, 3)
|
|
ENDIF
|
|
|
|
// JBIB
|
|
IF (eJbib >= JBIB_FMM_3_0 AND eJbib <= JBIB_FMM_3_15)
|
|
OR (eJbib >= JBIB_FMM_4_0 AND eJbib <= JBIB_FMM_4_15)
|
|
OR (eJbib >= JBIB_FMM_6_0 AND eJbib <= JBIB_FMM_6_11)
|
|
OR (eJbib >= JBIB_FMM_7_0 AND eJbib <= JBIB_FMM_7_15)
|
|
OR (eJbib >= JBIB_FMM_10_0 AND eJbib <= JBIB_FMM_10_15)
|
|
OR (iDLCJbibCheck = 3)
|
|
OR (iDLCJbibCheck = 4)
|
|
OR (iDLCJbibCheck = 6)
|
|
OR (iDLCJbibCheck = 7)
|
|
OR (iDLCJbibCheck = 10)
|
|
OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_TUX_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibNameHash, DLC_RESTRICTION_TAG_ANIM_OVERRIDE, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
|
|
// SPECIAL
|
|
OR (DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialNameHash, DLC_RESTRICTION_TAG_OVER_JACKET, ENUM_TO_INT(SHOP_PED_COMPONENT)))
|
|
|
|
SET_WEAPON_ANIMATION_OVERRIDE(pedID, HASH("MP_F_Freemode"))
|
|
SET_MOVEMENT_MODE_OVERRIDE(PLAYER_PED_ID(), "MP_FEMALE_ACTION") // url:bugstar:2327086
|
|
PRINTLN("UPDATE_PED_WEAPON_ANIMATION_OVERRIDE - setting override")
|
|
ELSE
|
|
SET_WEAPON_ANIMATION_OVERRIDE(pedID, HASH("Default"))
|
|
SET_MOVEMENT_MODE_OVERRIDE(PLAYER_PED_ID()) // url:bugstar:2327086
|
|
PRINTLN("UPDATE_PED_WEAPON_ANIMATION_OVERRIDE - clearing override")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC STORE_HELMET_VISOR_PROP_INDICES(PED_INDEX PedIndex, INT OverwriteHelmetPropIndex, INT OverwriteHelmetTexIndex, BOOL bSetPedHelmetCofigFlags = TRUE)
|
|
PED_PROP_POSITION ePropPos = ANCHOR_HEAD
|
|
|
|
INT iItemHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PedIndex), ENUM_TO_INT(ePropPos), OverwriteHelmetPropIndex, OverwriteHelmetTexIndex)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemHash, DLC_RESTRICTION_TAG_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iItemHash) > 0
|
|
|
|
INT iAltProp
|
|
INT iRetNameHash, iRetPropEnum, iRetPropPos
|
|
INT iAltPropCount = GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iItemHash)
|
|
INT iAltNameHash = 0
|
|
|
|
REPEAT iAltPropCount iAltProp
|
|
GET_VARIANT_PROP(iItemHash, iAltProp, iRetNameHash, iRetPropEnum, iRetPropPos)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
iAltNameHash = iRetNameHash
|
|
// Forced on-disk item
|
|
ELSE
|
|
//eItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum)
|
|
ENDIF
|
|
iAltProp = iAltPropCount+1// Bail
|
|
ENDREPEAT
|
|
IF iAltNameHash != 0
|
|
BOOL bVisorUp = FALSE
|
|
INT HelmetVisorUpPropId = -1, HelmetVisorDownPropId = -1
|
|
|
|
scrShopPedProp componentItem
|
|
GET_SHOP_PED_PROP(iAltNameHash, componentItem)
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iItemHash, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
bVisorUp = TRUE
|
|
HelmetVisorUpPropId = OverwriteHelmetPropIndex
|
|
HelmetVisorDownPropId = componentItem.m_propIndex
|
|
ELSE
|
|
bVisorUp = FALSE
|
|
HelmetVisorUpPropId = componentItem.m_propIndex
|
|
HelmetVisorDownPropId = OverwriteHelmetPropIndex
|
|
ENDIF
|
|
|
|
PRINTLN(GET_THIS_SCRIPT_NAME(), ": STORE_HELMET_VISOR_PROP_INDICES : helmet visor prop indices(", PICK_STRING(bVisorUp, "bVisorUp", "bVisorDown"), ", UpPropId:", HelmetVisorUpPropId, ", DownPropId:", HelmetVisorDownPropId, ")")
|
|
DEBUG_PRINTCALLSTACK()
|
|
|
|
SET_PED_HELMET_VISOR_PROP_INDICES(PedIndex, bVisorUp, HelmetVisorUpPropId, HelmetVisorDownPropId)
|
|
|
|
IF bSetPedHelmetCofigFlags
|
|
SET_PED_CONFIG_FLAG(PedIndex, PCF_HasHelmet, TRUE)
|
|
IF NOT IS_PED_ON_ANY_BIKE(PedIndex)
|
|
SET_PED_CONFIG_FLAG(PedIndex, PCF_DontTakeOffHelmet, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
EXIT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
PRINTLN(GET_THIS_SCRIPT_NAME(), ": STORE_HELMET_VISOR_PROP_INDICES : no valid helmet visor prop indices found")
|
|
DEBUG_PRINTCALLSTACK()
|
|
|
|
IF bSetPedHelmetCofigFlags
|
|
SET_PED_CONFIG_FLAG(PedIndex, PCF_HasHelmet, TRUE)
|
|
IF NOT IS_PED_ON_ANY_BIKE(PedIndex)
|
|
SET_PED_CONFIG_FLAG(PedIndex, PCF_DontTakeOffHelmet, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("STORE_HELMET_VISOR_PROP_INDICES : not a helmet valid helmet, [", OverwriteHelmetPropIndex, ", ", OverwriteHelmetTexIndex, "] iItemHash:", iItemHash)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
ENUM HEIST_OUTFIT_SYTLE
|
|
OUTFIT_STYLE_NONE = 999,
|
|
OUTFIT_STYLE_NOT_SET = 998,
|
|
OUTFIT_STYLE_STREET = 0,
|
|
OUTFIT_STYLE_POLICE,
|
|
OUTFIT_STYLE_CASUAL,
|
|
OUTFIT_STYLE_DRIVER,
|
|
OUTFIT_STYLE_CASUAL_STEALTH,
|
|
OUTFIT_STYLE_CASUAL_PILOT, // 5
|
|
OUTFIT_STYLE_STREET_COMBAT,
|
|
OUTFIT_STYLE_PRISONER,
|
|
OUTFIT_STYLE_PRISON_OFFICER,
|
|
OUTFIT_STYLE_TACTICAL_STEALTH,
|
|
OUTFIT_STYLE_LIGHT_COMBAT, //10
|
|
OUTFIT_STYLE_HEAVY_COMBAT,
|
|
OUTFIT_STYLE_STEALTH_PILOT,
|
|
OUTFIT_STYLE_REFUSE_COLLECTOR,
|
|
OUTFIT_STYLE_NIGHT_BIKER,
|
|
OUTFIT_STYLE_TOURIST, //15
|
|
OUTFIT_STYLE_SMART_SUITS,
|
|
OUTFIT_STYLE_SLOPPY_SUITS,
|
|
OUTFIT_STYLE_SHARP_SUITS,
|
|
OUTFIT_STYLE_MINIMAL_SUITS,
|
|
OUTFIT_STYLE_TUXEDOS, //20
|
|
OUTFIT_STYLE_HAZCHEM,
|
|
OUTFIT_STYLE_COVERALLS,
|
|
OUTFIT_STYLE_FIGHTER_PILOT,
|
|
OUTFIT_STYLE_LOWRIDER,
|
|
OUTFIT_STYLE_BALLAS, //25
|
|
OUTFIT_STYLE_VAGOS,
|
|
OUTFIT_STYLE_FUNERAL,
|
|
OUTFIT_STYLE_SCUBA,
|
|
OUTFIT_STYLE_PARAMEDIC,
|
|
OUTFIT_STYLE_MEDTECH1, //30
|
|
OUTFIT_STYLE_MEDTECH2, //31 - end of first bitset.
|
|
OUTFIT_STYLE_MODERN_STEALTH,
|
|
OUTFIT_STYLE_CASUAL_PILOT_2,
|
|
OUTFIT_STYLE_FIGHTER_PILOT_2,
|
|
OUTFIT_STYLE_HIGH_TECH_RIOT, //35
|
|
OUTFIT_STYLE_HIGH_TECH_IMPACT,
|
|
OUTFIT_STYLE_MED_TECH_MASKED,
|
|
OUTFIT_STYLE_MED_TECH_REBELLION,
|
|
OUTFIT_STYLE_MED_TECH_HAVOC,
|
|
OUTFIT_STYLE_MED_TECH_ADAPTABLE, //40
|
|
OUTFIT_STYLE_SUB_DRIVER,
|
|
OUTFIT_STYLE_HEAVY_COMBAT_GEAR,
|
|
OUTFIT_STYLE_LOW_TECH_TACTICAL,
|
|
OUTFIT_STYLE_LOW_TECH_COMBAT,
|
|
OUTFIT_STYLE_CLASSIC_STEALTH, //45
|
|
OUTFIT_STYLE_MILITARY_CAMO,
|
|
OUTFIT_STYLE_GORKA,
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
OUTFIT_STYLE_CASINO_HEIST_STEALTH_I,
|
|
OUTFIT_STYLE_CASINO_HEIST_STEALTH_II,
|
|
OUTFIT_STYLE_CASINO_HEIST_STEALTH_III, //50
|
|
OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_I,
|
|
OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_II,
|
|
OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_III,
|
|
OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_BUGSTAR,
|
|
OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_MAINTENANCE,//55
|
|
OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_GRUPPESECHS,
|
|
OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_CELEB,
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_I,
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_II,
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_III, //60
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_I,
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_II,
|
|
OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_III, //63 - end of second bitset
|
|
#ENDIF
|
|
|
|
OUTFIT_STYLE_ISLAND_HEIST_SMUGGLER,
|
|
OUTFIT_STYLE_ISLAND_HEIST_HEAVY_I,
|
|
OUTFIT_STYLE_ISLAND_HEIST_HEAVY_II,
|
|
OUTFIT_STYLE_ISLAND_HEIST_LIGHT_I,
|
|
OUTFIT_STYLE_ISLAND_HEIST_LIGHT_II,
|
|
OUTFIT_STYLE_ISLAND_HEIST_STEALTH_I,
|
|
OUTFIT_STYLE_ISLAND_HEIST_STEALTH_II,
|
|
|
|
OUTFIT_STYLE_FIXER_PARTY_PROMOTER,
|
|
OUTFIT_STYLE_FIXER_BILLIONAIRE_GAMES,
|
|
OUTFIT_STYLE_FIXER_GOLF,
|
|
|
|
OUTFIT_STYLE_SUM22_IAA_AGENTS,
|
|
|
|
OUTFIT_STYLE_MAX
|
|
ENDENUM
|
|
|
|
// Versus Outfits styles (either Classic or Themed)
|
|
ENUM VERSUS_OUTFIT_STYLE
|
|
VS_CLASSIC_COMBO_0 = 0,
|
|
VS_CLASSIC_COMBO_1,
|
|
VS_CLASSIC_COMBO_2,
|
|
VS_CLASSIC_COMBO_3,
|
|
VS_CLASSIC_COMBO_4,
|
|
VS_CLASSIC_COMBO_5,
|
|
VS_CLASSIC_COMBO_6,
|
|
VS_CLASSIC_COMBO_7,
|
|
VS_CLASSIC_COMBO_8,
|
|
VS_CLASSIC_COMBO_9,
|
|
VS_CLASSIC_COMBO_10,
|
|
VS_CLASSIC_COMBO_11,
|
|
VS_CLASSIC_COMBO_12,
|
|
VS_CLASSIC_MAX,
|
|
|
|
VS_THEMED_COMBO_0 = 0,
|
|
VS_THEMED_COMBO_1,
|
|
VS_THEMED_COMBO_2,
|
|
VS_THEMED_COMBO_3,
|
|
VS_THEMED_COMBO_4,
|
|
VS_THEMED_COMBO_5,
|
|
VS_THEMED_COMBO_6,
|
|
VS_THEMED_COMBO_7,
|
|
VS_THEMED_COMBO_8,
|
|
VS_THEMED_COMBO_9,
|
|
VS_THEMED_COMBO_10,
|
|
VS_THEMED_COMBO_11,
|
|
VS_THEMED_COMBO_12,
|
|
VS_THEMED_MAX
|
|
|
|
,VS_ENTOURAGE_COMBO_0 = 0
|
|
,VS_ENTOURAGE_COMBO_1
|
|
,VS_ENTOURAGE_MAX
|
|
|
|
,VS_HALLOWEEN_COMBO_0 = 0
|
|
,VS_HALLOWEEN_COMBO_1
|
|
,VS_HALLOWEEN_COMBO_2
|
|
,VS_HALLOWEEN_COMBO_3
|
|
,VS_HALLOWEEN_COMBO_4
|
|
,VS_HALLOWEEN_COMBO_5
|
|
,VS_HALLOWEEN_MAX
|
|
|
|
,VS_SOLO_COMBO_0 = 0
|
|
,VS_SOLO_COMBO_1
|
|
,VS_SOLO_COMBO_2
|
|
,VS_SOLO_COMBO_3
|
|
,VS_SOLO_COMBO_4
|
|
,VS_SOLO_COMBO_5
|
|
,VS_SOLO_COMBO_6
|
|
,VS_SOLO_COMBO_7
|
|
,VS_SOLO_COMBO_8
|
|
,VS_SOLO_COMBO_9
|
|
,VS_SOLO_COMBO_10
|
|
,VS_SOLO_COMBO_11
|
|
,VS_SOLO_MAX
|
|
|
|
,VS_HIDDEN_COMBO_0 = 0
|
|
,VS_HIDDEN_COMBO_1
|
|
,VS_HIDDEN_COMBO_2
|
|
,VS_HIDDEN_COMBO_3
|
|
,VS_HIDDEN_COMBO_4
|
|
,VS_HIDDEN_COMBO_5
|
|
,VS_HIDDEN_COMBO_6
|
|
,VS_HIDDEN_COMBO_7
|
|
,VS_HIDDEN_COMBO_8
|
|
,VS_HIDDEN_COMBO_9
|
|
,VS_HIDDEN_COMBO_10
|
|
,VS_HIDDEN_COMBO_11
|
|
,VS_HIDDEN_COMBO_12
|
|
,VS_HIDDEN_COMBO_13
|
|
,VS_HIDDEN_COMBO_14
|
|
,VS_HIDDEN_COMBO_15
|
|
,VS_HIDDEN_COMBO_16
|
|
,VS_HIDDEN_COMBO_17
|
|
,VS_HIDDEN_COMBO_18
|
|
,VS_HIDDEN_COMBO_19
|
|
,VS_HIDDEN_COMBO_20
|
|
,VS_HIDDEN_COMBO_21
|
|
,VS_HIDDEN_COMBO_22
|
|
,VS_HIDDEN_COMBO_23
|
|
,VS_HIDDEN_COMBO_24
|
|
,VS_HIDDEN_COMBO_25
|
|
,VS_HIDDEN_COMBO_26
|
|
,VS_HIDDEN_COMBO_27
|
|
,VS_HIDDEN_COMBO_28
|
|
,VS_HIDDEN_COMBO_29
|
|
,VS_HIDDEN_COMBO_30
|
|
,VS_HIDDEN_COMBO_31
|
|
,VS_HIDDEN_COMBO_32
|
|
,VS_HIDDEN_COMBO_33
|
|
,VS_HIDDEN_COMBO_34
|
|
,VS_HIDDEN_COMBO_35
|
|
,VS_HIDDEN_COMBO_36
|
|
,VS_HIDDEN_COMBO_37
|
|
,VS_HIDDEN_COMBO_38
|
|
,VS_HIDDEN_COMBO_39
|
|
,VS_HIDDEN_COMBO_40
|
|
,VS_HIDDEN_COMBO_41
|
|
,VS_HIDDEN_COMBO_42
|
|
,VS_HIDDEN_COMBO_43
|
|
,VS_HIDDEN_COMBO_44
|
|
,VS_HIDDEN_COMBO_45
|
|
,VS_HIDDEN_COMBO_46
|
|
,VS_HIDDEN_COMBO_47
|
|
,VS_HIDDEN_COMBO_48
|
|
,VS_HIDDEN_COMBO_49
|
|
,VS_HIDDEN_COMBO_50
|
|
,VS_HIDDEN_COMBO_51
|
|
,VS_HIDDEN_COMBO_52
|
|
,VS_HIDDEN_MAX
|
|
ENDENUM
|
|
|
|
ENUM MP_OUTFIT_MASK_ENUM
|
|
//--- Heist masks ---
|
|
OUTFIT_MASK_FREEMODE = -2
|
|
,OUTFIT_MASK_NONE = -1
|
|
|
|
,OUTFIT_MASK_AMATEUR_0 = 0
|
|
,OUTFIT_MASK_AMATEUR_1
|
|
,OUTFIT_MASK_AMATEUR_2
|
|
,OUTFIT_MASK_AMATEUR_3
|
|
,OUTFIT_MASK_ANIMALS_0
|
|
,OUTFIT_MASK_ANIMALS_1
|
|
,OUTFIT_MASK_ANIMALS_2
|
|
,OUTFIT_MASK_ANIMALS_3
|
|
,OUTFIT_MASK_PAPER_BAGS_0
|
|
,OUTFIT_MASK_PAPER_BAGS_1
|
|
,OUTFIT_MASK_PAPER_BAGS_2//10
|
|
,OUTFIT_MASK_PAPER_BAGS_3
|
|
,OUTFIT_MASK_PAPER_BAGS_4
|
|
,OUTFIT_MASK_PAPER_BAGS_5
|
|
,OUTFIT_MASK_PAPER_BAGS_6
|
|
,OUTFIT_MASK_PAPER_BAGS_7
|
|
,OUTFIT_MASK_PAPER_BAGS_8
|
|
,OUTFIT_MASK_PAPER_BAGS_9
|
|
,OUTFIT_MASK_PAPER_BAGS_10
|
|
,OUTFIT_MASK_PAPER_BAGS_11
|
|
,OUTFIT_MASK_PAPER_BAGS_12
|
|
,OUTFIT_MASK_PAPER_BAGS_13//20
|
|
,OUTFIT_MASK_PAPER_BAGS_14
|
|
,OUTFIT_MASK_PAPER_BAGS_15
|
|
,OUTFIT_MASK_PAPER_BAGS_16
|
|
,OUTFIT_MASK_PAPER_BAGS_17
|
|
,OUTFIT_MASK_PAPER_BAGS_18
|
|
,OUTFIT_MASK_PAPER_BAGS_19
|
|
,OUTFIT_MASK_PAPER_BAGS_20
|
|
,OUTFIT_MASK_PAPER_BAGS_21
|
|
,OUTFIT_MASK_PAPER_BAGS_22
|
|
,OUTFIT_MASK_PAPER_BAGS_23//30
|
|
,OUTFIT_MASK_PAPER_BAGS_24
|
|
,OUTFIT_MASK_PAPER_BAGS_25
|
|
,OUTFIT_MASK_BEASTS_0
|
|
,OUTFIT_MASK_BEASTS_1
|
|
,OUTFIT_MASK_BEASTS_2
|
|
,OUTFIT_MASK_BEASTS_3
|
|
,OUTFIT_MASK_CHARACTERS_0
|
|
,OUTFIT_MASK_CHARACTERS_1
|
|
,OUTFIT_MASK_CHARACTERS_2
|
|
,OUTFIT_MASK_CHARACTERS_3//40
|
|
,OUTFIT_MASK_CLASSIC_MONSTERS_0
|
|
,OUTFIT_MASK_CLASSIC_MONSTERS_1
|
|
,OUTFIT_MASK_CLASSIC_MONSTERS_2
|
|
,OUTFIT_MASK_CLASSIC_MONSTERS_3
|
|
,OUTFIT_MASK_CARNIVAL_0
|
|
,OUTFIT_MASK_CARNIVAL_1
|
|
,OUTFIT_MASK_CARNIVAL_2
|
|
,OUTFIT_MASK_CARNIVAL_3
|
|
,OUTFIT_MASK_GAS_MASKS_0
|
|
,OUTFIT_MASK_GAS_MASKS_1 //50
|
|
,OUTFIT_MASK_HELMETS_0
|
|
,OUTFIT_MASK_HELMETS_1
|
|
,OUTFIT_MASK_HELMETS_2
|
|
,OUTFIT_MASK_HELMETS_3
|
|
,OUTFIT_MASK_HELMETS_4
|
|
,OUTFIT_MASK_HELMETS_5
|
|
,OUTFIT_MASK_HELMETS_6
|
|
,OUTFIT_MASK_HELMETS_7
|
|
,OUTFIT_MASK_HORROR_HOCKEY_0
|
|
,OUTFIT_MASK_HORROR_HOCKEY_1//60
|
|
,OUTFIT_MASK_HORROR_HOCKEY_2
|
|
,OUTFIT_MASK_HORROR_HOCKEY_3
|
|
,OUTFIT_MASK_PUPPETS_0
|
|
,OUTFIT_MASK_PUPPETS_1
|
|
,OUTFIT_MASK_PUPPETS_2
|
|
,OUTFIT_MASK_PUPPETS_3
|
|
,OUTFIT_MASK_SKULLS_0
|
|
,OUTFIT_MASK_SKULLS_1
|
|
,OUTFIT_MASK_SKULLS_2
|
|
,OUTFIT_MASK_SKULLS_3//70
|
|
,OUTFIT_MASK_TACTICAL_0
|
|
,OUTFIT_MASK_TACTICAL_1
|
|
,OUTFIT_MASK_TACTICAL_2
|
|
,OUTFIT_MASK_TACTICAL_3
|
|
,OUTFIT_MASK_TAPE_0
|
|
,OUTFIT_MASK_TAPE_1
|
|
,OUTFIT_MASK_TAPE_2
|
|
,OUTFIT_MASK_TAPE_3
|
|
,OUTFIT_MASK_THEATRICAL_0
|
|
,OUTFIT_MASK_THEATRICAL_1//80
|
|
,OUTFIT_MASK_THEATRICAL_2
|
|
,OUTFIT_MASK_THEATRICAL_3
|
|
,OUTFIT_MASK_PIGS_0
|
|
,OUTFIT_MASK_PIGS_1
|
|
,OUTFIT_MASK_PIGS_2
|
|
,OUTFIT_MASK_PIGS_3
|
|
,OUTFIT_MASK_DUCT_TAPE_0
|
|
,OUTFIT_MASK_DUCT_TAPE_1
|
|
,OUTFIT_MASK_DUCT_TAPE_2
|
|
,OUTFIT_MASK_DUCT_TAPE_3//90
|
|
,OUTFIT_MASK_INCOGNITO_0
|
|
,OUTFIT_MASK_INCOGNITO_1
|
|
,OUTFIT_MASK_INCOGNITO_2
|
|
,OUTFIT_MASK_INCOGNITO_3
|
|
,OUTFIT_MASK_BALACLAVAS_0
|
|
,OUTFIT_MASK_BALACLAVAS_1
|
|
,OUTFIT_MASK_BALACLAVAS_2
|
|
,OUTFIT_MASK_BALACLAVAS_3
|
|
,OUTFIT_MASK_BALACLAVAS_4
|
|
,OUTFIT_MASK_BALACLAVAS_5
|
|
,OUTFIT_MASK_BALACLAVAS_6
|
|
,OUTFIT_MASK_BALACLAVAS_7
|
|
,OUTFIT_MASK_BALACLAVAS_8
|
|
,OUTFIT_MASK_BALACLAVAS_9
|
|
,OUTFIT_MASK_BALACLAVAS_10
|
|
,OUTFIT_MASK_BALACLAVAS_11
|
|
,OUTFIT_MASK_CAMO_0
|
|
,OUTFIT_MASK_CAMO_1//100
|
|
,OUTFIT_MASK_CAMO_2
|
|
,OUTFIT_MASK_CAMO_3
|
|
,OUTFIT_MASK_CAMO_4
|
|
,OUTFIT_MASK_CAMO_5
|
|
,OUTFIT_MASK_PSYCHOTIC_0
|
|
,OUTFIT_MASK_PSYCHOTIC_1
|
|
,OUTFIT_MASK_PSYCHOTIC_2
|
|
,OUTFIT_MASK_PSYCHOTIC_3
|
|
,OUTFIT_MASK_STREET_0
|
|
,OUTFIT_MASK_STREET_1
|
|
,OUTFIT_MASK_STREET_2
|
|
,OUTFIT_MASK_STREET_3//110
|
|
,OUTFIT_MASK_STREET_4
|
|
,OUTFIT_MASK_STREET_5
|
|
,OUTFIT_MASK_BANDANAS_0
|
|
,OUTFIT_MASK_BANDANAS_1
|
|
,OUTFIT_MASK_BANDANAS_2
|
|
,OUTFIT_MASK_BANDANAS_3
|
|
,OUTFIT_MASK_HOODS_0
|
|
,OUTFIT_MASK_HOODS_1
|
|
,OUTFIT_MASK_HOODS_2
|
|
,OUTFIT_MASK_HOODS_3
|
|
,OUTFIT_MASK_DESIGNER_0
|
|
,OUTFIT_MASK_DESIGNER_1
|
|
,OUTFIT_MASK_DESIGNER_2
|
|
,OUTFIT_MASK_DESIGNER_3
|
|
,OUTFIT_MASK_DESIGNER_4
|
|
,OUTFIT_MASK_DESIGNER_5
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_0
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_1
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_2
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_3
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_4
|
|
,MASK_HEIST_HALLOWEEN_DEVILISH_5
|
|
,MASK_HEIST_HALLOWEEN_SADISTIC_0
|
|
,MASK_HEIST_HALLOWEEN_SADISTIC_1
|
|
,MASK_HEIST_HALLOWEEN_SADISTIC_2
|
|
,MASK_HEIST_HALLOWEEN_SADISTIC_3
|
|
,MASK_HEIST_HALLOWEEN_POSSESSED_0
|
|
,MASK_HEIST_HALLOWEEN_POSSESSED_1
|
|
,MASK_HEIST_HALLOWEEN_POSSESSED_2
|
|
,MASK_HEIST_HALLOWEEN_POSSESSED_3
|
|
,MASK_HEIST_HALLOWEEN_FIENDS_0
|
|
,MASK_HEIST_HALLOWEEN_FIENDS_1
|
|
,MASK_HEIST_HALLOWEEN_FIENDS_2
|
|
,MASK_HEIST_HALLOWEEN_FIENDS_3
|
|
,MASK_HEIST_HALLOWEEN_CREATURES_0
|
|
,MASK_HEIST_HALLOWEEN_CREATURES_1
|
|
,MASK_HEIST_HALLOWEEN_CREATURES_2
|
|
,MASK_HEIST_HALLOWEEN_CREATURES_3
|
|
,MASK_HEIST_HALLOWEEN_WICKED_0
|
|
,MASK_HEIST_HALLOWEEN_WICKED_1
|
|
,MASK_HEIST_HALLOWEEN_WICKED_2
|
|
,MASK_HEIST_HALLOWEEN_WICKED_3
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
,MASK_CASINO_HEIST_DEFAULT_0
|
|
,MASK_CASINO_HEIST_DEFAULT_1
|
|
|
|
,MASK_CASINO_HEIST_GEOMETRIC_0
|
|
,MASK_CASINO_HEIST_GEOMETRIC_1
|
|
,MASK_CASINO_HEIST_GEOMETRIC_2
|
|
,MASK_CASINO_HEIST_GEOMETRIC_3
|
|
,MASK_CASINO_HEIST_GEOMETRIC_4
|
|
,MASK_CASINO_HEIST_GEOMETRIC_5
|
|
,MASK_CASINO_HEIST_GEOMETRIC_6
|
|
,MASK_CASINO_HEIST_GEOMETRIC_7
|
|
,MASK_CASINO_HEIST_GEOMETRIC_8
|
|
|
|
,MASK_CASINO_HEIST_HUNTER_0
|
|
,MASK_CASINO_HEIST_HUNTER_1
|
|
,MASK_CASINO_HEIST_HUNTER_2
|
|
,MASK_CASINO_HEIST_HUNTER_3
|
|
,MASK_CASINO_HEIST_HUNTER_4
|
|
,MASK_CASINO_HEIST_HUNTER_5
|
|
,MASK_CASINO_HEIST_HUNTER_6
|
|
,MASK_CASINO_HEIST_HUNTER_7
|
|
,MASK_CASINO_HEIST_HUNTER_8
|
|
,MASK_CASINO_HEIST_HUNTER_9
|
|
|
|
,MASK_CASINO_HEIST_ONIHALF_0
|
|
,MASK_CASINO_HEIST_ONIHALF_1
|
|
,MASK_CASINO_HEIST_ONIHALF_2
|
|
,MASK_CASINO_HEIST_ONIHALF_3
|
|
,MASK_CASINO_HEIST_ONIHALF_4
|
|
,MASK_CASINO_HEIST_ONIHALF_5
|
|
|
|
,MASK_CASINO_HEIST_EMOJI_0
|
|
,MASK_CASINO_HEIST_EMOJI_1
|
|
,MASK_CASINO_HEIST_EMOJI_2
|
|
,MASK_CASINO_HEIST_EMOJI_3
|
|
,MASK_CASINO_HEIST_EMOJI_4
|
|
,MASK_CASINO_HEIST_EMOJI_5
|
|
,MASK_CASINO_HEIST_EMOJI_6
|
|
,MASK_CASINO_HEIST_EMOJI_7
|
|
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_0
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_1
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_2
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_3
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_4
|
|
,MASK_CASINO_HEIST_ORNATE_SKULL_5
|
|
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_0
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_1
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_2
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_3
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_4
|
|
,MASK_CASINO_HEIST_LUCKY_FRUITS_5
|
|
|
|
,MASK_CASINO_HEIST_GUERILLA_0
|
|
,MASK_CASINO_HEIST_GUERILLA_1
|
|
,MASK_CASINO_HEIST_GUERILLA_2
|
|
,MASK_CASINO_HEIST_GUERILLA_3
|
|
,MASK_CASINO_HEIST_GUERILLA_4
|
|
,MASK_CASINO_HEIST_GUERILLA_5
|
|
,MASK_CASINO_HEIST_GUERILLA_6
|
|
,MASK_CASINO_HEIST_GUERILLA_7
|
|
,MASK_CASINO_HEIST_GUERILLA_8
|
|
|
|
,MASK_CASINO_HEIST_CLOWNS_0
|
|
,MASK_CASINO_HEIST_CLOWNS_1
|
|
,MASK_CASINO_HEIST_CLOWNS_2
|
|
,MASK_CASINO_HEIST_CLOWNS_3
|
|
,MASK_CASINO_HEIST_CLOWNS_4
|
|
,MASK_CASINO_HEIST_CLOWNS_5
|
|
,MASK_CASINO_HEIST_CLOWNS_6
|
|
,MASK_CASINO_HEIST_CLOWNS_7
|
|
|
|
,MASK_CASINO_HEIST_ANIMALS_0
|
|
,MASK_CASINO_HEIST_ANIMALS_1
|
|
,MASK_CASINO_HEIST_ANIMALS_2
|
|
,MASK_CASINO_HEIST_ANIMALS_3
|
|
,MASK_CASINO_HEIST_ANIMALS_4
|
|
,MASK_CASINO_HEIST_ANIMALS_5
|
|
,MASK_CASINO_HEIST_ANIMALS_6
|
|
,MASK_CASINO_HEIST_ANIMALS_7
|
|
|
|
,MASK_CASINO_HEIST_RIOT_0
|
|
,MASK_CASINO_HEIST_RIOT_1
|
|
,MASK_CASINO_HEIST_RIOT_2
|
|
,MASK_CASINO_HEIST_RIOT_3
|
|
,MASK_CASINO_HEIST_RIOT_4
|
|
,MASK_CASINO_HEIST_RIOT_5
|
|
,MASK_CASINO_HEIST_RIOT_6
|
|
,MASK_CASINO_HEIST_RIOT_7
|
|
|
|
,MASK_CASINO_HEIST_ONIFULL_0
|
|
,MASK_CASINO_HEIST_ONIFULL_1
|
|
,MASK_CASINO_HEIST_ONIFULL_2
|
|
,MASK_CASINO_HEIST_ONIFULL_3
|
|
,MASK_CASINO_HEIST_ONIFULL_4
|
|
,MASK_CASINO_HEIST_ONIFULL_5
|
|
|
|
,MASK_CASINO_HEIST_HOCKEY_0
|
|
,MASK_CASINO_HEIST_HOCKEY_1
|
|
,MASK_CASINO_HEIST_HOCKEY_2
|
|
,MASK_CASINO_HEIST_HOCKEY_3
|
|
,MASK_CASINO_HEIST_HOCKEY_4
|
|
,MASK_CASINO_HEIST_HOCKEY_5
|
|
,MASK_CASINO_HEIST_HOCKEY_6
|
|
,MASK_CASINO_HEIST_HOCKEY_7
|
|
#ENDIF
|
|
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_0
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_1
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_2
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_3
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_4
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_5
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_6
|
|
,MASK_ISLAND_HEIST_BRANDED_HALF_7
|
|
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_0
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_1
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_2
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_3
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_4
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL_5
|
|
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_0
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_1
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_2
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_3
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_4
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC_5
|
|
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_0
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_1
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_2
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_3
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_4
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_5
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_6
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS_7
|
|
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_0
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_1
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_2
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_3
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_4
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS_5
|
|
|
|
, MASK_ISLAND_HEIST_NIGHT_OPS_0
|
|
, MASK_ISLAND_HEIST_NIGHT_OPS_1
|
|
, MASK_ISLAND_HEIST_NIGHT_OPS_2
|
|
, MASK_ISLAND_HEIST_NIGHT_OPS_3
|
|
|
|
, MASK_ISLAND_HEIST_NIGHT_VISION_0
|
|
, MASK_ISLAND_HEIST_NIGHT_VISION_1
|
|
, MASK_ISLAND_HEIST_NIGHT_VISION_2
|
|
, MASK_ISLAND_HEIST_NIGHT_VISION_3
|
|
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_0
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_1
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_2
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_3
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_4
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_5
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_6
|
|
, MASK_ISLAND_HEIST_CAMO_HALF_7
|
|
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_0
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_1
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_2
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_3
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_4
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_5
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_6
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION_7
|
|
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_0
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_1
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_2
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_3
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_4
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_5
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_6
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA_7
|
|
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_0
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_1
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_2
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_3
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_4
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_5
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_6
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY_7
|
|
|
|
, MASK_TUNER_STARS_AND_STRIPES_FALSE_FACE
|
|
, MASK_TUNER_GREEN_PATTERN_FALSE_FACE
|
|
|
|
,OUTFIT_MAX_MASKS
|
|
ENDENUM
|
|
|
|
ENUM HEIST_MASK
|
|
MASK_NONE = -1,
|
|
MASK_AMATEUR,
|
|
MASK_ANIMALS,
|
|
MASK_PAPER_BAGS,
|
|
MASK_BEASTS,
|
|
MASK_CHARACTERS,
|
|
MASK_CLASSIC_MONSTERS,
|
|
MASK_CARNIVAL,
|
|
MASK_GAS_MASKS,
|
|
MASK_HELMETS,
|
|
MASK_HORROR_HOCKEY,
|
|
MASK_PUPPETS,
|
|
MASK_SKULLS,
|
|
MASK_TACTICAL,
|
|
MASK_TAPES,
|
|
MASK_THEATRICAL,
|
|
MASK_PIGS,
|
|
MASK_DUCT_TAPE,
|
|
MASK_INCOGNITO,
|
|
MASK_BALACLAVAS,
|
|
MASK_CAMO,
|
|
MASK_PSYCHOTIC,
|
|
MASK_STREET,
|
|
MASK_BANDANAS,
|
|
MASK_HOODS,
|
|
MASK_DESIGNER
|
|
, MASK_DEVILISH
|
|
, MASK_SADISTIC
|
|
, MASK_POSSESSED
|
|
, MASK_FIENDS
|
|
, MASK_CREATURES
|
|
, MASK_WICKED
|
|
, MASK_CASINO_HEIST_DEFAULT
|
|
, MASK_CASINO_HEIST_GEOMETRIC
|
|
, MASK_CASINO_HEIST_HUNTER
|
|
, MASK_CASINO_HEIST_ONIHALF
|
|
, MASK_CASINO_HEIST_EMOJI
|
|
, MASK_CASINO_HEIST_ORNATE_SKULL
|
|
, MASK_CASINO_HEIST_LUCKY_FRUITS
|
|
, MASK_CASINO_HEIST_GUERILLA
|
|
, MASK_CASINO_HEIST_CLOWNS
|
|
, MASK_CASINO_HEIST_ANIMALS
|
|
, MASK_CASINO_HEIST_RIOT
|
|
, MASK_CASINO_HEIST_ONIFULL
|
|
, MASK_CASINO_HEIST_HOCKEY
|
|
, MASK_ISLAND_HEIST_BRANDED_HALF
|
|
, MASK_ISLAND_HEIST_PAINTED_FULL
|
|
, MASK_ISLAND_HEIST_CAMO_SPEC
|
|
, MASK_ISLAND_HEIST_NECK_GAITERS
|
|
, MASK_ISLAND_HEIST_FACE_WRAPS
|
|
, MASK_ISLAND_HEIST_NIGHT_OPS
|
|
, MASK_ISLAND_HEIST_NIGHT_VISION
|
|
, MASK_ISLAND_HEIST_CAMO_HALF
|
|
, MASK_ISLAND_HEIST_MONO_NIGHT_VISION
|
|
, MASK_ISLAND_HEIST_ISLAND_GUERILLA
|
|
, MASK_ISLAND_HEIST_PATTERNED_HOCKEY
|
|
, MASK_MAX
|
|
ENDENUM
|
|
|
|
ENUM PRELOAD_OUTFIT_STAGE
|
|
POS_REQUEST = 0,
|
|
POS_CHECK,
|
|
POS_LOADED
|
|
ENDENUM
|
|
|
|
ENUM APPLY_OUTFIT_STAGE
|
|
AOS_PRELOAD = 0
|
|
,AOS_SET
|
|
,AOS_STREAM_REQ
|
|
ENDENUM
|
|
|
|
STRUCT MP_OUTFITS_APPLY_DATA
|
|
PED_INDEX pedID
|
|
MP_OUTFIT_ENUM eOutfit = OUTFIT_MP_DEFAULT
|
|
MP_OUTFIT_MASK_ENUM eMask = OUTFIT_MASK_NONE
|
|
MP_HEIST_GEAR_ENUM eGear = HEIST_GEAR_NONE
|
|
MP_HEIST_GEAR_ENUM eGearEar = HEIST_GEAR_NONE
|
|
PRELOAD_OUTFIT_STAGE ePreloadStage = POS_REQUEST
|
|
APPLY_OUTFIT_STAGE eApplyStage = AOS_PRELOAD
|
|
bool bOutfitPrevSet = false
|
|
INT iPlayerIndex = INVALID_HEIST_DATA
|
|
INT iPlayerTattoos[NUMBER_OF_CURRENT_TATTOO_STATS]
|
|
ENDSTRUCT
|
|
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
FUNC STRING GET_MP_OUTFIT_NAME_FROM_ENUM(MP_OUTFIT_ENUM eOutfit)
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_MP_DEFAULT RETURN "OUTFIT_MP_DEFAULT" BREAK
|
|
CASE OUTFIT_MP_FREEMODE RETURN "OUTFIT_MP_FREEMODE" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_0 RETURN "OUTFIT_HEIST_CASUAL_0" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_1 RETURN "OUTFIT_HEIST_CASUAL_1" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_2 RETURN "OUTFIT_HEIST_CASUAL_2" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_3 RETURN "OUTFIT_HEIST_CASUAL_3" BREAK
|
|
CASE OUTFIT_HEIST_STREET_0 RETURN "OUTFIT_HEIST_STREET_0" BREAK
|
|
CASE OUTFIT_HEIST_STREET_1 RETURN "OUTFIT_HEIST_STREET_1" BREAK
|
|
CASE OUTFIT_HEIST_STREET_2 RETURN "OUTFIT_HEIST_STREET_2" BREAK
|
|
CASE OUTFIT_HEIST_STREET_3 RETURN "OUTFIT_HEIST_STREET_3" BREAK
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_0 RETURN "OUTFIT_HEIST_STREET_COMBAT_0" BREAK
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_1 RETURN "OUTFIT_HEIST_STREET_COMBAT_1" BREAK
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_2 RETURN "OUTFIT_HEIST_STREET_COMBAT_2" BREAK
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_3 RETURN "OUTFIT_HEIST_STREET_COMBAT_3" BREAK
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_0 RETURN "OUTFIT_HEIST_LIGHT_COMBAT_0" BREAK
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_1 RETURN "OUTFIT_HEIST_LIGHT_COMBAT_1" BREAK
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_2 RETURN "OUTFIT_HEIST_LIGHT_COMBAT_2" BREAK
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_3 RETURN "OUTFIT_HEIST_LIGHT_COMBAT_3" BREAK
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_0 RETURN "OUTFIT_HEIST_HEAVY_COMBAT_0" BREAK
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_1 RETURN "OUTFIT_HEIST_HEAVY_COMBAT_1" BREAK
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_2 RETURN "OUTFIT_HEIST_HEAVY_COMBAT_2" BREAK
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_3 RETURN "OUTFIT_HEIST_HEAVY_COMBAT_3" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_0 RETURN "OUTFIT_HEIST_CASUAL_STEALTH_0" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_1 RETURN "OUTFIT_HEIST_CASUAL_STEALTH_1" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_2 RETURN "OUTFIT_HEIST_CASUAL_STEALTH_2" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_3 RETURN "OUTFIT_HEIST_CASUAL_STEALTH_3" BREAK
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_0 RETURN "OUTFIT_HEIST_TACTICAL_STEALTH_0" BREAK
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_1 RETURN "OUTFIT_HEIST_TACTICAL_STEALTH_1" BREAK
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_2 RETURN "OUTFIT_HEIST_TACTICAL_STEALTH_2" BREAK
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_3 RETURN "OUTFIT_HEIST_TACTICAL_STEALTH_3" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_0 RETURN "OUTFIT_HEIST_STEALTH_PILOT_0" BREAK
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_1 RETURN "OUTFIT_HEIST_STEALTH_PILOT_1" BREAK
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_2 RETURN "OUTFIT_HEIST_STEALTH_PILOT_2" BREAK
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_3 RETURN "OUTFIT_HEIST_STEALTH_PILOT_3" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_0 RETURN "OUTFIT_HEIST_CASUAL_PILOT_0" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_1 RETURN "OUTFIT_HEIST_CASUAL_PILOT_1" BREAK
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_2 RETURN "OUTFIT_HEIST_CASUAL_PILOT_2" BREAK
|
|
CASE OUTFIT_HEIST_DRIVER_0 RETURN "OUTFIT_HEIST_DRIVER_0" BREAK
|
|
CASE OUTFIT_HEIST_DRIVER_1 RETURN "OUTFIT_HEIST_DRIVER_1" BREAK
|
|
CASE OUTFIT_HEIST_DRIVER_2 RETURN "OUTFIT_HEIST_DRIVER_2" BREAK
|
|
CASE OUTFIT_HEIST_DRIVER_3 RETURN "OUTFIT_HEIST_DRIVER_3" BREAK
|
|
CASE OUTFIT_HEIST_SMART_SUITS_0 RETURN "OUTFIT_HEIST_SMART_SUITS_0" BREAK
|
|
CASE OUTFIT_HEIST_SMART_SUITS_1 RETURN "OUTFIT_HEIST_SMART_SUITS_1" BREAK
|
|
CASE OUTFIT_HEIST_SMART_SUITS_2 RETURN "OUTFIT_HEIST_SMART_SUITS_2" BREAK
|
|
CASE OUTFIT_HEIST_SMART_SUITS_3 RETURN "OUTFIT_HEIST_SMART_SUITS_3" BREAK
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_0 RETURN "OUTFIT_HEIST_SHARP_SUITS_0" BREAK
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_1 RETURN "OUTFIT_HEIST_SHARP_SUITS_1" BREAK
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_2 RETURN "OUTFIT_HEIST_SHARP_SUITS_2" BREAK
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_3 RETURN "OUTFIT_HEIST_SHARP_SUITS_3" BREAK
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_0 RETURN "OUTFIT_HEIST_SLOPPY_SUITS_0" BREAK
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_1 RETURN "OUTFIT_HEIST_SLOPPY_SUITS_1" BREAK
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_2 RETURN "OUTFIT_HEIST_SLOPPY_SUITS_2" BREAK
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_3 RETURN "OUTFIT_HEIST_SLOPPY_SUITS_3" BREAK
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_0 RETURN "OUTFIT_HEIST_MINIMALIST_SUITS_0" BREAK
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_1 RETURN "OUTFIT_HEIST_MINIMALIST_SUITS_1" BREAK
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_2 RETURN "OUTFIT_HEIST_MINIMALIST_SUITS_2" BREAK
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_3 RETURN "OUTFIT_HEIST_MINIMALIST_SUITS_3" BREAK
|
|
CASE OUTFIT_HEIST_TUXEDOS_0 RETURN "OUTFIT_HEIST_TUXEDOS_0" BREAK
|
|
CASE OUTFIT_HEIST_TUXEDOS_1 RETURN "OUTFIT_HEIST_TUXEDOS_1" BREAK
|
|
CASE OUTFIT_HEIST_TUXEDOS_2 RETURN "OUTFIT_HEIST_TUXEDOS_2" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_TUXEDOS_3 RETURN "OUTFIT_HEIST_TUXEDOS_3" BREAK
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_0 RETURN "OUTFIT_HEIST_NIGHT_BIKER_0" BREAK
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_1 RETURN "OUTFIT_HEIST_NIGHT_BIKER_1" BREAK
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_2 RETURN "OUTFIT_HEIST_NIGHT_BIKER_2" BREAK
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_3 RETURN "OUTFIT_HEIST_NIGHT_BIKER_3" BREAK
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_0 RETURN "OUTFIT_HEIST_REFUSE_COLLECTOR_0" BREAK
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_1 RETURN "OUTFIT_HEIST_REFUSE_COLLECTOR_1" BREAK
|
|
CASE OUTFIT_HEIST_POLICE_0 RETURN "OUTFIT_HEIST_POLICE_0" BREAK
|
|
CASE OUTFIT_HEIST_PRISONER_0 RETURN "OUTFIT_HEIST_PRISONER_0" BREAK
|
|
CASE OUTFIT_HEIST_PRISON_OFFICER_0 RETURN "OUTFIT_HEIST_PRISON_OFFICER_0" BREAK
|
|
CASE OUTFIT_HEIST_TOURIST_0 RETURN "OUTFIT_HEIST_TOURIST_0" BREAK
|
|
CASE OUTFIT_HEIST_TOURIST_1 RETURN "OUTFIT_HEIST_TOURIST_1" BREAK
|
|
CASE OUTFIT_HEIST_TOURIST_2 RETURN "OUTFIT_HEIST_TOURIST_2" BREAK
|
|
CASE OUTFIT_HEIST_TOURIST_3 RETURN "OUTFIT_HEIST_TOURIST_3" BREAK
|
|
CASE OUTFIT_HEIST_HAZCHEM_0 RETURN "OUTFIT_HEIST_HAZCHEM_0" BREAK
|
|
CASE OUTFIT_HEIST_HAZCHEM_1 RETURN "OUTFIT_HEIST_HAZCHEM_1" BREAK
|
|
CASE OUTFIT_HEIST_HAZCHEM_2 RETURN "OUTFIT_HEIST_HAZCHEM_2" BREAK
|
|
CASE OUTFIT_HEIST_HAZCHEM_3 RETURN "OUTFIT_HEIST_HAZCHEM_3" BREAK
|
|
CASE OUTFIT_HEIST_COVERALLS_0 RETURN "OUTFIT_HEIST_COVERALLS_0" BREAK
|
|
CASE OUTFIT_HEIST_COVERALLS_1 RETURN "OUTFIT_HEIST_COVERALLS_1" BREAK
|
|
CASE OUTFIT_HEIST_COVERALLS_2 RETURN "OUTFIT_HEIST_COVERALLS_2" BREAK
|
|
CASE OUTFIT_HEIST_COVERALLS_3 RETURN "OUTFIT_HEIST_COVERALLS_3" BREAK
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_0 RETURN "OUTFIT_HEIST_FLIGHT_SUIT_0" BREAK
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_1 RETURN "OUTFIT_HEIST_FLIGHT_SUIT_1" BREAK
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_2 RETURN "OUTFIT_HEIST_FLIGHT_SUIT_2" BREAK
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_3 RETURN "OUTFIT_HEIST_FLIGHT_SUIT_3" BREAK
|
|
CASE OUTFIT_RAPUNZEL_ATTACK RETURN "OUTFIT_RAPUNZEL_ATTACK" BREAK
|
|
CASE OUTFIT_RAPUNZEL_DEFEND RETURN "OUTFIT_RAPUNZEL_DEFEND" BREAK
|
|
CASE OUTFIT_T_MASKED_NIGHT RETURN "OUTFIT_T_MASKED_NIGHT" BREAK
|
|
CASE OUTFIT_T_MASKED_TUNDRA RETURN "OUTFIT_T_MASKED_TUNDRA" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_T_MASKED_FOREST RETURN "OUTFIT_T_MASKED_FOREST" BREAK
|
|
CASE OUTFIT_FOXHUNT_FOX RETURN "OUTFIT_FOXHUNT_FOX" BREAK
|
|
CASE OUTFIT_FOXHUNT_FOX_ALT RETURN "OUTFIT_FOXHUNT_FOX_ALT" BREAK
|
|
CASE OUTFIT_FOXHUNT_HOUND RETURN "OUTFIT_FOXHUNT_HOUND" BREAK
|
|
CASE OUTFIT_PRISON_POLICE_OFFICER_VS RETURN "OUTFIT_PRISON_POLICE_OFFICER_VS" BREAK
|
|
CASE OUTFIT_PRISON_PRISONER_VS RETURN "OUTFIT_PRISON_PRISONER_VS" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAFULL RETURN "OUTFIT_MASK_BALACLAVAFULL" BREAK
|
|
CASE OUTFIT_MASK_REBREATHER RETURN "OUTFIT_MASK_REBREATHER" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVA RETURN "OUTFIT_MASK_BALACLAVA" BREAK
|
|
CASE OUTFIT_MASK_GASMASK RETURN "OUTFIT_MASK_GASMASK" BREAK
|
|
CASE OUTFIT_MASK_PIG RETURN "OUTFIT_MASK_PIG" BREAK
|
|
CASE OUTFIT_MASK_BIGSKULL RETURN "OUTFIT_MASK_BIGSKULL" BREAK
|
|
CASE OUTFIT_MASK_MONKEYSMOKING RETURN "OUTFIT_MASK_MONKEYSMOKING" BREAK
|
|
CASE OUTFIT_MASK_HOCKEYJASON RETURN "OUTFIT_MASK_HOCKEYJASON" BREAK
|
|
CASE OUTFIT_MASK_APE RETURN "OUTFIT_MASK_APE" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL RETURN "OUTFIT_MASK_CARNIVAL" BREAK
|
|
CASE OUTFIT_MASK_GOBLIN RETURN "OUTFIT_MASK_GOBLIN" BREAK
|
|
CASE OUTFIT_MASK_SANTA RETURN "OUTFIT_MASK_SANTA" BREAK
|
|
CASE OUTFIT_MASK_CREEPYMOOSE RETURN "OUTFIT_MASK_CREEPYMOOSE" BREAK
|
|
CASE OUTFIT_MASK_SNOWMANHEAD RETURN "OUTFIT_MASK_SNOWMANHEAD" BREAK
|
|
CASE OUTFIT_MASK_MASQUERADEEYES RETURN "OUTFIT_MASK_MASQUERADEEYES" BREAK
|
|
CASE OUTFIT_MASK_MASQUERADENOSEY RETURN "OUTFIT_MASK_MASQUERADENOSEY" BREAK
|
|
CASE OUTFIT_MASK_CREEPYBABY RETURN "OUTFIT_MASK_CREEPYBABY" BREAK
|
|
CASE OUTFIT_MASK_HOCKEYBLUE RETURN "OUTFIT_MASK_HOCKEYBLUE" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_MASK_HOCKEYSKULL RETURN "OUTFIT_MASK_HOCKEYSKULL" BREAK
|
|
CASE OUTFIT_MASK_WARRIOR RETURN "OUTFIT_MASK_WARRIOR" BREAK
|
|
CASE OUTFIT_MASK_CAT RETURN "OUTFIT_MASK_CAT" BREAK
|
|
CASE OUTFIT_MASK_FOX RETURN "OUTFIT_MASK_FOX" BREAK
|
|
CASE OUTFIT_MASK_OWL RETURN "OUTFIT_MASK_OWL" BREAK
|
|
CASE OUTFIT_MASK_RACCOON RETURN "OUTFIT_MASK_RACCOON" BREAK
|
|
CASE OUTFIT_MASK_BROWNBEAR RETURN "OUTFIT_MASK_BROWNBEAR" BREAK
|
|
CASE OUTFIT_MASK_BISON RETURN "OUTFIT_MASK_BISON" BREAK
|
|
CASE OUTFIT_MASK_BULL RETURN "OUTFIT_MASK_BULL" BREAK
|
|
CASE OUTFIT_MASK_EAGLE RETURN "OUTFIT_MASK_EAGLE" BREAK
|
|
CASE OUTFIT_MASK_VULTURE RETURN "OUTFIT_MASK_VULTURE" BREAK
|
|
CASE OUTFIT_MASK_WOLF RETURN "OUTFIT_MASK_WOLF" BREAK
|
|
CASE OUTFIT_HOS_SUIT RETURN "OUTFIT_HOS_SUIT" BREAK
|
|
CASE OUTFIT_REFUSE_COLLECTOR RETURN "OUTFIT_REFUSE_COLLECTOR" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_0 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_1 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_2 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_3 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_4 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_5 RETURN "OUTFIT_VERSUS_CLASSIC_JUNGLE_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_0 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_1 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_2 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_3 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_4 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_5 RETURN "OUTFIT_VERSUS_CLASSIC_STEEL_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_0 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_1 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_2 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_3 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_3" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_4 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_5 RETURN "OUTFIT_VERSUS_CLASSIC_STREET_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_0 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_1 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_2 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_3 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_4 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_5 RETURN "OUTFIT_VERSUS_CLASSIC_TACTICAL_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_0 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_1 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_2 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_3 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_4 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_5 RETURN "OUTFIT_VERSUS_CLASSIC_DUNE_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_0 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_1 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_2 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_3 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_4 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_5 RETURN "OUTFIT_VERSUS_CLASSIC_SWAMP_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_0 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_1 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_2 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_3 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_4 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_5 RETURN "OUTFIT_VERSUS_CLASSIC_FAMILIES_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_0 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_1 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_2 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_3 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_3" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_4 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_5 RETURN "OUTFIT_VERSUS_CLASSIC_BALLAS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_0 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_1 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_2 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_3 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_4 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_5 RETURN "OUTFIT_VERSUS_CLASSIC_HITMEN_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_0 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_1 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_2 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_3 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_4 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_5 RETURN "OUTFIT_VERSUS_CLASSIC_ASSASSINS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_0 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_1 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_2 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_3 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_4 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_5 RETURN "OUTFIT_VERSUS_CLASSIC_COPS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_0 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_1 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_2 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_3 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_4 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_5 RETURN "OUTFIT_VERSUS_CLASSIC_CRIMINALS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_1 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_2 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_3 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_3" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_4 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_5 RETURN "OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_0 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_1 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_2 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_3 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_4 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_5 RETURN "OUTFIT_VERSUS_CLASSIC_BIKERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0 RETURN "OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0 RETURN "OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_0 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_1 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_2 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_3 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_4 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_5 RETURN "OUTFIT_VERSUS_THEMED_SLASHERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_0 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_0" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_1 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_1" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_2 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_2" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_3 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_3" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_4 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_4" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_5 RETURN "OUTFIT_VERSUS_THEMED_BUBBLEGUMS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_0 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_1 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_2 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_3 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_4 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_5 RETURN "OUTFIT_VERSUS_CLASSIC_STINKERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WIMPEES_0 RETURN "OUTFIT_VERSUS_CLASSIC_WIMPEES_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_0 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_0" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_1 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_2 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_3 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_4 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_5 RETURN "OUTFIT_VERSUS_CLASSIC_DEVILS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_0 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_1 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_2 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_3 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_4 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_5 RETURN "OUTFIT_VERSUS_CLASSIC_ANGELS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_0 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_1 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_2 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_3 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_4 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_5 RETURN "OUTFIT_VERSUS_CLASSIC_MONKEYS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_0 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_0" BREAK
|
|
// CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_1 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_1" BREAK
|
|
// CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_2 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_3 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_3" BREAK
|
|
// CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_4 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_5 RETURN "OUTFIT_VERSUS_CLASSIC_SCIENTISTS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_0 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_1 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_2 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_3 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_4 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_5 RETURN "OUTFIT_VERSUS_CLASSIC_CATS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_0 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_0" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_1 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_2 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_3 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_4 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_5 RETURN "OUTFIT_VERSUS_CLASSIC_BIRDS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_0 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_1 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_2 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_3 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_4 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_5 RETURN "OUTFIT_VERSUS_CLASSIC_BLUE_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_0 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_1 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_2 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_3 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_4 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_5 RETURN "OUTFIT_VERSUS_CLASSIC_ORANGE_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_0 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_1 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_2 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_3 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_4 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_5 RETURN "OUTFIT_VERSUS_CLASSIC_WEREWOLVES_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_0 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_1 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_2 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_3 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_4 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_5 RETURN "OUTFIT_VERSUS_CLASSIC_MUMMIES_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_0 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_0" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_1 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_2 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_3 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_4 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_5 RETURN "OUTFIT_VERSUS_CLASSIC_RAVENS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_0 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_1 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_2 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_3 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_4 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_5 RETURN "OUTFIT_VERSUS_CLASSIC_GHOULS_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_0 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_1 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_2 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_3 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_4 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_5 RETURN "OUTFIT_VERSUS_CLASSIC_ZOMBIES_5" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_0 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_0" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_1 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_1" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_2 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_2" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_3 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_3" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_4 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_4" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_5 RETURN "OUTFIT_VERSUS_CLASSIC_COWBOYS_5" BREAK
|
|
CASE OUTFIT_NG_CASUAL_0 RETURN "OUTFIT_NG_CASUAL_0" BREAK
|
|
CASE OUTFIT_NG_CASUAL_1 RETURN "OUTFIT_NG_CASUAL_1" BREAK
|
|
CASE OUTFIT_NG_CASUAL_2 RETURN "OUTFIT_NG_CASUAL_2" BREAK
|
|
CASE OUTFIT_NG_CASUAL_3 RETURN "OUTFIT_NG_CASUAL_3" BREAK
|
|
CASE OUTFIT_NG_CASUAL_4 RETURN "OUTFIT_NG_CASUAL_4" BREAK
|
|
CASE OUTFIT_NG_CASUAL_5 RETURN "OUTFIT_NG_CASUAL_5" BREAK
|
|
CASE OUTFIT_NG_CASUAL_6 RETURN "OUTFIT_NG_CASUAL_6" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_NG_CASUAL_7 RETURN "OUTFIT_NG_CASUAL_7" BREAK
|
|
CASE OUTFIT_NG_STREET_0 RETURN "OUTFIT_NG_STREET_0" BREAK
|
|
CASE OUTFIT_NG_STREET_1 RETURN "OUTFIT_NG_STREET_1" BREAK
|
|
CASE OUTFIT_NG_STREET_2 RETURN "OUTFIT_NG_STREET_2" BREAK
|
|
CASE OUTFIT_NG_STREET_3 RETURN "OUTFIT_NG_STREET_3" BREAK
|
|
CASE OUTFIT_NG_STREET_4 RETURN "OUTFIT_NG_STREET_4" BREAK
|
|
CASE OUTFIT_NG_STREET_5 RETURN "OUTFIT_NG_STREET_5" BREAK
|
|
CASE OUTFIT_NG_STREET_6 RETURN "OUTFIT_NG_STREET_6" BREAK
|
|
CASE OUTFIT_NG_STREET_7 RETURN "OUTFIT_NG_STREET_7" BREAK
|
|
CASE OUTFIT_NG_FLASHY_0 RETURN "OUTFIT_NG_FLASHY_0" BREAK
|
|
CASE OUTFIT_NG_FLASHY_1 RETURN "OUTFIT_NG_FLASHY_1" BREAK
|
|
CASE OUTFIT_NG_FLASHY_2 RETURN "OUTFIT_NG_FLASHY_2" BREAK
|
|
CASE OUTFIT_NG_FLASHY_3 RETURN "OUTFIT_NG_FLASHY_3" BREAK
|
|
CASE OUTFIT_NG_FLASHY_4 RETURN "OUTFIT_NG_FLASHY_4" BREAK
|
|
CASE OUTFIT_NG_FLASHY_5 RETURN "OUTFIT_NG_FLASHY_5" BREAK
|
|
CASE OUTFIT_NG_FLASHY_6 RETURN "OUTFIT_NG_FLASHY_6" BREAK
|
|
CASE OUTFIT_NG_FLASHY_7 RETURN "OUTFIT_NG_FLASHY_7" BREAK
|
|
CASE OUTFIT_NG_PARTY_0 RETURN "OUTFIT_NG_PARTY_0" BREAK
|
|
CASE OUTFIT_NG_PARTY_1 RETURN "OUTFIT_NG_PARTY_1" BREAK
|
|
CASE OUTFIT_NG_PARTY_2 RETURN "OUTFIT_NG_PARTY_2" BREAK
|
|
CASE OUTFIT_NG_PARTY_3 RETURN "OUTFIT_NG_PARTY_3" BREAK
|
|
CASE OUTFIT_NG_PARTY_4 RETURN "OUTFIT_NG_PARTY_4" BREAK
|
|
CASE OUTFIT_NG_PARTY_5 RETURN "OUTFIT_NG_PARTY_5" BREAK
|
|
CASE OUTFIT_NG_PARTY_6 RETURN "OUTFIT_NG_PARTY_6" BREAK
|
|
CASE OUTFIT_NG_PARTY_7 RETURN "OUTFIT_NG_PARTY_7" BREAK
|
|
CASE OUTFIT_NG_BEACH_0 RETURN "OUTFIT_NG_BEACH_0" BREAK
|
|
CASE OUTFIT_NG_BEACH_1 RETURN "OUTFIT_NG_BEACH_1" BREAK
|
|
CASE OUTFIT_NG_BEACH_2 RETURN "OUTFIT_NG_BEACH_2" BREAK
|
|
CASE OUTFIT_NG_BEACH_3 RETURN "OUTFIT_NG_BEACH_3" BREAK
|
|
CASE OUTFIT_NG_BEACH_4 RETURN "OUTFIT_NG_BEACH_4" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_NG_BEACH_5 RETURN "OUTFIT_NG_BEACH_5" BREAK
|
|
CASE OUTFIT_NG_BEACH_6 RETURN "OUTFIT_NG_BEACH_6" BREAK
|
|
CASE OUTFIT_NG_BEACH_7 RETURN "OUTFIT_NG_BEACH_7" BREAK
|
|
CASE OUTFIT_NG_SMART_0 RETURN "OUTFIT_NG_SMART_0" BREAK
|
|
CASE OUTFIT_NG_SMART_1 RETURN "OUTFIT_NG_SMART_1" BREAK
|
|
CASE OUTFIT_NG_SMART_2 RETURN "OUTFIT_NG_SMART_2" BREAK
|
|
CASE OUTFIT_NG_SMART_3 RETURN "OUTFIT_NG_SMART_3" BREAK
|
|
CASE OUTFIT_NG_SMART_4 RETURN "OUTFIT_NG_SMART_4" BREAK
|
|
CASE OUTFIT_NG_SMART_5 RETURN "OUTFIT_NG_SMART_5" BREAK
|
|
CASE OUTFIT_NG_SMART_6 RETURN "OUTFIT_NG_SMART_6" BREAK
|
|
CASE OUTFIT_NG_SMART_7 RETURN "OUTFIT_NG_SMART_7" BREAK
|
|
CASE OUTFIT_NG_SPORTY_0 RETURN "OUTFIT_NG_SPORTY_0" BREAK
|
|
CASE OUTFIT_NG_SPORTY_1 RETURN "OUTFIT_NG_SPORTY_1" BREAK
|
|
CASE OUTFIT_NG_SPORTY_2 RETURN "OUTFIT_NG_SPORTY_2" BREAK
|
|
CASE OUTFIT_NG_SPORTY_3 RETURN "OUTFIT_NG_SPORTY_3" BREAK
|
|
CASE OUTFIT_NG_SPORTY_4 RETURN "OUTFIT_NG_SPORTY_4" BREAK
|
|
CASE OUTFIT_NG_SPORTY_5 RETURN "OUTFIT_NG_SPORTY_5" BREAK
|
|
CASE OUTFIT_NG_SPORTY_6 RETURN "OUTFIT_NG_SPORTY_6" BREAK
|
|
CASE OUTFIT_NG_SPORTY_7 RETURN "OUTFIT_NG_SPORTY_7" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_0 RETURN "OUTFIT_NG_ECCENTRIC_0" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_1 RETURN "OUTFIT_NG_ECCENTRIC_1" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_2 RETURN "OUTFIT_NG_ECCENTRIC_2" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_3 RETURN "OUTFIT_NG_ECCENTRIC_3" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_4 RETURN "OUTFIT_NG_ECCENTRIC_4" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_5 RETURN "OUTFIT_NG_ECCENTRIC_5" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_6 RETURN "OUTFIT_NG_ECCENTRIC_6" BREAK
|
|
CASE OUTFIT_NG_ECCENTRIC_7 RETURN "OUTFIT_NG_ECCENTRIC_7" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_0 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_1 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_2 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_3 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_4 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_ZOOT_5 RETURN "OUTFIT_VERSUS_LOWR_BLUE_ZOOT_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_0 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_1 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_2 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_3 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_4 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_ZOOT_5 RETURN "OUTFIT_VERSUS_LOWR_RED_ZOOT_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_0 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_1 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_2 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_3 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_4 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_FORMAL_5 RETURN "OUTFIT_VERSUS_LOWR_FORMAL_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_0 RETURN "OUTFIT_VERSUS_LOWR_STREET_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_1 RETURN "OUTFIT_VERSUS_LOWR_STREET_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_2 RETURN "OUTFIT_VERSUS_LOWR_STREET_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_3 RETURN "OUTFIT_VERSUS_LOWR_STREET_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_4 RETURN "OUTFIT_VERSUS_LOWR_STREET_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_STREET_5 RETURN "OUTFIT_VERSUS_LOWR_STREET_5" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_WOLVES_0 RETURN "OUTFIT_LOW_FLOW_WOLVES_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_EAGLES_0 RETURN "OUTFIT_LOW_FLOW_EAGLES_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BULLS_0 RETURN "OUTFIT_LOW_FLOW_BULLS_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BEARS_0 RETURN "OUTFIT_LOW_FLOW_BEARS_0" BREAK
|
|
CASE OUTFIT_SOLO_SENIORS_0 RETURN "OUTFIT_SOLO_SENIORS_0" BREAK
|
|
CASE OUTFIT_SOLO_GENTS_0 RETURN "OUTFIT_SOLO_GENTS_0" BREAK
|
|
CASE OUTFIT_SOLO_FRANKS_0 RETURN "OUTFIT_SOLO_FRANKS_0" BREAK
|
|
CASE OUTFIT_SOLO_VAMPS_0 RETURN "OUTFIT_SOLO_VAMPS_0" BREAK
|
|
CASE OUTFIT_SOLO_KITTENS_0 RETURN "OUTFIT_SOLO_KITTENS_0" BREAK
|
|
CASE OUTFIT_SOLO_FOXES_0 RETURN "OUTFIT_SOLO_FOXES_0" BREAK
|
|
CASE OUTFIT_SOLO_RACCOONS_0 RETURN "OUTFIT_SOLO_RACCOONS_0" BREAK
|
|
CASE OUTFIT_SOLO_OWLS_0 RETURN "OUTFIT_SOLO_OWLS_0" BREAK
|
|
CASE OUTFIT_SOLO_BUGS_0 RETURN "OUTFIT_SOLO_BUGS_0" BREAK
|
|
CASE OUTFIT_SOLO_PIGS_0 RETURN "OUTFIT_SOLO_PIGS_0" BREAK
|
|
CASE OUTFIT_SOLO_FROST_0 RETURN "OUTFIT_SOLO_FROST_0" BREAK
|
|
CASE OUTFIT_SOLO_POLAR_0 RETURN "OUTFIT_SOLO_POLAR_0" BREAK
|
|
CASE OUTFIT_SOLO_REPTILIANS_0 RETURN "OUTFIT_SOLO_REPTILIANS_0" BREAK
|
|
CASE OUTFIT_SOLO_SATANS_0 RETURN "OUTFIT_SOLO_SATANS_0" BREAK
|
|
CASE OUTFIT_SOLO_SUBURBIA_0 RETURN "OUTFIT_SOLO_SUBURBIA_0" BREAK
|
|
CASE OUTFIT_SOLO_MONSTER_MILITIA_0 RETURN "OUTFIT_SOLO_MONSTER_MILITIA_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_NORTH_0 RETURN "OUTFIT_LOW_FLOW_NORTH_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_SOUTH_0 RETURN "OUTFIT_LOW_FLOW_SOUTH_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_STARS_0 RETURN "OUTFIT_LOW_FLOW_STARS_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_STRIPES_0 RETURN "OUTFIT_LOW_FLOW_STRIPES_0" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_0 RETURN "OUTFIT_VERSUS_HAL_MANIACS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_1 RETURN "OUTFIT_VERSUS_HAL_MANIACS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_2 RETURN "OUTFIT_VERSUS_HAL_MANIACS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_3 RETURN "OUTFIT_VERSUS_HAL_MANIACS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_4 RETURN "OUTFIT_VERSUS_HAL_MANIACS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_5 RETURN "OUTFIT_VERSUS_HAL_MANIACS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_0 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_1 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_2 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_3 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_4 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_5 RETURN "OUTFIT_VERSUS_HAL_HOWLERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_0 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_1 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_2 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_3 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_4 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_5 RETURN "OUTFIT_VERSUS_HAL_RETILIANS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_0 RETURN "OUTFIT_VERSUS_HAL_SATANS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_1 RETURN "OUTFIT_VERSUS_HAL_SATANS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_2 RETURN "OUTFIT_VERSUS_HAL_SATANS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_3 RETURN "OUTFIT_VERSUS_HAL_SATANS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_4 RETURN "OUTFIT_VERSUS_HAL_SATANS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_5 RETURN "OUTFIT_VERSUS_HAL_SATANS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_0 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_1 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_2 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_3 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_4 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_5 RETURN "OUTFIT_VERSUS_HAL_DOUBLE_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_0 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_1 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_2 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_3 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_4 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_5 RETURN "OUTFIT_VERSUS_HAL_TRICKSTERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_0 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_1 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_2 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_3 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_4 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_5 RETURN "OUTFIT_VERSUS_HAL_SUBURBIA_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_1 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_2 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_3 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_4 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_5 RETURN "OUTFIT_VERSUS_HAL_MONSTER_MILITIA_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_0 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_1 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_2 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_3 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_4 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_5 RETURN "OUTFIT_VERSUS_HAL_PSYCHOS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_0 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_1 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_2 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_3 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_4 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_5 RETURN "OUTFIT_VERSUS_HAL_UNDEAD_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_0 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_1 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_2 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_3 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_4 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_5 RETURN "OUTFIT_VERSUS_HAL_DWELLERS_5" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_0 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_0" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_1 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_1" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_2 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_2" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_3 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_3" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_4 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_4" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_5 RETURN "OUTFIT_VERSUS_HAL_PIMP_WITCHES_5" BREAK
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_0 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_1 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_2 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_3 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_3" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_4 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_4" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_5 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_5" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_6 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_6" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_7 RETURN "OUTFIT_LOW_FLOW_LOWRIDER_7" BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_0 RETURN "OUTFIT_LOW_FLOW_VAGOS_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_1 RETURN "OUTFIT_LOW_FLOW_VAGOS_1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_2 RETURN "OUTFIT_LOW_FLOW_VAGOS_2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_3 RETURN "OUTFIT_LOW_FLOW_VAGOS_3" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_0 RETURN "OUTFIT_LOW_FLOW_BALLAS_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_1 RETURN "OUTFIT_LOW_FLOW_BALLAS_1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_2 RETURN "OUTFIT_LOW_FLOW_BALLAS_2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_3 RETURN "OUTFIT_LOW_FLOW_BALLAS_3" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_0 RETURN "OUTFIT_LOW_FLOW_FUNERAL_0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_1 RETURN "OUTFIT_LOW_FLOW_FUNERAL_1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_2 RETURN "OUTFIT_LOW_FLOW_FUNERAL_2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_3 RETURN "OUTFIT_LOW_FLOW_FUNERAL_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_0 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_1 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_2 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_3 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_4 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_5 RETURN "OUTFIT_VERSUS_LOWR_BLUE_SMART_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_0 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_1 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_2 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_3 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_4 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_5 RETURN "OUTFIT_VERSUS_LOWR_RED_SMART_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_0 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_1 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_2 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_3 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_4 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_5 RETURN "OUTFIT_VERSUS_LOWR_WHITE_SMART_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_0 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_1 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_2 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_3 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_4 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_5 RETURN "OUTFIT_VERSUS_LOWR_BLACK_SMART_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_0 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_1 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_2 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_3 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_4 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_5 RETURN "OUTFIT_VERSUS_LOWR_YELLOW_SPORT_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_0 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_1 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_2 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_3 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_4 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_5 RETURN "OUTFIT_VERSUS_LOWR_GREEN_SPORT_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_0 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_1 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_2 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_3 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_4 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_5 RETURN "OUTFIT_VERSUS_LOWR_WHITE_STREET_5" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_0 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_0" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_1 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_1" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_2 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_2" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_3 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_3" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_4 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_4" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_5 RETURN "OUTFIT_VERSUS_LOWR_RED_STREET_5" BREAK
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_0 RETURN "OUTFIT_VERSUS_CLASSIC_METAL_0" BREAK
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_0 RETURN "OUTFIT_ADVERSARY_B_OVERRIDE_0" BREAK
|
|
ENDSWITCH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_DROP_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_1 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_2 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_3 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_1 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_2 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_3 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_1 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_2 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_3 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_1 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_2 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_3 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_3"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0"
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_1 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_1"
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_2 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_2"
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_3 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_3"
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_4 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_4"
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_5 RETURN "OUTFIT_VERSUS_LOWR2_BROWN_SPORT_5"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_1 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_1"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_2 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_2"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_3 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_3"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_4 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_4"
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_5 RETURN "OUTFIT_VERSUS_LOWR2_WHITE_SPORT_5"
|
|
ENDSWITCH
|
|
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_5"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_5"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_MONO_5"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_5"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_5"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_0 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_0"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_1 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_1"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_2 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_2"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_3 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_3"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_4 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_4"
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_5 RETURN "OUTFIT_VERSUS_THEMED_EXEC_COOKIES_5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_STUNT_RACE_BIKER_0 RETURN "OUTFIT_STUNT_RACE_BIKER_0"
|
|
CASE OUTFIT_STUNT_RACE_BIKER_1 RETURN "OUTFIT_STUNT_RACE_BIKER_1"
|
|
CASE OUTFIT_STUNT_RACE_STUNT_0 RETURN "OUTFIT_STUNT_RACE_STUNT_0"
|
|
CASE OUTFIT_STUNT_RACE_STUNT_1 RETURN "OUTFIT_STUNT_RACE_STUNT_1"
|
|
CASE OUTFIT_STUNT_RACE_RACER_0 RETURN "OUTFIT_STUNT_RACE_RACER_0"
|
|
CASE OUTFIT_STUNT_RACE_RACER_1 RETURN "OUTFIT_STUNT_RACE_RACER_1"
|
|
CASE OUTFIT_STUNT_RACE_MOTO_0 RETURN "OUTFIT_STUNT_RACE_MOTO_0"
|
|
CASE OUTFIT_STUNT_RACE_MOTO_1 RETURN "OUTFIT_STUNT_RACE_MOTO_1"
|
|
// CASE 8 RETURN "FMSTP_CUSTOM"
|
|
CASE OUTFIT_MP_FREEMODE RETURN "OUTFIT_MP_FREEMODE"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA RETURN "OUTFIT_GANGOPS_HEIST_SCUBA"
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK RETURN "OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0 RETURN "OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_1 RETURN "OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_0 RETURN "OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1 RETURN "OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_1 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_2 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_1 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_2 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3 RETURN "OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0 RETURN "OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_1 RETURN "OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_2 RETURN "OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3 RETURN "OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0 RETURN "OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1 RETURN "OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2 RETURN "OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3 RETURN "OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0 RETURN "OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1 RETURN "OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2 RETURN "OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3 RETURN "OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_1 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_2 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_1 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_2 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3 RETURN "OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_1 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_2 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_1 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_2 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_1 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_2 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_1 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_2 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3 RETURN "OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0 RETURN "OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_1 RETURN "OUTFIT_GANGOPS_HEIST_SUB_DRIVER_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_2 RETURN "OUTFIT_GANGOPS_HEIST_SUB_DRIVER_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3 RETURN "OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0 RETURN "OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_1 RETURN "OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_2 RETURN "OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3 RETURN "OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_1 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_2 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_1 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_2 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3 RETURN "OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0 RETURN "OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_1 RETURN "OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_2 RETURN "OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3 RETURN "OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0 RETURN "OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_1 RETURN "OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_2 RETURN "OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3 RETURN "OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_0 RETURN "OUTFIT_GANGOPS_HEIST_GORKA_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_1 RETURN "OUTFIT_GANGOPS_HEIST_GORKA_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_2 RETURN "OUTFIT_GANGOPS_HEIST_GORKA_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_3 RETURN "OUTFIT_GANGOPS_HEIST_GORKA_3"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_1 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_2 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_4 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_5 RETURN "OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_0 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_1 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_2 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_3 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_4 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_5 RETURN "OUTFIT_CASINO_HEIST_STEALTH_I_5"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_0 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_1 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_2 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_3 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_4 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_5 RETURN "OUTFIT_CASINO_HEIST_STEALTH_II_5"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_0 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_1 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_2 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_3 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_4 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_5 RETURN "OUTFIT_CASINO_HEIST_STEALTH_III_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_1 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_2 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_4 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_5 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_5"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_1 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_2 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_4 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_5 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_5"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_1 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_2 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_4 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_5 RETURN "OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_0 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_0"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_1 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_1"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_2 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_2"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_3 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_3"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_4 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_4"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_5 RETURN "OUTFIT_CASINO_HEIST_BUGSTARS_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_1 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_1"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_2 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_2"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_4 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_4"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_5 RETURN "OUTFIT_CASINO_HEIST_GRUPPE_SECHS_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_0 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_0"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_1 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_1"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_2 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_2"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_3 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_3"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_4 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_4"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_5 RETURN "OUTFIT_CASINO_HEIST_MAINTENANCE_5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_0 RETURN "OUTFIT_CASINO_HEIST_CELEB_0"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_1 RETURN "OUTFIT_CASINO_HEIST_CELEB_1"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_2 RETURN "OUTFIT_CASINO_HEIST_CELEB_2"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_3 RETURN "OUTFIT_CASINO_HEIST_CELEB_3"
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_BLUE_0 RETURN "OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_BLUE_0"
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
#ENDIF
|
|
|
|
FUNC BOOL GET_DLC_CREW_EMBLEM_HASH(BOOL bMale, INT iCount, INT &iHash)
|
|
iHash = 0
|
|
IF bMale
|
|
SWITCH iCount
|
|
CASE 0 iHash = HASH("DLC_MP_LTS_M_DECL_0_0") BREAK
|
|
CASE 1 iHash = HASH("DLC_MP_LOW_M_DECL_0_0") BREAK
|
|
CASE 2 iHash = HASH("DLC_MP_BIKER_M_DECL_0_1") BREAK
|
|
CASE 3 iHash = HASH("DLC_MP_BIKER_M_DECL_0_2") BREAK
|
|
CASE 4 iHash = HASH("DLC_MP_BIKER_M_DECL_0_3") BREAK
|
|
CASE 5 iHash = HASH("DLC_MP_BIKER_M_DECL_0_4") BREAK
|
|
CASE 6 iHash = HASH("DLC_MP_BIKER_M_DECL_0_5") BREAK
|
|
CASE 7 iHash = HASH("DLC_MP_BIKER_M_DECL_0_6") BREAK
|
|
CASE 8 iHash = HASH("DLC_MP_BIKER_M_DECL_0_7") BREAK
|
|
CASE 9 iHash = HASH("DLC_MP_BIKER_M_DECL_0_8") BREAK
|
|
CASE 10 iHash = HASH("DLC_MP_BIKER_M_DECL_1_0") BREAK
|
|
CASE 11 iHash = HASH("DLC_MP_BIKER_M_DECL_2_0") BREAK
|
|
CASE 12 iHash = HASH("DLC_MP_BIKER_M_DECL_3_0") BREAK
|
|
CASE 13 iHash = HASH("DLC_MP_BIKER_M_DECL_4_0") BREAK
|
|
CASE 14 iHash = HASH("DLC_MP_BIKER_M_DECL_5_0") BREAK
|
|
CASE 15 iHash = HASH("DLC_MP_BIKER_M_DECL_6_0") BREAK
|
|
CASE 16 iHash = HASH("DLC_MP_BIKER_M_DECL_7_0") BREAK
|
|
CASE 17 iHash = HASH("DLC_MP_BIKER_M_DECL_8_0") BREAK
|
|
CASE 18 iHash = HASH("DLC_MP_BIKER_M_DECL_9_0") BREAK
|
|
CASE 19 iHash = HASH("DLC_MP_BIKER_M_DECL_10_0") BREAK
|
|
CASE 20 iHash = HASH("DLC_MP_BIKER_M_DECL_11_0") BREAK
|
|
CASE 21 iHash = HASH("DLC_MP_BIKER_M_DECL_12_0") BREAK
|
|
CASE 22 iHash = HASH("DLC_MP_BIKER_M_DECL_13_0") BREAK
|
|
CASE 23 iHash = HASH("DLC_MP_BIKER_M_DECL_14_0") BREAK
|
|
CASE 24 iHash = HASH("DLC_MP_BIKER_M_DECL_15_0") BREAK
|
|
CASE 25 iHash = HASH("DLC_MP_BIKER_M_DECL_16_0") BREAK
|
|
CASE 26 iHash = HASH("DLC_MP_BIKER_M_DECL_17_0") BREAK
|
|
CASE 27 iHash = HASH("DLC_MP_BIKER_M_DECL_18_0") BREAK
|
|
CASE 28 iHash = HASH("DLC_MP_GR_M_DECL_0_0") BREAK
|
|
CASE 29 iHash = HASH("DLC_MP_GR_M_DECL_1_0") BREAK
|
|
CASE 30 iHash = HASH("DLC_MP_GR_M_DECL_2_0") BREAK
|
|
CASE 31 iHash = HASH("DLC_MP_GR_M_DECL_3_0") BREAK
|
|
CASE 32 iHash = HASH("DLC_MP_GR_M_DECL_4_0") BREAK
|
|
CASE 33 iHash = HASH("DLC_MP_AR_M_DECL_1_0") BREAK
|
|
CASE 34 iHash = HASH("DLC_MP_SMUG_M_DECL_0_0") BREAK
|
|
CASE 35 iHash = HASH("DLC_MP_SMUG_M_DECL_1_0") BREAK
|
|
CASE 36 iHash = HASH("DLC_MP_TUNER_M_DECL_0_0") BREAK
|
|
CASE 37 iHash = HASH("DLC_MP_TUNER_M_DECL_1_0") BREAK
|
|
CASE 38 iHash = HASH("DLC_MP_TUNER_M_DECL_2_0") BREAK
|
|
CASE 39 iHash = HASH("DLC_MP_TUNER_M_DECL_3_0") BREAK
|
|
CASE 40 iHash = HASH("DLC_MP_TUNER_M_DECL_4_0") BREAK
|
|
CASE 41 iHash = HASH("DLC_MP_TUNER_M_DECL_5_0") BREAK
|
|
CASE 42 iHash = HASH("DLC_MP_TUNER_M_DECL_6_0") BREAK
|
|
CASE 43 iHash = HASH("DLC_MP_TUNER_M_DECL_7_0") BREAK
|
|
CASE 44 iHash = HASH("DLC_MP_TUNER_M_DECL_37_0") BREAK
|
|
CASE 45 iHash = HASH("DLC_MP_TUNER_M_DECL_38_0") BREAK
|
|
#IF FEATURE_FIXER
|
|
CASE 46 iHash = HASH("DLC_MP_FIXER_M_DECL_0_0") BREAK
|
|
CASE 47 iHash = HASH("DLC_MP_FIXER_M_DECL_1_0") BREAK
|
|
CASE 48 iHash = HASH("DLC_MP_FIXER_M_DECL_2_0") BREAK
|
|
CASE 49 iHash = HASH("DLC_MP_FIXER_M_DECL_3_0") BREAK
|
|
CASE 50 iHash = HASH("DLC_MP_FIXER_M_DECL_4_0") BREAK
|
|
CASE 51 iHash = HASH("DLC_MP_FIXER_M_DECL_5_0") BREAK
|
|
#ENDIF
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH iCount
|
|
CASE 0 iHash = HASH("DLC_MP_LTS_F_DECL_0_0") BREAK
|
|
CASE 1 iHash = HASH("DLC_MP_LOW_F_DECL_0_0") BREAK
|
|
CASE 2 iHash = HASH("DLC_MP_BIKER_F_DECL_0_1") BREAK
|
|
CASE 3 iHash = HASH("DLC_MP_BIKER_F_DECL_0_2") BREAK
|
|
CASE 4 iHash = HASH("DLC_MP_BIKER_F_DECL_0_3") BREAK
|
|
CASE 5 iHash = HASH("DLC_MP_BIKER_F_DECL_0_4") BREAK
|
|
CASE 6 iHash = HASH("DLC_MP_BIKER_F_DECL_0_5") BREAK
|
|
CASE 7 iHash = HASH("DLC_MP_BIKER_F_DECL_0_6") BREAK
|
|
CASE 8 iHash = HASH("DLC_MP_BIKER_F_DECL_0_7") BREAK
|
|
CASE 9 iHash = HASH("DLC_MP_BIKER_F_DECL_0_8") BREAK
|
|
CASE 10 iHash = HASH("DLC_MP_BIKER_F_DECL_1_0") BREAK
|
|
CASE 11 iHash = HASH("DLC_MP_BIKER_F_DECL_2_0") BREAK
|
|
CASE 12 iHash = HASH("DLC_MP_BIKER_F_DECL_3_0") BREAK
|
|
CASE 13 iHash = HASH("DLC_MP_BIKER_F_DECL_4_0") BREAK
|
|
CASE 14 iHash = HASH("DLC_MP_BIKER_F_DECL_5_0") BREAK
|
|
CASE 15 iHash = HASH("DLC_MP_BIKER_F_DECL_6_0") BREAK
|
|
CASE 16 iHash = HASH("DLC_MP_BIKER_F_DECL_7_0") BREAK
|
|
CASE 17 iHash = HASH("DLC_MP_BIKER_F_DECL_8_0") BREAK
|
|
CASE 18 iHash = HASH("DLC_MP_BIKER_F_DECL_9_0") BREAK
|
|
CASE 19 iHash = HASH("DLC_MP_BIKER_F_DECL_10_0") BREAK
|
|
CASE 20 iHash = HASH("DLC_MP_BIKER_F_DECL_11_0") BREAK
|
|
CASE 21 iHash = HASH("DLC_MP_BIKER_F_DECL_12_0") BREAK
|
|
CASE 22 iHash = HASH("DLC_MP_BIKER_F_DECL_13_0") BREAK
|
|
CASE 23 iHash = HASH("DLC_MP_BIKER_F_DECL_14_0") BREAK
|
|
CASE 24 iHash = HASH("DLC_MP_BIKER_F_DECL_15_0") BREAK
|
|
CASE 25 iHash = HASH("DLC_MP_BIKER_F_DECL_16_0") BREAK
|
|
CASE 26 iHash = HASH("DLC_MP_BIKER_F_DECL_17_0") BREAK
|
|
CASE 27 iHash = HASH("DLC_MP_BIKER_F_DECL_18_0") BREAK
|
|
CASE 28 iHash = HASH("DLC_MP_BIKER_F_DECL_19_0") BREAK
|
|
CASE 29 iHash = HASH("DLC_MP_BIKER_F_DECL_20_0") BREAK
|
|
CASE 30 iHash = HASH("DLC_MP_BIKER_F_DECL_21_0") BREAK
|
|
CASE 31 iHash = HASH("DLC_MP_BIKER_F_DECL_22_0") BREAK
|
|
CASE 32 iHash = HASH("DLC_MP_BIKER_F_DECL_23_0") BREAK
|
|
CASE 33 iHash = HASH("DLC_MP_BIKER_F_DECL_24_0") BREAK
|
|
CASE 34 iHash = HASH("DLC_MP_BIKER_F_DECL_25_0") BREAK
|
|
CASE 35 iHash = HASH("DLC_MP_BIKER_F_DECL_26_0") BREAK
|
|
CASE 36 iHash = HASH("DLC_MP_BIKER_F_DECL_27_0") BREAK
|
|
CASE 37 iHash = HASH("DLC_MP_GR_F_DECL_0_0") BREAK
|
|
CASE 38 iHash = HASH("DLC_MP_GR_F_DECL_1_0") BREAK
|
|
CASE 39 iHash = HASH("DLC_MP_GR_F_DECL_2_0") BREAK
|
|
CASE 40 iHash = HASH("DLC_MP_GR_F_DECL_3_0") BREAK
|
|
CASE 41 iHash = HASH("DLC_MP_GR_F_DECL_4_0") BREAK
|
|
CASE 42 iHash = HASH("DLC_MP_AR_F_DECL_1_0") BREAK
|
|
CASE 43 iHash = HASH("DLC_MP_SMUG_F_DECL_0_0") BREAK
|
|
CASE 44 iHash = HASH("DLC_MP_SMUG_F_DECL_1_0") BREAK
|
|
CASE 45 iHash = HASH("DLC_MP_TUNER_F_DECL_0_0") BREAK
|
|
CASE 46 iHash = HASH("DLC_MP_TUNER_F_DECL_1_0") BREAK
|
|
CASE 47 iHash = HASH("DLC_MP_TUNER_F_DECL_2_0") BREAK
|
|
CASE 48 iHash = HASH("DLC_MP_TUNER_F_DECL_3_0") BREAK
|
|
CASE 49 iHash = HASH("DLC_MP_TUNER_F_DECL_4_0") BREAK
|
|
CASE 50 iHash = HASH("DLC_MP_TUNER_F_DECL_5_0") BREAK
|
|
CASE 51 iHash = HASH("DLC_MP_TUNER_F_DECL_6_0") BREAK
|
|
CASE 52 iHash = HASH("DLC_MP_TUNER_F_DECL_7_0") BREAK
|
|
CASE 53 iHash = HASH("DLC_MP_TUNER_F_DECL_36_0") BREAK
|
|
CASE 54 iHash = HASH("DLC_MP_TUNER_F_DECL_37_0") BREAK
|
|
#IF FEATURE_FIXER
|
|
CASE 55 iHash = HASH("DLC_MP_FIXER_F_DECL_0_0") BREAK
|
|
CASE 56 iHash = HASH("DLC_MP_FIXER_F_DECL_1_0") BREAK
|
|
CASE 57 iHash = HASH("DLC_MP_FIXER_F_DECL_2_0") BREAK
|
|
CASE 58 iHash = HASH("DLC_MP_FIXER_F_DECL_3_0") BREAK
|
|
CASE 59 iHash = HASH("DLC_MP_FIXER_F_DECL_4_0") BREAK
|
|
CASE 60 iHash = HASH("DLC_MP_FIXER_F_DECL_5_0") BREAK
|
|
CASE 61 iHash = HASH("DLC_MP_FIXER_F_DECL_6_0") BREAK
|
|
CASE 62 iHash = HASH("DLC_MP_FIXER_F_DECL_7_0") BREAK
|
|
#ENDIF
|
|
ENDSWITCH
|
|
ENDIF
|
|
RETURN (iHash != 0)
|
|
ENDFUNC
|
|
|
|
PROC REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES()
|
|
|
|
INT iItemCount, iItemHash
|
|
INT iOutfitSlot
|
|
INT iSaveArraySlot = GET_SAVE_GAME_ARRAY_SLOT()
|
|
BOOl bMale = (GET_PACKED_STAT_INT(PACKED_CHAR_PICTURE, g_iPedComponentSlot) = 0)
|
|
scrShopPedComponent componentItem
|
|
|
|
REPEAT MAX_CUSTOM_OUTFIT_SLOTS iOutfitSlot
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] != 0
|
|
IF bMale // Male
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] <= 6
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", draw ", g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL])
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] = 0
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_DECL] = 0
|
|
ENDIF
|
|
ELSE
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] <= 5
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", draw ", g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL])
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] = 0
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_DECL] = 0
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iItemCount = 0
|
|
WHILE GET_DLC_CREW_EMBLEM_HASH(bMale, iItemCount, iItemHash)
|
|
GET_SHOP_PED_COMPONENT(iItemHash, componentItem)
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] = componentItem.m_drawableIndex
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", draw ", g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL])
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_DECL] = 0
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_DECL] = 0
|
|
ENDIF
|
|
iItemCount++
|
|
ENDWHILE
|
|
ENDIF
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF GET_COMMANDLINE_PARAM_EXISTS("sc_ExtraTattooDebug")
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot]
|
|
OR g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot]
|
|
OR g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot]
|
|
OR g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot]
|
|
OR g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot]
|
|
OR g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot]
|
|
PRINTLN("sc_ExtraTattooDebug: REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES")
|
|
DEBUG_PRINTCALLSTACK()
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew A")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew B")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew C")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew D")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew E")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot]
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem in slot ", iOutfitSlot, ", Crew F")
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot] = FALSE
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL) != 0
|
|
IF bMale
|
|
IF GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL) <= 6
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem from stored clothes")
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL, 0)
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_DECL, 0)
|
|
ENDIF
|
|
ELSE
|
|
IF GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL) <= 5
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem from stored clothes")
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL, 0)
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_DECL, 0)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iItemCount = 0
|
|
WHILE GET_DLC_CREW_EMBLEM_HASH(bMale, iItemCount, iItemHash)
|
|
GET_SHOP_PED_COMPONENT(iItemHash, componentItem)
|
|
IF GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL) = componentItem.m_drawableIndex
|
|
PRINTLN("REMOVE_CREW_EMBLEMS_FROM_STORED_CLOTHES - Removing crew emblem from stored clothes")
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL, 0)
|
|
SET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_DECL, 0)
|
|
ENDIF
|
|
iItemCount++
|
|
ENDWHILE
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
FUNC BOOL GET_MP_OUTFIT_STORED_IN_SLOT(MP_OUTFITS_DATA &sOutfitsData, INT iOutfitSlot,Bool bApplyMasks = FALSE, BOOL bSpareSlot = FALSE)
|
|
|
|
INT iComp
|
|
INT iProp
|
|
INT iSaveArraySlot = GET_SAVE_GAME_ARRAY_SLOT()
|
|
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
|
|
PRINTLN("[AMEC] GET_MP_OUTFIT_STORED_IN_SLOT - Getting outfit : ",iOutfitSlot)
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
// if its not a mask were getting or bApply masks is true grab data
|
|
if iComp != ENUM_TO_INT(PED_COMP_BERD)
|
|
or bApplyMasks
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp] != -1
|
|
sOutfitsData.iComponentDrawableID[iComp] = g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp]
|
|
sOutfitsData.iComponentTextureID[iComp] = g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp]
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_MP_OUTFIT_STORED_IN_SLOT - storing COMP: ",iComp, "ID: ",sOutfitsData.iComponentDrawableID[iComp] ," TXT:",sOutfitsData.iComponentTextureID[iComp] )
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 iProp
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp] != -1
|
|
sOutfitsData.iPropDrawableID[iProp] = g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp]
|
|
sOutfitsData.iPropTextureID[iProp] = g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][iProp]
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_MP_OUTFIT_STORED_IN_SLOT - storing PROP: ",iProp, "ID: ",sOutfitsData.iPropDrawableID[iProp] ," TXT:",sOutfitsData.iPropTextureID[iProp] )
|
|
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
sOutfitsData.iDLCTattooOverlay[0] = g_savedMPGlobalsNew.g_savedMPGlobals[iSaveArraySlot].MpSavedGeneral.iSavedOutfit_ShirtDecal[iOutfitSlot]
|
|
|
|
RETURN TRUE
|
|
ELSE
|
|
#IF IS_DEBUG_BUILD
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_MP_OUTFIT_STORED_IN_SLOT - FAILED - iOutfitSlot = ", iOutfitSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, "GET_MP_OUTFIT_STORED_IN_SLOT - FAILED - bSaveOutfit_Stored = ", PICK_STRING(g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot], "TRUE", "FALSE"))
|
|
#ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC SET_MP_OUTFIT_STORED_IN_SLOT(PED_INDEX pedID, INT iOutfitSlot, BOOL bBlockDecalUpdate = FALSE, BOOL bSpareSlot = FALSE)
|
|
|
|
BOOL bSafeToApply = FALSE
|
|
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
|
|
bSafeToApply = TRUE
|
|
|
|
INT iComp
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp] != -1
|
|
IF (g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp] >= GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(pedID, INT_TO_ENUM(PED_COMPONENT, iComp)))
|
|
OR (g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp] >= GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(pedID, INT_TO_ENUM(PED_COMPONENT, iComp), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp]))
|
|
PRINTLN("[AMEC] SET_MP_OUTFIT_STORED_IN_SLOT - Invalid variation detected: ",NATIVE_TO_INT(pedID),", outfit: ",iOutfitSlot, ", component: ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT, iComp)), ", variation: ", g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp], ",", g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp])
|
|
bSafeToApply = FALSE
|
|
BREAKLOOP
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
IF bSafeToApply
|
|
|
|
PRINTLN("[AMEC] SET_MP_OUTFIT_STORED_IN_SLOT - Setting outfit on ped: ",NATIVE_TO_INT(pedID),", outfit: ",iOutfitSlot)
|
|
|
|
INT iComp
|
|
INT iProp
|
|
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp] != -1
|
|
IF (INT_TO_ENUM(PED_COMPONENT, iComp) != PED_COMP_BERD)
|
|
SET_PED_COMPONENT_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp])
|
|
ELSE
|
|
PED_COMP_NAME_ENUM eBeardItem
|
|
eBeardItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(pedID, g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp], COMP_TYPE_BERD)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_BERD, eBeardItem, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
//Re-apply berd to fix hair issues.
|
|
SET_PED_COMPONENT_VARIATION(pedID, PED_COMP_BERD, GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_BERD))
|
|
|
|
CLEAR_ALL_PED_PROPS(pedID)
|
|
REPEAT 9 iProp
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp] != -1
|
|
|
|
IF (INT_TO_ENUM(PED_PROP_POSITION, iProp) = ANCHOR_HEAD)
|
|
AND IS_ITEM_A_HELMET(GET_ENTITY_MODEL(pedID), COMP_TYPE_PROPS, GET_PROP_ITEM_FROM_VARIATIONS(pedID, g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][iProp], ANCHOR_HEAD))
|
|
INT iPropIndex = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp]
|
|
INT iTextureIndex = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][iProp]
|
|
|
|
INT iDLCNameHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(ANCHOR_HEAD), iPropIndex, iTextureIndex)
|
|
|
|
//Check if we should apply the alternate version of the helmet
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHash) > 0
|
|
AND DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP)) != DOES_PLAYER_PREFER_VISOR_UP()
|
|
INT iRetNameHash = 0
|
|
PED_COMP_NAME_ENUM eAltPropName = DUMMY_PED_COMP
|
|
|
|
CPRINTLN(DEBUG_AMBIENT, "SET_MP_OUTFIT_STORED_IN_SLOT - grabbing alternate helmet details - old prop: ", iPropIndex, " old texture: ", iTextureIndex)
|
|
//Use this to get the details of the alternate prop
|
|
EXPENSIVE_GET_PROP_ALT_DATA(iDLCNameHash, 0, iPropIndex, iTextureIndex, iRetNameHash, eAltPropName)
|
|
CPRINTLN(DEBUG_AMBIENT, "SET_MP_OUTFIT_STORED_IN_SLOT - using the alt helmet in place of the outfit version new prop: ", iPropIndex, " new texture: ", iTextureIndex)
|
|
ENDIF
|
|
|
|
SET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp),iPropIndex, iTextureIndex, TRUE)
|
|
|
|
SET_PED_HELMET_PROP_INDEX(pedID, iPropIndex, FALSE)
|
|
SET_PED_HELMET_TEXTURE_INDEX(pedID, iTextureIndex)
|
|
|
|
STORE_HELMET_VISOR_PROP_INDICES(pedID, iPropIndex, iTextureIndex)
|
|
ELSE
|
|
SET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][iProp], TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Keep parachute on
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_HAND] != 0
|
|
SET_PED_RESET_FLAG(pedID, PRF_DisableTakeOffParachutePack, TRUE)
|
|
MPGlobalsAmbience.bDisableTakeOffChute = TRUE
|
|
SET_PACKED_STAT_BOOL(PACKED_MP_IS_PARACHUTE_EQUIPED, TRUE)
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - PRF_DisableTakeOffParachutePack = TRUE")
|
|
ELSE
|
|
MPGlobalsAmbience.bDisableTakeOffChute = FALSE
|
|
SET_PACKED_STAT_BOOL(PACKED_MP_IS_PARACHUTE_EQUIPED, FALSE)
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - PRF_DisableTakeOffParachutePack = FALSE")
|
|
ENDIF
|
|
|
|
// Keep dunce hat
|
|
IF NETWORK_PLAYER_IS_CHEATER()
|
|
OR NETWORK_PLAYER_IS_BADSPORT()
|
|
IF GET_ENTITY_MODEL(PLAYER_PED_ID()) = MP_M_FREEMODE_01
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_BERD, BERD_FMM_0_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_PROPS, PROPS_FMM_DUNCE_HAT_1_0, FALSE)
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_BERD, BERD_FMF_0_0, FALSE)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_PROPS, PROPS_FMF_DUNCE_HAT_1_0, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Add/remove shirt decal
|
|
IF NOT bBlockDecalUpdate
|
|
#IF USE_TU_CHANGES
|
|
TATTOO_NAME_ENUM eShirtDecal = GET_TATTOO_ENUM_FROM_DLC_HASH(GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH), GET_TATTOO_FACTION_FOR_PED(pedID))
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
SET_MP_TATTOO_CURRENT(eShirtDecal, FALSE)
|
|
ENDIF
|
|
|
|
eShirtDecal = GET_TATTOO_ENUM_FROM_DLC_HASH(g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_ShirtDecal[iOutfitSlot], GET_TATTOO_FACTION_FOR_PED(pedID))
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting t-shirt decal, enum=", eShirtDecal)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH, g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_ShirtDecal[iOutfitSlot])
|
|
SET_MP_TATTOO_CURRENT(eShirtDecal, TRUE)
|
|
ENDIF
|
|
|
|
|
|
// Forced t-shirt decal.
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_JBIB), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][ENUM_TO_INT(PED_COMP_JBIB)], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][ENUM_TO_INT(PED_COMP_JBIB)])
|
|
INT iDLCSpecialHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_SPECIAL), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][ENUM_TO_INT(PED_COMP_SPECIAL)], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][ENUM_TO_INT(PED_COMP_SPECIAL)])
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCJbibHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecialHash, DLC_RESTRICTION_TAG_MULTI_DECAL, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PED_COMP_NAME_ENUM eTshirtItem
|
|
eTshirtItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(pedID, g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][ENUM_TO_INT(PED_COMP_JBIB)], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][ENUM_TO_INT(PED_COMP_JBIB)], COMP_TYPE_JBIB)
|
|
eShirtDecal = GET_TORSO_DECAL_TATTOO_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_JBIB, eTshirtItem)
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting forced JBIB t-shirt decal, enum=", eShirtDecal)
|
|
SET_MP_TATTOO_CURRENT(eShirtDecal, TRUE)
|
|
ELSE
|
|
// Try the special.
|
|
eTshirtItem = GET_PED_COMP_ITEM_FROM_VARIATIONS(pedID, g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][ENUM_TO_INT(PED_COMP_SPECIAL)], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][ENUM_TO_INT(PED_COMP_SPECIAL)], COMP_TYPE_SPECIAL)
|
|
eShirtDecal = GET_TORSO_DECAL_TATTOO_MP(GET_ENTITY_MODEL(pedID), COMP_TYPE_SPECIAL, eTshirtItem)
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting forced SPECIAL t-shirt decal, enum=", eShirtDecal)
|
|
SET_MP_TATTOO_CURRENT(eShirtDecal, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// checking if a crew logo was stored on this outfit
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew A")
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, TRUE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew B")
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, TRUE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew C")
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, TRUE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew D")
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, TRUE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew E")
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, TRUE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
ENDIF
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot]
|
|
PRINTLN("SET_MP_OUTFIT_STORED_IN_SLOT - Setting crew F")
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D, FALSE)
|
|
SET_BITSET_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E, FALSE)
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, TRUE)
|
|
ELSE
|
|
SET_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F, FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_OUTFIT_STORED_IN_SLOT - PUT ON OUTFIT ", iOutfitSlot)
|
|
#IF IS_DEBUG_BUILD
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_OUTFIT_STORED_IN_SLOT - FAILED - iOutfitSlot = ", iOutfitSlot)
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_OUTFIT_STORED_IN_SLOT - FAILED - bSaveOutfit_Stored = ", PICK_STRING(g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot], "TRUE", "FALSE"))
|
|
#ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
FUNC STRING GET_MP_OUTFIT_NAME( MP_OUTFIT_ENUM eOutfit)
|
|
|
|
SWITCH eOutfit
|
|
//Heists:
|
|
CASE OUTFIT_MP_DEFAULT RETURN "HO_NONE" BREAK // None
|
|
CASE OUTFIT_MP_FREEMODE RETURN "HO_NONE" BREAK // None
|
|
|
|
|
|
CASE OUTFIT_HEIST_STREET_0 RETURN "HO_STREET_0" BREAK // Street 0
|
|
CASE OUTFIT_HEIST_STREET_1 RETURN "HO_STREET_1" BREAK // Street 1
|
|
CASE OUTFIT_HEIST_STREET_2 RETURN "HO_STREET_2" BREAK // Street 2
|
|
CASE OUTFIT_HEIST_STREET_3 RETURN "HO_STREET_3" BREAK // Street 3
|
|
CASE OUTFIT_HEIST_POLICE_0 RETURN "HO_POLICE_0" BREAK // Police 0
|
|
CASE OUTFIT_HEIST_CASUAL_0 RETURN "HO_CASUAL_0" BREAK // Casual 0
|
|
CASE OUTFIT_HEIST_CASUAL_1 RETURN "HO_CASUAL_1" BREAK // Casual 1
|
|
CASE OUTFIT_HEIST_CASUAL_2 RETURN "HO_CASUAL_2" BREAK // Casual 2
|
|
CASE OUTFIT_HEIST_CASUAL_3 RETURN "HO_CASUAL_3" BREAK // Casual 3
|
|
CASE OUTFIT_HEIST_DRIVER_0 RETURN "HO_DRIVER_0" BREAK // Driver 0
|
|
CASE OUTFIT_HEIST_DRIVER_1 RETURN "HO_DRIVER_1" BREAK // Driver 1
|
|
CASE OUTFIT_HEIST_DRIVER_2 RETURN "HO_DRIVER_2" BREAK // Driver 2
|
|
CASE OUTFIT_HEIST_DRIVER_3 RETURN "HO_DRIVER_3" BREAK // Driver 3
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_0 RETURN "HO_CAS_STE_0" BREAK // Casual Stealth 0
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_1 RETURN "HO_CAS_STE_1" BREAK // Casual Stealth 1
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_2 RETURN "HO_CAS_STE_2" BREAK // Casual Stealth 2
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_3 RETURN "HO_CAS_STE_3" BREAK // Casual Stealth 3
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_0 RETURN "HO_CAS_PIL_0" BREAK // Casual Pilot 0
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_1 RETURN "HO_CAS_PIL_1" BREAK // Casual Pilot 1
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_2 RETURN "HO_CAS_PIL_2" BREAK // Casual Pilot 2
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_0 RETURN "HO_STR_CBT_0" BREAK // Casual Combat 0
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_1 RETURN "HO_STR_CBT_1" BREAK // Casual Combat 1
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_2 RETURN "HO_STR_CBT_2" BREAK // Casual Combat 2
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_3 RETURN "HO_STR_CBT_3" BREAK // Casual Combat 3
|
|
CASE OUTFIT_HEIST_PRISONER_0 RETURN "HO_PRI_0" BREAK // Prisoner
|
|
CASE OUTFIT_HEIST_PRISON_OFFICER_0 RETURN "HO_PRI_OFF_0" BREAK // Prison Officer
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_0 RETURN "HO_TAC_STE_1" BREAK // Tactical Stealth 0
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_1 RETURN "HO_TAC_STE_2" BREAK // Tactical Stealth 1
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_2 RETURN "HO_TAC_STE_3" BREAK // Tactical Stealth 2
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_3 RETURN "HO_TAC_STE_0" BREAK // Tactical Stealth 3
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_0 RETURN "HO_LTE_CBT_0" BREAK // Light Combat 0
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_1 RETURN "HO_LTE_CBT_1" BREAK // Light Combat 1
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_2 RETURN "HO_LTE_CBT_2" BREAK // Light Combat 2
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_3 RETURN "HO_LTE_CBT_3" BREAK // Light Combat 3
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_0 RETURN "HO_HVY_CBT_0" BREAK // Heavy Combat 0
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_1 RETURN "HO_HVY_CBT_1" BREAK // Heavy Combat 1
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_2 RETURN "HO_HVY_CBT_2" BREAK // Heavy Combat 2
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_3 RETURN "HO_HVY_CBT_3" BREAK // Heavy Combat 3
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_0 RETURN "HO_STE_PIL_0" BREAK // Stealth Pilot 0
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_1 RETURN "HO_STE_PIL_1" BREAK // Stealth Pilot 1
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_2 RETURN "HO_STE_PIL_2" BREAK // Stealth Pilot 2
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_3 RETURN "HO_STE_PIL_3" BREAK // Stealth Pilot 3
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_0 RETURN "HO_REF_COL_0" BREAK // Refuse Collector 0
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_1 RETURN "HO_REF_COL_1" BREAK // Refuse Collector 1
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_0 RETURN "HO_NGT_BKR_0" BREAK // Night Biker 0
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_1 RETURN "HO_NGT_BKR_1" BREAK // Night Biker 1
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_2 RETURN "HO_NGT_BKR_2" BREAK // Night Biker 2
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_3 RETURN "HO_NGT_BKR_3" BREAK // Night Biker 3
|
|
CASE OUTFIT_HEIST_TOURIST_0 RETURN "HO_TOURIST_0" BREAK // Tourist 0
|
|
CASE OUTFIT_HEIST_TOURIST_1 RETURN "HO_TOURIST_1" BREAK // Tourist 1
|
|
CASE OUTFIT_HEIST_TOURIST_2 RETURN "HO_TOURIST_2" BREAK // Tourist 2
|
|
CASE OUTFIT_HEIST_TOURIST_3 RETURN "HO_TOURIST_3" BREAK // Tourist 3
|
|
CASE OUTFIT_HEIST_SMART_SUITS_0 RETURN "HO_SMA_S_0" BREAK // Business Suit 0
|
|
CASE OUTFIT_HEIST_SMART_SUITS_1 RETURN "HO_SMA_S_1" BREAK // Business Suit 1
|
|
CASE OUTFIT_HEIST_SMART_SUITS_2 RETURN "HO_SMA_S_2" BREAK // Business Suit 2
|
|
CASE OUTFIT_HEIST_SMART_SUITS_3 RETURN "HO_SMA_S_3" BREAK // Business Suit 3
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_0 RETURN "HO_SLO_S_0" BREAK // Sloppy Suit 0
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_1 RETURN "HO_SLO_S_1" BREAK // Sloppy Suit 1
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_2 RETURN "HO_SLO_S_2" BREAK // Sloppy Suit 2
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_3 RETURN "HO_SLO_S_3" BREAK // Sloppy Suit 3
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_0 RETURN "HO_SHA_S_0" BREAK // Sharp Suit 0
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_1 RETURN "HO_SHA_S_1" BREAK // Sharp Suit 1
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_2 RETURN "HO_SHA_S_2" BREAK // Sharp Suit 2
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_3 RETURN "HO_SHA_S_3" BREAK // Sharp Suit 3
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_0 RETURN "HO_MIN_S_0" BREAK // Minimalist Suit 0
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_1 RETURN "HO_MIN_S_1" BREAK // Minimalist Suit 1
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_2 RETURN "HO_MIN_S_2" BREAK // Minimalist Suit 2
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_3 RETURN "HO_MIN_S_3" BREAK // Minimalist Suit 3
|
|
CASE OUTFIT_HEIST_TUXEDOS_0 RETURN "HO_TUX_0" BREAK // Tuxedo 0
|
|
CASE OUTFIT_HEIST_TUXEDOS_1 RETURN "HO_TUX_1" BREAK // Tuxedo 1
|
|
CASE OUTFIT_HEIST_TUXEDOS_2 RETURN "HO_TUX_2" BREAK // Tuxedo 2
|
|
CASE OUTFIT_HEIST_TUXEDOS_3 RETURN "HO_TUX_3" BREAK // Tuxedo 3
|
|
CASE OUTFIT_HEIST_HAZCHEM_0 RETURN "HO_HAZ_0" BREAK // Hazchem 0
|
|
CASE OUTFIT_HEIST_HAZCHEM_1 RETURN "HO_HAZ_1" BREAK // Hazchem 1
|
|
CASE OUTFIT_HEIST_HAZCHEM_2 RETURN "HO_HAZ_2" BREAK // Hazchem 2
|
|
CASE OUTFIT_HEIST_HAZCHEM_3 RETURN "HO_HAZ_3" BREAK // Hazchem 3
|
|
CASE OUTFIT_HEIST_COVERALLS_0 RETURN "HO_COV_0" BREAK // Coveralls 0
|
|
CASE OUTFIT_HEIST_COVERALLS_1 RETURN "HO_COV_1" BREAK // Coveralls 1
|
|
CASE OUTFIT_HEIST_COVERALLS_2 RETURN "HO_COV_2" BREAK // Coveralls 2
|
|
CASE OUTFIT_HEIST_COVERALLS_3 RETURN "HO_COV_3" BREAK // Coveralls 3
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_0 RETURN "HO_FLYS_0" BREAK // flight suite 0
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_1 RETURN "HO_FLYS_1" BREAK // flight suite 1
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_2 RETURN "HO_FLYS_2" BREAK // flight suite 2
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_3 RETURN "HO_FLYS_3" BREAK // flight suite 3
|
|
|
|
//LTS VS missions:
|
|
CASE OUTFIT_RAPUNZEL_ATTACK RETURN "HO_OUT_RP1" BREAK
|
|
CASE OUTFIT_RAPUNZEL_DEFEND RETURN "HO_OUT_RP2" BREAK
|
|
CASE OUTFIT_T_MASKED_NIGHT RETURN "HO_OUT_MSKN" BREAK
|
|
CASE OUTFIT_T_MASKED_TUNDRA RETURN "HO_OUT_MSKT" BREAK
|
|
CASE OUTFIT_T_MASKED_FOREST RETURN "HO_OUT_MSKF" BREAK
|
|
CASE OUTFIT_FOXHUNT_FOX RETURN "HO_OUT_FOX1" BREAK
|
|
CASE OUTFIT_FOXHUNT_FOX_ALT RETURN "HO_OUT_FOX2" BREAK
|
|
CASE OUTFIT_FOXHUNT_HOUND RETURN "HO_OUT_HND1" BREAK
|
|
CASE OUTFIT_PRISON_POLICE_OFFICER_VS RETURN "HO_PB_POLICE" BREAK
|
|
CASE OUTFIT_PRISON_PRISONER_VS RETURN "HO_PB_PRISONER" BREAK
|
|
|
|
CASE OUTFIT_MASK_BALACLAVAFULL RETURN "HO_MSK_BCV" BREAK
|
|
CASE OUTFIT_MASK_REBREATHER RETURN "HO_MSK_BRTH" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVA RETURN "HO_MSK_BCV2" BREAK
|
|
CASE OUTFIT_MASK_GASMASK RETURN "HO_MSK_GMS" BREAK
|
|
|
|
//---MP other---
|
|
CASE OUTFIT_MASK_PIG RETURN "HO_MSK_PIG" BREAK
|
|
CASE OUTFIT_MASK_BIGSKULL RETURN "HO_MSK_BSK" BREAK
|
|
CASE OUTFIT_MASK_MONKEYSMOKING RETURN "HO_MSK_POGO"BREAK
|
|
CASE OUTFIT_MASK_HOCKEYJASON RETURN "HO_MSK_HCK" BREAK
|
|
CASE OUTFIT_MASK_APE RETURN "HO_MSK_APE" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL RETURN "HO_MSK_CNVL"BREAK
|
|
CASE OUTFIT_MASK_GOBLIN RETURN "HO_MSK_GBL" BREAK
|
|
CASE OUTFIT_MASK_SANTA RETURN "HO_MSK_SNT" BREAK
|
|
CASE OUTFIT_MASK_CREEPYMOOSE RETURN "HO_MSK_MOS" BREAK
|
|
CASE OUTFIT_MASK_SNOWMANHEAD RETURN "HO_MSK_SNW" BREAK
|
|
CASE OUTFIT_MASK_MASQUERADEEYES RETURN "HO_MSK_MQE" BREAK
|
|
CASE OUTFIT_MASK_MASQUERADENOSEY RETURN "HO_MSK_MQN" BREAK
|
|
CASE OUTFIT_MASK_CREEPYBABY RETURN "HO_MSK_BBY" BREAK
|
|
CASE OUTFIT_MASK_HOCKEYBLUE RETURN "HO_MSK_HCK2"BREAK
|
|
CASE OUTFIT_MASK_HOCKEYSKULL RETURN "HO_MSK_HCK3"BREAK
|
|
CASE OUTFIT_MASK_WARRIOR RETURN "HO_MSK_WRR" BREAK
|
|
CASE OUTFIT_MASK_CAT RETURN "HO_MSK_CAT" BREAK
|
|
CASE OUTFIT_MASK_FOX RETURN "HO_MSK_FOX" BREAK
|
|
CASE OUTFIT_MASK_OWL RETURN "HO_MSK_OWL" BREAK
|
|
CASE OUTFIT_MASK_RACCOON RETURN "HO_MSK_RCN" BREAK
|
|
CASE OUTFIT_MASK_BROWNBEAR RETURN "HO_MSK_BBR" BREAK
|
|
CASE OUTFIT_MASK_BISON RETURN "HO_MSK_BSN" BREAK
|
|
CASE OUTFIT_MASK_BULL RETURN "HO_MSK_BUL" BREAK
|
|
CASE OUTFIT_MASK_EAGLE RETURN "HO_MSK_EGL" BREAK
|
|
CASE OUTFIT_MASK_VULTURE RETURN "HO_MSK_VLT" BREAK
|
|
CASE OUTFIT_MASK_WOLF RETURN "HO_MSK_WLF" BREAK
|
|
|
|
|
|
CASE OUTFIT_HOS_SUIT RETURN "HO_OUT_SUIT" BREAK
|
|
CASE OUTFIT_REFUSE_COLLECTOR RETURN "HO_OUT_REFC" BREAK
|
|
|
|
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_0 RETURN "HO_OUT_LOW0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_1 RETURN "HO_OUT_LOW1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_2 RETURN "HO_OUT_LOW2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_3 RETURN "HO_OUT_LOW3" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_4 RETURN "HO_OUT_LOW4" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_5 RETURN "HO_OUT_LOW5" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_6 RETURN "HO_OUT_LOW6" BREAK
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_7 RETURN "HO_OUT_LOW7" BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_0
|
|
IF IS_PLAYER_FEMALE()
|
|
RETURN "HO_OUT_VAG0F"
|
|
ELSE
|
|
RETURN "HO_OUT_VAG0"
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_1
|
|
IF IS_PLAYER_FEMALE()
|
|
RETURN "HO_OUT_VAG1F"
|
|
ELSE
|
|
RETURN "HO_OUT_VAG1"
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_2
|
|
IF IS_PLAYER_FEMALE()
|
|
RETURN "HO_OUT_VAG2F"
|
|
ELSE
|
|
RETURN "HO_OUT_VAG2"
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_3
|
|
IF IS_PLAYER_FEMALE()
|
|
RETURN "HO_OUT_VAG3F"
|
|
ELSE
|
|
RETURN "HO_OUT_VAG3"
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_0 RETURN "HO_OUT_BAL0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_1 RETURN "HO_OUT_BAL1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_2 RETURN "HO_OUT_BAL2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_3 RETURN "HO_OUT_BAL3" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_0 RETURN "HO_OUT_FUNL0" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_1 RETURN "HO_OUT_FUNL1" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_2 RETURN "HO_OUT_FUNL2" BREAK
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_3 RETURN "HO_OUT_FUNL3" BREAK
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
//HALLOWEEN OUTFITS
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_0 RETURN "VS_OUTFIT_38" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_1 RETURN "VS_OUTFIT_38" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_2 RETURN "VS_OUTFIT_38" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_3 RETURN "VS_OUTFIT_38" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_4 RETURN "VS_OUTFIT_38" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_5 RETURN "VS_OUTFIT_38" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_0 RETURN "VS_OUTFIT_39" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_1 RETURN "VS_OUTFIT_39" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_2 RETURN "VS_OUTFIT_39" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_3 RETURN "VS_OUTFIT_39" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_4 RETURN "VS_OUTFIT_39" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_5 RETURN "VS_OUTFIT_39" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_0 RETURN "VS_OUTFIT_40" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_1 RETURN "VS_OUTFIT_40" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_2 RETURN "VS_OUTFIT_40" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_3 RETURN "VS_OUTFIT_40" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_4 RETURN "VS_OUTFIT_40" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_5 RETURN "VS_OUTFIT_40" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_0 RETURN "VS_OUTFIT_41" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_1 RETURN "VS_OUTFIT_41" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_2 RETURN "VS_OUTFIT_41" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_3 RETURN "VS_OUTFIT_41" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_4 RETURN "VS_OUTFIT_41" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_5 RETURN "VS_OUTFIT_41" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_0 RETURN "VS_OUTFIT_42" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_1 RETURN "VS_OUTFIT_42" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_2 RETURN "VS_OUTFIT_42" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_3 RETURN "VS_OUTFIT_42" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_4 RETURN "VS_OUTFIT_42" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_5 RETURN "VS_OUTFIT_42" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_0 RETURN "VS_OUTFIT_43" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_1 RETURN "VS_OUTFIT_43" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_2 RETURN "VS_OUTFIT_43" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_3 RETURN "VS_OUTFIT_43" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_4 RETURN "VS_OUTFIT_43" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_5 RETURN "VS_OUTFIT_43" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_0 RETURN "VS_OUTFIT_44" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_1 RETURN "VS_OUTFIT_44" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_2 RETURN "VS_OUTFIT_44" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_3 RETURN "VS_OUTFIT_44" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_4 RETURN "VS_OUTFIT_44" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_5 RETURN "VS_OUTFIT_44" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0 RETURN "VS_OUTFIT_45" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_1 RETURN "VS_OUTFIT_45" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_2 RETURN "VS_OUTFIT_45" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_3 RETURN "VS_OUTFIT_45" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_4 RETURN "VS_OUTFIT_45" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_5 RETURN "VS_OUTFIT_45" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_0 RETURN "VS_OUTFIT_46" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_1 RETURN "VS_OUTFIT_46" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_2 RETURN "VS_OUTFIT_46" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_3 RETURN "VS_OUTFIT_46" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_4 RETURN "VS_OUTFIT_46" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_5 RETURN "VS_OUTFIT_46" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_0 RETURN "VS_OUTFIT_47" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_1 RETURN "VS_OUTFIT_47" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_2 RETURN "VS_OUTFIT_47" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_3 RETURN "VS_OUTFIT_47" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_4 RETURN "VS_OUTFIT_47" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_5 RETURN "VS_OUTFIT_47" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_0 RETURN "VS_OUTFIT_48" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_1 RETURN "VS_OUTFIT_48" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_2 RETURN "VS_OUTFIT_48" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_3 RETURN "VS_OUTFIT_48" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_4 RETURN "VS_OUTFIT_48" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_5 RETURN "VS_OUTFIT_48" BREAK
|
|
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_0 RETURN "VS_OUTFIT_49" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_1 RETURN "VS_OUTFIT_49" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_2 RETURN "VS_OUTFIT_49" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_3 RETURN "VS_OUTFIT_49" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_4 RETURN "VS_OUTFIT_49" BREAK
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_5 RETURN "VS_OUTFIT_49" BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA RETURN "GOO_SCUBA"
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA_NOTANK RETURN "GOO_SCUBA2"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0 RETURN "GOO_PARA_B_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_1 RETURN "GOO_PARA_B_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_0 RETURN "GOO_PARA_G_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1 RETURN "GOO_PARA_G_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0 RETURN "GOO_MEDT1_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_1 RETURN "GOO_MEDT1_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_2 RETURN "GOO_MEDT1_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3 RETURN "GOO_MEDT1_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0 RETURN "GOO_MEDT2_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_1 RETURN "GOO_MEDT2_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_2 RETURN "GOO_MEDT2_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3 RETURN "GOO_MEDT2_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0 RETURN "GOO_MODST_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_1 RETURN "GOO_MODST_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_2 RETURN "GOO_MODST_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3 RETURN "GOO_MODST_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0 RETURN "GOO_CASPIL_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1 RETURN "GOO_CASPIL_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2 RETURN "GOO_CASPIL_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3 RETURN "GOO_CASPIL_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0 RETURN "GOO_FIGPIL_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1 RETURN "GOO_FIGPIL_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2 RETURN "GOO_FIGPIL_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3 RETURN "GOO_FIGPIL_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0 RETURN "GOO_HTRIOT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_1 RETURN "GOO_HTRIOT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_2 RETURN "GOO_HTRIOT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3 RETURN "GOO_HTRIOT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0 RETURN "GOO_HTIMP_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_1 RETURN "GOO_HTIMP_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_2 RETURN "GOO_HTIMP_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3 RETURN "GOO_HTIMP_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0 RETURN "GOO_MTMASK_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_1 RETURN "GOO_MTMASK_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_2 RETURN "GOO_MTMASK_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3 RETURN "GOO_MTMASK_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0 RETURN "GOO_MTREB_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_1 RETURN "GOO_MTREB_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_2 RETURN "GOO_MTREB_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3 RETURN "GOO_MTREB_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0 RETURN "GOO_MTHAVC_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_1 RETURN "GOO_MTHAVC_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_2 RETURN "GOO_MTHAVC_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3 RETURN "GOO_MTHAVC_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0 RETURN "GOO_MTADPT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_1 RETURN "GOO_MTADPT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_2 RETURN "GOO_MTADPT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3 RETURN "GOO_MTADPT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0 RETURN "GOO_SUBDRV_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_1 RETURN "GOO_SUBDRV_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_2 RETURN "GOO_SUBDRV_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3 RETURN "GOO_SUBDRV_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0 RETURN "GOO_HVYCGR_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_1 RETURN "GOO_HVYCGR_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_2 RETURN "GOO_HVYCGR_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3 RETURN "GOO_HVYCGR_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0 RETURN "GOO_LTTACT_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_1 RETURN "GOO_LTTACT_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_2 RETURN "GOO_LTTACT_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3 RETURN "GOO_LTTACT_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0 RETURN "GOO_LTCOMB_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_1 RETURN "GOO_LTCOMB_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_2 RETURN "GOO_LTCOMB_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3 RETURN "GOO_LTCOMB_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0 RETURN "GOO_CLSSTL_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_1 RETURN "GOO_CLSSTL_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_2 RETURN "GOO_CLSSTL_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3 RETURN "GOO_CLSSTL_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0 RETURN "GOO_MLTCAM_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_1 RETURN "GOO_MLTCAM_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_2 RETURN "GOO_MLTCAM_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3 RETURN "GOO_MLTCAM_3"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_0 RETURN "GOO_GRK_0"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_1 RETURN "GOO_GRK_1"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_2 RETURN "GOO_GRK_2"
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_3 RETURN "GOO_GRK_3"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0 RETURN "SL_CLOWN_01" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_1 RETURN "SL_CLOWN_02" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_2 RETURN "SL_CLOWN_03" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_3 RETURN "SL_CLOWN_04" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_4 RETURN "SL_CLOWN_05" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_5 RETURN "SL_CLOWN_06" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_6 RETURN "SL_CLOWN_07" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_7 RETURN "SL_CLOWN_08" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0 RETURN "SL_GREY_01" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_1 RETURN "SL_GREY_02" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_2 RETURN "SL_GREY_03" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_3 RETURN "SL_GREY_04" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_4 RETURN "SL_GREY_05" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_5 RETURN "SL_GREY_06" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_6 RETURN "SL_GREY_07" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_7 RETURN "SL_GREY_08" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0 RETURN "SL_ALIEN_01" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_1 RETURN "SL_ALIEN_02" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_2 RETURN "SL_ALIEN_03" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_3 RETURN "SL_ALIEN_04" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_4 RETURN "SL_ALIEN_05" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_5 RETURN "SL_ALIEN_06" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_6 RETURN "SL_ALIEN_07" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_7 RETURN "SL_ALIEN_08" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0 RETURN "SL_BROWN_01" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_1 RETURN "SL_BROWN_02" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_2 RETURN "SL_BROWN_03" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_3 RETURN "SL_BROWN_04" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_4 RETURN "SL_BROWN_05" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_5 RETURN "SL_BROWN_06" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_6 RETURN "SL_BROWN_07" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_7 RETURN "SL_BROWN_08" BREAK
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_TARGET_0 RETURN "HT_BLACKTARG"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0 RETURN "HT_BLACK_00"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_1 RETURN "HT_BLACK_01"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_2 RETURN "HT_BLACK_02"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_3 RETURN "HT_BLACK_03"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_4 RETURN "HT_BLACK_04"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_5 RETURN "HT_BLACK_05"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_6 RETURN "HT_BLACK_06"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_7 RETURN "HT_BLACK_07"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_TARGET_0 RETURN "HT_GREENTARG"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0 RETURN "HT_GREEN_00"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_1 RETURN "HT_GREEN_01"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_2 RETURN "HT_GREEN_02"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_3 RETURN "HT_GREEN_03"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_4 RETURN "HT_GREEN_04"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_5 RETURN "HT_GREEN_05"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_6 RETURN "HT_GREEN_06"
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_7 RETURN "HT_GREEN_07"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_RED RETURN "MC_VJ_RED"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_BLUE RETURN "MC_VJ_BLU"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_WHITE RETURN "MC_VJ_WHI"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_GRAY RETURN "MC_VJ_GRA"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE RETURN "MC_VJ_FCB"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_RED RETURN "MC_VJ_FCR"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_WHITE RETURN "MC_VJ_FCW"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_GREEN RETURN "MC_VJ_FCG"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_ORANGE RETURN "MC_VJ_FCO"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_PURPLE RETURN "MC_VJ_FCPU"
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_PINK RETURN "MC_VJ_FCPI"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0 RETURN "MC_DTB_PU0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_1 RETURN "MC_DTB_PU1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_2 RETURN "MC_DTB_PU2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_3 RETURN "MC_DTB_PU3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_0 RETURN "MC_DTB_OR0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_1 RETURN "MC_DTB_OR1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_2 RETURN "MC_DTB_OR2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_3 RETURN "MC_DTB_OR3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_0 RETURN "MC_DTB_PI0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_1 RETURN "MC_DTB_PI1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_2 RETURN "MC_DTB_PI2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_3 RETURN "MC_DTB_PI3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_0 RETURN "MC_DTB_GR0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_1 RETURN "MC_DTB_GR1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_2 RETURN "MC_DTB_GR2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_3 RETURN "MC_DTB_GR3"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0 RETURN "MC_SR_PU0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_ORANGE_0 RETURN "MC_SR_OR0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_PINK_0 RETURN "MC_SR_OI0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_GREEN_0 RETURN "MC_SR_GR0"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0 RETURN "MC_OD_PU0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_1 RETURN "MC_OD_PU1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_2 RETURN "MC_OD_PU2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_3 RETURN "MC_OD_PU3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_0 RETURN "MC_OD_OR0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_1 RETURN "MC_OD_OR1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_2 RETURN "MC_OD_OR2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_3 RETURN "MC_OD_OR3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_0 RETURN "MC_OD_PI0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_1 RETURN "MC_OD_PI1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_2 RETURN "MC_OD_PI2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_3 RETURN "MC_OD_PI3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_0 RETURN "MC_OD_GR0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_1 RETURN "MC_OD_GR1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_2 RETURN "MC_OD_GR2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_3 RETURN "MC_OD_GR3"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0 RETURN "MC_HP_H0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_1 RETURN "MC_HP_H1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_2 RETURN "MC_HP_H2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_3 RETURN "MC_HP_H3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_RUNNER_0 RETURN "MC_HP_HR"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_0 RETURN "MC_HP_R0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_1 RETURN "MC_HP_R1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_2 RETURN "MC_HP_R2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_3 RETURN "MC_HP_R3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_RUNNER_0 RETURN "MC_HP_RR"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0 RETURN "MC_TP_B0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_1 RETURN "MC_TP_B1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_2 RETURN "MC_TP_B2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_3 RETURN "MC_TP_B3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_4 RETURN "MC_TP_B4"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_5 RETURN "MC_TP_B5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_6 RETURN "MC_TP_B6"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_7 RETURN "MC_TP_B7"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0 RETURN "MC_TP_J0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_1 RETURN "MC_TP_J1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_2 RETURN "MC_TP_J2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_3 RETURN "MC_TP_J3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_4 RETURN "MC_TP_J4"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_5 RETURN "MC_TP_J5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_6 RETURN "MC_TP_J6"
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_7 RETURN "MC_TP_J7"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0 RETURN "MC_COTP_H0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_1 RETURN "MC_COTP_H1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_2 RETURN "MC_COTP_H2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_3 RETURN "MC_COTP_H3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_4 RETURN "MC_COTP_H4"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_5 RETURN "MC_COTP_H5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_6 RETURN "MC_COTP_H6"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_7 RETURN "MC_COTP_H7"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0 RETURN "MC_COTP_R0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_1 RETURN "MC_COTP_R2"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK RETURN "MC_RB_BLACK"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_WHITE RETURN "MC_RB_WHITE"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_RED RETURN "MC_RB_RED"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLUE RETURN "MC_RB_BLUE"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN RETURN "MC_RB_GRN"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW RETURN "MC_RB_YLW"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW RETURN "MC_RB_GRNGLW"
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW RETURN "MC_RB_YLWGLW"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_0 RETURN "MC_SPACELNG0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_1 RETURN "MC_SPACELNG1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_2 RETURN "MC_SPACELNG2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_3 RETURN "MC_SPACELNG3"
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_COP RETURN "MC_O_FIREMAN"
|
|
CASE OUTFIT_CASINO_HIGHROLLER RETURN "MC_O_HIGHROLL"
|
|
CASE OUTFIT_HIDDEN_DAWNRAID_PURPLE_0 RETURN "MC_O_NOOSE"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_0 RETURN "CHO_STBI0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_1 RETURN "CHO_STBI1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_2 RETURN "CHO_STBI2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_3 RETURN "CHO_STBI3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_4 RETURN "CHO_STBI4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_5 RETURN "CHO_STBI5"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_0 RETURN "CHO_STBII0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_1 RETURN "CHO_STBII1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_2 RETURN "CHO_STBII2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_3 RETURN "CHO_STBII3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_4 RETURN "CHO_STBII4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_5 RETURN "CHO_STBII5"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_0 RETURN "CHO_STBIII0"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_1 RETURN "CHO_STBIII1"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_2 RETURN "CHO_STBIII2"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_3 RETURN "CHO_STBIII3"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_4 RETURN "CHO_STBIII4"
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_5 RETURN "CHO_STBIII5"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0 RETURN "CHO_STAI0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_1 RETURN "CHO_STAI1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_2 RETURN "CHO_STAI2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3 RETURN "CHO_STAI3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_4 RETURN "CHO_STAI4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_5 RETURN "CHO_STAI5"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0 RETURN "CHO_STAII0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_1 RETURN "CHO_STAII1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_2 RETURN "CHO_STAII2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3 RETURN "CHO_STAII3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_4 RETURN "CHO_STAII4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_5 RETURN "CHO_STAII5"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0 RETURN "CHO_STAIII0"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_1 RETURN "CHO_STAIII1"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_2 RETURN "CHO_STAIII2"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3 RETURN "CHO_STAIII3"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_4 RETURN "CHO_STAIII4"
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_5 RETURN "CHO_STAIII5"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_0 RETURN "CHO_SU_B0"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_1 RETURN "CHO_SU_B1"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_2 RETURN "CHO_SU_B2"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_3 RETURN "CHO_SU_B3"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_4 RETURN "CHO_SU_B4"
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_5 RETURN "CHO_SU_B5"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_0 RETURN "CHO_SU_M0"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_1 RETURN "CHO_SU_M1"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_2 RETURN "CHO_SU_M2"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_3 RETURN "CHO_SU_M3"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_4 RETURN "CHO_SU_M4"
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_5 RETURN "CHO_SU_M5"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0 RETURN "CHO_SU_G0"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_1 RETURN "CHO_SU_G1"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_2 RETURN "CHO_SU_G2"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3 RETURN "CHO_SU_G3"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_4 RETURN "CHO_SU_G4"
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_5 RETURN "CHO_SU_G5"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_0 RETURN "CHO_SU_W0"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_1 RETURN "CHO_SU_W1"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_2 RETURN "CHO_SU_W2"
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_3 RETURN "CHO_SU_W3"
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0 RETURN "CHO_DLI0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_1 RETURN "CHO_DLI1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_2 RETURN "CHO_DLI2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3 RETURN "CHO_DLI3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_4 RETURN "CHO_DLI4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_5 RETURN "CHO_DLI5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0 RETURN "CHO_DLII0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_1 RETURN "CHO_DLII1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_2 RETURN "CHO_DLII2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3 RETURN "CHO_DLII3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_4 RETURN "CHO_DLII4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_5 RETURN "CHO_DLII5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0 RETURN "CHO_DLIII0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_1 RETURN "CHO_DLIII1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_2 RETURN "CHO_DLIII2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3 RETURN "CHO_DLIII3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_4 RETURN "CHO_DLIII4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_5 RETURN "CHO_DLIII5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0 RETURN "CHO_DHI0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_1 RETURN "CHO_DHI1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_2 RETURN "CHO_DHI2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3 RETURN "CHO_DHI3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_4 RETURN "CHO_DHI4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_5 RETURN "CHO_DHI5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0 RETURN "CHO_DHII0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_1 RETURN "CHO_DHII1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_2 RETURN "CHO_DHII2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3 RETURN "CHO_DHII3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_4 RETURN "CHO_DHII4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_5 RETURN "CHO_DHII5"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0 RETURN "CHO_DHIII0"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_1 RETURN "CHO_DHIII1"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_2 RETURN "CHO_DHIII2"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3 RETURN "CHO_DHIII3"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_4 RETURN "CHO_DHIII4"
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_5 RETURN "CHO_DHIII5"
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_0 RETURN "IHO_SM_0"
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_1 RETURN "IHO_SM_1"
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_2 RETURN "IHO_SM_2"
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_3 RETURN "IHO_SM_3"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_0 RETURN "IHO_H1_0"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_1 RETURN "IHO_H1_1"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_2 RETURN "IHO_H1_2"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_3 RETURN "IHO_H1_3"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_0 RETURN "IHO_H2_0"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_1 RETURN "IHO_H2_1"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_2 RETURN "IHO_H2_2"
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_3 RETURN "IHO_H2_3"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_0 RETURN "IHO_L1_0"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_1 RETURN "IHO_L1_1"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_2 RETURN "IHO_L1_2"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_3 RETURN "IHO_L1_3"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_0 RETURN "IHO_L2_0"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_1 RETURN "IHO_L2_1"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_2 RETURN "IHO_L2_2"
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_3 RETURN "IHO_L2_3"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_0 RETURN "IHO_S1_0"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_1 RETURN "IHO_S1_1"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_2 RETURN "IHO_S1_2"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_3 RETURN "IHO_S1_3"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_0 RETURN "IHO_S2_0"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_1 RETURN "IHO_S2_1"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_2 RETURN "IHO_S2_2"
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_3 RETURN "IHO_S2_3"
|
|
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_0 RETURN "FIXO_PP_0"
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_1 RETURN "FIXO_PP_1"
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_2 RETURN "FIXO_PP_2"
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_3 RETURN "FIXO_PP_3"
|
|
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_0 RETURN "FIXO_BG_0"
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_1 RETURN "FIXO_BG_1"
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_2 RETURN "FIXO_BG_2"
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_3 RETURN "FIXO_BG_3"
|
|
|
|
CASE OUTFIT_FIXER_GOLF_0 RETURN "FIXO_GF_0"
|
|
CASE OUTFIT_FIXER_GOLF_1 RETURN "FIXO_GF_1"
|
|
CASE OUTFIT_FIXER_GOLF_2 RETURN "FIXO_GF_2"
|
|
CASE OUTFIT_FIXER_GOLF_3 RETURN "FIXO_GF_3"
|
|
CASE OUTFIT_FIXER_GOLF_4 RETURN "FIXO_GF_4"
|
|
CASE OUTFIT_FIXER_GOLF_5 RETURN "FIXO_GF_5"
|
|
CASE OUTFIT_FIXER_GOLF_6 RETURN "FIXO_GF_6"
|
|
CASE OUTFIT_FIXER_GOLF_7 RETURN "FIXO_GF_7"
|
|
|
|
CASE OUTFIT_SUM22_IAA_AGENT_0 RETURN "SUM22O_IA_0"
|
|
CASE OUTFIT_SUM22_IAA_AGENT_1 RETURN "SUM22O_IA_1"
|
|
CASE OUTFIT_SUM22_IAA_AGENT_2 RETURN "SUM22O_IA_2"
|
|
CASE OUTFIT_SUM22_IAA_AGENT_3 RETURN "SUM22O_IA_3"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0 RETURN "SUM22O_HW_R0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_1 RETURN "SUM22O_HW_R1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_2 RETURN "SUM22O_HW_R2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_3 RETURN "SUM22O_HW_R3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_4 RETURN "SUM22O_HW_R4"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_5 RETURN "SUM22O_HW_R5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_6 RETURN "SUM22O_HW_R6"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_7 RETURN "SUM22O_HW_R7"
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0 RETURN "SUM22O_HW_H0"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_1 RETURN "SUM22O_HW_H1"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_2 RETURN "SUM22O_HW_H2"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_3 RETURN "SUM22O_HW_H3"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_4 RETURN "SUM22O_HW_H4"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_5 RETURN "SUM22O_HW_H5"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_6 RETURN "SUM22O_HW_H6"
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_7 RETURN "SUM22O_HW_H7"
|
|
ENDSWITCH
|
|
|
|
PRINTLN("GET_MP_OUTFIT_NAME - Enum missing tell Tom F. - ", eOutfit)
|
|
//SCRIPT_ASSERT("GET_MP_OUTFIT_NAME - Enum missing tell Tom F.")
|
|
|
|
RETURN "NOT NAMED"
|
|
|
|
ENDFUNC
|
|
|
|
FUNC STRING GET_MP_OUTFIT_MASK_NAME( MP_OUTFIT_MASK_ENUM eMask)
|
|
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_NONE RETURN "HO_NONE" BREAK // None
|
|
CASE OUTFIT_MASK_FREEMODE RETURN "HO_NONE" BREAK // None
|
|
|
|
CASE OUTFIT_MASK_AMATEUR_0 RETURN "HM_AMATUR_0" BREAK
|
|
CASE OUTFIT_MASK_AMATEUR_1 RETURN "HM_AMATUR_1" BREAK
|
|
CASE OUTFIT_MASK_AMATEUR_2 RETURN "HM_AMATUR_2" BREAK
|
|
CASE OUTFIT_MASK_AMATEUR_3 RETURN "HM_AMATUR_3" BREAK
|
|
CASE OUTFIT_MASK_ANIMALS_0 RETURN "HM_ANIMAL_0" BREAK
|
|
CASE OUTFIT_MASK_ANIMALS_1 RETURN "HM_ANIMAL_1" BREAK
|
|
CASE OUTFIT_MASK_ANIMALS_2 RETURN "HM_ANIMAL_2" BREAK
|
|
CASE OUTFIT_MASK_ANIMALS_3 RETURN "HM_ANIMAL_3" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_0 RETURN "HM_PAP_BAG_0" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_1 RETURN "HM_PAP_BAG_1" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_2 RETURN "HM_PAP_BAG_2" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_3 RETURN "HM_PAP_BAG_3" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_4 RETURN "HM_PAP_BAG_4" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_5 RETURN "HM_PAP_BAG_5" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_6 RETURN "HM_PAP_BAG_6" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_7 RETURN "HM_PAP_BAG_7" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_8 RETURN "HM_PAP_BAG_8" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_9 RETURN "HM_PAP_BAG_9" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_10 RETURN "HM_PAP_BAG_10" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_11 RETURN "HM_PAP_BAG_11" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_12 RETURN "HM_PAP_BAG_12" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_13 RETURN "HM_PAP_BAG_13" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_14 RETURN "HM_PAP_BAG_14" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_15 RETURN "HM_PAP_BAG_15" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_16 RETURN "HM_PAP_BAG_16" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_17 RETURN "HM_PAP_BAG_17" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_18 RETURN "HM_PAP_BAG_18" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_19 RETURN "HM_PAP_BAG_19" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_20 RETURN "HM_PAP_BAG_20" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_21 RETURN "HM_PAP_BAG_21" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_22 RETURN "HM_PAP_BAG_22" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_23 RETURN "HM_PAP_BAG_23" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_24 RETURN "HM_PAP_BAG_24" BREAK
|
|
CASE OUTFIT_MASK_PAPER_BAGS_25 RETURN "HM_PAP_BAG_25" BREAK
|
|
CASE OUTFIT_MASK_BEASTS_0 RETURN "HM_BEAST_0" BREAK
|
|
CASE OUTFIT_MASK_BEASTS_1 RETURN "HM_BEAST_1" BREAK
|
|
CASE OUTFIT_MASK_BEASTS_2 RETURN "HM_BEAST_2" BREAK
|
|
CASE OUTFIT_MASK_BEASTS_3 RETURN "HM_BEAST_3" BREAK
|
|
CASE OUTFIT_MASK_CHARACTERS_0 RETURN "HM_CHARS_0" BREAK
|
|
CASE OUTFIT_MASK_CHARACTERS_1 RETURN "HM_CHARS_1" BREAK
|
|
CASE OUTFIT_MASK_CHARACTERS_2 RETURN "HM_CHARS_2" BREAK
|
|
CASE OUTFIT_MASK_CHARACTERS_3 RETURN "HM_CHARS_3" BREAK
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_0 RETURN "HM_CLS_MON_0" BREAK
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_1 RETURN "HM_CLS_MON_2" BREAK //the variations have been swapped around here
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_2 RETURN "HM_CLS_MON_1" BREAK // 1= brown mummy 2=white vampire
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_3 RETURN "HM_CLS_MON_3" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL_0 RETURN "HM_CARNIE_0" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL_1 RETURN "HM_CARNIE_1" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL_2 RETURN "HM_CARNIE_2" BREAK
|
|
CASE OUTFIT_MASK_CARNIVAL_3 RETURN "HM_CARNIE_3" BREAK
|
|
CASE OUTFIT_MASK_GAS_MASKS_0 RETURN "HM_GAS_MSK_0" BREAK
|
|
CASE OUTFIT_MASK_GAS_MASKS_1 RETURN "HM_GAS_MSK_1" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_0 RETURN "HM_HELM_0" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_1 RETURN "HM_HELM_1" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_2 RETURN "HM_HELM_2" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_3 RETURN "HM_HELM_3" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_4 RETURN "HM_HELM_4" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_5 RETURN "HM_HELM_5" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_6 RETURN "HM_HELM_6" BREAK
|
|
CASE OUTFIT_MASK_HELMETS_7 RETURN "HM_HELM_7" BREAK
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_0 RETURN "HM_HOR_HOC_0" BREAK
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_1 RETURN "HM_HOR_HOC_1" BREAK
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_2 RETURN "HM_HOR_HOC_2" BREAK
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_3 RETURN "HM_HOR_HOC_3" BREAK
|
|
CASE OUTFIT_MASK_PUPPETS_0 RETURN "HM_PUPPET_0" BREAK
|
|
CASE OUTFIT_MASK_PUPPETS_1 RETURN "HM_PUPPET_1" BREAK
|
|
CASE OUTFIT_MASK_PUPPETS_2 RETURN "HM_PUPPET_2" BREAK
|
|
CASE OUTFIT_MASK_PUPPETS_3 RETURN "HM_PUPPET_3" BREAK
|
|
CASE OUTFIT_MASK_SKULLS_0 RETURN "HM_SKULL_0" BREAK
|
|
CASE OUTFIT_MASK_SKULLS_1 RETURN "HM_SKULL_1" BREAK
|
|
CASE OUTFIT_MASK_SKULLS_2 RETURN "HM_SKULL_2" BREAK
|
|
CASE OUTFIT_MASK_SKULLS_3 RETURN "HM_SKULL_3" BREAK
|
|
CASE OUTFIT_MASK_TACTICAL_0 RETURN "HM_TACT_0" BREAK
|
|
CASE OUTFIT_MASK_TACTICAL_1 RETURN "HM_TACT_1" BREAK
|
|
CASE OUTFIT_MASK_TACTICAL_2 RETURN "HM_TACT_2" BREAK
|
|
CASE OUTFIT_MASK_TACTICAL_3 RETURN "HM_TACT_3" BREAK
|
|
CASE OUTFIT_MASK_TAPE_0 RETURN "HM_TAPE_0" BREAK
|
|
CASE OUTFIT_MASK_TAPE_1 RETURN "HM_TAPE_1" BREAK
|
|
CASE OUTFIT_MASK_TAPE_2 RETURN "HM_TAPE_2" BREAK
|
|
CASE OUTFIT_MASK_TAPE_3 RETURN "HM_TAPE_3" BREAK
|
|
CASE OUTFIT_MASK_THEATRICAL_0 RETURN "HM_THEAT_1" BREAK//Black & Gold Masquerade
|
|
CASE OUTFIT_MASK_THEATRICAL_1 RETURN "HM_THEAT_0" BREAK//The Don Plastic Face
|
|
CASE OUTFIT_MASK_THEATRICAL_2 RETURN "HM_THEAT_2" BREAK//Mime Plastic Face
|
|
CASE OUTFIT_MASK_THEATRICAL_3 RETURN "HM_THEAT_3" BREAK//Black Mysterious
|
|
CASE OUTFIT_MASK_PIGS_0 RETURN "HM_PIGS_0" BREAK
|
|
CASE OUTFIT_MASK_PIGS_1 RETURN "HM_PIGS_1" BREAK
|
|
CASE OUTFIT_MASK_PIGS_2 RETURN "HM_PIGS_2" BREAK
|
|
CASE OUTFIT_MASK_PIGS_3 RETURN "HM_PIGS_3" BREAK
|
|
CASE OUTFIT_MASK_DUCT_TAPE_0 RETURN "HM_DTAPE_0" BREAK
|
|
CASE OUTFIT_MASK_DUCT_TAPE_1 RETURN "HM_DTAPE_1" BREAK
|
|
CASE OUTFIT_MASK_DUCT_TAPE_2 RETURN "HM_DTAPE_2" BREAK
|
|
CASE OUTFIT_MASK_DUCT_TAPE_3 RETURN "HM_DTAPE_3" BREAK
|
|
CASE OUTFIT_MASK_INCOGNITO_0 RETURN "HM_INCOG_0" BREAK
|
|
CASE OUTFIT_MASK_INCOGNITO_1 RETURN "HM_INCOG_1" BREAK
|
|
CASE OUTFIT_MASK_INCOGNITO_2 RETURN "HM_INCOG_2" BREAK
|
|
CASE OUTFIT_MASK_INCOGNITO_3 RETURN "HM_INCOG_3" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_0 RETURN "HM_BALA_0" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_1 RETURN "HM_BALA_1" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_2 RETURN "HM_BALA_2" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_3 RETURN "HM_BALA_3" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_4 RETURN "HM_BALA_4" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_5 RETURN "HM_BALA_5" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_6 RETURN "HM_BALA_6" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_7 RETURN "HM_BALA_7" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_8 RETURN "HM_BALA_8" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_9 RETURN "HM_BALA_9" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_10 RETURN "HM_BALA_10" BREAK
|
|
CASE OUTFIT_MASK_BALACLAVAS_11 RETURN "HM_BALA_11" BREAK
|
|
CASE OUTFIT_MASK_CAMO_0 RETURN "HM_CAMO_0" BREAK
|
|
CASE OUTFIT_MASK_CAMO_1 RETURN "HM_CAMO_1" BREAK
|
|
CASE OUTFIT_MASK_CAMO_2 RETURN "HM_CAMO_2" BREAK
|
|
CASE OUTFIT_MASK_CAMO_3 RETURN "HM_CAMO_3" BREAK
|
|
CASE OUTFIT_MASK_CAMO_4 RETURN "HM_CAMO_4" BREAK
|
|
CASE OUTFIT_MASK_CAMO_5 RETURN "HM_CAMO_5" BREAK
|
|
CASE OUTFIT_MASK_PSYCHOTIC_0 RETURN "HM_PSYC_0" BREAK
|
|
CASE OUTFIT_MASK_PSYCHOTIC_1 RETURN "HM_PSYC_1" BREAK
|
|
CASE OUTFIT_MASK_PSYCHOTIC_2 RETURN "HM_PSYC_2" BREAK
|
|
CASE OUTFIT_MASK_PSYCHOTIC_3 RETURN "HM_PSYC_3" BREAK
|
|
CASE OUTFIT_MASK_STREET_0 RETURN "HM_STREET_0" BREAK
|
|
CASE OUTFIT_MASK_STREET_1 RETURN "HM_STREET_1" BREAK
|
|
CASE OUTFIT_MASK_STREET_2 RETURN "HM_STREET_2" BREAK
|
|
CASE OUTFIT_MASK_STREET_3 RETURN "HM_STREET_3" BREAK
|
|
CASE OUTFIT_MASK_STREET_4 RETURN "HM_STREET_4" BREAK
|
|
CASE OUTFIT_MASK_STREET_5 RETURN "HM_STREET_5" BREAK
|
|
CASE OUTFIT_MASK_BANDANAS_0 RETURN "HM_BANDA_0" BREAK
|
|
CASE OUTFIT_MASK_BANDANAS_1 RETURN "HM_BANDA_1" BREAK
|
|
CASE OUTFIT_MASK_BANDANAS_2 RETURN "HM_BANDA_2" BREAK
|
|
CASE OUTFIT_MASK_BANDANAS_3 RETURN "HM_BANDA_3" BREAK
|
|
CASE OUTFIT_MASK_HOODS_0 RETURN "HM_HOODS_0" BREAK
|
|
CASE OUTFIT_MASK_HOODS_1 RETURN "HM_HOODS_1" BREAK
|
|
CASE OUTFIT_MASK_HOODS_2 RETURN "HM_HOODS_2" BREAK
|
|
CASE OUTFIT_MASK_HOODS_3 RETURN "HM_HOODS_3" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_0 RETURN "HM_DESIGNER_0" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_1 RETURN "HM_DESIGNER_1" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_2 RETURN "HM_DESIGNER_2" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_3 RETURN "HM_DESIGNER_3" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_4 RETURN "HM_DESIGNER_4" BREAK
|
|
CASE OUTFIT_MASK_DESIGNER_5 RETURN "HM_DESIGNER_5" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_0 RETURN "HM_DEVIL_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_1 RETURN "HM_DEVIL_4" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_2 RETURN "HM_DEVIL_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_3 RETURN "HM_DEVIL_3" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_4 RETURN "HM_DEVIL_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_5 RETURN "HM_DEVIL_5" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_0 RETURN "HM_SAD_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_1 RETURN "HM_SAD_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_2 RETURN "HM_SAD_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_3 RETURN "HM_SAD_3" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_0 RETURN "HM_POSS_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_1 RETURN "HM_POSS_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_2 RETURN "HM_POSS_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_3 RETURN "HM_POSS_3" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_0 RETURN "HM_FIENDS_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_1 RETURN "HM_FIENDS_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_2 RETURN "HM_FIENDS_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_3 RETURN "HM_FIENDS_3" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_0 RETURN "HM_CREAT_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_1 RETURN "HM_CREAT_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_2 RETURN "HM_CREAT_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_3 RETURN "HM_CREAT_3" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_0 RETURN "HM_WICKED_0" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_1 RETURN "HM_WICKED_1" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_2 RETURN "HM_WICKED_2" BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_3 RETURN "HM_WICKED_3" BREAK
|
|
|
|
// TOO MANY CASE STATEMENTS IN SWITCH, ADD BELOW
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eMask
|
|
|
|
CASE MASK_CASINO_HEIST_DEFAULT_0 RETURN "CH_MSK_DFLT_0" BREAK
|
|
CASE MASK_CASINO_HEIST_DEFAULT_1 RETURN "CH_MSK_DFLT_1" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_0 RETURN "CH_MSK_GEOM_0" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_1 RETURN "CH_MSK_GEOM_1" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_2 RETURN "CH_MSK_GEOM_2" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_3 RETURN "CH_MSK_GEOM_3" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_4 RETURN "CH_MSK_GEOM_4" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_5 RETURN "CH_MSK_GEOM_5" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_6 RETURN "CH_MSK_GEOM_6" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_7 RETURN "CH_MSK_GEOM_7" BREAK
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_8 RETURN "CH_MSK_GEOM_8" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_0 RETURN "CH_MSK_HUNT_0" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_1 RETURN "CH_MSK_HUNT_1" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_2 RETURN "CH_MSK_HUNT_2" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_3 RETURN "CH_MSK_HUNT_3" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_4 RETURN "CH_MSK_HUNT_4" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_5 RETURN "CH_MSK_HUNT_5" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_6 RETURN "CH_MSK_HUNT_6" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_7 RETURN "CH_MSK_HUNT_7" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_8 RETURN "CH_MSK_HUNT_8" BREAK
|
|
CASE MASK_CASINO_HEIST_HUNTER_9 RETURN "CH_MSK_HUNT_9" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_0 RETURN "CH_MSK_ONIH_0" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIHALF_1 RETURN "CH_MSK_ONIH_1" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIHALF_2 RETURN "CH_MSK_ONIH_2" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIHALF_3 RETURN "CH_MSK_ONIH_3" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIHALF_4 RETURN "CH_MSK_ONIH_4" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIHALF_5 RETURN "CH_MSK_ONIH_5" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_0 RETURN "CH_MSK_EMOJ_0" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_1 RETURN "CH_MSK_EMOJ_1" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_2 RETURN "CH_MSK_EMOJ_2" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_3 RETURN "CH_MSK_EMOJ_3" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_4 RETURN "CH_MSK_EMOJ_4" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_5 RETURN "CH_MSK_EMOJ_5" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_6 RETURN "CH_MSK_EMOJ_6" BREAK
|
|
CASE MASK_CASINO_HEIST_EMOJI_7 RETURN "CH_MSK_EMOJ_7" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_0 RETURN "CH_MSK_SKUL_0" BREAK
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_1 RETURN "CH_MSK_SKUL_1" BREAK
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_2 RETURN "CH_MSK_SKUL_2" BREAK
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_3 RETURN "CH_MSK_SKUL_3" BREAK
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_4 RETURN "CH_MSK_SKUL_4" BREAK
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_5 RETURN "CH_MSK_SKUL_5" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_0 RETURN "CH_MSK_LFRU_0" BREAK
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_1 RETURN "CH_MSK_LFRU_1" BREAK
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_2 RETURN "CH_MSK_LFRU_2" BREAK
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_3 RETURN "CH_MSK_LFRU_3" BREAK
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_4 RETURN "CH_MSK_LFRU_4" BREAK
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_5 RETURN "CH_MSK_LFRU_5" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_0 RETURN "CH_MSK_GUER_0" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_1 RETURN "CH_MSK_GUER_1" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_2 RETURN "CH_MSK_GUER_2" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_3 RETURN "CH_MSK_GUER_3" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_4 RETURN "CH_MSK_GUER_4" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_5 RETURN "CH_MSK_GUER_5" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_6 RETURN "CH_MSK_GUER_6" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_7 RETURN "CH_MSK_GUER_7" BREAK
|
|
CASE MASK_CASINO_HEIST_GUERILLA_8 RETURN "CH_MSK_GUER_8" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_0 RETURN "CH_MSK_CLWN_0" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_1 RETURN "CH_MSK_CLWN_1" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_2 RETURN "CH_MSK_CLWN_2" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_3 RETURN "CH_MSK_CLWN_3" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_4 RETURN "CH_MSK_CLWN_4" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_5 RETURN "CH_MSK_CLWN_5" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_6 RETURN "CH_MSK_CLWN_6" BREAK
|
|
CASE MASK_CASINO_HEIST_CLOWNS_7 RETURN "CH_MSK_CLWN_7" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_0 RETURN "CH_MSK_ANIM_0" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_1 RETURN "CH_MSK_ANIM_1" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_2 RETURN "CH_MSK_ANIM_2" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_3 RETURN "CH_MSK_ANIM_3" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_4 RETURN "CH_MSK_ANIM_4" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_5 RETURN "CH_MSK_ANIM_5" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_6 RETURN "CH_MSK_ANIM_6" BREAK
|
|
CASE MASK_CASINO_HEIST_ANIMALS_7 RETURN "CH_MSK_ANIM_7" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_0 RETURN "CH_MSK_RIOT_0" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_1 RETURN "CH_MSK_RIOT_1" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_2 RETURN "CH_MSK_RIOT_2" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_3 RETURN "CH_MSK_RIOT_3" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_4 RETURN "CH_MSK_RIOT_4" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_5 RETURN "CH_MSK_RIOT_5" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_6 RETURN "CH_MSK_RIOT_6" BREAK
|
|
CASE MASK_CASINO_HEIST_RIOT_7 RETURN "CH_MSK_RIOT_7" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_0 RETURN "CH_MSK_ONIF_0" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIFULL_1 RETURN "CH_MSK_ONIF_1" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIFULL_2 RETURN "CH_MSK_ONIF_2" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIFULL_3 RETURN "CH_MSK_ONIF_3" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIFULL_4 RETURN "CH_MSK_ONIF_4" BREAK
|
|
CASE MASK_CASINO_HEIST_ONIFULL_5 RETURN "CH_MSK_ONIF_5" BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_0 RETURN "CH_MSK_HOCK_0" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_1 RETURN "CH_MSK_HOCK_1" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_2 RETURN "CH_MSK_HOCK_2" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_3 RETURN "CH_MSK_HOCK_3" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_4 RETURN "CH_MSK_HOCK_4" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_5 RETURN "CH_MSK_HOCK_5" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_6 RETURN "CH_MSK_HOCK_6" BREAK
|
|
CASE MASK_CASINO_HEIST_HOCKEY_7 RETURN "CH_MSK_HOCK_7" BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_0 RETURN "MASK_IH_BHALF_0"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_1 RETURN "MASK_IH_BHALF_1"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_2 RETURN "MASK_IH_BHALF_2"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_3 RETURN "MASK_IH_BHALF_3"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_4 RETURN "MASK_IH_BHALF_4"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_5 RETURN "MASK_IH_BHALF_5"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_6 RETURN "MASK_IH_BHALF_6"
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_7 RETURN "MASK_IH_BHALF_7"
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_0 RETURN "MASK_IH_PFULL_0"
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_1 RETURN "MASK_IH_PFULL_1"
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_2 RETURN "MASK_IH_PFULL_2"
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_3 RETURN "MASK_IH_PFULL_3"
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_4 RETURN "MASK_IH_PFULL_4"
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_5 RETURN "MASK_IH_PFULL_5"
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_0 RETURN "MASK_IH_CSPEC_0"
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_1 RETURN "MASK_IH_CSPEC_1"
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_2 RETURN "MASK_IH_CSPEC_2"
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_3 RETURN "MASK_IH_CSPEC_3"
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_4 RETURN "MASK_IH_CSPEC_4"
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_5 RETURN "MASK_IH_CSPEC_5"
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_0 RETURN "MASK_IH_NGAIT_0"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_1 RETURN "MASK_IH_NGAIT_1"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_2 RETURN "MASK_IH_NGAIT_2"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_3 RETURN "MASK_IH_NGAIT_3"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_4 RETURN "MASK_IH_NGAIT_4"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_5 RETURN "MASK_IH_NGAIT_5"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_6 RETURN "MASK_IH_NGAIT_6"
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_7 RETURN "MASK_IH_NGAIT_7"
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_0 RETURN "MASK_IH_FWRAP_0"
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_1 RETURN "MASK_IH_FWRAP_1"
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_2 RETURN "MASK_IH_FWRAP_2"
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_3 RETURN "MASK_IH_FWRAP_3"
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_4 RETURN "MASK_IH_FWRAP_4"
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_5 RETURN "MASK_IH_FWRAP_5"
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_0 RETURN "MASK_IH_NOPS_0"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_1 RETURN "MASK_IH_NOPS_1"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_2 RETURN "MASK_IH_NOPS_2"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_3 RETURN "MASK_IH_NOPS_3"
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_0 RETURN "MASK_IH_NVISI_0"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_1 RETURN "MASK_IH_NVISI_1"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_2 RETURN "MASK_IH_NVISI_2"
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_3 RETURN "MASK_IH_NVISI_3"
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_0 RETURN "MASK_IH_CHALF_0"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_1 RETURN "MASK_IH_CHALF_1"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_2 RETURN "MASK_IH_CHALF_2"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_3 RETURN "MASK_IH_CHALF_3"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_4 RETURN "MASK_IH_CHALF_4"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_5 RETURN "MASK_IH_CHALF_5"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_6 RETURN "MASK_IH_CHALF_6"
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_7 RETURN "MASK_IH_CHALF_7"
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_0 RETURN "MASK_IH_MNIGH_0"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_1 RETURN "MASK_IH_MNIGH_1"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_2 RETURN "MASK_IH_MNIGH_2"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_3 RETURN "MASK_IH_MNIGH_3"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_4 RETURN "MASK_IH_MNIGH_4"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_5 RETURN "MASK_IH_MNIGH_5"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_6 RETURN "MASK_IH_MNIGH_6"
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_7 RETURN "MASK_IH_MNIGH_7"
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_0 RETURN "MASK_IH_IGUER_0"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_1 RETURN "MASK_IH_IGUER_1"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_2 RETURN "MASK_IH_IGUER_2"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_3 RETURN "MASK_IH_IGUER_3"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_4 RETURN "MASK_IH_IGUER_4"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_5 RETURN "MASK_IH_IGUER_5"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_6 RETURN "MASK_IH_IGUER_6"
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_7 RETURN "MASK_IH_IGUER_7"
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_0 RETURN "MASK_IH_PHOCK_0"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_1 RETURN "MASK_IH_PHOCK_1"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_2 RETURN "MASK_IH_PHOCK_2"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_3 RETURN "MASK_IH_PHOCK_3"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_4 RETURN "MASK_IH_PHOCK_4"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_5 RETURN "MASK_IH_PHOCK_5"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_6 RETURN "MASK_IH_PHOCK_6"
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_7 RETURN "MASK_IH_PHOCK_7"
|
|
|
|
CASE MASK_TUNER_STARS_AND_STRIPES_FALSE_FACE RETURN "MASK_TN_FFACE_0"
|
|
CASE MASK_TUNER_GREEN_PATTERN_FALSE_FACE RETURN "MASK_TN_FFACE_1"
|
|
ENDSWITCH
|
|
|
|
PRINTLN("GET_MP_OUTFIT_MASK_NAME - Enum missing tell Tom F. - ", eMask)
|
|
SCRIPT_ASSERT("GET_MP_OUTFIT_NAME - Enum missing tell Tom F.")
|
|
|
|
RETURN "INVALID"
|
|
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_MP_VERSUS_OUTFIT_ADJUSTED_TEAMS(INT iNumberOfTeams)
|
|
INT i
|
|
REPEAT FMMC_MAX_TEAMS i
|
|
|
|
IF g_FMMC_STRUCT.iTeamOutfitOverride[i] != -1
|
|
iNumberOfTeams--
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
RETURN iNumberOfTeams
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Query if the team has an overridden outfit style
|
|
FUNC BOOL DOES_CORONA_TEAM_HAVE_BEAST_OUTFIT(INT iTeam)
|
|
IF iTeam >= 0 AND iTeam < FMMC_MAX_TEAMS
|
|
RETURN IS_BIT_SET(g_FMMC_STRUCT.sFMMCEndConditions[iTeam].iTeamBitset2, ciBS2_ENABLE_BEAST_OUTFIT)
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
|
|
/// PURPOSE: Returns the correct name for the VS outfit setup
|
|
FUNC STRING GET_MP_VERSUS_OUTFIT_SETUP_TEXT(INT iStyleSetup, VERSUS_OUTFIT_STYLE eStyle, INT iNumberOfTeams = 2)
|
|
|
|
iNumberOfTeams = GET_MP_VERSUS_OUTFIT_ADJUSTED_TEAMS(iNumberOfTeams)
|
|
|
|
SWITCH iStyleSetup
|
|
// Corona Classic Selection
|
|
CASE VS_STYLE_CLASSIC
|
|
SWITCH eStyle
|
|
CASE VS_CLASSIC_COMBO_0
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MC0"
|
|
ELSE
|
|
RETURN "VS_STYLE_C0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_CLASSIC_COMBO_1
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MC1"
|
|
ELSE
|
|
RETURN "VS_STYLE_C1"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_CLASSIC_COMBO_2 RETURN "VS_STYLE_C2"
|
|
CASE VS_CLASSIC_COMBO_3 RETURN "VS_STYLE_C3"
|
|
CASE VS_CLASSIC_COMBO_4 RETURN "VS_STYLE_C4"
|
|
CASE VS_CLASSIC_COMBO_5 RETURN "VS_STYLE_C5"
|
|
CASE VS_CLASSIC_COMBO_6 RETURN "VS_STYLE_C6"
|
|
CASE VS_CLASSIC_COMBO_7 RETURN "VS_STYLE_C7"
|
|
CASE VS_CLASSIC_COMBO_8
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MC8"
|
|
ELSE
|
|
RETURN "VS_STYLE_C8"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_CLASSIC_COMBO_9 RETURN "VS_STYLE_C9"
|
|
CASE VS_CLASSIC_COMBO_10
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MC10"
|
|
ELSE
|
|
RETURN "VS_STYLE_C10"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_CLASSIC_COMBO_11 RETURN "VS_STYLE_C11"
|
|
CASE VS_CLASSIC_COMBO_12 RETURN "VS_STYLE_C12"
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
// Corona Themed Selection
|
|
CASE VS_STYLE_THEMED
|
|
SWITCH eStyle
|
|
CASE VS_THEMED_COMBO_0
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT2"
|
|
ELSE
|
|
RETURN "VS_STYLE_T0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_1 RETURN "VS_STYLE_T1"
|
|
CASE VS_THEMED_COMBO_2 RETURN "VS_STYLE_T2"
|
|
CASE VS_THEMED_COMBO_3
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT0"
|
|
ELSE
|
|
RETURN "VS_STYLE_T3"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_4 RETURN "VS_STYLE_T4"
|
|
CASE VS_THEMED_COMBO_5 RETURN "VS_STYLE_T5"
|
|
CASE VS_THEMED_COMBO_6
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT1"
|
|
ELSE
|
|
RETURN "VS_STYLE_T6"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_7 RETURN "VS_STYLE_T7"
|
|
CASE VS_THEMED_COMBO_8 RETURN "VS_STYLE_T8"
|
|
CASE VS_THEMED_COMBO_9 RETURN "VS_STYLE_T19"
|
|
CASE VS_THEMED_COMBO_10 RETURN "VS_STYLE_T20"
|
|
CASE VS_THEMED_COMBO_11 RETURN "VS_STYLE_T21"
|
|
CASE VS_THEMED_COMBO_12 RETURN "VS_STYLE_T22"
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_STYLE_HALLOWEEN
|
|
SWITCH eStyle
|
|
CASE VS_HALLOWEEN_COMBO_0
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT4"
|
|
ELSE
|
|
RETURN "VS_STYLE_T9"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HALLOWEEN_COMBO_1 RETURN "VS_STYLE_T10"
|
|
CASE VS_HALLOWEEN_COMBO_2
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT5"
|
|
ELSE
|
|
RETURN "VS_STYLE_T11"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HALLOWEEN_COMBO_3 RETURN "VS_STYLE_T12"
|
|
CASE VS_HALLOWEEN_COMBO_4
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT6"
|
|
ELSE
|
|
RETURN "VS_STYLE_T13"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HALLOWEEN_COMBO_5 RETURN "VS_STYLE_T14"
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_STYLE_SOLO
|
|
SWITCH eStyle
|
|
CASE VS_SOLO_COMBO_0
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT7"
|
|
ELSE
|
|
RETURN "VS_STYLE_T15"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_1 RETURN "VS_STYLE_T16"
|
|
CASE VS_SOLO_COMBO_2
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_ST0"
|
|
ELSE
|
|
RETURN "VS_STYLE_S0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_3 RETURN "VS_STYLE_S1"
|
|
CASE VS_SOLO_COMBO_4
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_ST1"
|
|
ELSE
|
|
RETURN "VS_STYLE_S2"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_5 RETURN "VS_STYLE_S3"
|
|
CASE VS_SOLO_COMBO_6
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_ST2"
|
|
ELSE
|
|
RETURN "VS_STYLE_S4"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_7 RETURN "VS_STYLE_S5"
|
|
CASE VS_SOLO_COMBO_8
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_ST3"
|
|
ELSE
|
|
RETURN "VS_STYLE_S6"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_9 RETURN "VS_STYLE_S7"
|
|
CASE VS_SOLO_COMBO_10
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_MT8"
|
|
ELSE
|
|
RETURN "VS_STYLE_T17"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_SOLO_COMBO_11 RETURN "VS_STYLE_T18"
|
|
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_STYLE_HIDDEN
|
|
SWITCH eStyle
|
|
CASE VS_HIDDEN_COMBO_0
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_BT0"
|
|
ELSE
|
|
RETURN "VS_STYLE_B0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_1 RETURN "VS_STYLE_B1"
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
CASE VS_HIDDEN_COMBO_2
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_HT2"
|
|
ELSE
|
|
RETURN "VS_STYLE_H2"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_3 RETURN "VS_STYLE_H3"
|
|
CASE VS_HIDDEN_COMBO_4
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_HT4"
|
|
ELSE
|
|
RETURN "VS_STYLE_H4"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_5 RETURN "VS_STYLE_H5"
|
|
CASE VS_HIDDEN_COMBO_6
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_HT6"
|
|
ELSE
|
|
RETURN "VS_STYLE_H6"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_7 RETURN "VS_STYLE_H7"
|
|
CASE VS_HIDDEN_COMBO_8
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_HT8"
|
|
ELSE
|
|
RETURN "VS_STYLE_H8"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_9 RETURN "VS_STYLE_H9"
|
|
CASE VS_HIDDEN_COMBO_10
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_TDT0"
|
|
ELSE
|
|
RETURN "VS_STYLE_TD0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_11 RETURN "VS_STYLE_TD1"
|
|
|
|
CASE VS_HIDDEN_COMBO_12
|
|
IF iNumberOfTeams > 2
|
|
RETURN "VS_STYLE_TLT0"
|
|
ELSE
|
|
RETURN "VS_STYLE_TL0"
|
|
ENDIF
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_13 RETURN "VS_STYLE_TL1"
|
|
CASE VS_HIDDEN_COMBO_14 RETURN "EXEC_TRDING_PLA"
|
|
|
|
CASE VS_HIDDEN_COMBO_15
|
|
IF iNumberOfTeams > 2
|
|
RETURN "EXEC_TM_SPRT_COMB"
|
|
ELSE
|
|
RETURN "EXEC_TM_SPRT"
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_16 RETURN "EXEC_TM_SPRT_2"
|
|
|
|
CASE VS_HIDDEN_COMBO_17 RETURN "BIKER_LOST"
|
|
CASE VS_HIDDEN_COMBO_18 RETURN "BIKER_DLINE"
|
|
CASE VS_HIDDEN_COMBO_19 RETURN "BIKER_SLIPS"
|
|
CASE VS_HIDDEN_COMBO_20 RETURN "IMPEXP_TWAR"
|
|
CASE VS_HIDDEN_COMBO_21 RETURN "IMPEXP_JUG"
|
|
CASE VS_HIDDEN_COMBO_22 RETURN "IMPEXP_JUG4"
|
|
|
|
CASE VS_HIDDEN_COMBO_23 RETURN "VS_GENCOMBAT"
|
|
CASE VS_HIDDEN_COMBO_24 RETURN "VS_SR_LG"
|
|
|
|
CASE VS_HIDDEN_COMBO_25 RETURN "VS_LIONSDEN"
|
|
CASE VS_HIDDEN_COMBO_26 RETURN "VS_DAWNRAID"
|
|
CASE VS_HIDDEN_COMBO_27 RETURN "VS_TEAMGEN"
|
|
CASE VS_HIDDEN_COMBO_28 RETURN "VS_POWERMAD"
|
|
|
|
CASE VS_HIDDEN_COMBO_29 RETURN "VS_HOSTTAKE"
|
|
CASE VS_HIDDEN_COMBO_30 RETURN "VS_CONDEMN"
|
|
CASE VS_HIDDEN_COMBO_31 RETURN "VS_VEHWAR"
|
|
CASE VS_HIDDEN_COMBO_32 RETURN "VS_AIRSHOOT"
|
|
CASE VS_HIDDEN_COMBO_33 RETURN "VS_BOMBRUN"
|
|
CASE VS_HIDDEN_COMBO_34 RETURN "VS_STOCKPL"
|
|
|
|
CASE VS_HIDDEN_COMBO_35 RETURN "VS_SLASH_1"
|
|
CASE VS_HIDDEN_COMBO_36 RETURN "VS_SLASH_2"
|
|
CASE VS_HIDDEN_COMBO_37 RETURN "VS_HARDTARGET"
|
|
CASE VS_HIDDEN_COMBO_38 RETURN "VS_AIRQUOTA"
|
|
|
|
CASE VS_HIDDEN_COMBO_39 RETURN "VS_SHOWDWN"
|
|
CASE VS_HIDDEN_COMBO_40 RETURN "VS_TRAPDOOR"
|
|
CASE VS_HIDDEN_COMBO_41 RETURN "VS_VENETIAN"
|
|
CASE VS_HIDDEN_COMBO_42 RETURN "VS_DROPBOMB"
|
|
CASE VS_HIDDEN_COMBO_43 RETURN "VS_SUMORUN"
|
|
CASE VS_HIDDEN_COMBO_44 RETURN "VS_OFFDEF"
|
|
CASE VS_HIDDEN_COMBO_45 RETURN "VS_HUNTPACK"
|
|
CASE VS_HIDDEN_COMBO_46 RETURN "VS_TRADPLAC"
|
|
CASE VS_HIDDEN_COMBO_47 RETURN "VS_COTP"
|
|
CASE VS_HIDDEN_COMBO_48 RETURN "VS_RUNBACK"
|
|
CASE VS_HIDDEN_COMBO_49 RETURN "VS_RUNBACK2"
|
|
CASE VS_HIDDEN_COMBO_50 RETURN "VS_RUNBACK3"
|
|
CASE VS_HIDDEN_COMBO_51 RETURN "VS_SPACELING"
|
|
CASE VS_HIDDEN_COMBO_52 RETURN "VS_SUM22HAL"
|
|
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
CASE VS_STYLE_ENTOURAGE
|
|
SWITCH eStyle
|
|
CASE VS_ENTOURAGE_COMBO_0 RETURN "VS_STYLE_D0"
|
|
CASE VS_ENTOURAGE_COMBO_1 RETURN "VS_STYLE_D1"
|
|
ENDSWITCH
|
|
BREAK
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
|
|
PRINTLN("GET_MP_VERSUS_OUTFIT_SETUP_TEXT - Unknown style or outfit. iStyleSetup = ", iStyleSetup, ", eStyle = ", ENUM_TO_INT(eStyle))
|
|
SCRIPT_ASSERT("GET_MP_VERSUS_OUTFIT_SETUP_TEXT - Unknown iStyleSetup or eStyle passed. See log for details")
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the total number of outfit combinations available to the host
|
|
FUNC INT GET_MP_VERSUS_OUTFIT_MAX(INT iStyleSetup)
|
|
SWITCH iStyleSetup
|
|
CASE VS_STYLE_CLASSIC RETURN ENUM_TO_INT(VS_CLASSIC_MAX)
|
|
CASE VS_STYLE_THEMED RETURN ENUM_TO_INT(VS_THEMED_MAX)
|
|
CASE VS_STYLE_HALLOWEEN RETURN ENUM_TO_INT(VS_HALLOWEEN_MAX)
|
|
CASE VS_STYLE_ENTOURAGE RETURN ENUM_TO_INT(VS_ENTOURAGE_MAX)
|
|
CASE VS_STYLE_SOLO RETURN ENUM_TO_INT(VS_SOLO_MAX)
|
|
CASE VS_STYLE_HIDDEN RETURN ENUM_TO_INT(VS_HIDDEN_MAX)
|
|
ENDSWITCH
|
|
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the max outfits based on the initial outfit you return. use GET_MP_VERSUS_OUTFIT_DEFAULT from below to get the default outfit
|
|
FUNC INT GET_MP_VERSUS_MAX_OUTFITS_FOR_STYLE(MP_OUTFIT_ENUM eVersusOutfit)
|
|
|
|
SWITCH eVersusOutfit
|
|
|
|
CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_0 RETURN 3
|
|
|
|
CASE OUTFIT_VERSUS_ENTOURAGE_VIP_0 RETURN 1
|
|
CASE OUTFIT_VERSUS_ENTOURAGE_ATTACKER_0 RETURN 4
|
|
CASE OUTFIT_VERSUS_ENTOURAGE_DEFENDER_0 RETURN 3
|
|
CASE OUTFIT_VERSUS_EXTRACTION_VIP_0 RETURN 1
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_0 RETURN 12
|
|
|
|
CASE OUTFIT_LOW_FLOW_WOLVES_0
|
|
CASE OUTFIT_LOW_FLOW_EAGLES_0
|
|
CASE OUTFIT_LOW_FLOW_BULLS_0
|
|
CASE OUTFIT_LOW_FLOW_BEARS_0
|
|
CASE OUTFIT_SOLO_SENIORS_0
|
|
CASE OUTFIT_SOLO_GENTS_0
|
|
CASE OUTFIT_SOLO_FRANKS_0
|
|
CASE OUTFIT_SOLO_VAMPS_0
|
|
CASE OUTFIT_SOLO_KITTENS_0
|
|
CASE OUTFIT_SOLO_FOXES_0
|
|
CASE OUTFIT_SOLO_RACCOONS_0
|
|
CASE OUTFIT_SOLO_OWLS_0
|
|
CASE OUTFIT_SOLO_BUGS_0
|
|
CASE OUTFIT_SOLO_PIGS_0
|
|
CASE OUTFIT_SOLO_FROST_0
|
|
CASE OUTFIT_SOLO_POLAR_0
|
|
CASE OUTFIT_SOLO_REPTILIANS_0
|
|
CASE OUTFIT_SOLO_SATANS_0
|
|
CASE OUTFIT_SOLO_SUBURBIA_0
|
|
CASE OUTFIT_SOLO_MONSTER_MILITIA_0
|
|
CASE OUTFIT_LOW_FLOW_NORTH_0
|
|
CASE OUTFIT_LOW_FLOW_SOUTH_0
|
|
CASE OUTFIT_LOW_FLOW_STARS_0
|
|
CASE OUTFIT_LOW_FLOW_STRIPES_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0
|
|
RETURN 2
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0
|
|
RETURN 4
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0
|
|
RETURN 6
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PURPLE_0
|
|
CASE OUTFIT_HIDDEN_TEAM_STUNT_BIKER_ORANGE_0
|
|
CASE OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PINK_0
|
|
CASE OUTFIT_HIDDEN_TEAM_STUNT_BIKER_GREEN_0
|
|
CASE OUTFIT_HIDDEN_DEADLINE_PURPLE_0
|
|
CASE OUTFIT_HIDDEN_DEADLINE_ORANGE_0
|
|
CASE OUTFIT_HIDDEN_DEADLINE_PINK_0
|
|
CASE OUTFIT_HIDDEN_DEADLINE_GREEN_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_BLUE_0
|
|
CASE OUTFIT_HIDDEN_IE_JN_TARGET_0
|
|
CASE OUTFIT_HIDDEN_IE_JN4_ORANGE_TARGET_0
|
|
CASE OUTFIT_HIDDEN_IE_JN4_PURPLE_TARGET_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_HIDDEN_SR_LG_ORANGE_0
|
|
CASE OUTFIT_HIDDEN_SR_LG_BLUE_0
|
|
CASE OUTFIT_HIDDEN_SR_LG_PINK_0
|
|
CASE OUTFIT_HIDDEN_SR_LG_GREEN_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_GREEN_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_GREEN_0
|
|
RETURN 2
|
|
|
|
CASE OUTFIT_HIDDEN_HOSTILE_TAKEOVER_GREEN_0
|
|
CASE OUTFIT_HIDDEN_HOSTILE_TAKEOVER_ORANGE_0
|
|
CASE OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PURPLE_0
|
|
CASE OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_CND_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_CND_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_CND_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_CND_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_GREEN_0
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_3
|
|
RETURN 4
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_7
|
|
RETURN 8
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_3
|
|
RETURN 4
|
|
ENDSWITCH
|
|
|
|
SWITCH eVersusOutfit
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_3
|
|
RETURN 4
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_3
|
|
RETURN 4
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_COP
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_RED
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_BLUE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_WHITE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_ROBBER_GRAY
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_RED
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_WHITE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_GREEN
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_ORANGE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_PURPLE
|
|
CASE OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_PINK
|
|
RETURN 7
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SPACELING_3
|
|
RETURN 4
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_ORANGE_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_PINK_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUMORUN_GREEN_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_RUNNER_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_RUNNER_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_WHITE
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_RED
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLUE
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW
|
|
CASE OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW
|
|
RETURN 1
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_7
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_7
|
|
RETURN 8
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_1
|
|
RETURN 2
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_3
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_4
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_5
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_6
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_7
|
|
RETURN 8
|
|
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_1
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_2
|
|
CASE OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_3
|
|
RETURN 4
|
|
|
|
DEFAULT
|
|
RETURN 6
|
|
ENDSWITCH
|
|
|
|
RETURN 1
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the outfit enum for the passed Versus setup (Classic / Themed), the style chosen and the players team and index
|
|
FUNC MP_OUTFIT_ENUM GET_MP_VERSUS_OUTFIT_DEFAULT(INT iStyleSetup, VERSUS_OUTFIT_STYLE eVersusStyle, INT iTeam)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF iTeam < 0
|
|
OR iTeam > 3
|
|
PRINTLN("GET_MP_VERSUS_OUTFIT_DEFAULT - Passed team is invalid, iTeam = ", iTeam)
|
|
SCRIPT_ASSERT("GET_MP_VERSUS_OUTFIT_DEFAULT - Passed team is invalid")
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
// If the creator has overridden an outfit for the team we should return that teams outfit instead
|
|
IF (iTeam != -1 AND iTeam < FMMC_MAX_TEAMS)
|
|
IF g_FMMC_STRUCT.iTeamOutfitOverride[iTeam] != -1
|
|
PRINTLN("GET_MP_VERSUS_OUTFIT_DEFAULT - Overriding team outfit, g_FMMC_STRUCT.iTeamOutfitOverride[", iTeam, "] = ", g_FMMC_STRUCT.iTeamOutfitOverride[iTeam])
|
|
iTeam = g_FMMC_STRUCT.iTeamOutfitOverride[iTeam]
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// If the creator has flagged that this team has a beast outfit, return immediately
|
|
IF DOES_CORONA_TEAM_HAVE_BEAST_OUTFIT(iTeam)
|
|
AND NOT IS_THIS_ROCKSTAR_MISSION_NEW_VS_TRADING_PLACES_REMIX(g_FMMC_STRUCT.iAdversaryModeType)
|
|
PRINTLN("GET_MP_VERSUS_OUTFIT_DEFAULT - Overriding team outfit to BEAST, iTeam = ", iTeam)
|
|
RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, OUTFIT_ADVERSARY_B_OVERRIDE_0)
|
|
ENDIF
|
|
|
|
SWITCH iStyleSetup
|
|
|
|
CASE VS_STYLE_CLASSIC
|
|
|
|
SWITCH eVersusStyle
|
|
CASE VS_CLASSIC_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_JUNGLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_STEEL_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_SWAMP_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_STREET_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_TACTICAL_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BALLAS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_FAMILIES_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_SWAMP_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_FAMILIES_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BALLAS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_FAMILIES_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_FAMILIES_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_HITMEN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ASSASSINS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_HITMEN_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_HITMEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_COPS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_CRIMINALS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_COPS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_COPS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_6
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BIKERS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_7
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_8
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLUE_SMART_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_RED_SMART_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_SMART_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLACK_SMART_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_9
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_SMART_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLACK_SMART_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_SMART_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_BLACK_SMART_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_10
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_YELLOW_SPORT_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_GREEN_SPORT_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_STREET_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_RED_STREET_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_11
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_STREET_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_RED_STREET_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_WHITE_STREET_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR_RED_STREET_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_CLASSIC_COMBO_12
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
ENDSWITCH
|
|
|
|
BREAK
|
|
|
|
CASE VS_STYLE_THEMED
|
|
SWITCH eVersusStyle
|
|
CASE VS_THEMED_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_SLASHERS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_BUBBLEGUMS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DEVILS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ANGELS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_STINKERS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_WIMPEES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_STINKERS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_STINKERS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DEVILS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ANGELS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DEVILS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DEVILS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_MONKEYS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_SCIENTISTS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_CATS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BIRDS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_CATS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BIRDS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_CATS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_CATS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLUE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLUE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_BLUE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_6
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_WEREWOLVES_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_MUMMIES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_RAVENS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_GHOULS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_7
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_RAVENS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_GHOULS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_RAVENS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_RAVENS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_8
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ZOMBIES_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_COWBOYS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ZOMBIES_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_ZOMBIES_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_THEMED_COMBO_9
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_10
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_MONO_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_MONO_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_MONO_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_11
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_COOKIES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_THEMED_COMBO_12
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
BREAK
|
|
|
|
CASE VS_STYLE_HALLOWEEN
|
|
SWITCH eVersusStyle
|
|
CASE VS_HALLOWEEN_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_MANIACS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_HOWLERS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_RETILIANS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SATANS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HALLOWEEN_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_RETILIANS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SATANS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_RETILIANS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_RETILIANS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HALLOWEEN_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_DOUBLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_TRICKSTERS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SUBURBIA_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HALLOWEEN_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SUBURBIA_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SUBURBIA_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_SUBURBIA_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HALLOWEEN_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_PSYCHOS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_UNDEAD_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_DWELLERS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_PIMP_WITCHES_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HALLOWEEN_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_DWELLERS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_PIMP_WITCHES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_DWELLERS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HAL_DWELLERS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_STYLE_SOLO
|
|
SWITCH eVersusStyle
|
|
CASE VS_SOLO_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_WOLVES_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_EAGLES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BEARS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BULLS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BEARS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BULLS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BEARS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_BULLS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_SENIORS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_GENTS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FRANKS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_VAMPS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FRANKS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_VAMPS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FRANKS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_VAMPS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_KITTENS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FOXES_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_RACCOONS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_OWLS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_RACCOONS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_OWLS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_RACCOONS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_OWLS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_6
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_BUGS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_PIGS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FROST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_POLAR_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_7
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FROST_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_POLAR_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_FROST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_POLAR_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_8
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_REPTILIANS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_SATANS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_SUBURBIA_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_MONSTER_MILITIA_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_9
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_SUBURBIA_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_MONSTER_MILITIA_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_SUBURBIA_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_SOLO_MONSTER_MILITIA_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
|
|
|
|
CASE VS_SOLO_COMBO_10
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_NORTH_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_SOUTH_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STRIPES_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STARS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_SOLO_COMBO_11
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STRIPES_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STARS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STRIPES_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_LOW_FLOW_STARS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
CASE VS_STYLE_ENTOURAGE
|
|
SWITCH eVersusStyle
|
|
CASE VS_ENTOURAGE_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_VIP_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_DEFENDER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_ATTACKER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_ENTOURAGE_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_ENTOURAGE_DEFENDER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXTRACTION_VIP_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_STYLE_HIDDEN
|
|
|
|
// 2712297 - Alter the team outfit colour order for all unreleased Adversary Modes for Lowrider 2 onwards.
|
|
IF SHOULD_USE_NEW_TEAM_COLOUR_ORDER()
|
|
SWITCH eVersusStyle
|
|
CASE VS_HIDDEN_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_6
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_7
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_8
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_9
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_10
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_ORANGE_0)) // 4
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_11
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_12
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_0)) // 4
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_13
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_14
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_15
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_16
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_17
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_ANGELS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_ANGELS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_18
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_19
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_20
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_BLUE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_21
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_ATTACKER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_22
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_ATTACKER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_TARGET_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_TARGET_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_23
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_URBAN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_URBAN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_24
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_BLUE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_25
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_DEFENDER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_DEFENDER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_26
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_27
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_28
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_29
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_30
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_1))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_2))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_3))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_31
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_32
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_33
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_34
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_35
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_36
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_37
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_38
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_39
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_40
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_41
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_42
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_43
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_44
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_45
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_RUNNER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_RUNNER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_46
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_47
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_48
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_WHITE))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_RED))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLUE))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_49
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_50
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_51
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_52
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
SWITCH eVersusStyle
|
|
CASE VS_HIDDEN_COMBO_0
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_SWAMP_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_METAL_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_TACTICAL_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_1
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_DUNE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_SWAMP_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_METAL_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_CLASSIC_TACTICAL_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_2
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_3
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VINTAGE_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_4
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_5
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_HEAVY_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_6
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_7
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_VEHICLE_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_8
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0)) // 4
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_9
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_10
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_GREEN_0)) // 4
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_11
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_DROP_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_12
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_GREEN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_ORANGE_0)) // 4
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_13
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PURPLE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_LOWRIDER_PINK_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_14
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_WINNER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_EXEC1_TRADING_LOSER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_15
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_16
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0)) // 2
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_GREEN_0)) // 2
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_17
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_ANGELS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_DEVILS_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LOST_ANGELS_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_18
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DEADLINE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_19
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_TEAM_STUNT_BIKER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_20
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_BLUE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_BIKER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_21
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_TARGET_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN_ATTACKER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_22
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_ATTACKER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_ORANGE_TARGET_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_IE_JN4_PURPLE_TARGET_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_23
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_URBAN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_FOREST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_GENCOMBAT_URBAN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_24
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_BLUE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_SR_LG_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_25
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_DEFENDER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_ATTACKER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_LIONSDEN_DEFENDER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_26
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_ORANGE_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_DAWNRAID_PURPLE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_27
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TEAM_GENERAL_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_28
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_ORANGE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PURPLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GR_POWERMAD_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_29
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_HIDDEN_HOSTILE_TAKEOVER_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_30
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_1))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_2))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_CND_3))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_31
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_VEHICLE_WARFARE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_32
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_33
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_BLACK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_34
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SM_STOCKPILE_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_35
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_CLOWN_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GREY_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_36
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_ALIEN_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_SL_GRNBRWN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_37
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_BLACK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_GO_HT_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_38
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_AIR_QUOTA_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE VS_HIDDEN_COMBO_39
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SHOWDOWN_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_40
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRAPDOOR_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_41
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_COP))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_VENETIAN_FIRESUIT_CLASSIC_BLUE))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_42
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_DROPBOMB_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_43
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUMORUN_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_44
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PURPLE_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_ORANGE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_PINK_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_OFFDEF_GREEN_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_45
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_HOONS_RUNNER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_HUNTBACK_REMIX_RABBLE_RUNNER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_46
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_BEAST_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_TRADINGPLACES_JUG_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_47
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_HUNTER_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_COMEPLAYREMIX_RUNNER_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_48
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLACK))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_WHITE))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_RED))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_BLUE))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_49
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREEN))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOW))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_50
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_GREENGLOW))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_RUNBACKREMIX_YELLOWGLOW))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_51
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SPACELING_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_HIDDEN_COMBO_52
|
|
SWITCH iTeam
|
|
CASE 0 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
CASE 1 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_RIDERS_0))
|
|
CASE 2 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
CASE 3 RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(OUTFIT_VERSUS_HIDDEN_SUM22_HALLOWEEN_HUNTED_0))
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN OUTFIT_MP_DEFAULT
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_CORONA_OUTFIT_VALID(INT iStyleSetup, VERSUS_OUTFIT_STYLE eVersusStyle)
|
|
|
|
IF IS_BIT_SET(g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][0], GET_LONG_BITSET_BIT(ENUM_TO_INT(eVersusStyle)))
|
|
OR IS_BIT_SET(g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][1], GET_LONG_BITSET_BIT(ENUM_TO_INT(eVersusStyle)))
|
|
OR IS_CORONA_BIT_SET(CORONA_ALLOW_ALL_OUTFITS)
|
|
OR IS_BIT_SET(g_FMMC_STRUCT.biVSAllowFutureOutfits, iStyleSetup)
|
|
OR GET_NUMBER_OF_THREADS_RUNNING_THE_SCRIPT_WITH_THIS_HASH(HASH("fm_mission_creator")) > 0
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
IF iStyleSetup = VS_STYLE_HALLOWEEN
|
|
// Allow all halloween outfits if defaulted and is the selected style
|
|
IF (g_sMPTunables.bDEFAULT_OUTFIT_ADVERSARY_HALLOWEEN
|
|
OR g_sMPTunables.bENABLE_OUTFIT_ADVERSARY_HALLOWEEN)
|
|
AND g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][0] = 0
|
|
AND g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][1] = 0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF iStyleSetup = VS_STYLE_SOLO
|
|
// Allow all solo outfits if defaulted and is the selected style
|
|
IF (g_sMPTunables.bDEFAULT_OUTFIT_ADVERSARY_SOLO
|
|
OR g_sMPTunables.bENABLE_OUTFIT_ADVERSARY_SOLO)
|
|
AND g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][0] = 0
|
|
AND g_FMMC_STRUCT.biVSAvailableOutfit[iStyleSetup][1] = 0
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Check if the versus outfit style is valid.
|
|
FUNC BOOL IS_VERSUS_OUTFIT_STYLE_VALID(INT iStyleSetup, VERSUS_OUTFIT_STYLE eVersusStyle, INT iNumOfTeams)
|
|
|
|
|
|
// With the new affiliation of teams if there is a relationship, reduce the number of teams to allow correct outfit collection
|
|
iNumOfTeams = GET_MP_VERSUS_OUTFIT_ADJUSTED_TEAMS(iNumOfTeams)
|
|
|
|
SWITCH iNumOfTeams
|
|
|
|
CASE 3
|
|
SWITCH iStyleSetup
|
|
CASE VS_STYLE_CLASSIC
|
|
SWITCH eVersusStyle
|
|
CASE VS_CLASSIC_COMBO_0
|
|
CASE VS_CLASSIC_COMBO_1
|
|
CASE VS_CLASSIC_COMBO_8
|
|
CASE VS_CLASSIC_COMBO_10
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_THEMED
|
|
SWITCH eVersusStyle
|
|
CASE VS_THEMED_COMBO_0
|
|
CASE VS_THEMED_COMBO_3
|
|
CASE VS_THEMED_COMBO_6
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_HALLOWEEN
|
|
SWITCH eVersusStyle
|
|
CASE VS_HALLOWEEN_COMBO_0
|
|
CASE VS_HALLOWEEN_COMBO_2
|
|
CASE VS_HALLOWEEN_COMBO_4
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_ENTOURAGE
|
|
SWITCH eVersusStyle
|
|
CASE VS_ENTOURAGE_COMBO_0
|
|
CASE VS_ENTOURAGE_COMBO_1
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_HIDDEN
|
|
SWITCH eVersusStyle
|
|
CASE VS_HIDDEN_COMBO_0
|
|
CASE VS_HIDDEN_COMBO_2
|
|
CASE VS_HIDDEN_COMBO_4
|
|
CASE VS_HIDDEN_COMBO_6
|
|
CASE VS_HIDDEN_COMBO_8
|
|
CASE VS_HIDDEN_COMBO_10
|
|
CASE VS_HIDDEN_COMBO_20
|
|
CASE VS_HIDDEN_COMBO_21
|
|
CASE VS_HIDDEN_COMBO_22
|
|
CASE VS_HIDDEN_COMBO_23
|
|
CASE VS_HIDDEN_COMBO_24
|
|
CASE VS_HIDDEN_COMBO_25
|
|
CASE VS_HIDDEN_COMBO_26
|
|
CASE VS_HIDDEN_COMBO_27
|
|
CASE VS_HIDDEN_COMBO_28
|
|
CASE VS_HIDDEN_COMBO_29
|
|
CASE VS_HIDDEN_COMBO_30
|
|
CASE VS_HIDDEN_COMBO_31
|
|
CASE VS_HIDDEN_COMBO_32
|
|
CASE VS_HIDDEN_COMBO_33
|
|
CASE VS_HIDDEN_COMBO_34
|
|
CASE VS_HIDDEN_COMBO_35
|
|
CASE VS_HIDDEN_COMBO_36
|
|
CASE VS_HIDDEN_COMBO_37
|
|
CASE VS_HIDDEN_COMBO_38
|
|
CASE VS_HIDDEN_COMBO_39
|
|
CASE VS_HIDDEN_COMBO_40
|
|
CASE VS_HIDDEN_COMBO_41
|
|
CASE VS_HIDDEN_COMBO_42
|
|
CASE VS_HIDDEN_COMBO_43
|
|
CASE VS_HIDDEN_COMBO_44
|
|
CASE VS_HIDDEN_COMBO_45
|
|
CASE VS_HIDDEN_COMBO_46
|
|
CASE VS_HIDDEN_COMBO_47
|
|
CASE VS_HIDDEN_COMBO_48
|
|
CASE VS_HIDDEN_COMBO_49
|
|
CASE VS_HIDDEN_COMBO_50
|
|
CASE VS_HIDDEN_COMBO_51
|
|
CASE VS_HIDDEN_COMBO_52
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_SOLO
|
|
SWITCH eVersusStyle
|
|
CASE VS_SOLO_COMBO_0
|
|
CASE VS_SOLO_COMBO_2
|
|
CASE VS_SOLO_COMBO_4
|
|
CASE VS_SOLO_COMBO_6
|
|
CASE VS_SOLO_COMBO_8
|
|
CASE VS_SOLO_COMBO_10
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE 4
|
|
SWITCH iStyleSetup
|
|
CASE VS_STYLE_CLASSIC
|
|
SWITCH eVersusStyle
|
|
CASE VS_CLASSIC_COMBO_0
|
|
CASE VS_CLASSIC_COMBO_1
|
|
CASE VS_CLASSIC_COMBO_8
|
|
CASE VS_CLASSIC_COMBO_10
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_THEMED
|
|
SWITCH eVersusStyle
|
|
CASE VS_THEMED_COMBO_0
|
|
CASE VS_THEMED_COMBO_3
|
|
CASE VS_THEMED_COMBO_6
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_HALLOWEEN
|
|
SWITCH eVersusStyle
|
|
CASE VS_HALLOWEEN_COMBO_0
|
|
CASE VS_HALLOWEEN_COMBO_2
|
|
CASE VS_HALLOWEEN_COMBO_4
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_HIDDEN
|
|
SWITCH eVersusStyle
|
|
CASE VS_HIDDEN_COMBO_0
|
|
CASE VS_HIDDEN_COMBO_2
|
|
CASE VS_HIDDEN_COMBO_4
|
|
CASE VS_HIDDEN_COMBO_6
|
|
CASE VS_HIDDEN_COMBO_8
|
|
CASE VS_HIDDEN_COMBO_10
|
|
CASE VS_HIDDEN_COMBO_20
|
|
CASE VS_HIDDEN_COMBO_21
|
|
CASE VS_HIDDEN_COMBO_22
|
|
CASE VS_HIDDEN_COMBO_23
|
|
CASE VS_HIDDEN_COMBO_24
|
|
CASE VS_HIDDEN_COMBO_25
|
|
CASE VS_HIDDEN_COMBO_26
|
|
CASE VS_HIDDEN_COMBO_27
|
|
CASE VS_HIDDEN_COMBO_28
|
|
CASE VS_HIDDEN_COMBO_29
|
|
CASE VS_HIDDEN_COMBO_30
|
|
CASE VS_HIDDEN_COMBO_31
|
|
CASE VS_HIDDEN_COMBO_32
|
|
CASE VS_HIDDEN_COMBO_33
|
|
CASE VS_HIDDEN_COMBO_34
|
|
CASE VS_HIDDEN_COMBO_35
|
|
CASE VS_HIDDEN_COMBO_36
|
|
CASE VS_HIDDEN_COMBO_37
|
|
CASE VS_HIDDEN_COMBO_38
|
|
CASE VS_HIDDEN_COMBO_39
|
|
CASE VS_HIDDEN_COMBO_40
|
|
CASE VS_HIDDEN_COMBO_41
|
|
CASE VS_HIDDEN_COMBO_42
|
|
CASE VS_HIDDEN_COMBO_43
|
|
CASE VS_HIDDEN_COMBO_44
|
|
CASE VS_HIDDEN_COMBO_45
|
|
CASE VS_HIDDEN_COMBO_46
|
|
CASE VS_HIDDEN_COMBO_47
|
|
CASE VS_HIDDEN_COMBO_48
|
|
CASE VS_HIDDEN_COMBO_49
|
|
CASE VS_HIDDEN_COMBO_50
|
|
CASE VS_HIDDEN_COMBO_51
|
|
CASE VS_HIDDEN_COMBO_52
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE VS_STYLE_SOLO
|
|
SWITCH eVersusStyle
|
|
CASE VS_SOLO_COMBO_0
|
|
CASE VS_SOLO_COMBO_2
|
|
CASE VS_SOLO_COMBO_4
|
|
CASE VS_SOLO_COMBO_6
|
|
CASE VS_SOLO_COMBO_8
|
|
CASE VS_SOLO_COMBO_10
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
DEFAULT
|
|
IF IS_CORONA_OUTFIT_VALID(iStyleSetup, eVersusStyle)
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Returns the outfit the player has selected
|
|
FUNC MP_OUTFIT_ENUM GET_MP_VERSUS_OUTFIT(INT iStyleSetup, VERSUS_OUTFIT_STYLE eVersusStyle, INT iTeam, INT iIndex)
|
|
|
|
MP_OUTFIT_ENUM eOutfit = GET_MP_VERSUS_OUTFIT_DEFAULT(iStyleSetup, eVersusStyle, iTeam)
|
|
|
|
IF eOutfit = OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0
|
|
OR eOutfit = OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0
|
|
OR eOutfit = OUTFIT_VERSUS_CLASSIC_WIMPEES_0
|
|
RETURN eOutfit
|
|
ENDIF
|
|
|
|
RETURN INT_TO_ENUM(MP_OUTFIT_ENUM, ENUM_TO_INT(eOutfit) + iIndex)
|
|
ENDFUNC
|
|
|
|
FUNC STRING GET_MP_VERSUS_OUTFIT_STYLE_NAME(INT iStyleSetup, VERSUS_OUTFIT_STYLE eVersusStyle, INT iTeam)
|
|
|
|
MP_OUTFIT_ENUM theOutfit = GET_MP_VERSUS_OUTFIT_DEFAULT(iStyleSetup, eVersusStyle, iTeam)
|
|
|
|
SWITCH theOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_JUNGLE_0 RETURN "VS_OUTFIT_0"
|
|
CASE OUTFIT_VERSUS_CLASSIC_STEEL_0 RETURN "VS_OUTFIT_1"
|
|
CASE OUTFIT_VERSUS_CLASSIC_STREET_0 RETURN "VS_OUTFIT_2"
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_0 RETURN "VS_OUTFIT_3"
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_0 RETURN "VS_OUTFIT_4"
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_0 RETURN "VS_OUTFIT_5"
|
|
CASE OUTFIT_VERSUS_CLASSIC_FAMILIES_0 RETURN "VS_OUTFIT_6"
|
|
CASE OUTFIT_VERSUS_CLASSIC_BALLAS_0 RETURN "VS_OUTFIT_7"
|
|
CASE OUTFIT_VERSUS_CLASSIC_HITMEN_0 RETURN "VS_OUTFIT_8"
|
|
CASE OUTFIT_VERSUS_CLASSIC_ASSASSINS_0 RETURN "VS_OUTFIT_9"
|
|
CASE OUTFIT_VERSUS_CLASSIC_COPS_0 RETURN "VS_OUTFIT_10"
|
|
CASE OUTFIT_VERSUS_CLASSIC_CRIMINALS_0 RETURN "VS_OUTFIT_11"
|
|
CASE OUTFIT_VERSUS_CLASSIC_PROFESSIONALS_0 RETURN "VS_OUTFIT_12"
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIKERS_0 RETURN "VS_OUTFIT_13"
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLACK_TUX_0 RETURN "VS_OUTFIT_14"
|
|
CASE OUTFIT_VERSUS_CLASSIC_WHITE_TUX_0 RETURN "VS_OUTFIT_15"
|
|
CASE OUTFIT_VERSUS_THEMED_SLASHERS_0 RETURN "VS_OUTFIT_16"
|
|
CASE OUTFIT_VERSUS_THEMED_BUBBLEGUMS_0 RETURN "VS_OUTFIT_17"
|
|
CASE OUTFIT_VERSUS_CLASSIC_STINKERS_0 RETURN "VS_OUTFIT_18"
|
|
CASE OUTFIT_VERSUS_CLASSIC_WIMPEES_0 RETURN "VS_OUTFIT_19"
|
|
CASE OUTFIT_VERSUS_CLASSIC_DEVILS_0 RETURN "VS_OUTFIT_20"
|
|
CASE OUTFIT_VERSUS_CLASSIC_ANGELS_0 RETURN "VS_OUTFIT_21"
|
|
CASE OUTFIT_VERSUS_CLASSIC_MONKEYS_0 RETURN "VS_OUTFIT_22"
|
|
CASE OUTFIT_VERSUS_CLASSIC_SCIENTISTS_0 RETURN "VS_OUTFIT_23"
|
|
CASE OUTFIT_VERSUS_CLASSIC_CATS_0 RETURN "VS_OUTFIT_24"
|
|
CASE OUTFIT_VERSUS_CLASSIC_BIRDS_0 RETURN "VS_OUTFIT_25"
|
|
CASE OUTFIT_VERSUS_CLASSIC_BLUE_0 RETURN "VS_OUTFIT_26"
|
|
CASE OUTFIT_VERSUS_CLASSIC_ORANGE_0 RETURN "VS_OUTFIT_27"
|
|
CASE OUTFIT_VERSUS_CLASSIC_WEREWOLVES_0 RETURN "VS_OUTFIT_28"
|
|
CASE OUTFIT_VERSUS_CLASSIC_MUMMIES_0 RETURN "VS_OUTFIT_29"
|
|
CASE OUTFIT_VERSUS_CLASSIC_RAVENS_0 RETURN "VS_OUTFIT_30"
|
|
CASE OUTFIT_VERSUS_CLASSIC_GHOULS_0 RETURN "VS_OUTFIT_31"
|
|
CASE OUTFIT_VERSUS_CLASSIC_ZOMBIES_0 RETURN "VS_OUTFIT_32"
|
|
CASE OUTFIT_VERSUS_CLASSIC_COWBOYS_0 RETURN "VS_OUTFIT_33"
|
|
CASE OUTFIT_VERSUS_HAL_MANIACS_0 RETURN "VS_OUTFIT_38"
|
|
CASE OUTFIT_VERSUS_HAL_HOWLERS_0 RETURN "VS_OUTFIT_39"
|
|
CASE OUTFIT_VERSUS_HAL_RETILIANS_0 RETURN "VS_OUTFIT_40"
|
|
CASE OUTFIT_VERSUS_HAL_SATANS_0 RETURN "VS_OUTFIT_41"
|
|
CASE OUTFIT_VERSUS_HAL_DOUBLE_0 RETURN "VS_OUTFIT_42"
|
|
CASE OUTFIT_VERSUS_HAL_TRICKSTERS_0 RETURN "VS_OUTFIT_43"
|
|
CASE OUTFIT_VERSUS_HAL_SUBURBIA_0 RETURN "VS_OUTFIT_44"
|
|
CASE OUTFIT_VERSUS_HAL_MONSTER_MILITIA_0 RETURN "VS_OUTFIT_45"
|
|
CASE OUTFIT_VERSUS_HAL_PSYCHOS_0 RETURN "VS_OUTFIT_46"
|
|
CASE OUTFIT_VERSUS_HAL_UNDEAD_0 RETURN "VS_OUTFIT_47"
|
|
CASE OUTFIT_VERSUS_HAL_DWELLERS_0 RETURN "VS_OUTFIT_48"
|
|
CASE OUTFIT_VERSUS_HAL_PIMP_WITCHES_0 RETURN "VS_OUTFIT_49"
|
|
CASE OUTFIT_LOW_FLOW_WOLVES_0 RETURN "VS_OUTFIT_50"
|
|
CASE OUTFIT_LOW_FLOW_EAGLES_0 RETURN "VS_OUTFIT_51"
|
|
CASE OUTFIT_LOW_FLOW_BULLS_0 RETURN "VS_OUTFIT_52"
|
|
CASE OUTFIT_LOW_FLOW_BEARS_0 RETURN "VS_OUTFIT_53"
|
|
CASE OUTFIT_SOLO_SENIORS_0 RETURN "VS_OUTFIT_S0"
|
|
CASE OUTFIT_SOLO_GENTS_0 RETURN "VS_OUTFIT_S1"
|
|
CASE OUTFIT_SOLO_FRANKS_0 RETURN "VS_OUTFIT_S2"
|
|
CASE OUTFIT_SOLO_VAMPS_0 RETURN "VS_OUTFIT_S3"
|
|
CASE OUTFIT_SOLO_KITTENS_0 RETURN "VS_OUTFIT_S4"
|
|
CASE OUTFIT_SOLO_FOXES_0 RETURN "VS_OUTFIT_S5"
|
|
CASE OUTFIT_SOLO_RACCOONS_0 RETURN "VS_OUTFIT_S6"
|
|
CASE OUTFIT_SOLO_OWLS_0 RETURN "VS_OUTFIT_S7"
|
|
CASE OUTFIT_SOLO_BUGS_0 RETURN "VS_OUTFIT_S8"
|
|
CASE OUTFIT_SOLO_PIGS_0 RETURN "VS_OUTFIT_S9"
|
|
CASE OUTFIT_SOLO_FROST_0 RETURN "VS_OUTFIT_S10"
|
|
CASE OUTFIT_SOLO_POLAR_0 RETURN "VS_OUTFIT_S11"
|
|
CASE OUTFIT_SOLO_REPTILIANS_0 RETURN "VS_OUTFIT_S12"
|
|
CASE OUTFIT_SOLO_SATANS_0 RETURN "VS_OUTFIT_S13"
|
|
CASE OUTFIT_SOLO_SUBURBIA_0 RETURN "VS_OUTFIT_S14"
|
|
CASE OUTFIT_SOLO_MONSTER_MILITIA_0 RETURN "VS_OUTFIT_S15"
|
|
CASE OUTFIT_LOW_FLOW_NORTH_0 RETURN "VS_OUTFIT_54"
|
|
CASE OUTFIT_LOW_FLOW_SOUTH_0 RETURN "VS_OUTFIT_55"
|
|
CASE OUTFIT_LOW_FLOW_STARS_0 RETURN "VS_OUTFIT_56"
|
|
CASE OUTFIT_LOW_FLOW_STRIPES_0 RETURN "VS_OUTFIT_57"
|
|
CASE OUTFIT_VERSUS_LOWR_BLUE_SMART_0 RETURN "VS_OUTFIT_58" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_SMART_0 RETURN "VS_OUTFIT_59" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_SMART_0 RETURN "VS_OUTFIT_60" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_BLACK_SMART_0 RETURN "VS_OUTFIT_61" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_YELLOW_SPORT_0 RETURN "VS_OUTFIT_62" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_GREEN_SPORT_0 RETURN "VS_OUTFIT_63" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_WHITE_STREET_0 RETURN "VS_OUTFIT_64" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR_RED_STREET_0 RETURN "VS_OUTFIT_65" BREAK
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_0 RETURN "VS_OUTFIT_66" BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_0 RETURN "VS_OUTFIT_67" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR2_BROWN_SPORT_0 RETURN "VS_OUTFIT_68" BREAK
|
|
CASE OUTFIT_VERSUS_LOWR2_WHITE_SPORT_0 RETURN "VS_OUTFIT_69" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_PURPLE_BUGS_0 RETURN "VS_OUTFIT_70" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ORANGE_BUGS_0 RETURN "VS_OUTFIT_71" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_MONO_0 RETURN "VS_OUTFIT_72" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_RAINBOW_0 RETURN "VS_OUTFIT_73" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_ANIMALS_0 RETURN "VS_OUTFIT_74" BREAK
|
|
CASE OUTFIT_VERSUS_THEMED_EXEC_COOKIES_0 RETURN "VS_OUTFIT_75" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_PURPLE_0 RETURN "VS_OUTFIT_76" BREAK
|
|
CASE OUTFIT_VERSUS_HIDDEN_TEAM_SPORT_ORANGE_0 RETURN "VS_OUTFIT_77" BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_MP_HEIST_OUTFIT_IN_STYLE(INT iOutfit, INT iStyle)
|
|
|
|
HEIST_OUTFIT_SYTLE eStyle = INT_TO_ENUM(HEIST_OUTFIT_SYTLE, iStyle)
|
|
MP_OUTFIT_ENUM eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, iOutfit)
|
|
|
|
SWITCH eStyle
|
|
|
|
CASE OUTFIT_STYLE_STREET
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_STREET_0
|
|
CASE OUTFIT_HEIST_STREET_1
|
|
CASE OUTFIT_HEIST_STREET_2
|
|
CASE OUTFIT_HEIST_STREET_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_POLICE
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_POLICE_0
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_CASUAL
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_CASUAL_0
|
|
CASE OUTFIT_HEIST_CASUAL_1
|
|
CASE OUTFIT_HEIST_CASUAL_2
|
|
CASE OUTFIT_HEIST_CASUAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_DRIVER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_DRIVER_0
|
|
CASE OUTFIT_HEIST_DRIVER_1
|
|
CASE OUTFIT_HEIST_DRIVER_2
|
|
CASE OUTFIT_HEIST_DRIVER_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_CASUAL_STEALTH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_CASUAL_PILOT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_0
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_1
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_2
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_STREET_COMBAT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_0
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_1
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_2
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_PRISONER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_PRISONER_0
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_PRISON_OFFICER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_PRISON_OFFICER_0
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_TACTICAL_STEALTH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_LIGHT_COMBAT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_0
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_1
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_2
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_HEAVY_COMBAT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_0
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_1
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_2
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_STEALTH_PILOT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_0
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_1
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_2
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_REFUSE_COLLECTOR
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_0
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_1
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_NIGHT_BIKER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_0
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_1
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_2
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_TOURIST
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_TOURIST_0
|
|
CASE OUTFIT_HEIST_TOURIST_1
|
|
CASE OUTFIT_HEIST_TOURIST_2
|
|
CASE OUTFIT_HEIST_TOURIST_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_SMART_SUITS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_SMART_SUITS_0
|
|
CASE OUTFIT_HEIST_SMART_SUITS_1
|
|
CASE OUTFIT_HEIST_SMART_SUITS_2
|
|
CASE OUTFIT_HEIST_SMART_SUITS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_SLOPPY_SUITS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_0
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_1
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_2
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_SHARP_SUITS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_0
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_1
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_2
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_MINIMAL_SUITS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_0
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_1
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_2
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_TUXEDOS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_TUXEDOS_0
|
|
CASE OUTFIT_HEIST_TUXEDOS_1
|
|
CASE OUTFIT_HEIST_TUXEDOS_2
|
|
CASE OUTFIT_HEIST_TUXEDOS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_HAZCHEM
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_HAZCHEM_0
|
|
CASE OUTFIT_HEIST_HAZCHEM_1
|
|
CASE OUTFIT_HEIST_HAZCHEM_2
|
|
CASE OUTFIT_HEIST_HAZCHEM_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_COVERALLS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_COVERALLS_0
|
|
CASE OUTFIT_HEIST_COVERALLS_1
|
|
CASE OUTFIT_HEIST_COVERALLS_2
|
|
CASE OUTFIT_HEIST_COVERALLS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_FIGHTER_PILOT
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_0
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_1
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_2
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_LOWRIDER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_0
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_1
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_2
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_3
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_4
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_5
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_6
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_BALLAS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_0
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_1
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_2
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_VAGOS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_0
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_1
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_2
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_FUNERAL
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_0
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_1
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_2
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
CASE OUTFIT_STYLE_SCUBA
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_PARAMEDIC
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_1
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_0
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MEDTECH1
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MEDTECH2
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MODERN_STEALTH
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASUAL_PILOT_2
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_FIGHTER_PILOT_2
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_HIGH_TECH_RIOT
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_HIGH_TECH_IMPACT
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MED_TECH_MASKED
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MED_TECH_REBELLION
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MED_TECH_HAVOC
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MED_TECH_ADAPTABLE
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_SUB_DRIVER
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_1
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_2
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_HEAVY_COMBAT_GEAR
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_LOW_TECH_TACTICAL
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_1
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_2
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_LOW_TECH_COMBAT
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CLASSIC_STEALTH
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_MILITARY_CAMO
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_GORKA
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_0
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_1
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_2
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_STEALTH_I
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_STEALTH_II
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_STEALTH_III
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_I
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_II
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_III
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_BUGSTAR
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_0
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_1
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_2
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_3
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_4
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_MAINTENANCE
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_0
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_1
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_2
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_3
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_4
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_GRUPPESECHS
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_1
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_2
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_4
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_CELEB
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_0
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_1
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_2
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_I
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_II
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_III
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_I
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_II
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_III
|
|
SWITCH eOUTFIT
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eStyle
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_SMUGGLER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_0
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_1
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_2
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_HEAVY_I
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_HEAVY_II
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_LIGHT_I
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_LIGHT_II
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_STEALTH_I
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_ISLAND_HEIST_STEALTH_II
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_FIXER_PARTY_PROMOTER
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_0
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_1
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_2
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_FIXER_BILLIONAIRE_GAMES
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_0
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_1
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_2
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE OUTFIT_STYLE_FIXER_GOLF
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_FIXER_GOLF_0
|
|
CASE OUTFIT_FIXER_GOLF_1
|
|
CASE OUTFIT_FIXER_GOLF_2
|
|
CASE OUTFIT_FIXER_GOLF_3
|
|
CASE OUTFIT_FIXER_GOLF_4
|
|
CASE OUTFIT_FIXER_GOLF_5
|
|
CASE OUTFIT_FIXER_GOLF_6
|
|
CASE OUTFIT_FIXER_GOLF_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE OUTFIT_STYLE_SUM22_IAA_AGENTS
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_SUM22_IAA_AGENT_0
|
|
CASE OUTFIT_SUM22_IAA_AGENT_1
|
|
CASE OUTFIT_SUM22_IAA_AGENT_2
|
|
CASE OUTFIT_SUM22_IAA_AGENT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Otherwise, the outfit isn't in that style.
|
|
RETURN FALSE
|
|
|
|
ENDFUNC
|
|
|
|
/// PURPOSE:
|
|
/// Get the style suber set that the passed in outfit belongs to.
|
|
/// RETURNS:
|
|
/// Outfit style set MP_HEIST_OUTFIT_ENUM (e.g. OUTFIT_HEIST_STREET_0)
|
|
FUNC HEIST_OUTFIT_SYTLE GET_STYLE_FROM_OUTFIT(INT iOutfit)
|
|
|
|
MP_OUTFIT_ENUM eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, iOutfit)
|
|
|
|
SWITCH eOutfit
|
|
|
|
CASE OUTFIT_HEIST_STREET_0
|
|
CASE OUTFIT_HEIST_STREET_1
|
|
CASE OUTFIT_HEIST_STREET_2
|
|
CASE OUTFIT_HEIST_STREET_3
|
|
RETURN OUTFIT_STYLE_STREET
|
|
|
|
CASE OUTFIT_HEIST_POLICE_0
|
|
RETURN OUTFIT_STYLE_POLICE
|
|
|
|
CASE OUTFIT_HEIST_CASUAL_0
|
|
CASE OUTFIT_HEIST_CASUAL_1
|
|
CASE OUTFIT_HEIST_CASUAL_2
|
|
CASE OUTFIT_HEIST_CASUAL_3
|
|
RETURN OUTFIT_STYLE_CASUAL
|
|
|
|
CASE OUTFIT_HEIST_DRIVER_0
|
|
CASE OUTFIT_HEIST_DRIVER_1
|
|
CASE OUTFIT_HEIST_DRIVER_2
|
|
CASE OUTFIT_HEIST_DRIVER_3
|
|
RETURN OUTFIT_STYLE_DRIVER
|
|
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_3
|
|
RETURN OUTFIT_STYLE_CASUAL_STEALTH
|
|
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_0
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_1
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_2
|
|
RETURN OUTFIT_STYLE_CASUAL_PILOT
|
|
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_0
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_1
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_2
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_3
|
|
RETURN OUTFIT_STYLE_STREET_COMBAT
|
|
|
|
CASE OUTFIT_HEIST_PRISONER_0
|
|
RETURN OUTFIT_STYLE_PRISONER
|
|
|
|
CASE OUTFIT_HEIST_PRISON_OFFICER_0
|
|
RETURN OUTFIT_STYLE_PRISON_OFFICER
|
|
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_3
|
|
RETURN OUTFIT_STYLE_TACTICAL_STEALTH
|
|
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_0
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_1
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_2
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_3
|
|
RETURN OUTFIT_STYLE_LIGHT_COMBAT
|
|
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_0
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_1
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_2
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_3
|
|
RETURN OUTFIT_STYLE_HEAVY_COMBAT
|
|
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_0
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_1
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_2
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_3
|
|
RETURN OUTFIT_STYLE_STEALTH_PILOT
|
|
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_0
|
|
CASE OUTFIT_HEIST_REFUSE_COLLECTOR_1
|
|
RETURN OUTFIT_STYLE_REFUSE_COLLECTOR
|
|
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_0
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_1
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_2
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_3
|
|
RETURN OUTFIT_STYLE_NIGHT_BIKER
|
|
|
|
CASE OUTFIT_HEIST_TOURIST_0
|
|
CASE OUTFIT_HEIST_TOURIST_1
|
|
CASE OUTFIT_HEIST_TOURIST_2
|
|
CASE OUTFIT_HEIST_TOURIST_3
|
|
RETURN OUTFIT_STYLE_TOURIST
|
|
|
|
CASE OUTFIT_HEIST_SMART_SUITS_0
|
|
CASE OUTFIT_HEIST_SMART_SUITS_1
|
|
CASE OUTFIT_HEIST_SMART_SUITS_2
|
|
CASE OUTFIT_HEIST_SMART_SUITS_3
|
|
RETURN OUTFIT_STYLE_SMART_SUITS
|
|
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_0
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_1
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_2
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_3
|
|
RETURN OUTFIT_STYLE_SLOPPY_SUITS
|
|
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_0
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_1
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_2
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_3
|
|
RETURN OUTFIT_STYLE_SHARP_SUITS
|
|
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_0
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_1
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_2
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_3
|
|
RETURN OUTFIT_STYLE_MINIMAL_SUITS
|
|
|
|
CASE OUTFIT_HEIST_TUXEDOS_0
|
|
CASE OUTFIT_HEIST_TUXEDOS_1
|
|
CASE OUTFIT_HEIST_TUXEDOS_2
|
|
CASE OUTFIT_HEIST_TUXEDOS_3
|
|
RETURN OUTFIT_STYLE_TUXEDOS
|
|
|
|
CASE OUTFIT_HEIST_HAZCHEM_0
|
|
CASE OUTFIT_HEIST_HAZCHEM_1
|
|
CASE OUTFIT_HEIST_HAZCHEM_2
|
|
CASE OUTFIT_HEIST_HAZCHEM_3
|
|
RETURN OUTFIT_STYLE_HAZCHEM
|
|
|
|
CASE OUTFIT_HEIST_COVERALLS_0
|
|
CASE OUTFIT_HEIST_COVERALLS_1
|
|
CASE OUTFIT_HEIST_COVERALLS_2
|
|
CASE OUTFIT_HEIST_COVERALLS_3
|
|
RETURN OUTFIT_STYLE_COVERALLS
|
|
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_0
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_1
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_2
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_3
|
|
RETURN OUTFIT_STYLE_FIGHTER_PILOT
|
|
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_0
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_1
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_2
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_3
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_4
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_5
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_6
|
|
CASE OUTFIT_LOW_FLOW_LOWRIDER_7
|
|
RETURN OUTFIT_STYLE_LOWRIDER
|
|
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_0
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_1
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_2
|
|
CASE OUTFIT_LOW_FLOW_VAGOS_3
|
|
RETURN OUTFIT_STYLE_VAGOS
|
|
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_0
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_1
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_2
|
|
CASE OUTFIT_LOW_FLOW_BALLAS_3
|
|
RETURN OUTFIT_STYLE_BALLAS
|
|
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_0
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_1
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_2
|
|
CASE OUTFIT_LOW_FLOW_FUNERAL_3
|
|
RETURN OUTFIT_STYLE_FUNERAL
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_SCUBA
|
|
RETURN OUTFIT_STYLE_SCUBA
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_0
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_BLUE_1
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_0
|
|
CASE OUTFIT_GANGOPS_HEIST_PARAMEDIC_GREEN_1
|
|
RETURN OUTFIT_STYLE_PARAMEDIC
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT1_3
|
|
RETURN OUTFIT_STYLE_MEDTECH1
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MEDTECH_COMBAT2_3
|
|
RETURN OUTFIT_STYLE_MEDTECH2
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MODERN_STEALTH_3
|
|
RETURN OUTFIT_STYLE_MODERN_STEALTH
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3
|
|
RETURN OUTFIT_STYLE_CASUAL_PILOT_2
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3
|
|
RETURN OUTFIT_STYLE_FIGHTER_PILOT_2
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_RIOT_3
|
|
RETURN OUTFIT_STYLE_HIGH_TECH_RIOT
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HIGH_TECH_IMPACT_3
|
|
RETURN OUTFIT_STYLE_HIGH_TECH_IMPACT
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_MASKED_3
|
|
RETURN OUTFIT_STYLE_MED_TECH_MASKED
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_REBELLION_3
|
|
RETURN OUTFIT_STYLE_MED_TECH_REBELLION
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_HAVOC_3
|
|
RETURN OUTFIT_STYLE_MED_TECH_HAVOC
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MED_TECH_ADAPTABLE_3
|
|
RETURN OUTFIT_STYLE_MED_TECH_ADAPTABLE
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_0
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_1
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_2
|
|
CASE OUTFIT_GANGOPS_HEIST_SUB_DRIVER_3
|
|
RETURN OUTFIT_STYLE_SUB_DRIVER
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_HEAVY_COMBAT_GEAR_3
|
|
RETURN OUTFIT_STYLE_HEAVY_COMBAT_GEAR
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_0
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_1
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_2
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_TACTICAL_3
|
|
RETURN OUTFIT_STYLE_LOW_TECH_TACTICAL
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_0
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_1
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_2
|
|
CASE OUTFIT_GANGOPS_HEIST_LOW_TECH_COMBAT_3
|
|
RETURN OUTFIT_STYLE_LOW_TECH_COMBAT
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_CLASSIC_STEALTH_GEAR_3
|
|
RETURN OUTFIT_STYLE_CLASSIC_STEALTH
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_0
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_1
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_2
|
|
CASE OUTFIT_GANGOPS_HEIST_MILITARY_CAMO_GEAR_3
|
|
RETURN OUTFIT_STYLE_MILITARY_CAMO
|
|
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_0
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_1
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_2
|
|
CASE OUTFIT_GANGOPS_HEIST_GORKA_3
|
|
RETURN OUTFIT_STYLE_GORKA
|
|
|
|
ENDSWITCH
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
SWITCH eOutfit
|
|
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_I_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_STEALTH_I
|
|
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_II_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_STEALTH_II
|
|
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_0
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_1
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_2
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_3
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_4
|
|
CASE OUTFIT_CASINO_HEIST_STEALTH_III_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_STEALTH_III
|
|
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_I_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_I
|
|
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_II_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_II
|
|
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_0
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_1
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_2
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_3
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_4
|
|
CASE OUTFIT_CASINO_HEIST_COVERT_STEALTH_III_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_COVERT_STEALTH_III
|
|
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_0
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_1
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_2
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_3
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_4
|
|
CASE OUTFIT_CASINO_HEIST_BUGSTARS_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_BUGSTAR
|
|
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_0
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_1
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_2
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_3
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_4
|
|
CASE OUTFIT_CASINO_HEIST_MAINTENANCE_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_MAINTENANCE
|
|
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_0
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_1
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_2
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_3
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_4
|
|
CASE OUTFIT_CASINO_HEIST_GRUPPE_SECHS_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_GRUPPESECHS
|
|
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_0
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_1
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_2
|
|
CASE OUTFIT_CASINO_HEIST_CELEB_3
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_SUBTERFUGE_CELEB
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_I_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_I
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_II_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_II
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_LIGHT_III_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_LIGHT_III
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_I_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_I
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_II_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_II
|
|
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_0
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_1
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_2
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_3
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_4
|
|
CASE OUTFIT_CASINO_HEIST_DIRECT_HEAVY_III_5
|
|
RETURN OUTFIT_STYLE_CASINO_HEIST_DIRECT_HEAVY_III
|
|
|
|
ENDSWITCH
|
|
#ENDIF
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_0
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_1
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_2
|
|
CASE OUTFIT_ISLAND_HEIST_SMUGGLER_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_SMUGGLER
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_1_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_HEAVY_I
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_HEAVY_2_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_HEAVY_II
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_1_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_LIGHT_I
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_LIGHT_2_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_LIGHT_II
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_0
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_1
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_2
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_1_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_STEALTH_I
|
|
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_0
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_1
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_2
|
|
CASE OUTFIT_ISLAND_HEIST_STEALTH_2_3
|
|
RETURN OUTFIT_STYLE_ISLAND_HEIST_STEALTH_II
|
|
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_0
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_1
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_2
|
|
CASE OUTFIT_FIXER_PARTY_PROMOTER_3
|
|
RETURN OUTFIT_STYLE_FIXER_PARTY_PROMOTER
|
|
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_0
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_1
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_2
|
|
CASE OUTFIT_FIXER_BILLIONAIRE_GAMES_3
|
|
RETURN OUTFIT_STYLE_FIXER_BILLIONAIRE_GAMES
|
|
|
|
CASE OUTFIT_FIXER_GOLF_0
|
|
CASE OUTFIT_FIXER_GOLF_1
|
|
CASE OUTFIT_FIXER_GOLF_2
|
|
CASE OUTFIT_FIXER_GOLF_3
|
|
CASE OUTFIT_FIXER_GOLF_4
|
|
CASE OUTFIT_FIXER_GOLF_5
|
|
CASE OUTFIT_FIXER_GOLF_6
|
|
CASE OUTFIT_FIXER_GOLF_7
|
|
RETURN OUTFIT_STYLE_FIXER_GOLF
|
|
|
|
CASE OUTFIT_SUM22_IAA_AGENT_0
|
|
CASE OUTFIT_SUM22_IAA_AGENT_1
|
|
CASE OUTFIT_SUM22_IAA_AGENT_2
|
|
CASE OUTFIT_SUM22_IAA_AGENT_3
|
|
RETURN OUTFIT_STYLE_SUM22_IAA_AGENTS
|
|
|
|
ENDSWITCH
|
|
|
|
// Error case, outfit doesn't have a valid style.
|
|
RETURN OUTFIT_STYLE_NONE
|
|
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_MP_HEIST_MASK_IN_STYLE(INT iMask, INT iStyle)
|
|
|
|
HEIST_MASK eStyle = INT_TO_ENUM(HEIST_MASK, iStyle)
|
|
MP_OUTFIT_MASK_ENUM eMask = INT_TO_ENUM(MP_OUTFIT_MASK_ENUM, iMask)
|
|
|
|
SWITCH eStyle
|
|
|
|
CASE MASK_AMATEUR
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_AMATEUR_0
|
|
CASE OUTFIT_MASK_AMATEUR_1
|
|
CASE OUTFIT_MASK_AMATEUR_2
|
|
CASE OUTFIT_MASK_AMATEUR_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_ANIMALS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_ANIMALS_0
|
|
CASE OUTFIT_MASK_ANIMALS_1
|
|
CASE OUTFIT_MASK_ANIMALS_2
|
|
CASE OUTFIT_MASK_ANIMALS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_PAPER_BAGS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_PAPER_BAGS_0
|
|
CASE OUTFIT_MASK_PAPER_BAGS_1
|
|
CASE OUTFIT_MASK_PAPER_BAGS_2
|
|
CASE OUTFIT_MASK_PAPER_BAGS_3
|
|
CASE OUTFIT_MASK_PAPER_BAGS_4
|
|
CASE OUTFIT_MASK_PAPER_BAGS_5
|
|
CASE OUTFIT_MASK_PAPER_BAGS_6
|
|
CASE OUTFIT_MASK_PAPER_BAGS_7
|
|
CASE OUTFIT_MASK_PAPER_BAGS_8
|
|
CASE OUTFIT_MASK_PAPER_BAGS_9
|
|
CASE OUTFIT_MASK_PAPER_BAGS_10
|
|
CASE OUTFIT_MASK_PAPER_BAGS_11
|
|
CASE OUTFIT_MASK_PAPER_BAGS_12
|
|
CASE OUTFIT_MASK_PAPER_BAGS_13
|
|
CASE OUTFIT_MASK_PAPER_BAGS_14
|
|
CASE OUTFIT_MASK_PAPER_BAGS_15
|
|
CASE OUTFIT_MASK_PAPER_BAGS_16
|
|
CASE OUTFIT_MASK_PAPER_BAGS_17
|
|
CASE OUTFIT_MASK_PAPER_BAGS_18
|
|
CASE OUTFIT_MASK_PAPER_BAGS_19
|
|
CASE OUTFIT_MASK_PAPER_BAGS_20
|
|
CASE OUTFIT_MASK_PAPER_BAGS_21
|
|
CASE OUTFIT_MASK_PAPER_BAGS_22
|
|
CASE OUTFIT_MASK_PAPER_BAGS_23
|
|
CASE OUTFIT_MASK_PAPER_BAGS_24
|
|
CASE OUTFIT_MASK_PAPER_BAGS_25
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_BEASTS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_BEASTS_0
|
|
CASE OUTFIT_MASK_BEASTS_1
|
|
CASE OUTFIT_MASK_BEASTS_2
|
|
CASE OUTFIT_MASK_BEASTS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CHARACTERS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_CHARACTERS_0
|
|
CASE OUTFIT_MASK_CHARACTERS_1
|
|
CASE OUTFIT_MASK_CHARACTERS_2
|
|
CASE OUTFIT_MASK_CHARACTERS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CLASSIC_MONSTERS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_0
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_1
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_2
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CARNIVAL
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_CARNIVAL_0
|
|
CASE OUTFIT_MASK_CARNIVAL_1
|
|
CASE OUTFIT_MASK_CARNIVAL_2
|
|
CASE OUTFIT_MASK_CARNIVAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_GAS_MASKS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_GAS_MASKS_0
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_HELMETS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_HELMETS_0
|
|
CASE OUTFIT_MASK_HELMETS_1
|
|
CASE OUTFIT_MASK_HELMETS_2
|
|
CASE OUTFIT_MASK_HELMETS_3
|
|
CASE OUTFIT_MASK_HELMETS_4
|
|
CASE OUTFIT_MASK_HELMETS_5
|
|
CASE OUTFIT_MASK_HELMETS_6
|
|
CASE OUTFIT_MASK_HELMETS_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_HORROR_HOCKEY
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_0
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_1
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_2
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_PUPPETS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_PUPPETS_0
|
|
CASE OUTFIT_MASK_PUPPETS_1
|
|
CASE OUTFIT_MASK_PUPPETS_2
|
|
CASE OUTFIT_MASK_PUPPETS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_SKULLS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_SKULLS_0
|
|
CASE OUTFIT_MASK_SKULLS_1
|
|
CASE OUTFIT_MASK_SKULLS_2
|
|
CASE OUTFIT_MASK_SKULLS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_TACTICAL
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_TACTICAL_0
|
|
CASE OUTFIT_MASK_TACTICAL_1
|
|
CASE OUTFIT_MASK_TACTICAL_2
|
|
CASE OUTFIT_MASK_TACTICAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_TAPES
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_TAPE_0
|
|
CASE OUTFIT_MASK_TAPE_1
|
|
CASE OUTFIT_MASK_TAPE_2
|
|
CASE OUTFIT_MASK_TAPE_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_THEATRICAL
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_THEATRICAL_0
|
|
CASE OUTFIT_MASK_THEATRICAL_1
|
|
CASE OUTFIT_MASK_THEATRICAL_2
|
|
CASE OUTFIT_MASK_THEATRICAL_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_PIGS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_PIGS_0
|
|
CASE OUTFIT_MASK_PIGS_1
|
|
CASE OUTFIT_MASK_PIGS_2
|
|
CASE OUTFIT_MASK_PIGS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_DUCT_TAPE
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_DUCT_TAPE_0
|
|
CASE OUTFIT_MASK_DUCT_TAPE_1
|
|
CASE OUTFIT_MASK_DUCT_TAPE_2
|
|
CASE OUTFIT_MASK_DUCT_TAPE_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_INCOGNITO
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_INCOGNITO_0
|
|
CASE OUTFIT_MASK_INCOGNITO_1
|
|
CASE OUTFIT_MASK_INCOGNITO_2
|
|
CASE OUTFIT_MASK_INCOGNITO_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_BALACLAVAS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_BALACLAVAS_0
|
|
CASE OUTFIT_MASK_BALACLAVAS_1
|
|
CASE OUTFIT_MASK_BALACLAVAS_2
|
|
CASE OUTFIT_MASK_BALACLAVAS_3
|
|
CASE OUTFIT_MASK_BALACLAVAS_4
|
|
CASE OUTFIT_MASK_BALACLAVAS_5
|
|
CASE OUTFIT_MASK_BALACLAVAS_6
|
|
CASE OUTFIT_MASK_BALACLAVAS_7
|
|
CASE OUTFIT_MASK_BALACLAVAS_8
|
|
CASE OUTFIT_MASK_BALACLAVAS_9
|
|
CASE OUTFIT_MASK_BALACLAVAS_10
|
|
CASE OUTFIT_MASK_BALACLAVAS_11
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CAMO
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_CAMO_0
|
|
CASE OUTFIT_MASK_CAMO_1
|
|
CASE OUTFIT_MASK_CAMO_2
|
|
CASE OUTFIT_MASK_CAMO_3
|
|
CASE OUTFIT_MASK_CAMO_4
|
|
CASE OUTFIT_MASK_CAMO_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_PSYCHOTIC
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_PSYCHOTIC_0
|
|
CASE OUTFIT_MASK_PSYCHOTIC_1
|
|
CASE OUTFIT_MASK_PSYCHOTIC_2
|
|
CASE OUTFIT_MASK_PSYCHOTIC_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_STREET
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_STREET_0
|
|
CASE OUTFIT_MASK_STREET_1
|
|
CASE OUTFIT_MASK_STREET_2
|
|
CASE OUTFIT_MASK_STREET_3
|
|
CASE OUTFIT_MASK_STREET_4
|
|
CASE OUTFIT_MASK_STREET_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_BANDANAS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_BANDANAS_0
|
|
CASE OUTFIT_MASK_BANDANAS_1
|
|
CASE OUTFIT_MASK_BANDANAS_2
|
|
CASE OUTFIT_MASK_BANDANAS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_HOODS
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_HOODS_0
|
|
CASE OUTFIT_MASK_HOODS_1
|
|
CASE OUTFIT_MASK_HOODS_2
|
|
CASE OUTFIT_MASK_HOODS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_DESIGNER
|
|
SWITCH eMask
|
|
CASE OUTFIT_MASK_DESIGNER_0
|
|
CASE OUTFIT_MASK_DESIGNER_1
|
|
CASE OUTFIT_MASK_DESIGNER_2
|
|
CASE OUTFIT_MASK_DESIGNER_3
|
|
CASE OUTFIT_MASK_DESIGNER_4
|
|
CASE OUTFIT_MASK_DESIGNER_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_DEVILISH
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_0
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_1
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_2
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_3
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_4
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_SADISTIC
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_0
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_1
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_2
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_POSSESSED
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_0
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_1
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_2
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_FIENDS
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_0
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_1
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_2
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CREATURES
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_0
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_1
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_2
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_WICKED
|
|
SWITCH eMask
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_0
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_1
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_2
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
#IF FEATURE_CASINO_HEIST
|
|
CASE MASK_CASINO_HEIST_DEFAULT
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_DEFAULT_0
|
|
CASE MASK_CASINO_HEIST_DEFAULT_1
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_0
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_1
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_2
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_3
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_4
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_5
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_6
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_7
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_8
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_HUNTER_0
|
|
CASE MASK_CASINO_HEIST_HUNTER_1
|
|
CASE MASK_CASINO_HEIST_HUNTER_2
|
|
CASE MASK_CASINO_HEIST_HUNTER_3
|
|
CASE MASK_CASINO_HEIST_HUNTER_4
|
|
CASE MASK_CASINO_HEIST_HUNTER_5
|
|
CASE MASK_CASINO_HEIST_HUNTER_6
|
|
CASE MASK_CASINO_HEIST_HUNTER_7
|
|
CASE MASK_CASINO_HEIST_HUNTER_8
|
|
CASE MASK_CASINO_HEIST_HUNTER_9
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_ONIHALF_0
|
|
CASE MASK_CASINO_HEIST_ONIHALF_1
|
|
CASE MASK_CASINO_HEIST_ONIHALF_2
|
|
CASE MASK_CASINO_HEIST_ONIHALF_3
|
|
CASE MASK_CASINO_HEIST_ONIHALF_4
|
|
CASE MASK_CASINO_HEIST_ONIHALF_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_EMOJI_0
|
|
CASE MASK_CASINO_HEIST_EMOJI_1
|
|
CASE MASK_CASINO_HEIST_EMOJI_2
|
|
CASE MASK_CASINO_HEIST_EMOJI_3
|
|
CASE MASK_CASINO_HEIST_EMOJI_4
|
|
CASE MASK_CASINO_HEIST_EMOJI_5
|
|
CASE MASK_CASINO_HEIST_EMOJI_6
|
|
CASE MASK_CASINO_HEIST_EMOJI_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_0
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_1
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_2
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_3
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_4
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_0
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_1
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_2
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_3
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_4
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_GUERILLA_0
|
|
CASE MASK_CASINO_HEIST_GUERILLA_1
|
|
CASE MASK_CASINO_HEIST_GUERILLA_2
|
|
CASE MASK_CASINO_HEIST_GUERILLA_3
|
|
CASE MASK_CASINO_HEIST_GUERILLA_4
|
|
CASE MASK_CASINO_HEIST_GUERILLA_5
|
|
CASE MASK_CASINO_HEIST_GUERILLA_6
|
|
CASE MASK_CASINO_HEIST_GUERILLA_7
|
|
CASE MASK_CASINO_HEIST_GUERILLA_8
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_CLOWNS_0
|
|
CASE MASK_CASINO_HEIST_CLOWNS_1
|
|
CASE MASK_CASINO_HEIST_CLOWNS_2
|
|
CASE MASK_CASINO_HEIST_CLOWNS_3
|
|
CASE MASK_CASINO_HEIST_CLOWNS_4
|
|
CASE MASK_CASINO_HEIST_CLOWNS_5
|
|
CASE MASK_CASINO_HEIST_CLOWNS_6
|
|
CASE MASK_CASINO_HEIST_CLOWNS_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_ANIMALS_0
|
|
CASE MASK_CASINO_HEIST_ANIMALS_1
|
|
CASE MASK_CASINO_HEIST_ANIMALS_2
|
|
CASE MASK_CASINO_HEIST_ANIMALS_3
|
|
CASE MASK_CASINO_HEIST_ANIMALS_4
|
|
CASE MASK_CASINO_HEIST_ANIMALS_5
|
|
CASE MASK_CASINO_HEIST_ANIMALS_6
|
|
CASE MASK_CASINO_HEIST_ANIMALS_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_RIOT_0
|
|
CASE MASK_CASINO_HEIST_RIOT_1
|
|
CASE MASK_CASINO_HEIST_RIOT_2
|
|
CASE MASK_CASINO_HEIST_RIOT_3
|
|
CASE MASK_CASINO_HEIST_RIOT_4
|
|
CASE MASK_CASINO_HEIST_RIOT_5
|
|
CASE MASK_CASINO_HEIST_RIOT_6
|
|
CASE MASK_CASINO_HEIST_RIOT_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_ONIFULL_0
|
|
CASE MASK_CASINO_HEIST_ONIFULL_1
|
|
CASE MASK_CASINO_HEIST_ONIFULL_2
|
|
CASE MASK_CASINO_HEIST_ONIFULL_3
|
|
CASE MASK_CASINO_HEIST_ONIFULL_4
|
|
CASE MASK_CASINO_HEIST_ONIFULL_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY
|
|
SWITCH eMask
|
|
CASE MASK_CASINO_HEIST_HOCKEY_0
|
|
CASE MASK_CASINO_HEIST_HOCKEY_1
|
|
CASE MASK_CASINO_HEIST_HOCKEY_2
|
|
CASE MASK_CASINO_HEIST_HOCKEY_3
|
|
CASE MASK_CASINO_HEIST_HOCKEY_4
|
|
CASE MASK_CASINO_HEIST_HOCKEY_5
|
|
CASE MASK_CASINO_HEIST_HOCKEY_6
|
|
CASE MASK_CASINO_HEIST_HOCKEY_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eStyle
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_0
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_1
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_2
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_3
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_4
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_5
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_6
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_0
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_1
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_2
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_3
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_4
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_0
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_1
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_2
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_3
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_4
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_0
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_1
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_2
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_3
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_4
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_5
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_6
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_0
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_1
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_2
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_3
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_4
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_5
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_0
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_1
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_2
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_0
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_1
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_2
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_0
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_1
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_2
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_3
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_4
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_5
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_6
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_0
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_1
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_2
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_3
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_4
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_5
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_6
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_0
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_1
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_2
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_3
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_4
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_5
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_6
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY
|
|
SWITCH eMask
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_0
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_1
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_2
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_3
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_4
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_5
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_6
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_7
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
// Otherwise, the outfit isn't in that style.
|
|
RETURN FALSE
|
|
|
|
ENDFUNC
|
|
|
|
|
|
/// PURPOSE:
|
|
/// Get the style super set that the passed in outfit belongs to.
|
|
/// RETURNS:
|
|
/// Outfit style set MP_HEIST_OUTFIT_ENUM (e.g. OUTFIT_HEIST_STREET_0)
|
|
FUNC HEIST_MASK GET_STYLE_FROM_MASK(INT iMask)
|
|
|
|
MP_OUTFIT_MASK_ENUM eMask = INT_TO_ENUM(MP_OUTFIT_MASK_ENUM, iMask)
|
|
|
|
SWITCH eMask
|
|
|
|
CASE OUTFIT_MASK_AMATEUR_0
|
|
CASE OUTFIT_MASK_AMATEUR_1
|
|
CASE OUTFIT_MASK_AMATEUR_2
|
|
CASE OUTFIT_MASK_AMATEUR_3
|
|
RETURN MASK_AMATEUR
|
|
|
|
CASE OUTFIT_MASK_ANIMALS_0
|
|
CASE OUTFIT_MASK_ANIMALS_1
|
|
CASE OUTFIT_MASK_ANIMALS_2
|
|
CASE OUTFIT_MASK_ANIMALS_3
|
|
RETURN MASK_ANIMALS
|
|
|
|
CASE OUTFIT_MASK_PAPER_BAGS_0
|
|
CASE OUTFIT_MASK_PAPER_BAGS_1
|
|
CASE OUTFIT_MASK_PAPER_BAGS_2
|
|
CASE OUTFIT_MASK_PAPER_BAGS_3
|
|
CASE OUTFIT_MASK_PAPER_BAGS_4
|
|
CASE OUTFIT_MASK_PAPER_BAGS_5
|
|
CASE OUTFIT_MASK_PAPER_BAGS_6
|
|
CASE OUTFIT_MASK_PAPER_BAGS_7
|
|
CASE OUTFIT_MASK_PAPER_BAGS_8
|
|
CASE OUTFIT_MASK_PAPER_BAGS_9
|
|
CASE OUTFIT_MASK_PAPER_BAGS_10
|
|
CASE OUTFIT_MASK_PAPER_BAGS_11
|
|
CASE OUTFIT_MASK_PAPER_BAGS_12
|
|
CASE OUTFIT_MASK_PAPER_BAGS_13
|
|
CASE OUTFIT_MASK_PAPER_BAGS_14
|
|
CASE OUTFIT_MASK_PAPER_BAGS_15
|
|
CASE OUTFIT_MASK_PAPER_BAGS_16
|
|
CASE OUTFIT_MASK_PAPER_BAGS_17
|
|
CASE OUTFIT_MASK_PAPER_BAGS_18
|
|
CASE OUTFIT_MASK_PAPER_BAGS_19
|
|
CASE OUTFIT_MASK_PAPER_BAGS_20
|
|
CASE OUTFIT_MASK_PAPER_BAGS_21
|
|
CASE OUTFIT_MASK_PAPER_BAGS_22
|
|
CASE OUTFIT_MASK_PAPER_BAGS_23
|
|
CASE OUTFIT_MASK_PAPER_BAGS_24
|
|
CASE OUTFIT_MASK_PAPER_BAGS_25
|
|
RETURN MASK_PAPER_BAGS
|
|
|
|
CASE OUTFIT_MASK_BEASTS_0
|
|
CASE OUTFIT_MASK_BEASTS_1
|
|
CASE OUTFIT_MASK_BEASTS_2
|
|
CASE OUTFIT_MASK_BEASTS_3
|
|
RETURN MASK_BEASTS
|
|
|
|
CASE OUTFIT_MASK_CHARACTERS_0
|
|
CASE OUTFIT_MASK_CHARACTERS_1
|
|
CASE OUTFIT_MASK_CHARACTERS_2
|
|
CASE OUTFIT_MASK_CHARACTERS_3
|
|
RETURN MASK_CHARACTERS
|
|
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_0
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_1
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_2
|
|
CASE OUTFIT_MASK_CLASSIC_MONSTERS_3
|
|
RETURN MASK_CLASSIC_MONSTERS
|
|
|
|
CASE OUTFIT_MASK_CARNIVAL_0
|
|
CASE OUTFIT_MASK_CARNIVAL_1
|
|
CASE OUTFIT_MASK_CARNIVAL_2
|
|
CASE OUTFIT_MASK_CARNIVAL_3
|
|
RETURN MASK_CARNIVAL
|
|
|
|
CASE OUTFIT_MASK_GAS_MASKS_0
|
|
// CASE OUTFIT_MASK_GAS_MASKS_1 removed from gas masks group bug:2121402
|
|
RETURN MASK_GAS_MASKS
|
|
|
|
CASE OUTFIT_MASK_HELMETS_0
|
|
CASE OUTFIT_MASK_HELMETS_1
|
|
CASE OUTFIT_MASK_HELMETS_2
|
|
CASE OUTFIT_MASK_HELMETS_3
|
|
CASE OUTFIT_MASK_HELMETS_4
|
|
CASE OUTFIT_MASK_HELMETS_5
|
|
CASE OUTFIT_MASK_HELMETS_6
|
|
CASE OUTFIT_MASK_HELMETS_7
|
|
RETURN MASK_HELMETS
|
|
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_0
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_1
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_2
|
|
CASE OUTFIT_MASK_HORROR_HOCKEY_3
|
|
RETURN MASK_HORROR_HOCKEY
|
|
|
|
CASE OUTFIT_MASK_PUPPETS_0
|
|
CASE OUTFIT_MASK_PUPPETS_1
|
|
CASE OUTFIT_MASK_PUPPETS_2
|
|
CASE OUTFIT_MASK_PUPPETS_3
|
|
RETURN MASK_PUPPETS
|
|
|
|
CASE OUTFIT_MASK_SKULLS_0
|
|
CASE OUTFIT_MASK_SKULLS_1
|
|
CASE OUTFIT_MASK_SKULLS_2
|
|
CASE OUTFIT_MASK_SKULLS_3
|
|
RETURN MASK_SKULLS
|
|
|
|
CASE OUTFIT_MASK_TACTICAL_0
|
|
CASE OUTFIT_MASK_TACTICAL_1
|
|
CASE OUTFIT_MASK_TACTICAL_2
|
|
CASE OUTFIT_MASK_TACTICAL_3
|
|
RETURN MASK_TACTICAL
|
|
|
|
CASE OUTFIT_MASK_TAPE_0
|
|
CASE OUTFIT_MASK_TAPE_1
|
|
CASE OUTFIT_MASK_TAPE_2
|
|
CASE OUTFIT_MASK_TAPE_3
|
|
RETURN MASK_TAPES
|
|
|
|
CASE OUTFIT_MASK_THEATRICAL_0
|
|
CASE OUTFIT_MASK_THEATRICAL_1
|
|
CASE OUTFIT_MASK_THEATRICAL_2
|
|
CASE OUTFIT_MASK_THEATRICAL_3
|
|
RETURN MASK_THEATRICAL
|
|
|
|
CASE OUTFIT_MASK_PIGS_0
|
|
CASE OUTFIT_MASK_PIGS_1
|
|
CASE OUTFIT_MASK_PIGS_2
|
|
CASE OUTFIT_MASK_PIGS_3
|
|
return MASK_PIGS
|
|
|
|
CASE OUTFIT_MASK_DUCT_TAPE_0
|
|
CASE OUTFIT_MASK_DUCT_TAPE_1
|
|
CASE OUTFIT_MASK_DUCT_TAPE_2
|
|
CASE OUTFIT_MASK_DUCT_TAPE_3
|
|
return MASK_DUCT_TAPE
|
|
|
|
CASE OUTFIT_MASK_INCOGNITO_0
|
|
CASE OUTFIT_MASK_INCOGNITO_1
|
|
CASE OUTFIT_MASK_INCOGNITO_2
|
|
CASE OUTFIT_MASK_INCOGNITO_3
|
|
return MASK_INCOGNITO
|
|
|
|
CASE OUTFIT_MASK_BALACLAVAS_0
|
|
CASE OUTFIT_MASK_BALACLAVAS_1
|
|
CASE OUTFIT_MASK_BALACLAVAS_2
|
|
CASE OUTFIT_MASK_BALACLAVAS_3
|
|
CASE OUTFIT_MASK_BALACLAVAS_4
|
|
CASE OUTFIT_MASK_BALACLAVAS_5
|
|
CASE OUTFIT_MASK_BALACLAVAS_6
|
|
CASE OUTFIT_MASK_BALACLAVAS_7
|
|
CASE OUTFIT_MASK_BALACLAVAS_8
|
|
CASE OUTFIT_MASK_BALACLAVAS_9
|
|
CASE OUTFIT_MASK_BALACLAVAS_10
|
|
CASE OUTFIT_MASK_BALACLAVAS_11
|
|
return MASK_BALACLAVAS
|
|
|
|
CASE OUTFIT_MASK_CAMO_0
|
|
CASE OUTFIT_MASK_CAMO_1
|
|
CASE OUTFIT_MASK_CAMO_2
|
|
CASE OUTFIT_MASK_CAMO_3
|
|
CASE OUTFIT_MASK_CAMO_4
|
|
CASE OUTFIT_MASK_CAMO_5
|
|
return MASK_CAMO
|
|
|
|
CASE OUTFIT_MASK_PSYCHOTIC_0
|
|
CASE OUTFIT_MASK_PSYCHOTIC_1
|
|
CASE OUTFIT_MASK_PSYCHOTIC_2
|
|
CASE OUTFIT_MASK_PSYCHOTIC_3
|
|
return MASK_PSYCHOTIC
|
|
|
|
CASE OUTFIT_MASK_STREET_0
|
|
CASE OUTFIT_MASK_STREET_1
|
|
CASE OUTFIT_MASK_STREET_2
|
|
CASE OUTFIT_MASK_STREET_3
|
|
CASE OUTFIT_MASK_STREET_4
|
|
CASE OUTFIT_MASK_STREET_5
|
|
return MASK_STREET
|
|
|
|
CASE OUTFIT_MASK_BANDANAS_0
|
|
CASE OUTFIT_MASK_BANDANAS_1
|
|
CASE OUTFIT_MASK_BANDANAS_2
|
|
CASE OUTFIT_MASK_BANDANAS_3
|
|
return MASK_BANDANAS
|
|
|
|
CASE OUTFIT_MASK_HOODS_0
|
|
CASE OUTFIT_MASK_HOODS_1
|
|
CASE OUTFIT_MASK_HOODS_2
|
|
CASE OUTFIT_MASK_HOODS_3
|
|
return MASK_HOODS
|
|
|
|
CASE OUTFIT_MASK_DESIGNER_0
|
|
CASE OUTFIT_MASK_DESIGNER_1
|
|
CASE OUTFIT_MASK_DESIGNER_2
|
|
CASE OUTFIT_MASK_DESIGNER_3
|
|
CASE OUTFIT_MASK_DESIGNER_4
|
|
CASE OUTFIT_MASK_DESIGNER_5
|
|
return MASK_DESIGNER
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_0
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_1
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_2
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_3
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_4
|
|
CASE MASK_HEIST_HALLOWEEN_DEVILISH_5
|
|
return MASK_DEVILISH
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_0
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_1
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_2
|
|
CASE MASK_HEIST_HALLOWEEN_SADISTIC_3
|
|
return MASK_SADISTIC
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_0
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_1
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_2
|
|
CASE MASK_HEIST_HALLOWEEN_POSSESSED_3
|
|
return MASK_POSSESSED
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_0
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_1
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_2
|
|
CASE MASK_HEIST_HALLOWEEN_FIENDS_3
|
|
return MASK_FIENDS
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_0
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_1
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_2
|
|
CASE MASK_HEIST_HALLOWEEN_CREATURES_3
|
|
return MASK_CREATURES
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_0
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_1
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_2
|
|
CASE MASK_HEIST_HALLOWEEN_WICKED_3
|
|
return MASK_WICKED
|
|
|
|
// TOO MANY CASES IN SWITCH, ADD BELOW
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH eMask
|
|
|
|
CASE MASK_CASINO_HEIST_DEFAULT_0
|
|
CASE MASK_CASINO_HEIST_DEFAULT_1
|
|
RETURN MASK_CASINO_HEIST_DEFAULT
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_0
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_1
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_2
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_3
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_4
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_5
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_6
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_7
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_8
|
|
RETURN MASK_CASINO_HEIST_GEOMETRIC
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_0
|
|
CASE MASK_CASINO_HEIST_HUNTER_1
|
|
CASE MASK_CASINO_HEIST_HUNTER_2
|
|
CASE MASK_CASINO_HEIST_HUNTER_3
|
|
CASE MASK_CASINO_HEIST_HUNTER_4
|
|
CASE MASK_CASINO_HEIST_HUNTER_5
|
|
CASE MASK_CASINO_HEIST_HUNTER_6
|
|
CASE MASK_CASINO_HEIST_HUNTER_7
|
|
CASE MASK_CASINO_HEIST_HUNTER_8
|
|
CASE MASK_CASINO_HEIST_HUNTER_9
|
|
RETURN MASK_CASINO_HEIST_HUNTER
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_0
|
|
CASE MASK_CASINO_HEIST_ONIHALF_1
|
|
CASE MASK_CASINO_HEIST_ONIHALF_2
|
|
CASE MASK_CASINO_HEIST_ONIHALF_3
|
|
CASE MASK_CASINO_HEIST_ONIHALF_4
|
|
CASE MASK_CASINO_HEIST_ONIHALF_5
|
|
RETURN MASK_CASINO_HEIST_ONIHALF
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_0
|
|
CASE MASK_CASINO_HEIST_EMOJI_1
|
|
CASE MASK_CASINO_HEIST_EMOJI_2
|
|
CASE MASK_CASINO_HEIST_EMOJI_3
|
|
CASE MASK_CASINO_HEIST_EMOJI_4
|
|
CASE MASK_CASINO_HEIST_EMOJI_5
|
|
CASE MASK_CASINO_HEIST_EMOJI_6
|
|
CASE MASK_CASINO_HEIST_EMOJI_7
|
|
RETURN MASK_CASINO_HEIST_EMOJI
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_0
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_1
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_2
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_3
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_4
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_5
|
|
RETURN MASK_CASINO_HEIST_ORNATE_SKULL
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_0
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_1
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_2
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_3
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_4
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_5
|
|
RETURN MASK_CASINO_HEIST_LUCKY_FRUITS
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_0
|
|
CASE MASK_CASINO_HEIST_GUERILLA_1
|
|
CASE MASK_CASINO_HEIST_GUERILLA_2
|
|
CASE MASK_CASINO_HEIST_GUERILLA_3
|
|
CASE MASK_CASINO_HEIST_GUERILLA_4
|
|
CASE MASK_CASINO_HEIST_GUERILLA_5
|
|
CASE MASK_CASINO_HEIST_GUERILLA_6
|
|
CASE MASK_CASINO_HEIST_GUERILLA_7
|
|
CASE MASK_CASINO_HEIST_GUERILLA_8
|
|
RETURN MASK_CASINO_HEIST_GUERILLA
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_0
|
|
CASE MASK_CASINO_HEIST_CLOWNS_1
|
|
CASE MASK_CASINO_HEIST_CLOWNS_2
|
|
CASE MASK_CASINO_HEIST_CLOWNS_3
|
|
CASE MASK_CASINO_HEIST_CLOWNS_4
|
|
CASE MASK_CASINO_HEIST_CLOWNS_5
|
|
CASE MASK_CASINO_HEIST_CLOWNS_6
|
|
CASE MASK_CASINO_HEIST_CLOWNS_7
|
|
RETURN MASK_CASINO_HEIST_CLOWNS
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_0
|
|
CASE MASK_CASINO_HEIST_ANIMALS_1
|
|
CASE MASK_CASINO_HEIST_ANIMALS_2
|
|
CASE MASK_CASINO_HEIST_ANIMALS_3
|
|
CASE MASK_CASINO_HEIST_ANIMALS_4
|
|
CASE MASK_CASINO_HEIST_ANIMALS_5
|
|
CASE MASK_CASINO_HEIST_ANIMALS_6
|
|
CASE MASK_CASINO_HEIST_ANIMALS_7
|
|
RETURN MASK_CASINO_HEIST_ANIMALS
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_0
|
|
CASE MASK_CASINO_HEIST_RIOT_1
|
|
CASE MASK_CASINO_HEIST_RIOT_2
|
|
CASE MASK_CASINO_HEIST_RIOT_3
|
|
CASE MASK_CASINO_HEIST_RIOT_4
|
|
CASE MASK_CASINO_HEIST_RIOT_5
|
|
CASE MASK_CASINO_HEIST_RIOT_6
|
|
CASE MASK_CASINO_HEIST_RIOT_7
|
|
RETURN MASK_CASINO_HEIST_RIOT
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_0
|
|
CASE MASK_CASINO_HEIST_ONIFULL_1
|
|
CASE MASK_CASINO_HEIST_ONIFULL_2
|
|
CASE MASK_CASINO_HEIST_ONIFULL_3
|
|
CASE MASK_CASINO_HEIST_ONIFULL_4
|
|
CASE MASK_CASINO_HEIST_ONIFULL_5
|
|
RETURN MASK_CASINO_HEIST_ONIFULL
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_0
|
|
CASE MASK_CASINO_HEIST_HOCKEY_1
|
|
CASE MASK_CASINO_HEIST_HOCKEY_2
|
|
CASE MASK_CASINO_HEIST_HOCKEY_3
|
|
CASE MASK_CASINO_HEIST_HOCKEY_4
|
|
CASE MASK_CASINO_HEIST_HOCKEY_5
|
|
CASE MASK_CASINO_HEIST_HOCKEY_6
|
|
CASE MASK_CASINO_HEIST_HOCKEY_7
|
|
RETURN MASK_CASINO_HEIST_HOCKEY
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_0
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_1
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_2
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_3
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_4
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_5
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_6
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_7
|
|
RETURN MASK_ISLAND_HEIST_BRANDED_HALF
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_0
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_1
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_2
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_3
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_4
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_5
|
|
RETURN MASK_ISLAND_HEIST_PAINTED_FULL
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_0
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_1
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_2
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_3
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_4
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_5
|
|
RETURN MASK_ISLAND_HEIST_CAMO_SPEC
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_0
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_1
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_2
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_3
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_4
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_5
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_6
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_7
|
|
RETURN MASK_ISLAND_HEIST_NECK_GAITERS
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_0
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_1
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_2
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_3
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_4
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_5
|
|
RETURN MASK_ISLAND_HEIST_FACE_WRAPS
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_0
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_1
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_2
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_3
|
|
RETURN MASK_ISLAND_HEIST_NIGHT_OPS
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_0
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_1
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_2
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_3
|
|
RETURN MASK_ISLAND_HEIST_NIGHT_VISION
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_0
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_1
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_2
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_3
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_4
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_5
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_6
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_7
|
|
RETURN MASK_ISLAND_HEIST_CAMO_HALF
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_0
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_1
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_2
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_3
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_4
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_5
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_6
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_7
|
|
RETURN MASK_ISLAND_HEIST_MONO_NIGHT_VISION
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_0
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_1
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_2
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_3
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_4
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_5
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_6
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_7
|
|
RETURN MASK_ISLAND_HEIST_ISLAND_GUERILLA
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_0
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_1
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_2
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_3
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_4
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_5
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_6
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_7
|
|
RETURN MASK_ISLAND_HEIST_PATTERNED_HOCKEY
|
|
|
|
ENDSWITCH
|
|
|
|
// Error case, mask doesn't have a valid style.
|
|
RETURN MASK_NONE
|
|
|
|
ENDFUNC
|
|
|
|
|
|
/// PURPOSE:
|
|
/// Get the style super set that the passed in outfit belongs to.
|
|
/// RETURNS:
|
|
/// Outfit style set MP_HEIST_OUTFIT_ENUM (e.g. OUTFIT_HEIST_STREET_0)
|
|
FUNC HEIST_MASK GET_DEFAULT_MASK_STYLE_FROM_OUTFIT(INT iOutfit)
|
|
|
|
MP_OUTFIT_ENUM eOutfit = INT_TO_ENUM(MP_OUTFIT_ENUM, iOutfit)
|
|
|
|
SWITCH eOutfit
|
|
|
|
CASE OUTFIT_HEIST_STREET_0
|
|
CASE OUTFIT_HEIST_STREET_1
|
|
CASE OUTFIT_HEIST_STREET_2
|
|
CASE OUTFIT_HEIST_STREET_3
|
|
RETURN MASK_DUCT_TAPE
|
|
|
|
CASE OUTFIT_HEIST_CASUAL_0
|
|
CASE OUTFIT_HEIST_CASUAL_1
|
|
CASE OUTFIT_HEIST_CASUAL_2
|
|
CASE OUTFIT_HEIST_CASUAL_3
|
|
RETURN MASK_TAPES
|
|
|
|
CASE OUTFIT_HEIST_DRIVER_0
|
|
CASE OUTFIT_HEIST_DRIVER_1
|
|
CASE OUTFIT_HEIST_DRIVER_2
|
|
CASE OUTFIT_HEIST_DRIVER_3
|
|
RETURN MASK_CARNIVAL
|
|
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_CASUAL_STEALTH_3
|
|
RETURN MASK_AMATEUR
|
|
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_0
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_1
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_2
|
|
CASE OUTFIT_HEIST_STREET_COMBAT_3
|
|
RETURN MASK_BEASTS
|
|
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_0
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_1
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_2
|
|
CASE OUTFIT_HEIST_TACTICAL_STEALTH_3
|
|
RETURN MASK_TACTICAL
|
|
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_0
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_1
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_2
|
|
CASE OUTFIT_HEIST_LIGHT_COMBAT_3
|
|
RETURN MASK_HORROR_HOCKEY
|
|
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_0
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_1
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_2
|
|
CASE OUTFIT_HEIST_HEAVY_COMBAT_3
|
|
RETURN MASK_SKULLS
|
|
|
|
CASE OUTFIT_HEIST_COVERALLS_0
|
|
CASE OUTFIT_HEIST_COVERALLS_1
|
|
CASE OUTFIT_HEIST_COVERALLS_2
|
|
CASE OUTFIT_HEIST_COVERALLS_3
|
|
RETURN MASK_CLASSIC_MONSTERS
|
|
|
|
CASE OUTFIT_HEIST_POLICE_0
|
|
RETURN MASK_PIGS
|
|
|
|
CASE OUTFIT_HEIST_HAZCHEM_0
|
|
CASE OUTFIT_HEIST_HAZCHEM_1
|
|
CASE OUTFIT_HEIST_HAZCHEM_2
|
|
CASE OUTFIT_HEIST_HAZCHEM_3
|
|
RETURN MASK_GAS_MASKS
|
|
|
|
CASE OUTFIT_HEIST_SMART_SUITS_0
|
|
CASE OUTFIT_HEIST_SMART_SUITS_1
|
|
CASE OUTFIT_HEIST_SMART_SUITS_2
|
|
CASE OUTFIT_HEIST_SMART_SUITS_3
|
|
RETURN MASK_CHARACTERS
|
|
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_0
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_1
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_2
|
|
CASE OUTFIT_HEIST_NIGHT_BIKER_3
|
|
RETURN MASK_HELMETS
|
|
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_0
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_1
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_2
|
|
CASE OUTFIT_HEIST_SLOPPY_SUITS_3
|
|
RETURN MASK_PUPPETS
|
|
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_0
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_1
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_2
|
|
CASE OUTFIT_HEIST_SHARP_SUITS_3
|
|
RETURN MASK_HELMETS
|
|
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_0
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_1
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_2
|
|
CASE OUTFIT_HEIST_MINIMALIST_SUITS_3
|
|
RETURN MASK_GAS_MASKS
|
|
|
|
CASE OUTFIT_HEIST_TUXEDOS_0
|
|
CASE OUTFIT_HEIST_TUXEDOS_1
|
|
CASE OUTFIT_HEIST_TUXEDOS_2
|
|
CASE OUTFIT_HEIST_TUXEDOS_3
|
|
RETURN MASK_THEATRICAL
|
|
|
|
ENDSWITCH
|
|
|
|
PRINTLN("[CORONA][AMEC] - GET_DEFAULT_MASK_STYLE_FROM_OUTFIT - No default mask found for outfit: ", iOutfit)
|
|
|
|
// Error case, mask doesn't have a valid style.
|
|
RETURN MASK_NONE
|
|
|
|
ENDFUNC
|
|
|
|
|
|
|
|
|
|
|
|
/// PURPOSE:
|
|
/// Based on the outfit enum update the BERD drawable and texture id.
|
|
PROC OVERRIDE_OUTFIT_MASK_FOR_HIDDEN(MP_OUTFIT_ENUM eOutfit, BOOL bMale, INT &iBerdDrawable, INT &iBerdTexture, INT &iPropDrawable, INT &iPropTexture)
|
|
|
|
scrShopPedProp propItem
|
|
scrShopPedComponent componentItem
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_0
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_1
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_2
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_3
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_4
|
|
CASE OUTFIT_VERSUS_CLASSIC_METAL_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_8), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_M_PHEAD_0_1), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_8), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_F_PHEAD_0_1), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_0
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_1
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_2
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_3
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_4
|
|
CASE OUTFIT_VERSUS_CLASSIC_TACTICAL_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_21), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_M_PHEAD_0_0), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_21), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_F_PHEAD_0_0), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_0
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_1
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_2
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_3
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_4
|
|
CASE OUTFIT_VERSUS_CLASSIC_DUNE_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_20), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_M_PHEAD_0_3), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_20), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_F_PHEAD_0_3), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_0
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_1
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_2
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_3
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_4
|
|
CASE OUTFIT_VERSUS_CLASSIC_SWAMP_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_19), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_M_PHEAD_0_4), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_19), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
|
|
IF IS_THIS_ROCKSTAR_MISSION_NEW_VS_BE_MY_VALENTINE(g_FMMC_STRUCT.iRootContentIDHash)
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_LTS_F_PHEAD_0_4), propItem)
|
|
iPropDrawable = propItem.m_propIndex
|
|
iPropTexture = propItem.m_textureIndex
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Based on the outfit enum update the BERD drawable and texture id.
|
|
PROC OVERRIDE_OUTFIT_MASK_FOR_XMAS(MP_OUTFIT_ENUM eOutfit, BOOL bMale, INT &iBerdDrawable, INT &iBerdTexture)
|
|
|
|
scrShopPedComponent componentItem
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_9
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_0), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_10
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_2), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_ADVERSARY_B_OVERRIDE_11
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_M_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_XMAS3_F_BERD_9_1), componentItem)
|
|
iBerdDrawable = componentItem.m_drawableIndex
|
|
iBerdTexture = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Will override the passed mask / prop components of an outfit if required
|
|
PROC PROCESS_OUTFIT_OVERRIDDEN_MASKS(MP_OUTFIT_ENUM eOutfit, BOOL bMale, INT &iBerdDrawable, INT &iBerdTexture, INT &iPropDrawable, INT &iPropTexture)
|
|
IF g_FMMC_STRUCT.iMissionType = FMMC_TYPE_MISSION
|
|
|
|
// If the creator has flagged that the masks need to be overridden
|
|
IF IS_BIT_SET(g_FMMC_STRUCT.iOptionsMenuBitSetFive, ciOVERRIDE_OUTFIT_MASKS)
|
|
OVERRIDE_OUTFIT_MASK_FOR_HIDDEN(eOutfit, bMale, iBerdDrawable, iBerdTexture, iPropDrawable, iPropTexture)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OVERRIDE_OUTFIT_MASK_FOR_HIDDEN ")
|
|
ENDIF
|
|
|
|
// If our tunable is indicating the Xmas masks are active
|
|
IF g_sMPTunables.bTOGGLE_HIDDEN_BEAST_MASKS_XMAS15
|
|
#IF IS_DEBUG_BUILD
|
|
OR GET_COMMANDLINE_PARAM_EXISTS("sc_MaskXMAS15")
|
|
#ENDIF
|
|
OVERRIDE_OUTFIT_MASK_FOR_XMAS(eOutfit, bMale, iBerdDrawable, iBerdTexture)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OVERRIDE_OUTFIT_MASK_FOR_XMAS ")
|
|
EXIT
|
|
ENDIF
|
|
|
|
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
|
|
FUNC BOOL GET_MP_OUTFIT_DATA(MP_OUTFITS_DATA &sOutfitsData,MP_OUTFITS_APPLY_DATA sApplyOutfitdata,bool bApplyMasks = false)
|
|
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sOutfitsData.iComponentDrawableID[i] = -1
|
|
sOutfitsData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
sOutfitsData.iPropDrawableID[i] = -1
|
|
sOutfitsData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iDLCTattooOverlay) i
|
|
sOutfitsData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
|
|
IF sApplyOutfitdata.eOutfit = OUTFIT_MP_DEFAULT
|
|
//No outfit needed
|
|
RETURN FALSE
|
|
|
|
ELIF sApplyOutfitdata.eOutfit = OUTFIT_MP_FREEMODE
|
|
INT iOwnedOutfitSlot = GET_LOCAL_PLAYER_OWNED_OUTFIT()
|
|
|
|
if iOwnedOutfitSlot != -1
|
|
AND GET_MP_OUTFIT_STORED_IN_SLOT(sOutfitsData,iOwnedOutfitSlot,bApplyMasks)
|
|
//remove any parachutes / bags
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = 0
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OUTFIT_MP_FREEMODE applying from saved outfit slot ")
|
|
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OUTFIT_MP_FREEMODE applying from saved packed stats ")
|
|
|
|
//No outfit needed use freemode
|
|
if bApplyMasks
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_BERD_1, -1) + GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_BERD_2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_BERD, -1)
|
|
endif
|
|
|
|
if not IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
PED_COMP_NAME_ENUM eHairToRestore
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT, -1)
|
|
eHairToRestore = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA, -1))
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OUTFIT_MP_FREEMODE applying hair enum ", eHairToRestore, " from stat MP_STAT_CHAR_FM_STORED_HAIRDO_SA ")
|
|
ELSE
|
|
eHairToRestore = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO, -1))
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OUTFIT_MP_FREEMODE applying hair enum ", eHairToRestore, " from stat MP_STAT_CHAR_FM_STORED_HAIRDO ")
|
|
ENDIF
|
|
|
|
IF (eHairToRestore != DUMMY_PED_COMP)
|
|
PED_COMP_NAME_ENUM eGRHairItem = DUMMY_PED_COMP
|
|
IF (GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_M_FREEMODE_01)
|
|
eGRHairItem = GET_MALE_HAIR(eHairToRestore)
|
|
ELIF (GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_F_FREEMODE_01)
|
|
eGRHairItem = GET_FEMALE_HAIR(eHairToRestore)
|
|
ENDIF
|
|
|
|
IF (eGRHairItem != DUMMY_PED_COMP)
|
|
AND (eHairToRestore != eGRHairItem)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] gr_hair: replacing hair enum ", eHairToRestore, " with gunrunning hair enum ", eGRHairItem)
|
|
eHairToRestore = eGRHairItem
|
|
ENDIF
|
|
ENDIF
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT sItemData
|
|
sItemData = GET_PED_COMP_DATA_FOR_ITEM_MP(GET_ENTITY_MODEL(sApplyOutfitData.pedID),COMP_TYPE_HAIR,eHairToRestore)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = sItemData.iDrawable //GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_HAIR, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAIR] = sItemData.iTexture //GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_HAIR, -1)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] OUTFIT_MP_FREEMODE applying hair from stats:",eHairToRestore,", draw:",sItemData.iDrawable,", textID:",sItemData.iTexture)
|
|
endif
|
|
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HEAD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_HEAD, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HEAD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_HEAD, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_TORSO] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_TORSO_1, -1) + GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_TORSO_2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_TORSO] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_TORSO, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_LEG] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_LEG, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_LEG] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_LEG, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_FEET] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_FEET, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_FEET] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_FEET, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_TEETH] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_TEETH, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_TEETH] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_TEETH, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_SPECIAL] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_SPECIAL_1, -1) + GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_SPECIAL_2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_SPECIAL] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_SPECIAL, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_SPECIAL2] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_SPECIAL2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_SPECIAL2] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_SPECIAL2, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_DECL] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_DECL, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_DECL] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_DECL, -1)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_JBIB] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_JBIB_1, -1) + GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_JBIB_2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_JBIB] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_JBIB, -1)
|
|
//remove any parachutes / bags
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = 0
|
|
|
|
sOutfitsData.iPropDrawableID[0] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_0, -1)
|
|
sOutfitsData.iPropTextureID[0] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_0, -1)
|
|
sOutfitsData.iPropDrawableID[1] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_1, -1)
|
|
sOutfitsData.iPropTextureID[1] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_1, -1)
|
|
sOutfitsData.iPropDrawableID[2] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_2, -1)
|
|
sOutfitsData.iPropTextureID[2] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_2, -1)
|
|
sOutfitsData.iPropDrawableID[3] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_3, -1)
|
|
sOutfitsData.iPropTextureID[3] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_3, -1)
|
|
sOutfitsData.iPropDrawableID[4] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_4, -1)
|
|
sOutfitsData.iPropTextureID[4] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_4, -1)
|
|
sOutfitsData.iPropDrawableID[5] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_5, -1)
|
|
sOutfitsData.iPropTextureID[5] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_5, -1)
|
|
sOutfitsData.iPropDrawableID[6] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_6, -1)
|
|
sOutfitsData.iPropTextureID[6] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_6, -1)
|
|
sOutfitsData.iPropDrawableID[7] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_7, -1)
|
|
sOutfitsData.iPropTextureID[7] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_7, -1)
|
|
sOutfitsData.iPropDrawableID[8] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPINDX_8, -1)
|
|
sOutfitsData.iPropTextureID[8] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_PROPTEXT_8, -1)
|
|
|
|
//Set 0'd props to -1 if anchor doesn't contain any props
|
|
If sOutfitsData.iPropDrawableID[3] = 0
|
|
sOutfitsData.iPropDrawableID[3] = -1
|
|
endif
|
|
If sOutfitsData.iPropDrawableID[4] = 0
|
|
sOutfitsData.iPropDrawableID[4] = -1
|
|
endif
|
|
If sOutfitsData.iPropDrawableID[5] = 0
|
|
sOutfitsData.iPropDrawableID[5] = -1
|
|
endif
|
|
If sOutfitsData.iPropDrawableID[7] = 0
|
|
sOutfitsData.iPropDrawableID[7] = -1
|
|
endif
|
|
If sOutfitsData.iPropDrawableID[8] = 0
|
|
sOutfitsData.iPropDrawableID[8] = -1
|
|
endif
|
|
|
|
#IF USE_TU_CHANGES
|
|
if not IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
TATTOO_NAME_ENUM eShirtDecal
|
|
eShirtDecal = GET_TATTOO_ENUM_FROM_DLC_HASH(GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH), GET_TATTOO_FACTION_FOR_PED(sApplyOutfitData.pedID))
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
and IS_MP_TATTOO_CURRENT(eShirtDecal)
|
|
sOutfitsData.iDLCTattooOverlay[0] = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_OUTFIT_DATA] sOutfitsData.iDLCTattooOverlay[0] is being set to stat MP_STAT_TSHIRT_DECAL_HASH")
|
|
ENDIF
|
|
endif
|
|
#ENDIF
|
|
ENDIF
|
|
IF !bApplyMasks // remove all berds when we aren't applying mask items
|
|
sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[COMP_TYPE_BERD] = 0
|
|
ENDIF
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
MP_OUTFITS_DATA_REQUEST sRequest
|
|
sRequest.bMale = (GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_M_FREEMODE_01)
|
|
sRequest.eOutfit = sApplyOutfitdata.eOutfit
|
|
IF GET_MP_OUTFIT_DATA_FROM_METADATA(sOutfitsData, sRequest)
|
|
//If not applying masks and no berd is being set by this outfit set masks to none.
|
|
IF !bApplyMasks
|
|
and( sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD] = -1
|
|
or sOutfitsData.iComponentDrawableID[COMP_TYPE_SPECIAL] = GET_CHEMSUIT_HOOD_VARIATION(sApplyOutfitData.pedID,true)) //bug 2220687 chem suit check
|
|
sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[COMP_TYPE_BERD] = 0
|
|
ENDIF
|
|
|
|
// New Adversary modes have colour specific masks. Require an override for url:bugstar:2596714
|
|
PROCESS_OUTFIT_OVERRIDDEN_MASKS(sApplyOutfitdata.eOutfit, sRequest.bMale, sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD], sOutfitsData.iComponentTextureID[COMP_TYPE_BERD],
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD], sOutfitsData.iPropTextureID[ANCHOR_HEAD])
|
|
|
|
RETURN TRUE
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_MP_HEIST_MASK_DATA(MP_OUTFITS_DATA &sMainOutfitData, MP_OUTFITS_APPLY_DATA sApplyOutfitData, BOOL bOverwriteData = TRUE, BOOL bUseDefaultMask = TRUE)
|
|
|
|
MP_OUTFITS_DATA sOutfitsData
|
|
INT i
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sOutfitsData.iComponentDrawableID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sMainOutfitData.iPropDrawableID) i
|
|
sOutfitsData.iPropDrawableID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sMainOutfitData.iDLCTattooOverlay) i
|
|
sOutfitsData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
|
|
|
|
IF bOverwriteData
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]->GET_MP_HEIST_MASK_DATA overwritting outfit data")
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sMainOutfitData.iComponentDrawableID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sMainOutfitData.iPropDrawableID) i
|
|
sMainOutfitData.iPropDrawableID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sMainOutfitData.iDLCTattooOverlay) i
|
|
sMainOutfitData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
|
|
bool bMale = false
|
|
if GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_M_FREEMODE_01
|
|
bMale = true
|
|
endif
|
|
|
|
SWITCH sApplyOutfitdata.eMask
|
|
case OUTFIT_MASK_NONE
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_FREEMODE
|
|
if sApplyOutfitdata.iPlayerIndex != -1
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = GlobalplayerBD_FM_HeistPlanning[sApplyOutfitdata.iPlayerIndex].iChosenMaskDrawID
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = GlobalplayerBD_FM_HeistPlanning[sApplyOutfitdata.iPlayerIndex].iChosenMaskTextID
|
|
else
|
|
//Get the slot of the owned outfit.
|
|
INT iOwnedOutfitSlot
|
|
iOwnedOutfitSlot = GET_LOCAL_PLAYER_OWNED_OUTFIT()
|
|
if iOwnedOutfitSlot != -1
|
|
//Grab the masks that are used for this outfit.
|
|
MP_OUTFITS_DATA tempOutfitData
|
|
GET_MP_OUTFIT_STORED_IN_SLOT(tempOutfitData,iOwnedOutfitSlot, TRUE)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = tempOutfitData.iComponentDrawableID[PED_COMP_BERD]
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = tempOutfitData.iComponentTextureID[PED_COMP_BERD]
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_HEIST_MASK_DATA][MASK_FREEMODE] using mask data from slot:",iOwnedOutfitSlot)
|
|
ELSE
|
|
//No outfit needed use freemode
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_BERD_1, -1) + GET_PACKED_STAT_INT(PACKED_MP_CLTH_DRAWVAR_BERD_2, -1)
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = GET_PACKED_STAT_INT(PACKED_MP_CLTH_TEXTVAR_BERD, -1)
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_HEIST_MASK_DATA][MASK_FREEMODE] using local stats for mask")
|
|
endif
|
|
|
|
IF bUseDefaultMask
|
|
//If no mask is being used from freemode force the balaclava(OUTFIT_MASK_AMATEUR_0)
|
|
if sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = -1
|
|
or sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
CPRINTLN(DEBUG_MISSION,"[GET_MP_HEIST_MASK_DATA][MASK_FREEMODE] using balaclava as no mask was grabbed from stats or outfit slots")
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
endif
|
|
ENDIF
|
|
endif
|
|
break
|
|
|
|
case OUTFIT_MASK_AMATEUR_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_AMATEUR_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_AMATEUR_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_AMATEUR_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_ANIMALS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_ANIMALS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_ANIMALS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_ANIMALS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_2_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_2_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_9
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_10
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_11
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_11), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_11), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_12
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_12), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_12), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_13
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_14
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_15
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_15), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_15), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_16
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_17
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_17), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_17), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_18
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_18), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_18), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_19
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_19), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_19), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_20
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_20), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_20), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_21
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_21), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_21), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_22
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_22), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_22), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_23
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_23), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_23), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_24
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_24), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_24), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PAPER_BAGS_25
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_14_25), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_14_25), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_BEASTS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_BEASTS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_BEASTS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_BEASTS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CHARACTERS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_9_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_9_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CHARACTERS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CHARACTERS_2
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 3
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 3
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CHARACTERS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CLASSIC_MONSTERS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CLASSIC_MONSTERS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CLASSIC_MONSTERS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CLASSIC_MONSTERS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CARNIVAL_0
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 2
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 2
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CARNIVAL_1
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 3
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 3
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CARNIVAL_2
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_CARNIVAL_3
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 1
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 6
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 1
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_GAS_MASKS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_GAS_MASKS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_HELMETS_0
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_4_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_4_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
|
|
break
|
|
case OUTFIT_MASK_HELMETS_1
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_5_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_5_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_2
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_6_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_6_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_3
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_7_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_7_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_4
|
|
IF bMale
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 2
|
|
ELSE//female
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 2
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_5
|
|
IF bMale
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 4
|
|
ELSE//female
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 4
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_6
|
|
IF bMale
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
ELSE//female
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HELMETS_7
|
|
IF bMale
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 5
|
|
ELSE//female
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 18 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 5
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 0
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
break
|
|
case OUTFIT_MASK_HORROR_HOCKEY_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_HORROR_HOCKEY_1
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 4 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 4 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_HORROR_HOCKEY_2
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 4 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 2
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 4 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 2
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_HORROR_HOCKEY_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD1_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD1_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PUPPETS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PUPPETS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PUPPETS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PUPPETS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_SKULLS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_SKULLS_1
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 2 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 2 sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_SKULLS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_SKULLS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_M_BERD_1_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_BERD_1_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TACTICAL_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TACTICAL_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TACTICAL_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TACTICAL_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD2_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD2_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TAPE_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TAPE_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TAPE_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_12_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_12_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_TAPE_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_THEATRICAL_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_BERD1_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_F_BERD1_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_THEATRICAL_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_THEATRICAL_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_15_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_15_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_THEATRICAL_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_BERD0_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_F_BERD0_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
|
|
case OUTFIT_MASK_PIGS_0
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 0
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 0
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PIGS_1
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 1
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 1
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PIGS_2
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 2
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 2
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_PIGS_3
|
|
IF bMale
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 3
|
|
ELSE//female
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 1 sOutfitsData.iComponentTextureID[PED_COMP_BERD ]= 3
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_DUCT_TAPE_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_13_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_13_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_DUCT_TAPE_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_13_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_13_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_DUCT_TAPE_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_13_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_13_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
case OUTFIT_MASK_DUCT_TAPE_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_13_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_13_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
break
|
|
|
|
CASE OUTFIT_MASK_Incognito_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Incognito_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Incognito_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Incognito_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Balaclavas_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_18"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_22_18"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Balaclavas_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_19"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_22_19"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Balaclavas_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_20"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_22_20"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Balaclavas_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_17"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_17"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_22_21"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_22_21"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_23_1"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_23_1"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_23_3"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_23_3"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_23_7"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_23_7"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_9
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_23_4"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_23_4"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_10
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Balaclavas_11
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_M_BERD_23_9"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(HASH("DLC_MP_HEIST_F_BERD_23_9"), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE OUTFIT_MASK_Camo_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Camo_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Camo_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Camo_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Camo_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Camo_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Psychotic_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Psychotic_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Psychotic_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Psychotic_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD1_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD1_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Street_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Bandanas_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_16_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 4 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 1
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = 7 sOutfitsData.iPropTextureID[ANCHOR_EYES] = 0
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_16_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EYES0_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = propItem.m_textureIndex
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 4 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Bandanas_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_16_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_8_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = 7
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = 0
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_16_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EYES0_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = propItem.m_textureIndex
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_8_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Bandanas_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_16_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = 7 sOutfitsData.iPropTextureID[ANCHOR_EYES] = 0
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 4 sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_16_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EYES0_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = propItem.m_textureIndex
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 4
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Bandanas_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_16_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = 7
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = 0
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_PHEAD_8_1), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_16_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EYES0_0), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EYES] = propItem.m_textureIndex
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_PHEAD_8_1), propItem)
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = propItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Hoods_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_18_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_18_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Hoods_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_18_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_18_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Hoods_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_18_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_18_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Hoods_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_18_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_18_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_15), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_15), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_10), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_12), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_12), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE OUTFIT_MASK_Designer_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_8_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_8_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_8_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_8_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Devilish_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Sadistic_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_9_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_9_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Sadistic_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_2_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_2_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Sadistic_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_9_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_9_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Sadistic_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Possessed_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Possessed_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE MASK_HEIST_HALLOWEEN_Possessed_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_0_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_0_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Possessed_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_6_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_6_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Fiends_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Fiends_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Fiends_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_3_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_3_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Fiends_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_4_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_4_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Creatures_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Creatures_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Creatures_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Creatures_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_7_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_7_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Wicked_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Wicked_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_11_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_11_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Wicked_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_10_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_10_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_HEIST_HALLOWEEN_Wicked_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_M_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE//female
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HAL_F_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
endswitch
|
|
|
|
SWITCH sApplyOutfitdata.eMask
|
|
|
|
CASE MASK_CASINO_HEIST_DEFAULT_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_x17_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_DEFAULT_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_x17_F_BERD_5_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_11_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_12_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_12_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_12_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_13_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_13_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_16_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_16_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_16_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_16_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_16_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_16_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GEOMETRIC_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_16_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_16_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_10_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HUNTER_9
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_17_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIHALF_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_14_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_14_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_EMOJI_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_19_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_19_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ORNATE_SKULL_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_8_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_8_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_LUCKY_FRUITS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_M_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VWD_F_BERD_6_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_20_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_20_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_9_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_9_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_GUERILLA_8
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_CLOWNS_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_4_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_5_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_M_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_F_BERD_2_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_6_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_6_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_M_BERD_1_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IND_F_BERD_1_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_1_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ANIMALS_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_BERD_0_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_9_11), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_9_11), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_7_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_7_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_9_17), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_9_17), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_3_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_3_6), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_3_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_3_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_7_19), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_7_19), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_RIOT_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_7_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_1), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_2), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_4), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_ONIFULL_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_3_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_3_5), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_9), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_13), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_14), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_16), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_8), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD0_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD0_7), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE MASK_CASINO_HEIST_HOCKEY_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_BERD1_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_BERD1_3), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH sApplyOutfitdata.eMask
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_10_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_10_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_10_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_10_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_10_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_10_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_M_BERD_10_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_BERD_10_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_1_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_1_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_1_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_1_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_1_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_1_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_BRANDED_HALF_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_1_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_1_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PAINTED_FULL_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_3_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_3_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_20), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_20), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_SPEC_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_0_23), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_0_23), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NECK_GAITERS_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_M_BERD_2_17), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H4_F_BERD_2_17), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_9_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_9_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_1), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_1), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_BERD_9_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_BERD_9_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_5_3), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_5_3), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_19_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_19_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_FACE_WRAPS_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_20_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_20_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_21_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_21_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_OPS_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_22_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_22_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_HAIR_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAIR] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_HAIR_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAIR] = componentItem.m_textureIndex
|
|
ENDIF
|
|
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_SMUG_M_PHEAD_4_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_SMUG_F_PHEAD_4_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_17_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_17_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_M_PHEAD_10_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_H3_F_PHEAD_10_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ENUM_TO_INT(ANCHOR_HEAD)] = propItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_NIGHT_VISION_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_17), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_17), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_16), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_16), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_CAMO_HALF_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_BERD_1_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_BERD_1_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_19), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_19), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_17), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_17), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_13), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_13), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_MONO_NIGHT_VISION_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_11_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_11_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_23), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_23), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_22), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_22), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_21), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_21), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_20), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_20), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_19), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_19), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_18), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_18), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_16), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_16), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_ISLAND_GUERILLA_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_M_BERD_8_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_SMUG_F_BERD_8_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_0
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_16), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_16), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_ISLAND_HEIST_PATTERNED_HOCKEY_7
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_M_BERD_0_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BH_F_BERD_0_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
SWITCH sApplyOutfitdata.eMask
|
|
|
|
CASE MASK_TUNER_STARS_AND_STRIPES_FALSE_FACE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_7_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_7_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
CASE MASK_TUNER_GREEN_PATTERN_FALSE_FACE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_BERD_7_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_BERD_7_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
BREAK
|
|
|
|
ENDSWITCH
|
|
|
|
bool bfoundMask = false
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
if sOutfitsData.iComponentDrawableID[i] != -1
|
|
sMainOutfitData.iComponentDrawableID[i] = sOutfitsData.iComponentDrawableID[i]
|
|
sMainOutfitData.iComponentTextureID[i] = sOutfitsData.iComponentTextureID[i]
|
|
CPRINTLN(DEBUG_MISSION,"GET_MP_HEIST_MASK_DATA - found mask [", enum_to_INT(sApplyOutfitData.eMask),"] writting to compID: ", sOutfitsData.iComponentDrawableID[i]," textureID:",sOutfitsData.iComponentTextureID[i])
|
|
bfoundMask = true
|
|
endif
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
if sOutfitsData.iPropDrawableID[i] != -1
|
|
sMainOutfitData.iPropDrawableID[i] = sOutfitsData.iPropDrawableID[i]
|
|
sMainOutfitData.iPropTextureID[i] = sOutfitsData.iPropTextureID[i]
|
|
CPRINTLN(DEBUG_MISSION,"GET_MP_HEIST_MASK_DATA - found mask [", enum_to_INT(sApplyOutfitData.eMask),"] writting to iPropDrawableID: ", sOutfitsData.iPropDrawableID[i]," textureID:",sOutfitsData.iPropTextureID[i])
|
|
bfoundMask = true
|
|
endif
|
|
ENDREPEAT
|
|
|
|
IF bfoundMask
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
PRINTLN("GET_MP_HEIST_MASK_DATA - Enum missing tell Craig V. - ", enum_to_INT(sApplyOutfitData.eMask))
|
|
SCRIPT_ASSERT("GET_MP_HEIST_MASK_DATA - Enum missing tell Craig V.")
|
|
#ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_MP_HEIST_MASK_EQUIPPED(PED_INDEX pedID, MP_OUTFIT_MASK_ENUM eMask)
|
|
MP_OUTFITS_DATA sOutfitsData
|
|
MP_OUTFITS_APPLY_DATA sApplyOutfitData
|
|
sApplyOutfitData.pedID = pedID
|
|
sApplyOutfitData.eMask = eMask
|
|
|
|
IF GET_MP_HEIST_MASK_DATA(sOutfitsData,sApplyOutfitData,true)
|
|
//check componants
|
|
int i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
if sOutfitsData.iComponentDrawableID[i] = GET_PED_DRAWABLE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i))
|
|
and sOutfitsData.iComponentTextureID[i] = GET_PED_TEXTURE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i))
|
|
CPRINTLN(DEBUG_MISSION,"IS_MP_HEIST_MASK_EQUIPPED - found mask [", enum_to_INT(sApplyOutfitData.eMask),"] compID: ", sOutfitsData.iComponentDrawableID[i]," textureID:",sOutfitsData.iComponentTextureID[i])
|
|
RETURN TRUE
|
|
endif
|
|
ENDREPEAT
|
|
|
|
//check props e.g. helmets
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
if sOutfitsData.iPropDrawableID[i] = GET_PED_PROP_INDEX(pedID, int_to_enum(PED_PROP_POSITION,i))
|
|
and sOutfitsData.iPropTextureID[i] = GET_PED_PROP_TEXTURE_INDEX(pedID,int_to_enum(PED_PROP_POSITION,i))
|
|
CPRINTLN(DEBUG_MISSION,"IS_MP_HEIST_MASK_EQUIPPED - found mask [", enum_to_INT(sApplyOutfitData.eMask),"] propID: ", sOutfitsData.iPropDrawableID[i]," textureID:",sOutfitsData.iPropTextureID[i])
|
|
RETURN TRUE
|
|
endif
|
|
ENDREPEAT
|
|
ENDIF
|
|
CPRINTLN(DEBUG_MISSION,"IS_MP_HEIST_MASK_EQUIPPED - not wearing mask [", enum_to_INT(sApplyOutfitData.eMask))
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
// -------- MP Character Creator Outfits
|
|
|
|
ENUM CHARACTER_CREATOR_OUTFIT
|
|
CC_OUTFIT_STREET_0,
|
|
CC_OUTFIT_STREET_1,
|
|
CC_OUTFIT_STREET_2,
|
|
CC_OUTFIT_STREET_3,
|
|
CC_OUTFIT_STREET_4,
|
|
CC_OUTFIT_STREET_5,
|
|
CC_OUTFIT_STREET_6,
|
|
CC_OUTFIT_STREET_7,
|
|
CC_OUTFIT_FLASHY_0,
|
|
CC_OUTFIT_FLASHY_1,
|
|
CC_OUTFIT_FLASHY_2,
|
|
CC_OUTFIT_FLASHY_3,
|
|
CC_OUTFIT_FLASHY_4,
|
|
CC_OUTFIT_FLASHY_5,
|
|
CC_OUTFIT_FLASHY_6,
|
|
CC_OUTFIT_FLASHY_7,
|
|
CC_OUTFIT_PARTY_0,
|
|
CC_OUTFIT_PARTY_1,
|
|
CC_OUTFIT_PARTY_2,
|
|
CC_OUTFIT_PARTY_3,
|
|
CC_OUTFIT_PARTY_4,
|
|
CC_OUTFIT_PARTY_5,
|
|
CC_OUTFIT_PARTY_6,
|
|
CC_OUTFIT_PARTY_7,
|
|
CC_OUTFIT_BEACH_0,
|
|
CC_OUTFIT_BEACH_1,
|
|
CC_OUTFIT_BEACH_2,
|
|
CC_OUTFIT_BEACH_3,
|
|
CC_OUTFIT_BEACH_4,
|
|
CC_OUTFIT_BEACH_5,
|
|
CC_OUTFIT_BEACH_6,
|
|
CC_OUTFIT_BEACH_7,
|
|
CC_OUTFIT_SMART_0,
|
|
CC_OUTFIT_SMART_1,
|
|
CC_OUTFIT_SMART_2,
|
|
CC_OUTFIT_SMART_3,
|
|
CC_OUTFIT_SMART_4,
|
|
CC_OUTFIT_SMART_5,
|
|
CC_OUTFIT_SMART_6,
|
|
CC_OUTFIT_SMART_7,
|
|
CC_OUTFIT_SPORTY_0,
|
|
CC_OUTFIT_SPORTY_1,
|
|
CC_OUTFIT_SPORTY_2,
|
|
CC_OUTFIT_SPORTY_3,
|
|
CC_OUTFIT_SPORTY_4,
|
|
CC_OUTFIT_SPORTY_5,
|
|
CC_OUTFIT_SPORTY_6,
|
|
CC_OUTFIT_SPORTY_7,
|
|
CC_OUTFIT_ECCENTRIC_0,
|
|
CC_OUTFIT_ECCENTRIC_1,
|
|
CC_OUTFIT_ECCENTRIC_2,
|
|
CC_OUTFIT_ECCENTRIC_3,
|
|
CC_OUTFIT_ECCENTRIC_4,
|
|
CC_OUTFIT_ECCENTRIC_5,
|
|
CC_OUTFIT_ECCENTRIC_6,
|
|
CC_OUTFIT_ECCENTRIC_7,
|
|
CC_OUTFIT_CASUAL_0,
|
|
CC_OUTFIT_CASUAL_1,
|
|
CC_OUTFIT_CASUAL_2,
|
|
CC_OUTFIT_CASUAL_3,
|
|
CC_OUTFIT_CASUAL_4,
|
|
CC_OUTFIT_CASUAL_5,
|
|
CC_OUTFIT_CASUAL_6,
|
|
CC_OUTFIT_CASUAL_7
|
|
|
|
#IF FEATURE_GEN9_STANDALONE
|
|
,CC_OUTFIT_EXECUTIVE_0
|
|
,CC_OUTFIT_EXECUTIVE_1
|
|
,CC_OUTFIT_EXECUTIVE_2
|
|
|
|
,CC_OUTFIT_GUNRUNNER_0
|
|
,CC_OUTFIT_GUNRUNNER_1
|
|
,CC_OUTFIT_GUNRUNNER_2
|
|
|
|
,CC_OUTFIT_NIGHTCLUB_0
|
|
,CC_OUTFIT_NIGHTCLUB_1
|
|
,CC_OUTFIT_NIGHTCLUB_2
|
|
|
|
,CC_OUTFIT_BIKER_0
|
|
,CC_OUTFIT_BIKER_1
|
|
,CC_OUTFIT_BIKER_2
|
|
#ENDIF
|
|
ENDENUM
|
|
|
|
FUNC INT GET_HASH_FOR_CHARACTER_CREATOR_OUTFIT(CHARACTER_CREATOR_OUTFIT outfit)
|
|
SWITCH outfit
|
|
CASE CC_OUTFIT_STREET_0 RETURN HASH("CC_OUTFIT_STREET_0")
|
|
CASE CC_OUTFIT_STREET_1 RETURN HASH("CC_OUTFIT_STREET_1")
|
|
CASE CC_OUTFIT_STREET_2 RETURN HASH("CC_OUTFIT_STREET_2")
|
|
CASE CC_OUTFIT_STREET_3 RETURN HASH("CC_OUTFIT_STREET_3")
|
|
CASE CC_OUTFIT_STREET_4 RETURN HASH("CC_OUTFIT_STREET_4")
|
|
CASE CC_OUTFIT_STREET_5 RETURN HASH("CC_OUTFIT_STREET_5")
|
|
CASE CC_OUTFIT_STREET_6 RETURN HASH("CC_OUTFIT_STREET_6")
|
|
CASE CC_OUTFIT_STREET_7 RETURN HASH("CC_OUTFIT_STREET_7")
|
|
CASE CC_OUTFIT_FLASHY_0 RETURN HASH("CC_OUTFIT_FLASHY_0")
|
|
CASE CC_OUTFIT_FLASHY_1 RETURN HASH("CC_OUTFIT_FLASHY_1")
|
|
CASE CC_OUTFIT_FLASHY_2 RETURN HASH("CC_OUTFIT_FLASHY_2")
|
|
CASE CC_OUTFIT_FLASHY_3 RETURN HASH("CC_OUTFIT_FLASHY_3")
|
|
CASE CC_OUTFIT_FLASHY_4 RETURN HASH("CC_OUTFIT_FLASHY_4")
|
|
CASE CC_OUTFIT_FLASHY_5 RETURN HASH("CC_OUTFIT_FLASHY_5")
|
|
CASE CC_OUTFIT_FLASHY_6 RETURN HASH("CC_OUTFIT_FLASHY_6")
|
|
CASE CC_OUTFIT_FLASHY_7 RETURN HASH("CC_OUTFIT_FLASHY_7")
|
|
CASE CC_OUTFIT_PARTY_0 RETURN HASH("CC_OUTFIT_PARTY_0")
|
|
CASE CC_OUTFIT_PARTY_1 RETURN HASH("CC_OUTFIT_PARTY_1")
|
|
CASE CC_OUTFIT_PARTY_2 RETURN HASH("CC_OUTFIT_PARTY_2")
|
|
CASE CC_OUTFIT_PARTY_3 RETURN HASH("CC_OUTFIT_PARTY_3")
|
|
CASE CC_OUTFIT_PARTY_4 RETURN HASH("CC_OUTFIT_PARTY_4")
|
|
CASE CC_OUTFIT_PARTY_5 RETURN HASH("CC_OUTFIT_PARTY_5")
|
|
CASE CC_OUTFIT_PARTY_6 RETURN HASH("CC_OUTFIT_PARTY_6")
|
|
CASE CC_OUTFIT_PARTY_7 RETURN HASH("CC_OUTFIT_PARTY_7")
|
|
CASE CC_OUTFIT_BEACH_0 RETURN HASH("CC_OUTFIT_BEACH_0")
|
|
CASE CC_OUTFIT_BEACH_1 RETURN HASH("CC_OUTFIT_BEACH_1")
|
|
CASE CC_OUTFIT_BEACH_2 RETURN HASH("CC_OUTFIT_BEACH_2")
|
|
CASE CC_OUTFIT_BEACH_3 RETURN HASH("CC_OUTFIT_BEACH_3")
|
|
CASE CC_OUTFIT_BEACH_4 RETURN HASH("CC_OUTFIT_BEACH_4")
|
|
CASE CC_OUTFIT_BEACH_5 RETURN HASH("CC_OUTFIT_BEACH_5")
|
|
CASE CC_OUTFIT_BEACH_6 RETURN HASH("CC_OUTFIT_BEACH_6")
|
|
CASE CC_OUTFIT_BEACH_7 RETURN HASH("CC_OUTFIT_BEACH_7")
|
|
CASE CC_OUTFIT_SMART_0 RETURN HASH("CC_OUTFIT_SMART_0")
|
|
CASE CC_OUTFIT_SMART_1 RETURN HASH("CC_OUTFIT_SMART_1")
|
|
CASE CC_OUTFIT_SMART_2 RETURN HASH("CC_OUTFIT_SMART_2")
|
|
CASE CC_OUTFIT_SMART_3 RETURN HASH("CC_OUTFIT_SMART_3")
|
|
CASE CC_OUTFIT_SMART_4 RETURN HASH("CC_OUTFIT_SMART_4")
|
|
CASE CC_OUTFIT_SMART_5 RETURN HASH("CC_OUTFIT_SMART_5")
|
|
CASE CC_OUTFIT_SMART_6 RETURN HASH("CC_OUTFIT_SMART_6")
|
|
CASE CC_OUTFIT_SMART_7 RETURN HASH("CC_OUTFIT_SMART_7")
|
|
CASE CC_OUTFIT_SPORTY_0 RETURN HASH("CC_OUTFIT_SPORTY_0")
|
|
CASE CC_OUTFIT_SPORTY_1 RETURN HASH("CC_OUTFIT_SPORTY_1")
|
|
CASE CC_OUTFIT_SPORTY_2 RETURN HASH("CC_OUTFIT_SPORTY_2")
|
|
CASE CC_OUTFIT_SPORTY_3 RETURN HASH("CC_OUTFIT_SPORTY_3")
|
|
CASE CC_OUTFIT_SPORTY_4 RETURN HASH("CC_OUTFIT_SPORTY_4")
|
|
CASE CC_OUTFIT_SPORTY_5 RETURN HASH("CC_OUTFIT_SPORTY_5")
|
|
CASE CC_OUTFIT_SPORTY_6 RETURN HASH("CC_OUTFIT_SPORTY_6")
|
|
CASE CC_OUTFIT_SPORTY_7 RETURN HASH("CC_OUTFIT_SPORTY_7")
|
|
CASE CC_OUTFIT_ECCENTRIC_0 RETURN HASH("CC_OUTFIT_ECCENTRIC_0")
|
|
CASE CC_OUTFIT_ECCENTRIC_1 RETURN HASH("CC_OUTFIT_ECCENTRIC_1")
|
|
CASE CC_OUTFIT_ECCENTRIC_2 RETURN HASH("CC_OUTFIT_ECCENTRIC_2")
|
|
CASE CC_OUTFIT_ECCENTRIC_3 RETURN HASH("CC_OUTFIT_ECCENTRIC_3")
|
|
CASE CC_OUTFIT_ECCENTRIC_4 RETURN HASH("CC_OUTFIT_ECCENTRIC_4")
|
|
CASE CC_OUTFIT_ECCENTRIC_5 RETURN HASH("CC_OUTFIT_ECCENTRIC_5")
|
|
CASE CC_OUTFIT_ECCENTRIC_6 RETURN HASH("CC_OUTFIT_ECCENTRIC_6")
|
|
CASE CC_OUTFIT_ECCENTRIC_7 RETURN HASH("CC_OUTFIT_ECCENTRIC_7")
|
|
CASE CC_OUTFIT_CASUAL_0 RETURN HASH("CC_OUTFIT_CASUAL_0")
|
|
CASE CC_OUTFIT_CASUAL_1 RETURN HASH("CC_OUTFIT_CASUAL_1")
|
|
CASE CC_OUTFIT_CASUAL_2 RETURN HASH("CC_OUTFIT_CASUAL_2")
|
|
CASE CC_OUTFIT_CASUAL_3 RETURN HASH("CC_OUTFIT_CASUAL_3")
|
|
CASE CC_OUTFIT_CASUAL_4 RETURN HASH("CC_OUTFIT_CASUAL_4")
|
|
CASE CC_OUTFIT_CASUAL_5 RETURN HASH("CC_OUTFIT_CASUAL_5")
|
|
CASE CC_OUTFIT_CASUAL_6 RETURN HASH("CC_OUTFIT_CASUAL_6")
|
|
CASE CC_OUTFIT_CASUAL_7 RETURN HASH("CC_OUTFIT_CASUAL_7")
|
|
|
|
#IF FEATURE_GEN9_STANDALONE
|
|
CASE CC_OUTFIT_EXECUTIVE_0 RETURN HASH("CC_OUTFIT_EXECUTIVE_0")
|
|
CASE CC_OUTFIT_EXECUTIVE_1 RETURN HASH("CC_OUTFIT_EXECUTIVE_1")
|
|
CASE CC_OUTFIT_EXECUTIVE_2 RETURN HASH("CC_OUTFIT_EXECUTIVE_2")
|
|
|
|
CASE CC_OUTFIT_GUNRUNNER_0 RETURN HASH("CC_OUTFIT_GUNRUNNER_0")
|
|
CASE CC_OUTFIT_GUNRUNNER_1 RETURN HASH("CC_OUTFIT_GUNRUNNER_1")
|
|
CASE CC_OUTFIT_GUNRUNNER_2 RETURN HASH("CC_OUTFIT_GUNRUNNER_2")
|
|
|
|
CASE CC_OUTFIT_NIGHTCLUB_0 RETURN HASH("CC_OUTFIT_NIGHTCLUB_0")
|
|
CASE CC_OUTFIT_NIGHTCLUB_1 RETURN HASH("CC_OUTFIT_NIGHTCLUB_1")
|
|
CASE CC_OUTFIT_NIGHTCLUB_2 RETURN HASH("CC_OUTFIT_NIGHTCLUB_2")
|
|
|
|
CASE CC_OUTFIT_BIKER_0 RETURN HASH("CC_OUTFIT_BIKER_0")
|
|
CASE CC_OUTFIT_BIKER_1 RETURN HASH("CC_OUTFIT_BIKER_1")
|
|
CASE CC_OUTFIT_BIKER_2 RETURN HASH("CC_OUTFIT_BIKER_2")
|
|
#ENDIF
|
|
ENDSWITCH
|
|
|
|
ASSERTLN("Unexpected CHARACTER_CREATOR_OUTFIT ", ENUM_TO_INT(outfit))
|
|
RETURN 0
|
|
ENDFUNC
|
|
|
|
STRUCT MP_CHARACTER_CREATOR_OUTFIT
|
|
INT iComponentDrawableID[NUM_PED_COMPONENTS]
|
|
INT iComponentTextureID[NUM_PED_COMPONENTS]
|
|
|
|
TATTOO_NAME_ENUM aTattoo
|
|
ENDSTRUCT
|
|
|
|
|
|
STRUCT MP_CHARACTER_CREATOR_PROP
|
|
INT iPropDrawableID
|
|
INT iPropTextureID
|
|
ENDSTRUCT
|
|
|
|
/// PURPOSE: Returns the name of the creator outfit
|
|
FUNC STRING GET_CHARACTER_CREATOR_OUTFIT_NAME(CHARACTER_CREATOR_OUTFIT eOutfit, BOOL bIsMale)
|
|
SWITCH eOutfit
|
|
CASE CC_OUTFIT_STREET_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR0"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR1"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR2"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR3"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR4"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR5"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR6"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_STREET_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_STR7"
|
|
ELSE
|
|
RETURN "FACE_O_F_STR7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS0"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS1"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS2"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS3"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS4"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS5"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS7"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_FLASHY_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_FLS6"
|
|
ELSE
|
|
RETURN "FACE_O_F_FLS7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR0"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR1"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR2"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR3"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR4"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR5"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR6"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_PARTY_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_PAR7"
|
|
ELSE
|
|
RETURN "FACE_O_F_PAR7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA0"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA1"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA2"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA3"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA4"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA5"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA6"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BEACH_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_BEA7"
|
|
ELSE
|
|
RETURN "FACE_O_F_BEA7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA0"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA1"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA2"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA3"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA4"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA5"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA6"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SMART_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SMA7"
|
|
ELSE
|
|
RETURN "FACE_O_F_SMA7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO0"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO1"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO2"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO3"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO4"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO5"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO6"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_SPORTY_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_SPO7"
|
|
ELSE
|
|
RETURN "FACE_O_F_SPO7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC0"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC0"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC1"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC2"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC3"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC4"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC5"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC6"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_ECCENTRIC_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_ECC7"
|
|
ELSE
|
|
RETURN "FACE_O_F_ECC7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_0
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS0"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS0"
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_1
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS1"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS1"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_2
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS2"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_3
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS3"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_4
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS4"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS3"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_5
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS5"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_6
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS6"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_CASUAL_7
|
|
IF bIsMale
|
|
RETURN "FACE_O_M_CAS7"
|
|
ELSE
|
|
RETURN "FACE_O_F_CAS7"
|
|
ENDIF
|
|
BREAK
|
|
|
|
#IF FEATURE_GEN9_STANDALONE
|
|
CASE CC_OUTFIT_EXECUTIVE_0
|
|
IF bIsMale
|
|
RETURN "CLO_BUS_M_O_12"
|
|
ELSE
|
|
RETURN "CLO_BUS_F_O_16"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_1
|
|
IF bIsMale
|
|
RETURN "CLO_HILF_O_7"
|
|
ELSE
|
|
RETURN "CLO_BUS_F_O_6"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_2
|
|
IF bIsMale
|
|
RETURN "CLO_EXM_OB_14"
|
|
ELSE
|
|
RETURN "CLO_EXF_OB_8"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_0
|
|
IF bIsMale
|
|
RETURN "CLO_GRM_O_7"
|
|
ELSE
|
|
RETURN "CLO_GRF_O_7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_1
|
|
IF bIsMale
|
|
RETURN "CLO_GRM_O_4"
|
|
ELSE
|
|
RETURN "CLO_GRF_O_4"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_2
|
|
IF bIsMale
|
|
RETURN "CLO_GRM_O_2"
|
|
ELSE
|
|
RETURN "CLO_GRF_O_2"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_0
|
|
IF bIsMale
|
|
RETURN "CLO_BUS_M_O_1"
|
|
ELSE
|
|
RETURN "CLO_HP_F_O_5"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_1
|
|
IF bIsMale
|
|
RETURN "O_FMM_P8"
|
|
ELSE
|
|
RETURN "CLO_HP_F_O_7"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_2
|
|
IF bIsMale
|
|
RETURN "O_FMM_P5"
|
|
ELSE
|
|
RETURN "O_FMF_S8"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_0
|
|
IF bIsMale
|
|
RETURN "CLO_BIM_O_17"
|
|
ELSE
|
|
RETURN "CLO_BIF_O_15"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_1
|
|
IF bIsMale
|
|
RETURN "CLO_BIM_O_16"
|
|
ELSE
|
|
RETURN "CLO_BIF_O_16"
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_2
|
|
IF bIsMale
|
|
RETURN "CLO_BIM_O_14"
|
|
ELSE
|
|
RETURN "CLO_BIF_O_14"
|
|
ENDIF
|
|
BREAK
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
|
|
RETURN ""
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_CHARACTER_CREATOR_OUTFIT_HASH(CHARACTER_CREATOR_OUTFIT eOutfit, BOOL bIsMale)
|
|
|
|
UNUSED_PARAMETER(eOutfit)
|
|
UNUSED_PARAMETER(bIsMale)
|
|
|
|
#IF FEATURE_GEN9_STANDALONE
|
|
SWITCH eOutfit
|
|
CASE CC_OUTFIT_EXECUTIVE_0
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BUSI_M_OUTFIT_12")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_BUSI_F_OUTFIT_16")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_1
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BUSI2_M_OUTFIT_7")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_BUSI_F_OUTFIT_6")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_2
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_EXEC_M_OUTFIT_14")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_EXEC_F_OUTFIT_8")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_0
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_GR_M_OUTFIT_7")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_GR_F_OUTFIT_7")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_1
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_GR_M_OUTFIT_4")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_GR_F_OUTFIT_4")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_2
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_GR_M_OUTFIT_2")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_GR_F_OUTFIT_2")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_0
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BUSI_M_OUTFIT_1")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_HIPS_F_OUTFIT_5")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_1
|
|
IF bIsMale
|
|
// Standard Outfit, no DLC hash
|
|
ELSE
|
|
RETURN HASH("DLC_MP_HIPS_F_OUTFIT_7")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_2
|
|
IF bIsMale
|
|
// Standard Outfit, no DLC hash
|
|
ELSE
|
|
// Standard Outfit, no DLC hash
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_0
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BIKER_M_OUTFIT_17")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_BIKER_F_OUTFIT_15")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_1
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BIKER_M_OUTFIT_16")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_BIKER_F_OUTFIT_16")
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_2
|
|
IF bIsMale
|
|
RETURN HASH("DLC_MP_BIKER_M_OUTFIT_14")
|
|
ELSE
|
|
RETURN HASH("DLC_MP_BIKER_F_OUTFIT_14")
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
#ENDIF
|
|
|
|
RETURN -1
|
|
ENDFUNC
|
|
|
|
PROC GET_CHARACTER_CREATOR_OUTFIT(MODEL_NAMES ePedModel, CHARACTER_CREATOR_OUTFIT eOutfit, MP_CHARACTER_CREATOR_OUTFIT &sCharacterOutfitData)
|
|
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sCharacterOutfitData.iComponentDrawableID[i] = -1
|
|
ENDREPEAT
|
|
|
|
sCharacterOutfitData.aTattoo = INVALID_TATTOO
|
|
|
|
scrShopPedComponent componentItem
|
|
|
|
SWITCH eOutfit
|
|
|
|
// Casual
|
|
CASE CC_OUTFIT_CASUAL_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 9
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 11
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 14
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 6
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 15
|
|
sCharacterOutfitData.aTattoo = TATTOO_MP_FM_MTD_14
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 11
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET001), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 10
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 2
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 13
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 5
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 14
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB8_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 7
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET011), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 15
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB5_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET006), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 11
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 3
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 11
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_CASUAL_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 7
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
// Street
|
|
|
|
CASE CC_OUTFIT_STREET_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 12
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 2
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_JBIB_1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 1
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 1
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 4
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 9
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 12
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 12
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 12
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 1
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 2
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 14
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_STREET_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 7
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LTS_F_LEGS_0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_PILOT_F_FEET_0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 14
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB4_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 6
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS0_0)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS1_0)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB0_0)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 14
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 11
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB1_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 7
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 1
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_FLASHY_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS0_0)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_TEETH1_2)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS4_1)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB1_0)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB9_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_ACCS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = TATTOO_MP_FM_MTD_46
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 11
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 14
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_JBIB2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_019"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUS2_F_ACCS0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_F_Tshirt_008"), TATTOO_MP_FM_F)
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_ACCS6_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 7
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_TEETH0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB5_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB3_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_ACCS1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB4_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB11_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_022"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_PARTY_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET0_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_ACCS2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_000"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 7
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB2_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_FEET0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_JBIB1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET009), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_JBIB2_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_JBIB1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_FEET0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_JBIB1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR107), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET008), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB5_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR2_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 14
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 13
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_JBIB2_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_FEET0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_JBIB1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 3
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR2_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_FEET0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 7
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET001), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_JBIB2_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 7
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_TEETH0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR104), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET007), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 10
|
|
sCharacterOutfitData.aTattoo = TATTOO_MP_FM_FTD_67
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_BEACH_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 10
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_FEET0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB11_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_009"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_LOWR10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_FEET003), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_ACCS0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS0_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET1_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH0_12), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_ACCS3_13), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB2_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_TEETH0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB3_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 11
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS2_5 ), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB5_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 12
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH0_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB3_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB4_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS1_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS2_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 2
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_14), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB5_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB1_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SMART_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS1_8)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET1_6)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_13)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB2_9)), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_TEETH0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB3_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 15
|
|
sCharacterOutfitData.aTattoo = TATTOO_MP_FM_MTD_2
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 7
|
|
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 6
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 13
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 4
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 10
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 13
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB5_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 7
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 5
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 0
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_ACCS4_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 4
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 13
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 9
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 10
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_M_LOWR2_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 7
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB6_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 4
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_SPORTY_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 9 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 10
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 7
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB7_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_ACCS0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_14), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_TEETH0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 8
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS0_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_13), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB4_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_3
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_JBIB2_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_010"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_4
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS0_12), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_ACCS1_12), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 14
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 15
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_5
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS2_12), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 14
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_6
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_ACCS1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_JBIB2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH0_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB2_11), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE CC_OUTFIT_ECCENTRIC_7
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_LEGS0_10), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_ACCS2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.aTattoo = GET_TATTOO_ENUM_FROM_DLC_HASH(HASH("FM_Hip_M_Tshirt_006"), TATTOO_MP_FM)
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 8
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BEACH_F_TEETH1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB2_8), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
|
|
#IF FEATURE_GEN9_STANDALONE
|
|
CASE CC_OUTFIT_EXECUTIVE_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH1_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_ACCS1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB4_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_LEGS1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_LEGS1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 10 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS4_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_JBIB3_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET0_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 12
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_JBIB1_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_EXECUTIVE_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_M_LEGS_8_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 4
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_TEETH_1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI2_M_ACCS1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_M_JBIB_10_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_F_LEGS_4_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_F_FEET1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_TEETH_3_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_SPECIAL_6_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_F_JBIB_8_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_LEGS_4_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_FEET_2_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_JBIB_2_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_LEGS_4_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_FEET_2_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_JBIB_2_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_TORSO_2_13), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_LEGS_1_17), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_FEET_1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_M_TEETH_0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_JBIB_2_14), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_TORSO_13_13), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_LEGS_1_17), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_FEET_1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_APA_F_TEETH_0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_JBIB_14_14), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_GUNRUNNER_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_TORSO_5_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_LEGS_1_16), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_FEET_1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_M_JBIB_14_23), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_TORSO_5_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_LEGS_1_17), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_FEET_1_6), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_GR_F_JBIB_20_23), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_LEGS1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_FEET0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_TEETH4_15), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_ACCS1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BUSI_M_JBIB1_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_F_LEGS2_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB6_4), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 10
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 2
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 5 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_LEGS2_12), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_FEET1_5), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_TEETH0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_ACCS1_7), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_F_JBIB0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_NIGHTCLUB_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 8 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 14 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 8
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 2 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 11
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 6
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 12 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 1
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 5
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = 1 sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = 1
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_0
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_TORSO_3_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 2
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_M_FEET_3_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_EXEC_M_SPECIAL_2_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_M_JBIB_24_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_IE_F_TORSO_0_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_STUNT_F_LEGS_3_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 2
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_F_JBIB_17_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_1
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 4
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HIPS_M_FEET1_9), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 15 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_M_JBIB_27_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 13 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = 3 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_F_DECL_1_0), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_F_JBIB_32_1), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
CASE CC_OUTFIT_BIKER_2
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 4 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LOW2_M_LEGS_0_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 7 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 15
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_VAL_M_ACCS2_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_M_JBIB_10_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ELSE
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_BERD] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TORSO] = 6 sCharacterOutfitData.iComponentTextureID[PED_COMP_TORSO] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_F_LEGS_0_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_LEG] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_LEG] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_FEET] = 11 sCharacterOutfitData.iComponentTextureID[PED_COMP_FEET] = 3
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_TEETH] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_TEETH] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_LOW2_F_SPECIAL_3_2), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL] = componentItem.m_textureIndex
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_SPECIAL2] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_SPECIAL2] = 0
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_DECL] = 0 sCharacterOutfitData.iComponentTextureID[PED_COMP_DECL] = 0
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_BIKER_F_JBIB_10_3), componentItem)
|
|
sCharacterOutfitData.iComponentDrawableID[PED_COMP_JBIB] = componentItem.m_drawableIndex sCharacterOutfitData.iComponentTextureID[PED_COMP_JBIB] = componentItem.m_textureIndex
|
|
ENDIF
|
|
BREAK
|
|
#ENDIF
|
|
|
|
ENDSWITCH
|
|
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Populates the struct passed with the correct hat data
|
|
PROC GET_CHARACTER_CREATOR_HAT(MODEL_NAMES ePedModel, INT iHat, MP_CHARACTER_CREATOR_PROP &sCharacterPropData)
|
|
|
|
scrShopPedProp propItem
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SWITCH iHat
|
|
CASE 0 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 1 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 2 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 3 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 4 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 5 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 6
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 7
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_0_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 8 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 9 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 10 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 11 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 12 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 13 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 14 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 15 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 16 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 17 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 18 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 19 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 20
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_2_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 21 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 22 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 23 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 24 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 25 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 26 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 6 BREAK
|
|
CASE 27 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 28 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 29 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 30
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD0_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 31
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD0_4), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 32
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD0_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 33
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 34
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD1_4), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 35
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_HEAD1_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 36
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 37
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT0_8), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 38
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT0_10), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 39
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 40
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT1_8), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 41
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_HAT1_10), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 42
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_1_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 43
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_1_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 44
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_HAT_1_7), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH iHat
|
|
CASE 0 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 1 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 2 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 3 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 4 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 5 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 6 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 7 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 8 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 9 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 10 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 11 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 12 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 13 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 14 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 15 sCharacterPropData.iPropDrawableID = 11 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 16
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 17
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT0_8), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 18 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 19 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 20
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_HAT_1_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 21 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 22 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 23 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 24 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 25 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 26 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 27 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 28 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 29 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 30
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD2_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 31
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD2_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 32
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD2_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 33
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD3_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 34
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD3_1), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 35
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD3_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 36
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD4_1), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 37
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_HEAD4_6), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 38
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT0_10), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 39
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 40
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT1_8), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 41
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_HAT1_10), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 42
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_HAT_0_1), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 43
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_HAT_0_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 44
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_HAT_0_6), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// Populates the passed struct with the details of the glasses
|
|
PROC GET_CHARACTER_CREATOR_GLASSES(MODEL_NAMES ePedModel, INT iGlasses, MP_CHARACTER_CREATOR_PROP &sCharacterPropData)
|
|
|
|
scrShopPedProp propItem
|
|
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
|
|
SWITCH iGlasses
|
|
CASE 0 sCharacterPropData.iPropDrawableID = 1 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 1
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_EYES0_1), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 2
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_M_EYES0_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 3 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 4 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 5 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 6 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 7 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 8 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 9 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 10 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 11 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 12 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 13 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 14 sCharacterPropData.iPropDrawableID = 5 sCharacterPropData.iPropTextureID = 6 BREAK
|
|
CASE 15 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 16 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 17 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 18 sCharacterPropData.iPropDrawableID = 8 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 19 sCharacterPropData.iPropDrawableID = 8 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 20 sCharacterPropData.iPropDrawableID = 8 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 21 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 22 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 23 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 24 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 25 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 26 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 6 BREAK
|
|
CASE 27 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 28 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 29 sCharacterPropData.iPropDrawableID = 12 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 30 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 31 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 32 sCharacterPropData.iPropDrawableID = 13 sCharacterPropData.iPropTextureID = 6 BREAK
|
|
CASE 33 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 34 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 35 sCharacterPropData.iPropDrawableID = 15 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 36
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 37
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES0_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 38
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES0_7), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 39
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 40
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES1_1), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 41
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_M_GLASSES1_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 42
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 43
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_0_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 44
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_0_7), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 45
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 46
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_1_6), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 47
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_M_GLASSES_1_7), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
ENDSWITCH
|
|
ELSE
|
|
SWITCH iGlasses
|
|
CASE 0 sCharacterPropData.iPropDrawableID = 0 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 1 sCharacterPropData.iPropDrawableID = 0 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 2 sCharacterPropData.iPropDrawableID = 0 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 3 sCharacterPropData.iPropDrawableID = 1 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 4 sCharacterPropData.iPropDrawableID = 1 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 5 sCharacterPropData.iPropDrawableID = 1 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 6 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 7 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 8 sCharacterPropData.iPropDrawableID = 2 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 9 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 10 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 11 sCharacterPropData.iPropDrawableID = 3 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 12 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 13 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 14 sCharacterPropData.iPropDrawableID = 4 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 15 sCharacterPropData.iPropDrawableID = 6 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 16
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_EYES0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 17
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_EYES0_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 18 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 19 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 20 sCharacterPropData.iPropDrawableID = 7 sCharacterPropData.iPropTextureID = 5 BREAK
|
|
CASE 21 sCharacterPropData.iPropDrawableID = 8 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 22
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_EYES1_4), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 23
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BEACH_F_EYES1_6), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 24 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 25 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 26 sCharacterPropData.iPropDrawableID = 9 sCharacterPropData.iPropTextureID = 3 BREAK
|
|
CASE 27 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 28 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 6 BREAK
|
|
CASE 29 sCharacterPropData.iPropDrawableID = 10 sCharacterPropData.iPropTextureID = 7 BREAK
|
|
CASE 30 sCharacterPropData.iPropDrawableID = 11 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 31 sCharacterPropData.iPropDrawableID = 11 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 32 sCharacterPropData.iPropDrawableID = 11 sCharacterPropData.iPropTextureID = 2 BREAK
|
|
CASE 33 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 0 BREAK
|
|
CASE 34 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 1 BREAK
|
|
CASE 35 sCharacterPropData.iPropDrawableID = 14 sCharacterPropData.iPropTextureID = 4 BREAK
|
|
CASE 36
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 37
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES0_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 38
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES0_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 39
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 40
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES1_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 41
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_BUSINESS_F_GLASSES1_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 42
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_0_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 43
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_0_2), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 44
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_0_5), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 45
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_1_0), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 46
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_1_3), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
CASE 47
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HIPS_F_GLASSES_1_7), propItem)
|
|
sCharacterPropData.iPropDrawableID = propItem.m_propIndex sCharacterPropData.iPropTextureID = propItem.m_textureIndex
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
|
|
|
|
FUNC BOOL PRELOAD_MP_OUTFIT(MP_OUTFITS_APPLY_DATA &sApplyOutfitData,MP_OUTFITS_DATA &sOutfitsData)
|
|
|
|
INT i
|
|
SWITCH sApplyOutfitData.ePreloadStage
|
|
|
|
CASE POS_REQUEST
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sOutfitsData.iComponentDrawableID[i] != -1
|
|
SET_PED_PRELOAD_VARIATION_DATA(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), sOutfitsData.iComponentDrawableID[i], sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
IF sOutfitsData.iPropDrawableID[i] != -1
|
|
AND sOutfitsData.iPropDrawableID[i] != 255
|
|
SET_PED_PRELOAD_PROP_DATA(sApplyOutfitData.pedID, INT_TO_ENUM(PED_PROP_POSITION, i), sOutfitsData.iPropDrawableID[i], sOutfitsData.iPropTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
sApplyOutfitData.ePreloadStage = POS_CHECK
|
|
RETURN FALSE
|
|
BREAK
|
|
|
|
CASE POS_CHECK
|
|
|
|
IF NOT HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(sApplyOutfitData.pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF NOT HAS_PED_PRELOAD_PROP_DATA_FINISHED(sApplyOutfitData.pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
sApplyOutfitData.ePreloadStage = POS_LOADED
|
|
RETURN TRUE
|
|
BREAK
|
|
|
|
DEFAULT
|
|
RETURN FALSE
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
CDEBUG3LN(DEBUG_MISSION,"[RBJ] - ped_component_public - PRELOAD_MP_OUTFIT - Hit DEFAULT in SWITCH and returning FALSE - sApplyOutfitData.ePreloadStage = ", enum_to_int(sApplyOutfitData.ePreloadStage))
|
|
RETURN FALSE
|
|
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PRELOAD_MP_HEIST_MASK_DATA(MP_OUTFITS_APPLY_DATA &sApplyOutfitData)
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - sApplyOutfitData.ePreloadStage = ", sApplyOutfitData.ePreloadStage)
|
|
|
|
MP_OUTFITS_DATA sOutfitsData
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sOutfitsData.iComponentDrawableID[i] = -1
|
|
sOutfitsData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
sOutfitsData.iPropDrawableID[i] = -1
|
|
sOutfitsData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
|
|
SWITCH sApplyOutfitData.ePreloadStage
|
|
|
|
CASE POS_REQUEST
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_REQUEST.")
|
|
|
|
IF GET_MP_HEIST_MASK_DATA(sOutfitsData, sApplyOutfitData, TRUE)
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sOutfitsData.iComponentDrawableID[i] != -1
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_REQUEST - SET_PED_PRELOAD_VARIATION_DATA - PED_COMPONENT: ", i)
|
|
SET_PED_PRELOAD_VARIATION_DATA(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), sOutfitsData.iComponentDrawableID[i], sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
IF sOutfitsData.iPropDrawableID[i] != -1
|
|
AND sOutfitsData.iPropDrawableID[i] != 255
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_REQUEST - SET_PED_PRELOAD_PROP_DATA - PED_PROP_POSITION: ", i)
|
|
SET_PED_PRELOAD_PROP_DATA(sApplyOutfitData.pedID, INT_TO_ENUM(PED_PROP_POSITION, i), sOutfitsData.iPropDrawableID[i], sOutfitsData.iPropTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
ELSE
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_REQUEST - GET_MP_HEIST_MASK_DATA - FAILED - Returning FALSE for another pass.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
PRINTLN("[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_REQUEST setting to POS_CHECK - Returning FALSE for another pass back into POS_CHECK.")
|
|
sApplyOutfitData.ePreloadStage = POS_CHECK
|
|
RETURN FALSE
|
|
|
|
CASE POS_CHECK
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_CHECK.")
|
|
|
|
IF NOT HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(sApplyOutfitData.pedID)
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_MASK_DATA - not HAS_PED_PRELOAD_VARIATION_DATA_FINISHED - ", enum_to_int(sApplyOutfitdata.eOutfit))
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_CHECK - HAS_PED_PRELOAD_VARIATION_DATA_FINISHED - FAILED on: ", ENUM_TO_INT(sApplyOutfitData.eOutfit), " - Returning FALSE.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF NOT HAS_PED_PRELOAD_PROP_DATA_FINISHED(sApplyOutfitData.pedID)
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_MASK_DATA - not HAS_PED_PRELOAD_PROP_DATA_FINISHED - ", enum_to_int(sApplyOutfitdata.eOutfit))
|
|
CDEBUG3LN(DEBUG_MISSION, "[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_CHECK - HAS_PED_PRELOAD_VARIATION_DATA_FINISHED - FAILED on: ", ENUM_TO_INT(sApplyOutfitData.eOutfit), " - Returning FALSE.")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// RELEASE_PED_COMPONENT_PRELOAD_VARIATION_DATA - Use after SET_PED_COMPONENT_VARIATION has been called to release the preload budget from memory.
|
|
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_MASK_DATA: LOADED.")
|
|
PRINTLN("[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - POS_CHECK setting to POS_LOADED and returning TRUE.")
|
|
sApplyOutfitData.ePreloadStage = POS_LOADED
|
|
RETURN TRUE
|
|
|
|
DEFAULT
|
|
PRINTLN("[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - Hit DEFAULT in SWITCH and returning FALSE - sApplyOutfitData.ePreloadStage = ", sApplyOutfitData.ePreloadStage)
|
|
RETURN FALSE
|
|
|
|
ENDSWITCH
|
|
|
|
PRINTLN("[RBJ] - ped_component_public - PRELOAD_MP_HEIST_MASK_DATA - Return FALSE beneath SWITCH - Something has gone wrong here...")
|
|
RETURN FALSE
|
|
|
|
ENDFUNC
|
|
|
|
/// PURPOSE: Simple preload check for specific peds used in corona during global outfit changes
|
|
FUNC BOOL HAS_PED_MP_OUTFIT_PRELOADED(PED_INDEX aPed)
|
|
IF HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(aPed)
|
|
AND HAS_PED_PRELOAD_PROP_DATA_FINISHED(aPed)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC RELEASE_PRELOADED_MP_HEIST_OUTFIT(PED_INDEX pedID)
|
|
RELEASE_PED_PRELOAD_VARIATION_DATA(pedID)
|
|
RELEASE_PED_PRELOAD_PROP_DATA(pedID)
|
|
ENDPROC
|
|
|
|
ENUM MP_HEIST_TYPE_ENUM
|
|
MP_HEIST_ORNATE,
|
|
MP_HEIST_PRISON,
|
|
MP_HEIST_BIOLAB
|
|
ENDENUM
|
|
|
|
|
|
STRUCT MP_HEIST_GEAR_DATA
|
|
INT iComponentDrawableID
|
|
INT iComponentTextureID
|
|
PED_COMPONENT eComponentType
|
|
|
|
INT iComponentDrawableID2
|
|
INT iComponentTextureID2
|
|
PED_COMPONENT eComponentType2
|
|
|
|
INT iPropDrawableID
|
|
INT iPropTextureID
|
|
PED_PROP_POSITION ePropPosition
|
|
ENDSTRUCT
|
|
|
|
FUNC STRING GET_MP_HEIST_GEAR_NAME(MP_HEIST_GEAR_ENUM eGear)
|
|
|
|
SWITCH eGear
|
|
CASE HEIST_GEAR_WHITE_HOCKEY_MASK RETURN "HG_W_HOMASK" BREAK // Hockey Mask
|
|
CASE HEIST_GEAR_BALACLAVA RETURN "HG_BALACLAVA" BREAK // Balaclava
|
|
CASE HEIST_GEAR_SPORTS_BAG RETURN "HG_SPORTSBAG" BREAK // Sports Bad
|
|
CASE HEIST_GEAR_REBREATHER RETURN "HG_REBREATH" BREAK // Rebreather
|
|
CASE HEIST_GEAR_NIGHTVISION RETURN "HG_NVGS" BREAK // Nightvision Goggles
|
|
CASE HEIST_GEAR_EARPIECE_1 RETURN "HG_EARPIECE1" BREAK // Earpiece 1
|
|
CASE HEIST_GEAR_EARPIECE_2 RETURN "HG_EARPIECE2" BREAK // Earpiece 2
|
|
CASE HEIST_GEAR_EARPIECE_3 RETURN "HG_EARPIECE3" BREAK // Earpiece 3
|
|
CASE HEIST_GEAR_RADIO_HEADSET RETURN "HG_RADIOHEAD" BREAK // Radio Headset
|
|
CASE HEIST_GEAR_PARACHUTE RETURN "HG_PARACHUTE" BREAK // Parachute
|
|
CASE HEIST_GEAR_GAS_MASK RETURN "HG_GASMASK" BREAK // Gas Mask
|
|
CASE HEIST_GEAR_CORONA_MASK
|
|
INT iTeam
|
|
IF NOT IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
iTeam = GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen
|
|
ELSE
|
|
iTeam = g_FMMC_STRUCT.iTestMyTeam
|
|
ENDIF
|
|
RETURN GET_MP_OUTFIT_MASK_NAME(INT_TO_ENUM(MP_OUTFIT_MASK_ENUM, GET_LOCAL_DEFAULT_MASK(iTeam)))
|
|
BREAK // Corona Mask or Helmet
|
|
CASE HEIST_GEAR_DUFFEL_BLACK RETURN "HG_DUFFEL_B" BREAK // Black duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_FULL RETURN "HG_DUFFEL_B" BREAK // Black duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM RETURN "HG_DUFFEL_B" BREAK // Black duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM_FULL RETURN "HG_DUFFEL_B" BREAK // Black duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLUE RETURN "HG_DUFFEL_BU" BREAK // Blue duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_FULL RETURN "HG_DUFFEL_BU" BREAK // Blue duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM RETURN "HG_DUFFEL_BU" BREAK // Blue duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM_FULL RETURN "HG_DUFFEL_BU" BREAK // Blue duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW RETURN "HG_DUFFEL_Y" BREAK // Yellow duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_FULL RETURN "HG_DUFFEL_Y" BREAK // Yellow duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM RETURN "HG_DUFFEL_Y" BREAK // Yellow duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM_FULL RETURN "HG_DUFFEL_Y" BREAK // Yellow duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_RED RETURN "HG_DUFFEL_R" BREAK // Red duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_RED_FULL RETURN "HG_DUFFEL_R" BREAK // Red duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM RETURN "HG_DUFFEL_R" BREAK // Red duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM_FULL RETURN "HG_DUFFEL_R" BREAK // Red duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_GREEN RETURN "HG_DUFFEL_G" BREAK // Green duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_FULL RETURN "HG_DUFFEL_G" BREAK // Green duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM RETURN "HG_DUFFEL_G" BREAK // Green duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM_FULL RETURN "HG_DUFFEL_G" BREAK // Green duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE RETURN "HG_DUFFEL_O" BREAK // Orange duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_FULL RETURN "HG_DUFFEL_O" BREAK // Orange duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM RETURN "HG_DUFFEL_O" BREAK // Orange duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM_FULL RETURN "HG_DUFFEL_O" BREAK // Orange duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE RETURN "HG_DUFFEL_P" BREAK // Purple duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_FULL RETURN "HG_DUFFEL_P" BREAK // Purple duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM RETURN "HG_DUFFEL_P" BREAK // Purple duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM_FULL RETURN "HG_DUFFEL_P" BREAK // Purple duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PINK RETURN "HG_DUFFEL_PI" BREAK // Pink duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PINK_FULL RETURN "HG_DUFFEL_PI" BREAK // Pink duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM RETURN "HG_DUFFEL_PI" BREAK // Pink duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM_FULL RETURN "HG_DUFFEL_PI" BREAK // Pink duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR RETURN "HG_DUFFEL_BUG" BREAK // Bugstar duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_FULL RETURN "HG_DUFFEL_BUG" BREAK // Bugstar duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM RETURN "HG_DUFFEL_BUG" BREAK // Bugstar duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM_FULL RETURN "HG_DUFFEL_BUG" BREAK // Bugstar duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_CELEB RETURN "HG_DUFFEL_CLEB" BREAK // Celeb duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_FULL RETURN "HG_DUFFEL_CLEB" BREAK // Celeb duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM RETURN "HG_DUFFEL_CLEB" BREAK // Celeb duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM_FULL RETURN "HG_DUFFEL_CLEB" BREAK // Celeb duffel bag
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1 RETURN "HG_DUFFEL_C1" BREAK // Camo duffel bag//Direct 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_FULL RETURN "HG_DUFFEL_C1" BREAK // Camo duffel bag//Direct 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM RETURN "HG_DUFFEL_C1" BREAK // Camo duffel bag//Direct 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM_FULL RETURN "HG_DUFFEL_C1" BREAK // Camo duffel bag//Direct 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2 RETURN "HG_DUFFEL_C2" BREAK // Camo duffel bag//Direct 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_FULL RETURN "HG_DUFFEL_C2" BREAK // Camo duffel bag//Direct 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM RETURN "HG_DUFFEL_C2" BREAK // Camo duffel bag//Direct 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM_FULL RETURN "HG_DUFFEL_C2" BREAK // Camo duffel bag//Direct 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3 RETURN "HG_DUFFEL_C3" BREAK // Camo duffel bag//Stealth 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_FULL RETURN "HG_DUFFEL_C3" BREAK // Camo duffel bag//Stealth 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM RETURN "HG_DUFFEL_C3" BREAK // Camo duffel bag//Stealth 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM_FULL RETURN "HG_DUFFEL_C3" BREAK // Camo duffel bag//Stealth 2
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4 RETURN "HG_DUFFEL_C4" BREAK // Camo duffel bag//Stealth 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_FULL RETURN "HG_DUFFEL_C4" BREAK // Camo duffel bag//Stealth 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM RETURN "HG_DUFFEL_C4" BREAK // Camo duffel bag//Stealth 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM_FULL RETURN "HG_DUFFEL_C4" BREAK // Camo duffel bag//Stealth 1
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5 RETURN "HG_DUFFEL_C5" BREAK // Camo duffel bag//Direct 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_FULL RETURN "HG_DUFFEL_C5" BREAK // Camo duffel bag//Direct 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM RETURN "HG_DUFFEL_C5" BREAK // Camo duffel bag//Direct 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM_FULL RETURN "HG_DUFFEL_C5" BREAK // Camo duffel bag//Direct 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6 RETURN "HG_DUFFEL_C6" BREAK // Camo duffel bag//Stealth 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_FULL RETURN "HG_DUFFEL_C6" BREAK // Camo duffel bag//Stealth 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM RETURN "HG_DUFFEL_C6" BREAK // Camo duffel bag//Stealth 3
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM_FULL RETURN "HG_DUFFEL_C6" BREAK // Camo duffel bag//Stealth 3
|
|
CASE HEIST_GEAR_IAA_BADGE RETURN "HG_IAA_BADGE" BREAK // IAA Badge
|
|
ENDSWITCH
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
PRINTLN("GET_MP_HEIST_GEAR_NAME - Enum missing tell Kenneth R. - ", eGear)
|
|
SCRIPT_ASSERT("GET_MP_HEIST_GEAR_NAME - Enum missing tell Kenneth R.")
|
|
#ENDIF
|
|
|
|
RETURN "INVALID"
|
|
ENDFUNC
|
|
|
|
|
|
FUNC BOOL GET_MP_HEIST_GEAR_DATA(ped_index pedID,MP_OUTFITS_DATA &sOutfitsData, MP_HEIST_GEAR_ENUM eGear,MP_OUTFIT_MASK_ENUM &eMask)
|
|
|
|
scrShopPedComponent componentItem
|
|
scrShopPedProp propItem
|
|
|
|
bool bMale = false
|
|
if GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
bMale = true
|
|
endif
|
|
|
|
SWITCH eGear
|
|
CASE HEIST_GEAR_WHITE_HOCKEY_MASK
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = 4
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = 0
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_BALACLAVA
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_2_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_2_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_SPORTS_BAG
|
|
|
|
IF bMale
|
|
// Bigger bag for armour
|
|
//Commenting out the other bag as Alt ID's should automatically be added by character code
|
|
// IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL2) > 0
|
|
// GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_HAND_7_0), componentItem)
|
|
// ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_HAND_5_0), componentItem)
|
|
// ENDIF
|
|
ELSE
|
|
// IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL2) > 0
|
|
// GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_HAND_7_0), componentItem)
|
|
// ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_HAND_5_0), componentItem)
|
|
// ENDIF
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_REBREATHER
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_1_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_1_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_NIGHTVISION
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_HAIR_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAIR] = componentItem.m_textureIndex
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_HAIR_0_0), componentItem)
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAIR] = componentItem.m_textureIndex
|
|
ENDIF
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_EARPIECE_1
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_EAR0_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EAR0_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EARS] = propItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_EARPIECE_2
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_EAR1_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EAR1_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EARS] = propItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_EARPIECE_3
|
|
IF bMale
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_M_EAR2_0), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_PROP(ENUM_TO_INT(DLC_MP_HEIST_F_EAR2_0), propItem)
|
|
ENDIF
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = propItem.m_propIndex
|
|
sOutfitsData.iPropTextureID[ANCHOR_EARS] = propItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_RADIO_HEADSET
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = 19
|
|
sOutfitsData.iPropTextureID[ANCHOR_HEAD] = 0
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_PARACHUTE
|
|
sOutfitsData.iPropDrawableID[PED_COMP_HAND] = 6
|
|
sOutfitsData.iPropTextureID[PED_COMP_HAND] = 0
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_GAS_MASK
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_BERD_3_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_BERD_3_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_BERD] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_BERD] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_CORONA_MASK
|
|
INT iTeam
|
|
IF NOT IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
iTeam = GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen
|
|
ELSE
|
|
iTeam = g_FMMC_STRUCT.iTestMyTeam
|
|
ENDIF
|
|
|
|
eMask = INT_TO_ENUM(MP_OUTFIT_MASK_ENUM, GET_LOCAL_DEFAULT_MASK(iTeam))
|
|
|
|
MP_OUTFITS_APPLY_DATA sApplyOutfitData
|
|
sApplyOutfitdata.eMask = eMask
|
|
sApplyOutfitdata.pedID = pedID
|
|
if GET_MP_HEIST_MASK_DATA(sOutfitsData, sApplyOutfitData)
|
|
RETURN TRUE
|
|
endif
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_1), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_1), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_2), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_2), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_3), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_3), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_4), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_4), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_5), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_5), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_6), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_6), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_7), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_7), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_8), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_8), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_9), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_9), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_10), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_10), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_11), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_11), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_12), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_12), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_13), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_13), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_13), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_13), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_13), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_13), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_13), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_13), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_14), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_14), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_0_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_0_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_1_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_1_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_2_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_2_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM_FULL
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_M_HAND_3_15), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_H3_F_HAND_3_15), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_HAND] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_HAND] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
CASE HEIST_GEAR_IAA_BADGE
|
|
IF bMale
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_M_TEETH_3_0), componentItem)
|
|
ELSE
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_X17_F_TEETH_3_0), componentItem)
|
|
ENDIF
|
|
sOutfitsData.iComponentDrawableID[PED_COMP_TEETH] = componentItem.m_drawableIndex
|
|
sOutfitsData.iComponentTextureID[PED_COMP_TEETH] = componentItem.m_textureIndex
|
|
RETURN TRUE
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
CPRINTLN(DEBUG_MISSION,"GET_MP_HEIST_GEAR_DATA - No data grabbed return false tell Craig V [Gear: ", enum_to_int(eGear),"]")
|
|
#ENDIF
|
|
|
|
RETURN FALSE
|
|
|
|
ENDFUNC
|
|
|
|
FUNC INT GET_MP_HEIST_GEAR_NAME_HASH(MODEL_NAMES ePedModel, MP_HEIST_GEAR_ENUM eGear)
|
|
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
SWITCH eGear
|
|
CASE HEIST_GEAR_WHITE_HOCKEY_MASK BREAK
|
|
CASE HEIST_GEAR_BALACLAVA BREAK
|
|
CASE HEIST_GEAR_SPORTS_BAG BREAK
|
|
CASE HEIST_GEAR_REBREATHER RETURN ENUM_TO_INT(DLC_MP_HEIST_M_BERD_1_0) BREAK
|
|
CASE HEIST_GEAR_NIGHTVISION RETURN ENUM_TO_INT(DLC_MP_HEIST_M_BERD_0_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_1 RETURN ENUM_TO_INT(DLC_MP_HEIST_M_EAR0_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_2 RETURN ENUM_TO_INT(DLC_MP_HEIST_M_EAR1_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_3 RETURN ENUM_TO_INT(DLC_MP_HEIST_M_EAR2_0) BREAK
|
|
CASE HEIST_GEAR_RADIO_HEADSET BREAK
|
|
CASE HEIST_GEAR_PARACHUTE BREAK
|
|
CASE HEIST_GEAR_GAS_MASK RETURN ENUM_TO_INT(DLC_MP_HEIST_M_BERD_3_0) BREAK
|
|
CASE HEIST_GEAR_CORONA_MASK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_IAA_BADGE BREAK
|
|
ENDSWITCH
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
SWITCH eGear
|
|
CASE HEIST_GEAR_WHITE_HOCKEY_MASK BREAK
|
|
CASE HEIST_GEAR_BALACLAVA BREAK
|
|
CASE HEIST_GEAR_SPORTS_BAG BREAK
|
|
CASE HEIST_GEAR_REBREATHER RETURN ENUM_TO_INT(DLC_MP_HEIST_F_BERD_1_0) BREAK
|
|
CASE HEIST_GEAR_NIGHTVISION RETURN ENUM_TO_INT(DLC_MP_HEIST_F_BERD_0_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_1 RETURN ENUM_TO_INT(DLC_MP_HEIST_F_EAR0_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_2 RETURN ENUM_TO_INT(DLC_MP_HEIST_F_EAR1_0) BREAK
|
|
CASE HEIST_GEAR_EARPIECE_3 RETURN ENUM_TO_INT(DLC_MP_HEIST_F_EAR2_0) BREAK
|
|
CASE HEIST_GEAR_RADIO_HEADSET BREAK
|
|
CASE HEIST_GEAR_PARACHUTE BREAK
|
|
CASE HEIST_GEAR_GAS_MASK RETURN ENUM_TO_INT(DLC_MP_HEIST_F_BERD_3_0) BREAK
|
|
CASE HEIST_GEAR_CORONA_MASK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLACK_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BLUE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_YELLOW_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_RED_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_GREEN_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_ORANGE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PURPLE_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_PINK_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_BUGSTAR_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CELEB_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_1_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_2_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_3_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_4_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_5_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6 BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_FULL BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM BREAK
|
|
CASE HEIST_GEAR_DUFFEL_CAMO_6_ARM_FULL BREAK
|
|
CASE HEIST_GEAR_IAA_BADGE BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
RETURN -1
|
|
ENDFUNC
|
|
|
|
PROC DISABLE_NIGHT_VISION_CONTROLLER(BOOL bDisable)
|
|
IF (g_bDisableNightVisionController != bDisable)
|
|
CPRINTLN(DEBUG_SHOPS, "<", GET_THIS_SCRIPT_NAME(), "> DISABLE_NIGHT_VISION_CONTROLLER set to ", bDisable, ".")
|
|
DEBUG_PRINTCALLSTACK()
|
|
g_bDisableNightVisionController = bDisable
|
|
|
|
IF bDisable
|
|
g_tl64ScriptNameDisabledNightVisionController = GET_THIS_SCRIPT_NAME()
|
|
ELSE
|
|
g_tl64ScriptNameDisabledNightVisionController = ""
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
FUNC BOOL IS_NIGHT_VISION_CONTROLLER_DISABLED()
|
|
IF g_bDisableNightVisionController
|
|
AND NOT IS_STRING_NULL_OR_EMPTY(g_tl64ScriptNameDisabledNightVisionController)
|
|
AND GET_NUMBER_OF_THREADS_RUNNING_THE_SCRIPT_WITH_THIS_HASH(GET_HASH_KEY(g_tl64ScriptNameDisabledNightVisionController)) = 0
|
|
CASSERTLN(DEBUG_SHOPS, " script \"", g_tl64ScriptNameDisabledNightVisionController, "\" terminated without cleaning up the call to disable night vision controller.")
|
|
DISABLE_NIGHT_VISION_CONTROLLER(FALSE)
|
|
ENDIF
|
|
|
|
RETURN g_bDisableNightVisionController
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_SAFE_TO_USE_NIGHT_VISION_CONTROLLER()
|
|
IF IS_AIMING_THROUGH_SNIPER_SCOPE(PLAYER_PED_ID())
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
// These are not needed any more as we now have a safe way to interact with the controller when on mission
|
|
// Also when on mission we don't control the visual aid directly any more
|
|
|
|
// IF g_bDisableNightVisionController_for_BVS1_and_DAWN_RAID
|
|
// OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_SLASHERS(g_FMMC_STRUCT.iAdversaryModeType)
|
|
// IF (IS_THIS_ROCKSTAR_MISSION_NEW_VS_BVS1(g_FMMC_STRUCT.iRootContentIDHash)
|
|
// OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_DAWN_RAID(g_FMMC_STRUCT.iAdversaryModeType)
|
|
// OR IS_THIS_ROCKSTAR_MISSION_NEW_VS_SLASHERS(g_FMMC_STRUCT.iAdversaryModeType))
|
|
// RETURN FALSE
|
|
// ENDIF
|
|
// ENDIF
|
|
//
|
|
// IF NETWORK_IS_ACTIVITY_SESSION()
|
|
// AND IS_THIS_ROCKSTAR_MISSION_GANGOPS_MISSION_OF_TYPE(ciGANGOPS_FLOW_MISSION_PREDATOR)
|
|
// RETURN FALSE
|
|
// ENDIF
|
|
|
|
|
|
IF GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].bPlayerUsingTurretCam
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
IF IS_PLAYER_SWITCH_IN_PROGRESS()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - IS_PLAYER_SWITCH_IN_PROGRESS")
|
|
RETURN FALSE
|
|
ENDIF
|
|
/*REMOVED AS THIS SHOULD DISABLE THE ON/OFF CHECKS DONE HERE INSTEAD
|
|
IF IS_NIGHT_VISION_CONTROLLER_DISABLED()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - IS_NIGHT_VISION_CONTROLLER_DISABLED")
|
|
RETURN FALSE
|
|
ENDIF*/
|
|
IF IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet,iABI_BLOCK_TOGGLING_NIGHTVISION_FILTER)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - iABI_BLOCK_TOGGLING_NIGHTVISION_FILTER")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_DEACTIVATE_NIGHTVISION)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - iABI_DEACTIVATE_NIGHTVISION")
|
|
RETURN FALSE
|
|
ENDIF
|
|
IF IS_NIGHTVISION_DEACTIVATED_VIA_PIM()
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_DEFAULT)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - IS_NIGHTVISION_DEACTIVATED_VIA_PIM")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
IF (g_sShopSettings.iCount_BrowsingInShop > 0)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - IS_PLAYER_BROWSING_ITEMS_IN_ANY_SHOP")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
IF NETWORK_IS_GAME_IN_PROGRESS()
|
|
INT iTeam = GET_PLAYER_TEAM(PLAYER_ID())
|
|
IF iTeam >= 0 AND iTeam < FMMC_MAX_TEAMS
|
|
IF IS_BIT_SET(g_FMMC_STRUCT.sFMMCEndConditions[iTeam].iTeamBitset2, ciBS2_DISABLE_INTERACTION_MENU_NIGHTVISION)
|
|
CPRINTLN(DEBUG_PED_COMP, " MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - ciBS2_DISABLE_INTERACTION_MENU_NIGHTVISION")
|
|
RETURN FALSE
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF IS_PLAYER_IN_CORONA()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_HEIST_CONTENT - IS_SAFE_TO_TURN_ON_NIGHTVISION = FALSE - IS_PLAYER_IN_CORONA true")
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
STRUCT MANAGE_VISUALAID_CONTENT_STRUCT
|
|
INT iCloneBerdID = 0
|
|
INT iCloneHeadID = -1000
|
|
BOOL bBrowsing = FALSE
|
|
VISUAL_AID_MODES eCloneVisualAid = VISUALAID_DEFAULT
|
|
BOOL bDisabledViaPIM = FALSE
|
|
BOOL bSwitchInProgress = FALSE
|
|
SCRIPT_TIMER stDisabledViaPIMTimer
|
|
INT iNightVisSoundID = -1, iThermalSoundID = -1
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
BOOL bDrawDebug = FALSE
|
|
TEXT_LABEL_31 tl31VisualAid
|
|
SCRIPT_TIMER stReinitDebugText
|
|
#ENDIF
|
|
ENDSTRUCT
|
|
|
|
FUNC INT GET_ALTERNATE_PROP_HASH(INT iItemHash)
|
|
INT iAltProp
|
|
INT iRetNameHash, iRetPropEnum, iRetPropPos
|
|
INT iAltPropCount = GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iItemHash)
|
|
|
|
REPEAT iAltPropCount iAltProp
|
|
GET_VARIANT_PROP(iItemHash, iAltProp, iRetNameHash, iRetPropEnum, iRetPropPos)
|
|
// Alternative DLC item
|
|
IF iRetNameHash != 0 AND iRetNameHash != 1849449579 // 1849449579 = "0"
|
|
RETURN iRetNameHash
|
|
// Forced on-disk item
|
|
ELSE
|
|
//eItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, iRetPropEnum)
|
|
ENDIF
|
|
iAltProp = iAltPropCount+1// Bail
|
|
ENDREPEAT
|
|
RETURN 0
|
|
ENDFUNC
|
|
///
|
|
PROC MANAGE_VISUALAID_CONTENT(MANAGE_VISUALAID_CONTENT_STRUCT &sData, INT iBerdID = -1, INT iHeadPropID = -1)
|
|
|
|
BOOL bDeactivateNightVision = FALSE
|
|
INT iDLCNameHash, iDLCNameHashHEAD
|
|
|
|
IF NOT IS_NIGHT_VISION_CONTROLLER_DISABLED()
|
|
AND NOT IS_PLAYER_SPECTATING(PLAYER_ID())
|
|
AND IS_SAFE_TO_USE_NIGHT_VISION_CONTROLLER()
|
|
PED_INDEX pNightVisionPed = PLAYER_PED_ID()
|
|
IF DOES_ENTITY_EXIST(g_pShopClonePed)
|
|
AND IS_ENTITY_A_PED(g_pShopClonePed)
|
|
AND NOT IS_PED_INJURED(g_pShopClonePed)
|
|
pNightVisionPed = g_pShopClonePed
|
|
ENDIF
|
|
|
|
INT iTempIDCheck, iTempIDCheck2
|
|
|
|
IF NOT IS_PED_INJURED(pNightVisionPed)
|
|
IF iBerdID = -1
|
|
iTempIDCheck = ((GET_PED_DRAWABLE_VARIATION(pNightVisionPed, PED_COMP_BERD) * 1000)+(GET_PED_TEXTURE_VARIATION(pNightVisionPed, PED_COMP_BERD)))
|
|
ELSE
|
|
iTempIDCheck = iBerdID
|
|
ENDIF
|
|
IF iHeadPropID = -1
|
|
iTempIDCheck2 = ((GET_PED_PROP_INDEX(pNightVisionPed, ANCHOR_HEAD) * 1000)+(GET_PED_PROP_TEXTURE_INDEX(pNightVisionPed, ANCHOR_HEAD)))
|
|
ELSE
|
|
iTempIDCheck2 = iHeadPropID
|
|
ENDIF
|
|
ENDIF
|
|
|
|
VISUAL_AID_MODES eTempVisualAid = GET_PLAYER_VISUAL_AID_OVERRIDE()
|
|
|
|
BOOL bTempDisabledViaPIM = IS_NIGHTVISION_DEACTIVATED_VIA_PIM()
|
|
BOOL bTempSwitchInProgress = IS_PLAYER_SWITCH_IN_PROGRESS()
|
|
|
|
IF sData.iCloneBerdID != iTempIDCheck
|
|
OR sData.iCloneHeadID != iTempIDCheck2
|
|
OR IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_DO_GEAR_BERD_CHECK)
|
|
OR sData.bBrowsing != (g_sShopSettings.iCount_BrowsingInShop > 0)
|
|
OR sData.eCloneVisualAid != eTempVisualAid
|
|
OR sData.bDisabledViaPIM != bTempDisabledViaPIM
|
|
OR sData.bSwitchInProgress != bTempSwitchInProgress
|
|
bDeactivateNightVision = TRUE
|
|
|
|
BOOL bFoundVisAidCondition = FALSE
|
|
IF sData.iCloneBerdID != iTempIDCheck
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - UPDATE - sData.iCloneBerdID != iTempIDCheck")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF sData.iCloneHeadID != iTempIDCheck2
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - sData.iCloneHeadID != iTempIDCheck2")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_DO_GEAR_BERD_CHECK)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_DO_GEAR_BERD_CHECK)")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF sData.bBrowsing != (g_sShopSettings.iCount_BrowsingInShop > 0)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - sData.bBrowsing != (g_sShopSettings.iCount_BrowsingInShop > 0)")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF sData.eCloneVisualAid != eTempVisualAid
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - sData.eCloneVisualAid != eTempVisualAid")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF sData.bDisabledViaPIM != bTempDisabledViaPIM
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - sData.bDisabledViaPIM != bTempDisabledViaPIM")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF sData.bSwitchInProgress != bTempSwitchInProgress
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - sData.bSwitchInProgress != bTempSwitchInProgress")
|
|
bFoundVisAidCondition = TRUE
|
|
ENDIF
|
|
IF NOT bFoundVisAidCondition
|
|
CASSERTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT UPDATE - bDeactivateNightVision = TRUE, iTempIDCheck:", iTempIDCheck, ", iTempIDCheck2:", iTempIDCheck2, ", eTempVisualAid:", GET_VISUAL_AID_MODE_NAME(eTempVisualAid))
|
|
ENDIF
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(pNightVisionPed, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(pNightVisionPed, PED_COMP_BERD))
|
|
iDLCNameHashHEAD = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(pNightVisionPed, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pNightVisionPed, ANCHOR_HEAD))
|
|
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_NIGHT)
|
|
OR (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_THERMAL)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sData.tl31VisualAid = "update one"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
IF IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
IF NOT (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_THERMAL)
|
|
IF NOT GET_REQUESTINGNIGHTVISION()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting player visual aid override NIGHT_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_NIGHT, GET_PLAYER_VISUAL_AID_SOUND())
|
|
IF (sData.iNightVisSoundID = -1)
|
|
sData.iNightVisSoundID = GET_SOUND_ID()
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
AND GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - nightvision override while wearing ALT helmet (visor up)")
|
|
|
|
INT iAltNameHash = GET_ALTERNATE_PROP_HASH(iDLCNameHashHEAD)
|
|
IF iAltNameHash != 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
scrShopPedProp componentItem
|
|
GET_SHOP_PED_PROP(iAltNameHash, componentItem)
|
|
|
|
SAFE_SET_PROP(pNightVisionPed,
|
|
INT_TO_ENUM(PED_PROP_POSITION, componentItem.m_eAnchorPoint),
|
|
componentItem.m_propIndex,
|
|
componentItem.m_textureIndex)
|
|
STORE_HELMET_VISOR_PROP_INDICES(pNightVisionPed, componentItem.m_propIndex, componentItem.m_textureIndex, FALSE)
|
|
SET_PLAYER_VISOR_PREFERENCE(FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - nightvision override but not wearing ALT helmet (visor down)")
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF NOT GET_USINGSEETHROUGH()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting player visual aid override THERMAL_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_THERMAL, GET_PLAYER_VISUAL_AID_SOUND())
|
|
IF (sData.iThermalSoundID = -1)
|
|
sData.iThermalSoundID = GET_SOUND_ID()
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
AND GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - thermalvision override while wearing ALT helmet (visor up)")
|
|
|
|
INT iAltNameHash = GET_ALTERNATE_PROP_HASH(iDLCNameHashHEAD)
|
|
IF iAltNameHash != 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iAltNameHash, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
scrShopPedProp componentItem
|
|
GET_SHOP_PED_PROP(iAltNameHash, componentItem)
|
|
|
|
SAFE_SET_PROP(pNightVisionPed,
|
|
INT_TO_ENUM(PED_PROP_POSITION, componentItem.m_eAnchorPoint),
|
|
componentItem.m_propIndex,
|
|
componentItem.m_textureIndex)
|
|
STORE_HELMET_VISOR_PROP_INDICES(pNightVisionPed, componentItem.m_propIndex, componentItem.m_textureIndex, FALSE)
|
|
SET_PLAYER_VISOR_PREFERENCE(FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - thermalvision override but not wearing ALT helmet (visor down)")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
bDeactivateNightVision = FALSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - NIGHTVISION - bDeactivateNightVision = FALSE (BERD)")
|
|
ENDIF
|
|
ELIF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
AND IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sData.tl31VisualAid = "update two"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
IF IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting player visual aid override turned off, bMaintainOverride:", GET_STRING_FROM_BOOL(g_sFMMCVisualAid.bMaintainOverride))
|
|
ENDIF
|
|
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - off override while wearing ALT helmet (visor up)")
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - off override but not wearing ALT helmet (visor down)")
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT iAltNameHash = GET_ALTERNATE_PROP_HASH(iDLCNameHashHEAD)
|
|
IF iAltNameHash != 0
|
|
scrShopPedProp componentItem
|
|
GET_SHOP_PED_PROP(iAltNameHash, componentItem)
|
|
|
|
SAFE_SET_PROP(pNightVisionPed,
|
|
INT_TO_ENUM(PED_PROP_POSITION, componentItem.m_eAnchorPoint),
|
|
componentItem.m_propIndex,
|
|
componentItem.m_textureIndex)
|
|
STORE_HELMET_VISOR_PROP_INDICES(pNightVisionPed, componentItem.m_propIndex, componentItem.m_textureIndex, FALSE)
|
|
SET_PLAYER_VISOR_PREFERENCE(TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sData.tl31VisualAid = "update three"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
IF IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
AND NOT IS_AN_AIRLOCK_STRAND_TRANSITION_RUNNING()
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF NOT GET_REQUESTINGNIGHTVISION()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting BERD varition with restriction tag NIGHT_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_NIGHT, VISUALAID_SOUND_ON)
|
|
ENDIF
|
|
ELSE
|
|
IF NOT GET_USINGSEETHROUGH()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting BERD varition with restriction tag THERMAL_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_THERMAL, VISUALAID_SOUND_ON)
|
|
ENDIF
|
|
ENDIF
|
|
bDeactivateNightVision = FALSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - NIGHTVISION - bDeactivateNightVision = FALSE (BERD)")
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_PROP))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_PROP))
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sData.tl31VisualAid = "update four"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
IF IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_PROP))
|
|
IF NOT GET_REQUESTINGNIGHTVISION()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting ANCHOR_HEAD varition with restriction tag NIGHT_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_NIGHT,VISUALAID_SOUND_ON)
|
|
ENDIF
|
|
ELSE
|
|
IF NOT GET_USINGSEETHROUGH()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting ANCHOR_HEAD varition with restriction tag THERMAL_VISION turned on - ENABLE_NIGHTVISION(VISUALAID_NIGHT)")
|
|
ENABLE_NIGHTVISION(VISUALAID_THERMAL, VISUALAID_SOUND_ON)
|
|
ENDIF
|
|
ENDIF
|
|
bDeactivateNightVision = FALSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - NIGHTVISION - bDeactivateNightVision = FALSE (ANCHOR_HEAD)")
|
|
ENDIF
|
|
ELIF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
sData.tl31VisualAid = "update five"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
IF IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - Setting player visual aid override turned off, bMaintainOverride:", GET_STRING_FROM_BOOL(g_sFMMCVisualAid.bMaintainOverride))
|
|
ENDIF
|
|
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - off override while wearing ALT helmet (visor up)")
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - off override but not wearing ALT helmet (visor down)")
|
|
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
INT iAltNameHash = GET_ALTERNATE_PROP_HASH(iDLCNameHashHEAD)
|
|
IF iAltNameHash != 0
|
|
scrShopPedProp componentItem
|
|
GET_SHOP_PED_PROP(iAltNameHash, componentItem)
|
|
|
|
SAFE_SET_PROP(pNightVisionPed,
|
|
INT_TO_ENUM(PED_PROP_POSITION, componentItem.m_eAnchorPoint),
|
|
componentItem.m_propIndex,
|
|
componentItem.m_textureIndex)
|
|
STORE_HELMET_VISOR_PROP_INDICES(pNightVisionPed, componentItem.m_propIndex, componentItem.m_textureIndex, FALSE)
|
|
SET_PLAYER_VISOR_PREFERENCE(TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
ELSE
|
|
sData.tl31VisualAid = "update six"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
ENDIF
|
|
|
|
sData.iCloneBerdID = iTempIDCheck
|
|
sData.iCloneHeadID = iTempIDCheck2
|
|
sData.bBrowsing = (g_sShopSettings.iCount_BrowsingInShop > 0)
|
|
sData.eCloneVisualAid = eTempVisualAid
|
|
sData.bDisabledViaPIM = bTempDisabledViaPIM
|
|
sData.bSwitchInProgress = bTempSwitchInProgress
|
|
ENDIF
|
|
|
|
// Turn nightvision off if required
|
|
IF (GET_REQUESTINGNIGHTVISION() OR GET_USINGSEETHROUGH())
|
|
IF bDeactivateNightVision
|
|
OR NOT IS_SAFE_TO_TURN_ON_NIGHTVISION()
|
|
OR (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - NIGHT_VISION turned off")
|
|
CDEBUG3LN(DEBUG_PED_COMP, "IS_SAFE_TO_TURN_ON_NIGHTVISION: FALSE - switch in progress: ", IS_PLAYER_SWITCH_IN_PROGRESS(), ", NV controller disabled: ", IS_NIGHT_VISION_CONTROLLER_DISABLED(), ", AMB Deactivate NV: ", IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_DEACTIVATE_NIGHTVISION), ", PIM deactivate NV: ", IS_NIGHTVISION_DEACTIVATED_VIA_PIM(), ", browsing: ", (g_sShopSettings.iCount_BrowsingInShop > 0))
|
|
|
|
IF NOT IS_BIT_SET(MPGlobalsAmbience.iAmbBitSet, iABI_BLOCK_TOGGLING_NIGHTVISION_FILTER)
|
|
BOOL bCached_DeactivateNightvision = IS_NIGHTVISION_DEACTIVATED_VIA_PIM()
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
ENABLE_NIGHTVISION(VISUALAID_OFF, GET_PLAYER_VISUAL_AID_SOUND())
|
|
ELSE
|
|
ENABLE_NIGHTVISION(VISUALAID_OFF, VISUALAID_SOUND_ON)
|
|
ENDIF
|
|
|
|
iDLCNameHashHEAD = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(pNightVisionPed, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pNightVisionPed, ANCHOR_HEAD))
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
DEACTIVATE_NIGHTVISION_VIA_PIM(bCached_DeactivateNightvision)
|
|
ENDIF
|
|
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_NIGHT)
|
|
OR (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_THERMAL)
|
|
IF NOT IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - reset the Visual Aid override from ", GET_VISUAL_AID_MODE_NAME(GET_PLAYER_VISUAL_AID_OVERRIDE()), ", deactivated")
|
|
g_sFMMCVisualAid.eOverride = VISUALAID_DEFAULT
|
|
ENDIF
|
|
ELIF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
IF NOT IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - reset the Visual Aid override from ", GET_VISUAL_AID_MODE_NAME(GET_PLAYER_VISUAL_AID_OVERRIDE()), ", deactivated")
|
|
g_sFMMCVisualAid.eOverride = VISUALAID_DEFAULT
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
ELSE
|
|
sData.tl31VisualAid = "BLOCKED"
|
|
REINIT_NET_TIMER(sData.stReinitDebugText)
|
|
#ENDIF
|
|
|
|
ENDIF
|
|
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_NIGHT)
|
|
OR (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_THERMAL)
|
|
IF NOT IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
IF NOT IS_SAFE_TO_USE_NIGHT_VISION_CONTROLLER()
|
|
g_sFMMCVisualAid.eOverride = VISUALAID_DEFAULT
|
|
CPRINTLN(DEBUG_PED_COMP, "MANAGE_VISUALAID_CONTENT - reset the Visual Aid override, not safe")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_NIGHT)
|
|
AND (sData.iNightVisSoundID != -1)
|
|
IF HAS_SOUND_FINISHED(sData.iNightVisSoundID)
|
|
AND HAS_SOUND_FINISHED(sData.iThermalSoundID)
|
|
IF (GET_PLAYER_VISUAL_AID_SOUND() = VISUALAID_SOUND_ALT)
|
|
PLAY_SOUND_FRONTEND(sData.iNightVisSoundID, "Nightvision_Loop", "GTAO_Vision_Modes_SoundSet", FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
IF (sData.iThermalSoundID != -1)
|
|
AND NOT HAS_SOUND_FINISHED(sData.iThermalSoundID)
|
|
STOP_SOUND(sData.iThermalSoundID)
|
|
RELEASE_SOUND_ID(sData.iThermalSoundID)
|
|
sData.iThermalSoundID = -1
|
|
ENDIF
|
|
ELIF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_THERMAL)
|
|
AND (sData.iThermalSoundID != -1)
|
|
IF HAS_SOUND_FINISHED(sData.iThermalSoundID)
|
|
AND HAS_SOUND_FINISHED(sData.iNightVisSoundID)
|
|
IF (GET_PLAYER_VISUAL_AID_SOUND() = VISUALAID_SOUND_ALT)
|
|
PLAY_SOUND_FRONTEND(sData.iThermalSoundID, "Thermal_Loop", "GTAO_Vision_Modes_SoundSet", FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
IF (sData.iNightVisSoundID != -1)
|
|
AND NOT HAS_SOUND_FINISHED(sData.iNightVisSoundID)
|
|
STOP_SOUND(sData.iNightVisSoundID)
|
|
RELEASE_SOUND_ID(sData.iNightVisSoundID)
|
|
sData.iNightVisSoundID = -1
|
|
ENDIF
|
|
ENDIF
|
|
ELSE
|
|
IF (sData.iNightVisSoundID != -1)
|
|
AND NOT HAS_SOUND_FINISHED(sData.iNightVisSoundID)
|
|
STOP_SOUND(sData.iNightVisSoundID)
|
|
RELEASE_SOUND_ID(sData.iNightVisSoundID)
|
|
sData.iNightVisSoundID = -1
|
|
ENDIF
|
|
IF (sData.iThermalSoundID != -1)
|
|
AND NOT HAS_SOUND_FINISHED(sData.iThermalSoundID)
|
|
STOP_SOUND(sData.iThermalSoundID)
|
|
RELEASE_SOUND_ID(sData.iThermalSoundID)
|
|
sData.iThermalSoundID = -1
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_OFF)
|
|
AND IS_VISUAL_AID_OVERRIDE_MAINTAINED()
|
|
DISABLE_CONTROL_ACTION(PLAYER_CONTROL, INPUT_SWITCH_VISOR)
|
|
|
|
ELIF (GET_PLAYER_VISUAL_AID_OVERRIDE() = VISUALAID_DEFAULT)
|
|
BOOL bToggleDeactivateNightvision = FALSE
|
|
IF IS_PED_IN_ANY_VEHICLE(PLAYER_PED_ID())
|
|
IF HAS_NET_TIMER_STARTED(sData.stDisabledViaPIMTimer)
|
|
PRINTLN("<NV_TOGGLE> player in vehicle, reset timer")
|
|
RESET_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ENDIF
|
|
ELIF NOT HAS_NET_TIMER_STARTED(sData.stDisabledViaPIMTimer)
|
|
IF IS_CONTROL_JUST_PRESSED(PLAYER_CONTROL, INPUT_SWITCH_VISOR)
|
|
PRINTLN("<NV_TOGGLE> timer off, JUST PRESSED")
|
|
REINIT_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ENDIF
|
|
ELSE
|
|
IF IS_CONTROL_PRESSED(PLAYER_CONTROL, INPUT_SWITCH_VISOR)
|
|
IF HAS_NET_TIMER_EXPIRED(sData.stDisabledViaPIMTimer, g_iFM_TOGGLE_VISUALAID_TIME_MS)
|
|
PED_INDEX pNightVisionPed = PLAYER_PED_ID()
|
|
IF DOES_ENTITY_EXIST(g_pShopClonePed)
|
|
AND IS_ENTITY_A_PED(g_pShopClonePed)
|
|
AND NOT IS_PED_INJURED(g_pShopClonePed)
|
|
pNightVisionPed = g_pShopClonePed
|
|
ENDIF
|
|
iDLCNameHashHEAD = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(pNightVisionPed, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pNightVisionPed, ANCHOR_HEAD))
|
|
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
PRINTLN("<NV_TOGGLE> timer on, TIMER EXPIRED ", GET_NET_TIMER_STRING(sData.stDisabledViaPIMTimer), " but helmet isnt a nighvision/thermal helmet")
|
|
REINIT_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ELIF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
PRINTLN("<NV_TOGGLE> timer on, TIMER EXPIRED ", GET_NET_TIMER_STRING(sData.stDisabledViaPIMTimer), " but helmet has alternate")
|
|
REINIT_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ELSE
|
|
PRINTLN("<NV_TOGGLE> timer on, TIMER EXPIRED ", GET_NET_TIMER_STRING(sData.stDisabledViaPIMTimer))
|
|
bToggleDeactivateNightvision = TRUE
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("<NV_TOGGLE> timer on, timer pending ", GET_NET_TIMER_STRING(sData.stDisabledViaPIMTimer))
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("<NV_TOGGLE> timer on, NOT PRESSED")
|
|
RESET_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF bToggleDeactivateNightvision
|
|
DEACTIVATE_NIGHTVISION_VIA_PIM(NOT IS_NIGHTVISION_DEACTIVATED_VIA_PIM())
|
|
RESET_NET_TIMER(sData.stDisabledViaPIMTimer)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
IF sData.bDrawDebug
|
|
PED_INDEX pNightVisionPed = PLAYER_PED_ID()
|
|
IF DOES_ENTITY_EXIST(g_pShopClonePed)
|
|
AND IS_ENTITY_A_PED(g_pShopClonePed)
|
|
AND NOT IS_PED_INJURED(g_pShopClonePed)
|
|
pNightVisionPed = g_pShopClonePed
|
|
ENDIF
|
|
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(pNightVisionPed, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(pNightVisionPed, PED_COMP_BERD))
|
|
iDLCNameHashHEAD = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pNightVisionPed), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(pNightVisionPed, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pNightVisionPed, ANCHOR_HEAD))
|
|
|
|
INT iRow = 0
|
|
VECTOR VecCoord = GET_PED_BONE_COORDS(pNightVisionPed, BONETAG_HEAD, <<0.0, 0.0, 0.0>>)
|
|
INT iRed = 0, iGreen = 0, iBlue = 255, iAlpha = 255
|
|
TEXT_LABEL_63 str = ""
|
|
HUD_COLOURS eHudColour = HUD_COLOUR_BLUE
|
|
IF GET_USINGSEETHROUGH()
|
|
eHudColour = HUD_COLOUR_PURE_WHITE
|
|
ENDIF
|
|
|
|
//
|
|
str = sData.tl31VisualAid
|
|
IF HAS_NET_TIMER_STARTED(sData.stReinitDebugText)
|
|
str += " "
|
|
str += GET_STRING_FROM_FLOAT(TO_FLOAT(GET_NET_TIMER_DIFFERENCE_WITH_CURRENT_TIME(sData.stReinitDebugText))/1000.0)
|
|
ENDIF
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
|
|
//
|
|
str = "override:"
|
|
str += GET_VISUAL_AID_MODE_NAME(GET_PLAYER_VISUAL_AID_OVERRIDE())
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
|
|
//
|
|
str = " "
|
|
IF g_sFMMCVisualAid.bMaintainOverride
|
|
str += "MAINTAIN, \""
|
|
ELSE
|
|
str += "no-maintain, \""
|
|
ENDIF
|
|
str += g_sFMMCVisualAid.tl31OverrideScriptName
|
|
str += "\""
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
|
|
//
|
|
str = " "
|
|
str += "useSound:"
|
|
str += GET_VISUAL_AID_SOUND_NAME(GET_PLAYER_VISUAL_AID_SOUND())
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
|
|
//
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
str = "NIGHT_VISION:"
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
str = "THERMAL_VISION:"
|
|
ELSE
|
|
str = "UNKNOWN_VISION:"
|
|
ENDIF
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
OR DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
str = "NIGHT_VISION:"
|
|
ELIF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_THERMAL_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
str = "THERMAL_VISION:"
|
|
ELSE
|
|
str = "UNKNOWN_VISION:"
|
|
ENDIF
|
|
IF GET_SHOP_PED_APPAREL_VARIANT_PROP_COUNT(iDLCNameHashHEAD) > 0
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHashHEAD, DLC_RESTRICTION_TAG_ALT_HELMET, ENUM_TO_INT(SHOP_PED_PROP))
|
|
str += "ALT helmet (visor up)"
|
|
ELSE
|
|
str += "NOT ALT helmet (visor down)"
|
|
ENDIF
|
|
ELSE
|
|
str += "no alt"
|
|
ENDIF
|
|
ELSE
|
|
str = "no visual mode"
|
|
ENDIF
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
|
|
//
|
|
str = "deactivated in pim:"
|
|
str += GET_STRING_FROM_BOOL(IS_NIGHTVISION_DEACTIVATED_VIA_PIM())
|
|
GET_HUD_COLOUR(eHudColour, iRed, iGreen, iBlue, iAlpha)
|
|
DRAW_DEBUG_TEXT_WITH_OFFSET(str, VecCoord, 000, iRow*10, iRed, iGreen, iBlue, iAlpha)
|
|
iRow++
|
|
ENDIF
|
|
#ENDIF
|
|
ENDPROC
|
|
|
|
PROC REMOVE_PED_MASK(PED_INDEX pedID)
|
|
|
|
SET_PED_COMPONENT_VARIATION(pedID, PED_COMP_BERD, 0, 0)
|
|
|
|
// Pogo glasses need to be tied to the pogo mask.
|
|
INT iDLCBerdHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_BERD), GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_BERD))
|
|
INT iDLCEyesHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pedID), ENUM_TO_INT(ANCHOR_EYES), GET_PED_PROP_INDEX(pedID, ANCHOR_EYES), GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_EYES))
|
|
|
|
IF iDLCBerdHash = HASH("DLC_MP_ARENA_M_BERD_13_0")
|
|
OR iDLCBerdHash = HASH("DLC_MP_ARENA_F_BERD_13_0")
|
|
// Force glasses on
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCEyesHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_PROP))
|
|
scrShopPedProp propItem
|
|
INIT_SHOP_PED_PROP(propItem)
|
|
IF iDLCBerdHash = HASH("DLC_MP_ARENA_M_BERD_13_0")
|
|
GET_SHOP_PED_QUERY_PROP(HASH("DLC_MP_ARENA_M_PEYES_0_0"), propItem)
|
|
ELSE
|
|
GET_SHOP_PED_QUERY_PROP(HASH("DLC_MP_ARENA_F_PEYES_0_0"), propItem)
|
|
ENDIF
|
|
SET_PED_PROP_INDEX(pedID, ANCHOR_EYES, propItem.m_propIndex, propItem.m_textureIndex)
|
|
ENDIF
|
|
ELSE
|
|
// Force glasses off
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCEyesHash, DLC_RESTRICTION_TAG_ARENA_DRAW_0, ENUM_TO_INT(SHOP_PED_PROP))
|
|
CLEAR_PED_PROP(pedID, ANCHOR_EYES)
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC REMOVE_MP_PED_SCUBA_TANK(PED_INDEX pedID)
|
|
IF IS_PED_WEARING_SCUBA_TANK(pedID)
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(pedID)
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(pedID, PED_COMP_SPECIAL, 15, 0)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PED_COMPONENT_VARIATION(pedID, PED_COMP_SPECIAL, 3, 0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC REMOVE_MP_HEIST_GEAR(PED_INDEX pedID, MP_HEIST_GEAR_ENUM eGear,int iplayerIndex = -1,MP_OUTFIT_MASK_ENUM eMask = OUTFIT_MASK_NONE)
|
|
DEBUG_PRINTCALLSTACK()
|
|
if iplayerIndex = -1
|
|
iPlayerIndex = NATIVE_TO_INT(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID) )
|
|
endif
|
|
|
|
bool bReApplyHair = FALSE
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
g_sOutfitsData.iComponentDrawableID[i] = -1
|
|
g_sOutfitsData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(g_sOutfitsData.iPropDrawableID) i
|
|
g_sOutfitsData.iPropDrawableID[i] = -1
|
|
g_sOutfitsData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(g_sOutfitsData.iDLCTattooOverlay) i
|
|
g_sOutfitsData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
|
|
BOOL bBerdSetTo0 = FALSE
|
|
|
|
IF GET_MP_HEIST_GEAR_DATA(pedID,g_sOutfitsData,eGear,eMask)
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF g_sOutfitsData.iComponentDrawableID[i] != -1
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i)) = g_sOutfitsData.iComponentDrawableID[i]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i)) = g_sOutfitsData.iComponentTextureID[i]
|
|
if i = enum_to_int(PED_COMP_HAIR)
|
|
bReApplyHair = TRUE
|
|
endif
|
|
IF i = ENUM_TO_INT(PED_COMP_BERD)
|
|
bBerdSetTo0 = TRUE
|
|
ENDIF
|
|
SET_PED_COMPONENT_VARIATION(pedID, int_to_enum(PED_COMPONENT,i), 0, 0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(g_sOutfitsData.iPropDrawableID) i
|
|
IF g_sOutfitsData.iPropDrawableID[i] != -1
|
|
and g_sOutfitsData.iPropDrawableID[i] != 255
|
|
IF GET_PED_PROP_INDEX(pedID, int_to_enum(PED_PROP_POSITION,i)) = g_sOutfitsData.iPropDrawableID[i]
|
|
AND GET_PED_PROP_TEXTURE_INDEX(pedID, int_to_enum(PED_PROP_POSITION,i)) = g_sOutfitsData.iPropTextureID[i]
|
|
CLEAR_PED_PROP(pedID, int_to_enum(PED_PROP_POSITION,i))
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Re-apply hair
|
|
IF bReApplyHair
|
|
IF NOT IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_HAIR, INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA, g_iPedComponentSlot)), FALSE)
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_MP_HEIST_GEAR][SET_PED_COMP_ITEM_CURRENT_MP]: MP_STAT_CHAR_FM_STORED_HAIRDO_SA ")
|
|
ELSE
|
|
SET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_HAIR, INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO, g_iPedComponentSlot)), FALSE)
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_MP_HEIST_GEAR][SET_PED_COMP_ITEM_CURRENT_MP]: MP_STAT_CHAR_FM_STORED_HAIRDO ")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF (eGear = HEIST_GEAR_NIGHTVISION)
|
|
IF bBerdSetTo0
|
|
IF iPlayerIndex != -1
|
|
and iPlayerIndex != native_to_int(player_ID()) //equal to player
|
|
if NETWORK_HAS_CACHED_PLAYER_HEAD_BLEND_DATA(INT_TO_PLAYERINDEX(iPlayerIndex))
|
|
CPRINTLN(DEBUG_PED_COMP, "[REMOVE_MP_HEIST_GEAR][NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA]: player index ",iPlayerIndex)
|
|
NETWORK_APPLY_CACHED_PLAYER_HEAD_BLEND_DATA(pedID,INT_TO_PLAYERINDEX(iPlayerIndex) )
|
|
endif
|
|
ELSE
|
|
RESET_PLAYER_HEAD_BLEND_TO_NORM(pedID)
|
|
endif
|
|
ENDIF
|
|
|
|
DISABLE_NIGHT_VISION_CONTROLLER(FALSE)
|
|
ENABLE_NIGHTVISION(VISUALAID_OFF)
|
|
ENDIF
|
|
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
///PURPOSE: checks if heist gear is equipped
|
|
/// PED_INDEX pedID - the ped your checking
|
|
/// MP_HEIST_GEAR_ENUM eGear - the gear enum your checking
|
|
/// MP_OUTFIT_MASK_ENUM eMask - If the gear your checking is HEIST_GEAR_CORONA_MASK you'll need to specify the mask
|
|
FUNC BOOL IS_MP_HEIST_GEAR_EQUIPPED(PED_INDEX pedID, MP_HEIST_GEAR_ENUM eGear,MP_OUTFIT_MASK_ENUM eMask = OUTFIT_MASK_NONE)
|
|
|
|
// To please the assert - url:bugstar:7458226
|
|
IF IS_PED_INJURED(pedID)
|
|
ENDIF
|
|
|
|
MP_OUTFITS_DATA sHeistGearData
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sHeistGearData.iComponentDrawableID[i] = -1
|
|
sHeistGearData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sHeistGearData.iPropDrawableID) i
|
|
sHeistGearData.iPropDrawableID[i] = -1
|
|
sHeistGearData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
|
|
//check a mask when a mask has been specified
|
|
if eGear = HEIST_GEAR_CORONA_MASK
|
|
and eMask != OUTFIT_MASK_NONE
|
|
if IS_MP_HEIST_MASK_EQUIPPED(pedID,eMask)
|
|
RETURN TRUE
|
|
endif
|
|
else
|
|
IF GET_MP_HEIST_GEAR_DATA(pedID,sHeistGearData,eGear,eMask)
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sHeistGearData.iComponentDrawableID[i] != -1
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i)) = sHeistGearData.iComponentDrawableID[i]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, int_to_enum(PED_COMPONENT,i)) = sHeistGearData.iComponentTextureID[i]
|
|
CPRINTLN(DEBUG_PED_COMP, "[IS_MP_HEIST_GEAR_EQUIPPED]Gear equipped: ",enum_to_int(egear))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sHeistGearData.iPropDrawableID) i
|
|
IF sHeistGearData.iPropDrawableID[i] != -1
|
|
and sHeistGearData.iPropDrawableID[i] != 255
|
|
IF GET_PED_PROP_INDEX(pedID, int_to_enum(PED_PROP_POSITION,i)) = sHeistGearData.iPropDrawableID[i]
|
|
AND GET_PED_PROP_TEXTURE_INDEX(pedID, int_to_enum(PED_PROP_POSITION,i)) = sHeistGearData.iPropTextureID[i]
|
|
CPRINTLN(DEBUG_PED_COMP, "[IS_MP_HEIST_GEAR_EQUIPPED]Gear equipped: ",enum_to_int(egear))
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
endif
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
|
|
|
|
//PURPOSE: Retursn TRUE if the mp ped is visibly wearing a parachute
|
|
FUNC BOOL IS_MP_PED_WEARING_PARACHUTE(PED_INDEX pedID)
|
|
INT iDrawable = GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_HAND)
|
|
INT iDLCHandHash = -1
|
|
SWITCH GET_ENTITY_MODEL(pedID)
|
|
CASE MP_M_FREEMODE_01
|
|
// Ones we never added the tag to.
|
|
IF (iDrawable >= 1 AND iDrawable <= 19)
|
|
OR (iDrawable >= 21 AND iDrawable <= 29)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_MP_PED_WEARING_PARACHUTE - male hand [", iDrawable, "] is one we never added the tag to.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
iDLCHandHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_HAND), iDrawable, GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_HAND))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHandHash, DLC_RESTRICTION_TAG_PARACHUTE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_MP_PED_WEARING_PARACHUTE - male hand [", iDrawable, "] is tagged with DLC_RESTRICTION_TAG_PARACHUTE.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
CASE MP_F_FREEMODE_01
|
|
// Ones we never added the tag to.
|
|
IF (iDrawable >= 1 AND iDrawable <= 19)
|
|
OR (iDrawable >= 21 AND iDrawable <= 29)
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_MP_PED_WEARING_PARACHUTE - female hand [", iDrawable, "] is one we never added the tag to.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
iDLCHandHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_HAND), iDrawable, GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_HAND))
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHandHash, DLC_RESTRICTION_TAG_PARACHUTE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_MP_PED_WEARING_PARACHUTE - female hand [", iDrawable, "] is tagged with DLC_RESTRICTION_TAG_PARACHUTE.")
|
|
RETURN TRUE
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "IS_MP_PED_WEARING_PARACHUTE - PED_COMP_HAND iDrawable is ", iDrawable, ", not a parachute.")
|
|
|
|
/*
|
|
if ePedModel = MP_M_FREEMODE_01
|
|
// Ones we never added the tag to.
|
|
IF (iDrawable >= 1 AND iDrawable <= 19)
|
|
OR (iDrawable >= 21 AND iDrawable <= 29)
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]PARACHUTE on 1")
|
|
bParachuteOn = true
|
|
ELSE
|
|
iDLCHandHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_M_FREEMODE_01, GET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_HAND), COMP_TYPE_HAND, 3)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHandHash, DLC_RESTRICTION_TAG_PARACHUTE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]Tagged PARACHUTE on 2")
|
|
bParachuteOn = true
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]not Tagged PARACHUTE on 3")
|
|
ENDIF
|
|
ENDIF
|
|
elif ePedModel = MP_F_FREEMODE_01
|
|
// Ones we never added the tag to.
|
|
IF (iDrawable >= 1 AND iDrawable <= 19)
|
|
OR (iDrawable >= 21 AND iDrawable <= 29)
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]PARACHUTE on 4")
|
|
bParachuteOn = true
|
|
ELSE
|
|
iDLCHandHash = GET_NAME_HASH_FROM_PED_COMP_ITEM(MP_F_FREEMODE_01, GET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_HAND), COMP_TYPE_HAND, 4)
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCHandHash, DLC_RESTRICTION_TAG_PARACHUTE, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]Tagged PARACHUTE on 5")
|
|
bParachuteOn = true
|
|
Else
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]not Tagged PARACHUTE on 6")
|
|
endif
|
|
ENDIF
|
|
ENDIF
|
|
*/
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
//PURPOSE: Loops through the Heist Gear and removes whatever is equipped.
|
|
PROC REMOVE_CURRENT_HEIST_GEAR(PED_INDEX thisPed)
|
|
INT i
|
|
REPEAT ENUM_TO_INT(GEAR_MAX_AMOUNT) i
|
|
IF IS_MP_HEIST_GEAR_EQUIPPED(thisPed, INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i))
|
|
REMOVE_MP_HEIST_GEAR(thisPed, INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i))
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDPROC
|
|
|
|
//PURPOSE: Loops through the Heist Gear and removes whatever is equipped on the players head (masks, ear pieces, etc).
|
|
PROC REMOVE_CURRENT_HEAD_HEIST_GEAR(PED_INDEX thisPed)
|
|
INT i
|
|
REPEAT ENUM_TO_INT(GEAR_MAX_AMOUNT) i
|
|
IF IS_MP_HEIST_GEAR_EQUIPPED(thisPed, INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i))
|
|
IF INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_WHITE_HOCKEY_MASK
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_BALACLAVA
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_REBREATHER
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_NIGHTVISION
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_EARPIECE_1
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_EARPIECE_2
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_EARPIECE_3
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_RADIO_HEADSET
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_GAS_MASK
|
|
OR INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i) = HEIST_GEAR_CORONA_MASK
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] REMOVE_CURRENT_HEAD_HEIST_GEAR gear: ",i)
|
|
REMOVE_MP_HEIST_GEAR(thisPed, INT_TO_ENUM(MP_HEIST_GEAR_ENUM, i))
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDPROC
|
|
|
|
PROC SET_MP_HEIST_GEAR(PED_INDEX pedID, MP_HEIST_GEAR_ENUM eGear,int iPlayerIndex = -1)
|
|
DEBUG_PRINTCALLSTACK()
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] Set Heist Gear ", GET_MP_HEIST_GEAR_NAME(eGear), " \"", GET_STRING_FROM_TEXT_FILE(GET_MP_HEIST_GEAR_NAME(eGear)), "\"")
|
|
|
|
MP_OUTFITS_DATA sOutfitsData
|
|
MP_OUTFIT_MASK_ENUM eMask = OUTFIT_MASK_NONE
|
|
|
|
if iplayerIndex = -1
|
|
iPlayerIndex = NATIVE_TO_INT(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID) )
|
|
endif
|
|
|
|
int i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sOutfitsData.iComponentDrawableID[i] = -1
|
|
sOutfitsData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
sOutfitsData.iPropDrawableID[i] = -1
|
|
sOutfitsData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sOutfitsData.iDLCTattooOverlay) i
|
|
sOutfitsData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
|
|
|
|
IF GET_MP_HEIST_GEAR_DATA(pedID,sOutfitsData,eGear,eMask)
|
|
|
|
IF eGear = HEIST_GEAR_BALACLAVA
|
|
OR eGear = HEIST_GEAR_NIGHTVISION
|
|
OR eGear = HEIST_GEAR_REBREATHER
|
|
REMOVE_CURRENT_HEAD_HEIST_GEAR(pedID)
|
|
SET_HEAD_BLEND_UPDATE(pedID,sOutfitsData,iPlayerIndex)
|
|
ENDIF
|
|
|
|
IF (eGear = HEIST_GEAR_CORONA_MASK)
|
|
|
|
IF eMask != OUTFIT_MASK_NONE
|
|
//Make sure that the mask that get applied arent clipping other items on the head.
|
|
IF GET_STYLE_FROM_MASK(ENUM_TO_INT(eMask)) = MASK_BANDANAS
|
|
// keep head and eye props.
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] MASK_BANDANAS only remove eyes prop")
|
|
|
|
ELIF GET_STYLE_FROM_MASK(ENUM_TO_INT(eMask)) = MASK_HELMETS
|
|
// All props (minus head) to -1
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] MASK_HELMETS remove eyes and ears prop")
|
|
|
|
ELSE
|
|
// Remove all head / ear / eye props
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = -1
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] Remove all head / ear / eye props mask is being applied")
|
|
endif
|
|
|
|
// Remove earings
|
|
IF (GET_ENTITY_MODEL(pedID) = MP_F_FREEMODE_01)
|
|
IF IS_ITEM_EARRINGS(GET_ENTITY_MODEL(pedID) , COMP_TYPE_TEETH, GET_PED_COMP_ITEM_CURRENT_MP(pedID,COMP_TYPE_TEETH))
|
|
sOutfitsData.iComponentDrawableID[COMP_TYPE_TEETH] = 0
|
|
sOutfitsData.iComponentTextureID[COMP_TYPE_TEETH] = 0
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] Remove earings")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
SET_HEAD_BLEND_UPDATE(pedID,sOutfitsData,iPlayerIndex)
|
|
ELIF eGear = HEIST_GEAR_REBREATHER
|
|
CPRINTLN(DEBUG_MISSION, "[SET_MP_HEIST_GEAR] Rebreather being applied, setting underwater breath remaining to 100")
|
|
SET_PLAYER_UNDERWATER_BREATH_PERCENT_REMAINING(NETWORK_GET_PLAYER_INDEX_FROM_PED(pedID), 100.0)
|
|
endif
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sOutfitsData.iComponentDrawableID[i] != -1
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_HEIST_GEAR - SET VARIATIONS - SET_PED_COMPONENT_VARIATION - PED_COMPONENT: ", i)
|
|
SET_PED_COMPONENT_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, i), sOutfitsData.iComponentDrawableID[i], sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(sOutfitsData.iPropDrawableID) i
|
|
IF sOutfitsData.iPropDrawableID[i] != -1
|
|
and sOutfitsData.iPropDrawableID[i] != 255
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_HEIST_GEAR - SET PROP - SET_PED_PROP_INDEX - PED_COMPONENT: ", i)
|
|
SET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, i), sOutfitsData.iPropDrawableID[i], sOutfitsData.iPropTextureID[i], TRUE)
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Returns TRUE if the outfit passed has a radio headset
|
|
FUNC BOOL DOES_MP_OUTFIT_HAVE_RADIO_HEADSET(MP_OUTFIT_ENUM eOutfit)
|
|
|
|
SWITCH eOutfit
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_0
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_1
|
|
CASE OUTFIT_HEIST_STEALTH_PILOT_2
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_0
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_1
|
|
CASE OUTFIT_HEIST_CASUAL_PILOT_2
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_1
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_2
|
|
CASE OUTFIT_HEIST_FLIGHT_SUIT_3
|
|
RETURN TRUE
|
|
ENDSWITCH
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PRELOAD_MP_HEIST_GEAR(PED_INDEX pedID, MP_HEIST_GEAR_ENUM eGear)
|
|
|
|
MP_OUTFITS_DATA sHeistGearData
|
|
MP_OUTFIT_MASK_ENUM eMask = OUTFIT_MASK_NONE
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
sHeistGearData.iComponentDrawableID[i] = -1
|
|
sHeistGearData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(sHeistGearData.iPropDrawableID) i
|
|
sHeistGearData.iPropDrawableID[i] = -1
|
|
sHeistGearData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
|
|
IF GET_MP_HEIST_GEAR_DATA(pedID,sHeistGearData,eGear,eMask)
|
|
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF sHeistGearData.iComponentDrawableID[i] != -1
|
|
IF NOT HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(pedID)
|
|
SET_PED_PRELOAD_VARIATION_DATA(pedID, INT_TO_ENUM(PED_COMPONENT, i), sHeistGearData.iComponentDrawableID[i], sHeistGearData.iComponentTextureID[i])
|
|
endif
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT COUNT_OF(sHeistGearData.iPropDrawableID) i
|
|
IF sHeistGearData.iPropDrawableID[i] != -1
|
|
and sHeistGearData.iPropDrawableID[i] != 255
|
|
IF NOT HAS_PED_PRELOAD_PROP_DATA_FINISHED(pedID)
|
|
SET_PED_PRELOAD_PROP_DATA(pedID, INT_TO_ENUM(PED_PROP_POSITION, i), sHeistGearData.iPropDrawableID[i],sHeistGearData.iPropTextureID[i])
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
|
|
bool bPreload = true
|
|
if not HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(pedID)
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_GEAR - not HAS_PED_PRELOAD_VARIATION_DATA_FINISHED - ", enum_to_int(eGear))
|
|
bPreload = false
|
|
endif
|
|
if not HAS_PED_PRELOAD_PROP_DATA_FINISHED(pedID)
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_GEAR - not HAS_PED_PRELOAD_PROP_DATA_FINISHED - ", enum_to_int(eGear))
|
|
bPreload = false
|
|
endif
|
|
CPRINTLN(DEBUG_MISSION,"PRELOAD_MP_HEIST_GEAR: ", bPreload)
|
|
|
|
RETURN bPreload
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_PED_WEARING_A_HELMET(PED_INDEX pedID)
|
|
//No Helmet
|
|
IF NOT IS_PED_WEARING_HELMET(pedID)
|
|
AND NOT IS_ITEM_A_HELMET(GET_ENTITY_MODEL(pedID), COMP_TYPE_PROPS, GET_PED_COMP_ITEM_CURRENT_MP(pedID, COMP_TYPE_PROPS, ENUM_TO_INT(ANCHOR_HEAD)))
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
RETURN TRUE
|
|
ENDFUNC
|
|
|
|
|
|
ENUM CUSTOM_CREW_LOGO_TYPE_ENUM
|
|
CUSTOM_CREW_LOGO_DEFAULT = 0,
|
|
CUSTOM_CREW_LOGO_FALLBACK,
|
|
CUSTOM_CREW_LOGO_PRESET
|
|
ENDENUM
|
|
|
|
FUNC STRING GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_INDEX playerID, CUSTOM_CREW_LOGO_TYPE_ENUM eType = CUSTOM_CREW_LOGO_DEFAULT)
|
|
UNUSED_PARAMETER(playerID)
|
|
UNUSED_PARAMETER(eType)
|
|
RETURN "MPClubEmblemSmall"
|
|
ENDFUNC
|
|
FUNC STRING GET_CUSTOM_CREW_LOGO_TXD_TEXTURE_FOR_PLAYER(PLAYER_INDEX playerID, CUSTOM_CREW_LOGO_TYPE_ENUM eType = CUSTOM_CREW_LOGO_DEFAULT)
|
|
/*
|
|
The shop controller script is responsible for streaming in the custom crew logo TXD for the local players gang and setting g_tlCustomCrewLogoTXDTexture.
|
|
See PROCESS_CUSTOM_CREW_LOGO().
|
|
*/
|
|
|
|
IF playerID = INVALID_PLAYER_INDEX()
|
|
RETURN ""
|
|
ENDIF
|
|
|
|
IF eType = CUSTOM_CREW_LOGO_FALLBACK
|
|
RETURN "MPClubPreset1"
|
|
ENDIF
|
|
|
|
// If we have a gang boss use their ped ID instead
|
|
PLAYER_INDEX playerGangBoss = GB_GET_THIS_PLAYER_GANG_BOSS(playerID)
|
|
IF playerGangBoss != INVALID_PLAYER_INDEX()
|
|
playerID = playerGangBoss
|
|
ENDIF
|
|
|
|
IF IS_BIT_SET(g_iCustomCrewLogoUsePresetBitset, NATIVE_TO_INT(playerID))
|
|
OR eType = CUSTOM_CREW_LOGO_PRESET
|
|
RETURN Get_String_From_TextLabel(g_tlCustomCrewLogoTXDTexture[NATIVE_TO_INT(playerID)])
|
|
ELSE
|
|
RETURN ""
|
|
ENDIF
|
|
ENDFUNC
|
|
|
|
// For Craig: Added bUseDefaultMask for 2186455, VS player owned outfits where we want the mask but not default to the balaclava if there is none
|
|
ENUM MP_OUTFIT_ROLE
|
|
OUTFIT_ROLE_NONE = -1
|
|
|
|
,OUTFIT_ROLE_GB_PRESIDENT
|
|
,OUTFIT_ROLE_GB_VICE_PRESIDENT
|
|
,OUTFIT_ROLE_GB_ROAD_CAPTAIN
|
|
,OUTFIT_ROLE_GB_SERGEANT_AT_ARMS
|
|
,OUTFIT_ROLE_GB_ENFORCER
|
|
,OUTFIT_ROLE_GB_PROSPECT
|
|
ENDENUM
|
|
|
|
FUNC BOOL GET_TATTOO_PRESET_FOR_MP_OUTFIT_ROLE(INT iDLCJbibHash, MP_OUTFIT_ROLE eOutfitRole, INT &iCollection, INT &iPreset)
|
|
|
|
UNUSED_PARAMETER(iDLCJbibHash)
|
|
UNUSED_PARAMETER(eOutfitRole)
|
|
|
|
iCollection = 0
|
|
iPreset = 0
|
|
|
|
SWITCH iDLCJbibHash
|
|
////////////////////////////////////
|
|
/// MALE
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_22_0")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_22_1")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_22_2")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_22_3")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_000_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_001_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_002_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_003_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_004_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_015_M") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_23_0")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_23_1")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_23_2")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_005_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_006_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_007_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_008_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_009_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_016_M") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_0")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_1")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_2")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_3")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_4")
|
|
CASE HASH("DLC_MP_BIKER_M_JBIB_24_5")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_010_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_011_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_012_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_013_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_014_M") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_017_M") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
////////////////////////////////////
|
|
/// FEMALE
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_27_0")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_27_1")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_27_2")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_27_3")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_000_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_001_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_002_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_003_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_004_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_015_F") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_28_0")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_28_1")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_28_2")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_005_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_006_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_007_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_008_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_009_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_016_F") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_0")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_1")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_2")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_3")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_4")
|
|
CASE HASH("DLC_MP_BIKER_F_JBIB_29_5")
|
|
SWITCH eOutfitRole
|
|
CASE OUTFIT_ROLE_GB_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_010_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_VICE_PRESIDENT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_011_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_SERGEANT_AT_ARMS iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_012_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ROAD_CAPTAIN iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_013_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_PROSPECT iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_014_F") BREAK
|
|
CASE OUTFIT_ROLE_GB_ENFORCER iCollection = HASH("mpBiker_overlays") iPreset = HASH("MP_Biker_Rank_017_F") BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
RETURN (iCollection != 0)
|
|
ENDFUNC
|
|
|
|
|
|
FUNC BOOL SET_PED_MP_OUTFIT(MP_OUTFITS_APPLY_DATA &sApplyOutfitData, BOOL bApplyMask = FALSE,Bool bJustMask = FALSE,bool bRemoveDamage = true, Bool bUseDefaultMask = TRUE,bool bRemoveParachute = true,Bool bTattoosOnly = false, INT iEmblemToDisplay = -1, MP_OUTFIT_ROLE eOutfitRole = OUTFIT_ROLE_NONE, BOOL bBlockHood = FALSE)
|
|
|
|
PRINTLN("SET_PED_MP_OUTFIT(bApplyMask=", bApplyMask, ", bJustMask=", bJustMask, ", bRemoveDamage=", bRemoveDamage, ", bUseDefaultMask=", bUseDefaultMask, ", bRemoveParachute=", bRemoveParachute, ", bTattoosOnly=", bTattoosOnly, ", iEmblemToDisplay=", iEmblemToDisplay, ", eOutfitRole=", eOutfitRole)
|
|
|
|
int i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
g_sOutfitsData.iComponentDrawableID[i] = -1
|
|
g_sOutfitsData.iComponentTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(g_sOutfitsData.iPropDrawableID) i
|
|
g_sOutfitsData.iPropDrawableID[i] = -1
|
|
g_sOutfitsData.iPropTextureID[i] = -1
|
|
ENDREPEAT
|
|
REPEAT COUNT_OF(g_sOutfitsData.iDLCTattooOverlay) i
|
|
g_sOutfitsData.iDLCTattooOverlay[i] = -1
|
|
ENDREPEAT
|
|
|
|
IF NOT IS_PED_DEAD_OR_DYING(sApplyOutfitData.pedID)
|
|
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(sApplyOutfitData.pedID)
|
|
|
|
if ePedModel = MP_M_FREEMODE_01
|
|
or ePedModel = MP_F_FREEMODE_01
|
|
bool bSettingOutfits = false
|
|
|
|
IF sApplyOutfitData.eOutfit != OUTFIT_MP_DEFAULT
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_MAX_AMOUNT
|
|
bSettingOutfits = true
|
|
endif
|
|
|
|
IF sApplyOutfitData.eMask != OUTFIT_MASK_NONE
|
|
AND sApplyOutfitData.eMask != OUTFIT_MAX_MASKS
|
|
bSettingOutfits = true
|
|
|
|
elif sApplyOutfitData.eMask = OUTFIT_MASK_NONE
|
|
and bApplyMask
|
|
and bJustMask
|
|
//Removing mask
|
|
bSettingOutfits = true
|
|
endif
|
|
|
|
if bSettingOutfits
|
|
bool bDataReturned = false
|
|
|
|
//=================== Grabbing outfit data ========================
|
|
if !bJustMask
|
|
IF GET_MP_OUTFIT_DATA(g_sOutfitsData,sApplyOutfitData, bApplyMask)
|
|
bDataReturned = true
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] GET_MP_OUTFIT_DATA returned false ")
|
|
endif
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] bJustMask skip outfit data ")
|
|
endif
|
|
|
|
//=================== Grabbing Mask data ========================
|
|
//Blocking masks for the flight / stealth pilot and hazchem suites
|
|
if bApplyMask
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_STEALTH_PILOT_3
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_FLIGHT_SUIT_0
|
|
IF GET_MP_HEIST_MASK_DATA(g_sOutfitsData, sApplyOutfitData, bJustMask, bUseDefaultMask)
|
|
bDataReturned = true
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]GET_MP_HEIST_MASK_DATA Mask data grabbed for: ",GET_MP_OUTFIT_MASK_NAME(sApplyOutfitData.eMask))
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]pre - WARNING! bApplyMask = TRUE but GET_MP_HEIST_MASK_DATA = FALSE.")
|
|
ENDIF
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] No masks being grabbed either by choice or blocking outfit ")
|
|
endif
|
|
|
|
|
|
MP_OUTFIT_MASK_ENUM eDummyMask = OUTFIT_MASK_NONE
|
|
//====================== Grabbing Gear data ===========================
|
|
if sApplyOutfitData.eGear != HEIST_GEAR_NONE
|
|
IF GET_MP_HEIST_GEAR_DATA(sApplyOutfitData.pedID,g_sOutfitsData,sApplyOutfitData.eGear,eDummyMask)
|
|
bDataReturned = true
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]GET_MP_HEIST_GEAR_DATA eGear data grabbed ")
|
|
ENDIF
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] No eGear being grabbed")
|
|
endif
|
|
|
|
//=================== Grabbing Ear Gear data ========================
|
|
if sApplyOutfitData.eGearEar != HEIST_GEAR_NONE
|
|
IF GET_MP_HEIST_GEAR_DATA(sApplyOutfitData.pedID,g_sOutfitsData,sApplyOutfitData.eGearEar,eDummyMask)
|
|
bDataReturned = true
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]GET_MP_HEIST_GEAR_DATA eGearEar data grabbed ")
|
|
ENDIF
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] No eGearEar being grabbed")
|
|
endif
|
|
|
|
|
|
IF bDataReturned
|
|
switch sApplyOutfitData.eApplyStage
|
|
case AOS_PRELOAD
|
|
bool bPreloaded
|
|
bPreloaded = true
|
|
if not PRELOAD_MP_OUTFIT(sApplyOutfitData,g_sOutfitsData)
|
|
bPreloaded = false
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]0 - outfit preloading: ",enum_to_int(sApplyOutfitData.eOutfit))
|
|
endif
|
|
|
|
if bPreloaded
|
|
sApplyOutfitData.eApplyStage = AOS_SET
|
|
endif
|
|
break
|
|
|
|
case AOS_SET
|
|
if !bTattoosOnly
|
|
CLEAR_ALL_PED_PROPS(sApplyOutfitData.pedID)
|
|
CLEAR_PED_STORED_HAT_PROP(sApplyOutfitData.pedID)
|
|
REMOVE_PED_HELMET(sApplyOutfitData.pedID,TRUE)
|
|
|
|
if bRemoveDamage
|
|
CLEAR_PED_WETNESS(sApplyOutfitData.pedID)
|
|
CLEAR_PED_BLOOD_DAMAGE(sApplyOutfitData.pedID)
|
|
endif
|
|
|
|
bool bParachuteOn
|
|
INT iDrawable
|
|
INT iDLCHandHash
|
|
bParachuteOn = false
|
|
iDrawable = GET_PED_DRAWABLE_VARIATION(sApplyOutfitData.pedID, PED_COMP_HAND)
|
|
iDLCHandHash = -1
|
|
|
|
iDrawable = iDrawable
|
|
iDLCHandHash = iDLCHandHash
|
|
|
|
//====================================== PARACHUTE ==========================================
|
|
IF IS_MP_PED_WEARING_PARACHUTE(sApplyOutfitData.pedID)
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]PARACHUTE on ")
|
|
bParachuteOn = true
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]PARACHUTE not on")
|
|
ENDIF
|
|
|
|
if bParachuteOn
|
|
and bRemoveParachute //Added so that parachute can be left on.
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]removing parachute")
|
|
g_sOutfitsData.iComponentDrawableID[COMP_TYPE_HAND] = 0
|
|
IF g_sOutfitsData.iComponentTextureID[COMP_TYPE_HAND] = -1
|
|
g_sOutfitsData.iComponentTextureID[COMP_TYPE_HAND] = 0 //b*2228479
|
|
ENDIF
|
|
ENDIF
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//=========================== Masks clipping check =================================
|
|
IF bApplyMask
|
|
IF sApplyOutfitData.eMask != OUTFIT_MASK_NONE
|
|
and sApplyOutfitData.eMask != OUTFIT_MASK_FREEMODE
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_STEALTH_PILOT_3
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_FLIGHT_SUIT_0
|
|
//Make sure that the mask that get applied arent clipping other items on the head.
|
|
IF GET_STYLE_FROM_MASK(ENUM_TO_INT(sApplyOutfitdata.eMask)) = MASK_BANDANAS
|
|
// keep head and eye props.
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT] MASK_BANDANAS only remove eyes prop")
|
|
|
|
ELIF GET_STYLE_FROM_MASK(ENUM_TO_INT(sApplyOutfitdata.eMask)) = MASK_HELMETS
|
|
OR GET_STYLE_FROM_MASK(ENUM_TO_INT(sApplyOutfitdata.eMask)) = MASK_ISLAND_HEIST_NIGHT_VISION
|
|
OR GET_STYLE_FROM_MASK(ENUM_TO_INT(sApplyOutfitdata.eMask)) = MASK_ISLAND_HEIST_NECK_GAITERS
|
|
OR sApplyOutfitData.eMask = MASK_ISLAND_HEIST_FACE_WRAPS_0
|
|
OR sApplyOutfitData.eMask = MASK_ISLAND_HEIST_FACE_WRAPS_1
|
|
// All props (minus head) to -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT] MASK_HELMETS remove eyes and ears prop")
|
|
|
|
ELSE
|
|
// Remove all head / ear / eye props
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = -1
|
|
if IS_PED_IN_ANY_VEHICLE(sApplyOutfitData.pedID)
|
|
CLEAR_PED_STORED_HAT_PROP(sApplyOutfitData.pedID)
|
|
endif
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT] Remove all head / ear / eye props mask is being applied")
|
|
endif
|
|
|
|
// Remove earings
|
|
IF (GET_ENTITY_MODEL(sApplyOutfitdata.pedID) = MP_F_FREEMODE_01)
|
|
IF IS_ITEM_EARRINGS(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_VARIATIONS(sApplyOutfitData.pedID, g_sOutfitsData.iComponentDrawableID[COMP_TYPE_TEETH], g_sOutfitsData.iComponentTextureID[COMP_TYPE_TEETH], COMP_TYPE_TEETH))
|
|
g_sOutfitsData.iComponentDrawableID[COMP_TYPE_TEETH] = 0
|
|
g_sOutfitsData.iComponentTextureID[COMP_TYPE_TEETH] = 0
|
|
ENDIF
|
|
ENDIF
|
|
// when the player is using a freemode mask we should remove all the props
|
|
ELIF sApplyOutfitData.eMask = OUTFIT_MASK_FREEMODE
|
|
// Remove all head / ear / eye props
|
|
// Skip forced props.
|
|
INT iDLCNameHash
|
|
iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(sApplyOutfitdata.pedID), ENUM_TO_INT(PED_COMP_BERD), g_sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD], g_sOutfitsData.iComponentTextureID[COMP_TYPE_BERD])
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_FORCE_PROP, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND GET_PED_DRAWABLE_VARIATION(sApplyOutfitData.pedID, PED_COMP_BERD) = g_sOutfitsData.iComponentDrawableID[COMP_TYPE_BERD]
|
|
// Skip
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT] Already wearing banadana so keep props.")
|
|
ELSE
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = -1
|
|
|
|
// Remove earings
|
|
IF (GET_ENTITY_MODEL(sApplyOutfitdata.pedID) = MP_F_FREEMODE_01)
|
|
IF IS_ITEM_EARRINGS(ePedModel, COMP_TYPE_TEETH, GET_PED_COMP_ITEM_FROM_VARIATIONS(sApplyOutfitData.pedID, g_sOutfitsData.iComponentDrawableID[COMP_TYPE_TEETH], g_sOutfitsData.iComponentTextureID[COMP_TYPE_TEETH], COMP_TYPE_TEETH))
|
|
g_sOutfitsData.iComponentDrawableID[COMP_TYPE_TEETH] = 0
|
|
g_sOutfitsData.iComponentTextureID[COMP_TYPE_TEETH] = 0
|
|
ENDIF
|
|
ENDIF
|
|
if IS_PED_IN_ANY_VEHICLE(sApplyOutfitData.pedID)
|
|
CLEAR_PED_STORED_HAT_PROP(sApplyOutfitData.pedID)
|
|
endif
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT] FREEMODE mask always Remove all props and earings")
|
|
ENDIF
|
|
// when attempting to remove just a mask remove all head props incase of left overs from previous set mask.
|
|
ELIF sApplyOutfitData.eMask = OUTFIT_MASK_NONE
|
|
and bJustMask
|
|
// Remove all head / ear / eye props
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EYES] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_EARS] = -1
|
|
g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD] = -1
|
|
if IS_PED_IN_ANY_VEHICLE(sApplyOutfitData.pedID)
|
|
CLEAR_PED_STORED_HAT_PROP(sApplyOutfitData.pedID)
|
|
endif
|
|
ENDIF
|
|
ENDIF
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//====================================== HEAD BLEND ===========================================
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]HEAD BLEND start")
|
|
SET_HEAD_BLEND_UPDATE(sApplyOutfitData.pedID,g_sOutfitsData,sApplyOutfitData.iPlayerIndex)
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]HEAD BLEND finished")
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//====================================== FACE PAINT ==========================================
|
|
//removing face paint on heists
|
|
IF GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen != -1
|
|
AND GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen < FMMC_MAX_TEAMS
|
|
AND NATIVE_TO_INT(PLAYER_ID()) != -1
|
|
IF IS_BIT_SET(g_FMMC_STRUCT.sFMMCEndConditions[GlobalplayerBD_FM[NATIVE_TO_INT(PLAYER_ID())].sClientCoronaData.iTeamChosen].iTeamBitset, ciBS_TEAM_HIDE_FACEPAINT)
|
|
IF (GlobalplayerBD[NATIVE_TO_INT(PLAYER_ID())].sMissionExtraMP.satmpSpecialActivityType = SATMP_HEIST_PLANNING)
|
|
or (GlobalplayerBD[NATIVE_TO_INT(PLAYER_ID())].sMissionExtraMP.satmpSpecialActivityType = SATMP_HEIST)
|
|
SET_PED_HEAD_OVERLAY(sApplyOutfitData.pedID, HOS_MAKEUP, 0, 0.0) //4= facial blend makeup/facepaint
|
|
endif
|
|
endif
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
|
|
//======================================= SET VARIATIONS ===========================================
|
|
|
|
|
|
OVERRIDE_PED_CREW_LOGO_TEXTURE(sApplyOutfitData.pedID, "", "")
|
|
|
|
PED_COMP_NAME_ENUM eDeclComp
|
|
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - iEmblemToDisplay = ", iEmblemToDisplay)
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - eOutfitRole = ", eOutfitRole)
|
|
|
|
BOOL bSetBerd
|
|
bSetBerd = FALSE
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF g_sOutfitsData.iComponentDrawableID[i] != -1
|
|
|
|
IF i = ENUM_TO_INT(PED_COMP_DECL)
|
|
AND iEmblemToDisplay != -1
|
|
eDeclComp = GET_PED_COMP_ITEM_FROM_VARIATIONS(sApplyOutfitData.pedID, g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i], COMP_TYPE_DECL)
|
|
IF IS_ITEM_A_CREW_LOGO(ePedModel, COMP_TYPE_DECL, eDeclComp)
|
|
IF iEmblemToDisplay = 0
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [CREW_LOGO=NONE]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), 0, 0)
|
|
ELIF iEmblemToDisplay = 1
|
|
IF sApplyOutfitData.pedID = PLAYER_PED_ID()
|
|
AND NOT IS_LOCAL_PLAYER_IN_ACTIVE_CLAN()
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [CREW_LOGO=NONE] *fallback 1*")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), 0, 0)
|
|
ELSE
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [CREW_LOGO=CREW]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i])
|
|
SET_PED_ENABLE_CREW_EMBLEM(sApplyOutfitData.pedID, TRUE)
|
|
ENDIF
|
|
ELIF iEmblemToDisplay = 2
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [CREW_LOGO=PRESET]")
|
|
REQUEST_STREAMED_TEXTURE_DICT(GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()))
|
|
OVERRIDE_PED_CREW_LOGO_TEXTURE(sApplyOutfitData.pedID, GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()), GET_CUSTOM_CREW_LOGO_TXD_TEXTURE_FOR_PLAYER(PLAYER_ID(), CUSTOM_CREW_LOGO_PRESET))
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i])
|
|
ELSE
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [CREW_LOGO=NONE] *fallback 2*")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), 0, 0)
|
|
ENDIF
|
|
ELSE
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [not crew logo]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ELSE
|
|
IF i = ENUM_TO_INT(PED_COMP_BERD)
|
|
//wait to call after hair
|
|
ELIF i = ENUM_TO_INT(PED_COMP_HAIR)
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [", g_sOutfitsData.iComponentDrawableID[i], ", ", g_sOutfitsData.iComponentTextureID[i] ,"]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i])
|
|
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,PED_COMP_BERD)), " [", g_sOutfitsData.iComponentDrawableID[PED_COMP_BERD], ", ", g_sOutfitsData.iComponentTextureID[PED_COMP_BERD] ,"]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, PED_COMP_BERD), g_sOutfitsData.iComponentDrawableID[PED_COMP_BERD], g_sOutfitsData.iComponentTextureID[PED_COMP_BERD])
|
|
bSetBerd = TRUE
|
|
ELSE
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,i)), " [", g_sOutfitsData.iComponentDrawableID[i], ", ", g_sOutfitsData.iComponentTextureID[i] ,"]")
|
|
|
|
IF (g_sOutfitsData.iComponentDrawableID[i] >= GET_NUMBER_OF_PED_DRAWABLE_VARIATIONS(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i)))
|
|
OR (g_sOutfitsData.iComponentTextureID[i] >= GET_NUMBER_OF_PED_TEXTURE_VARIATIONS(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i]))
|
|
// Invalid item
|
|
SCRIPT_ASSERT("[SET_PED_MP_OUTFIT] - invalid drawable or texture variation defined, see output in log.")
|
|
ELSE
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, i), g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i])
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF i = ENUM_TO_INT(PED_COMP_DECL)
|
|
eDeclComp = GET_PED_COMP_ITEM_FROM_VARIATIONS(sApplyOutfitData.pedID, g_sOutfitsData.iComponentDrawableID[i], g_sOutfitsData.iComponentTextureID[i], COMP_TYPE_DECL)
|
|
IF IS_ITEM_A_CREW_LOGO(ePedModel, COMP_TYPE_DECL, eDeclComp)
|
|
SET_PED_ENABLE_CREW_EMBLEM(sApplyOutfitData.pedID, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
IF NOT bSetBerd
|
|
AND g_sOutfitsData.iComponentDrawableID[PED_COMP_BERD] != -1
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET VARIATIONS - ", GET_COMP_VARIATION_TYPE_STRING(INT_TO_ENUM(PED_COMPONENT,PED_COMP_BERD)), " [", g_sOutfitsData.iComponentDrawableID[PED_COMP_BERD], ", ", g_sOutfitsData.iComponentTextureID[PED_COMP_BERD] ,"]")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, INT_TO_ENUM(PED_COMPONENT, PED_COMP_BERD), g_sOutfitsData.iComponentDrawableID[PED_COMP_BERD], g_sOutfitsData.iComponentTextureID[PED_COMP_BERD])
|
|
ENDIF
|
|
|
|
REPEAT COUNT_OF(g_sOutfitsData.iPropDrawableID) i
|
|
IF g_sOutfitsData.iPropDrawableID[i] != -1
|
|
AND g_sOutfitsData.iPropDrawableID[i] != 255
|
|
SAFE_SET_PROP(sApplyOutfitData.pedID, INT_TO_ENUM(PED_PROP_POSITION, i), g_sOutfitsData.iPropDrawableID[i], g_sOutfitsData.iPropTextureID[i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
|
|
//====================================== SCUBA ==========================================
|
|
IF sApplyOutfitData.pedID = PLAYER_PED_ID()
|
|
IF DOES_CURRENT_PED_COMPONENT_HAVE_RESTRICTION_TAG(sApplyOutfitData.pedID, PED_COMP_SPECIAL, DLC_RESTRICTION_TAG_SCUBA_GEAR)
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
SET_PLAYER_PREVIOUS_VARIATION_DATA(PLAYER_ID(), PED_COMP_SPECIAL, 15, 0, 0, 0)
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
SET_PLAYER_PREVIOUS_VARIATION_DATA(PLAYER_ID(), PED_COMP_SPECIAL, 3, 0, 0, 0)
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//====================================== PARACHUTE ==========================================
|
|
IF bParachuteOn
|
|
AND NOT bRemoveParachute
|
|
AND sApplyOutfitData.pedID = PLAYER_PED_ID()
|
|
CPRINTLN(DEBUG_MISSION, "[SET_PED_MP_OUTFIT]keeping parachute")
|
|
EQUIP_STORED_MP_PARACHUTE(PLAYER_ID())
|
|
ENDIF
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//========================================= HELMET ===========================================
|
|
|
|
//set the helmets the peds use
|
|
IF NOT IS_PED_WEARING_A_HELMET(sApplyOutfitData.pedID)
|
|
IF (sApplyOutfitData.eMask >= OUTFIT_MASK_HELMETS_0 and sApplyOutfitData.eMask <= OUTFIT_MASK_HELMETS_7)
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET eMask[", sApplyOutfitData.eMask, "] is between helmet enums")
|
|
|
|
SET_PED_HELMET_PROP_INDEX(sApplyOutfitData.pedID, g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD])
|
|
SET_PED_HELMET_TEXTURE_INDEX(sApplyOutfitData.pedID, g_sOutfitsData.iPropTextureID[ANCHOR_HEAD])
|
|
|
|
STORE_HELMET_VISOR_PROP_INDICES(sApplyOutfitData.pedID, g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD], g_sOutfitsData.iPropTextureID[ANCHOR_HEAD])
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET eMask[", sApplyOutfitData.eMask, "] is out of range, use stat if possible")
|
|
|
|
PED_COMP_ITEM_DATA_STRUCT sItemDetails
|
|
sItemDetails = GET_PED_COMP_DATA_FOR_ITEM_MP(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_HELMET_CURRENT_COLOR)))
|
|
|
|
IF sItemDetails.iDrawable != -1
|
|
AND sItemDetails.iTexture != -1
|
|
|
|
IF IS_ITEM_A_HELMET(ePedModel, COMP_TYPE_PROPS, INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_HELMET_CURRENT_COLOR)))
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET set helmet prop[", sItemDetails.iDrawable, "] and texture[", sItemDetails.iTexture, "] indexes, MP_STAT_HELMET_CURRENT_COLOR:", GET_MP_INT_CHARACTER_STAT(MP_STAT_HELMET_CURRENT_COLOR), " \"", sItemDetails.sLabel, "\"")
|
|
|
|
SET_PED_HELMET_PROP_INDEX(sApplyOutfitData.pedID, sItemDetails.iDrawable)
|
|
SET_PED_HELMET_TEXTURE_INDEX(sApplyOutfitData.pedID, sItemDetails.iTexture)
|
|
|
|
STORE_HELMET_VISOR_PROP_INDICES(sApplyOutfitData.pedID, sItemDetails.iDrawable, sItemDetails.iTexture)
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET can't set helmet prop[", sItemDetails.iDrawable, "] and texture[", sItemDetails.iTexture, "] indexes, MP_STAT_HELMET_CURRENT_COLOR:", GET_MP_INT_CHARACTER_STAT(MP_STAT_HELMET_CURRENT_COLOR), " \"", sItemDetails.sLabel, "\" is not a helmet!!")
|
|
ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET don't set helmet prop and texture indexes, MP_STAT_HELMET_CURRENT_COLOR:", GET_MP_INT_CHARACTER_STAT(MP_STAT_HELMET_CURRENT_COLOR))
|
|
ENDIF
|
|
|
|
// Explicitly set an outfit without a helmet so make sure we clear the flags.
|
|
SET_PED_CONFIG_FLAG(sApplyOutfitData.pedID, PCF_HasHelmet, FALSE)
|
|
SET_PED_CONFIG_FLAG(sApplyOutfitData.pedID, PCF_DontTakeOffHelmet, FALSE)
|
|
ENDIF
|
|
ELSE
|
|
IF g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD] != -1
|
|
AND g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD] != 255
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET ped wearing helmet [", g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD], ", ", g_sOutfitsData.iPropTextureID[ANCHOR_HEAD], "]")
|
|
STORE_HELMET_VISOR_PROP_INDICES(sApplyOutfitData.pedID, g_sOutfitsData.iPropDrawableID[ANCHOR_HEAD], g_sOutfitsData.iPropTextureID[ANCHOR_HEAD], FALSE)
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT]HELMET ped wearing helmet (invalid ")
|
|
ENDIF
|
|
ENDIF
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//=================================== GEAR =======================================
|
|
|
|
if not IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
|
|
//set any gear
|
|
if sApplyOutfitData.eGear != HEIST_GEAR_NONE
|
|
//Also set any gear if in a heist
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]1 - heist gear setting: ",enum_to_int(sApplyOutfitData.eGear),": ",GET_MP_HEIST_GEAR_NAME(sApplyOutfitData.eGear))
|
|
SET_MP_HEIST_GEAR(sApplyOutfitData.pedID,sApplyOutfitData.eGear,sApplyOutfitData.iPlayerIndex)
|
|
endif
|
|
if sApplyOutfitData.eGearEar != HEIST_GEAR_NONE
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_STEALTH_PILOT_3
|
|
and sApplyOutfitData.eOutfit != OUTFIT_HEIST_FLIGHT_SUIT_0
|
|
//blocking ear piece for the fLight / stealth pilot
|
|
//Also set any ear pieces if in a heist
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]1 - heist Gear Ear setting: ",enum_to_int(sApplyOutfitData.eGearEar),": ",GET_MP_HEIST_GEAR_NAME(sApplyOutfitData.eGearEar))
|
|
SET_MP_HEIST_GEAR(sApplyOutfitData.pedID,sApplyOutfitData.eGearEar,sApplyOutfitData.iPlayerIndex)
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//===================================== SPECIAL VARIATIONS ======================================
|
|
// If we are setting the players outfit as recomended force auto helmets on in heli's
|
|
if sApplyOutfitData.pedID = player_ped_id()
|
|
and sApplyOutfitData.eOutfit != OUTFIT_MP_FREEMODE
|
|
and sApplyOutfitData.eOutfit != OUTFIT_MP_DEFAULT
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_AUTO_EQ_HELMET_FLY_VEH, 1)
|
|
endif
|
|
|
|
// If we are wearing the pilot suit or haz-suit check hiding the mask
|
|
IF IS_PED_WEARING_PILOT_SUIT(sApplyOutfitData.pedID, PED_COMP_TEETH)
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PURPLE_0 // ignore these, we always want the mask for them.
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_ORANGE_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_PINK_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_AIR_SHOOTOUT_GREEN_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_1
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_2
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_VERSUS_HIDDEN_SM_BOMBUSHKA_RUN_WHITE_3
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_1
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_2
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_FIGHTER_PILOT_3
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_0
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_1
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_2
|
|
AND sApplyOutfitData.eOutfit != OUTFIT_GANGOPS_HEIST_CASUAL_PILOT_3
|
|
IF NOT bApplyMask
|
|
or sApplyOutfitData.eMask = OUTFIT_MASK_NONE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] Ped wearing flight suit. Set head and teeth components to 0, 0")
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_TEETH, 0, 0)
|
|
CLEAR_PED_PROP(sApplyOutfitData.pedID, ANCHOR_HEAD)
|
|
ENDIF
|
|
|
|
ELIF IS_PED_WEARING_HAZ_MASK(sApplyOutfitData.pedID)
|
|
int HoodID
|
|
int HoodTxtID
|
|
HoodID = GET_CHEMSUIT_HOOD_VARIATION(sApplyOutfitData.pedID)
|
|
HoodTxtID = GET_PED_TEXTURE_VARIATION(sApplyOutfitData.pedID, PED_COMP_SPECIAL)
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_SPECIAL,HoodID, HoodTxtID)
|
|
CLEAR_PED_PROP(sApplyOutfitData.pedID, ANCHOR_HEAD)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] Ped wearing haz suit. Set special component to hood up")
|
|
|
|
ELIF not IS_PED_WEARING_HAZ_MASK(sApplyOutfitData.pedID)
|
|
and IS_PED_WEARING_HAZ_HOOD_UP(sApplyOutfitData.pedID)
|
|
int HoodID
|
|
int HoodTxtID
|
|
HoodID = GET_CHEMSUIT_HOOD_VARIATION(sApplyOutfitData.pedID,false)
|
|
HoodTxtID = GET_PED_TEXTURE_VARIATION(sApplyOutfitData.pedID, PED_COMP_SPECIAL)
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_SPECIAL,HoodID, HoodTxtID)
|
|
CLEAR_PED_PROP(sApplyOutfitData.pedID, ANCHOR_HEAD)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] Ped wearing haz suit but no chem mask. Set special component to hood down")
|
|
ENDIF
|
|
|
|
IF !bBlockHood
|
|
UPDATE_PED_HOOD_STATE(sApplyOutfitData.pedID)
|
|
ENDIF
|
|
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
|
|
//=================================== NIGHTVISION CHECK =======================================
|
|
if sApplyOutfitData.eGear != HEIST_GEAR_NIGHTVISION
|
|
and sApplyOutfitData.eOutfit = OUTFIT_MP_FREEMODE
|
|
scrShopPedComponent componentItem
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_M_HAIR_0_0), componentItem)
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
GET_SHOP_PED_COMPONENT(ENUM_TO_INT(DLC_MP_HEIST_F_HAIR_0_0), componentItem)
|
|
Endif
|
|
if g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = componentItem.m_drawableIndex
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] Ped wearing Night vision from freemode remove and set g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = -1")
|
|
g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = -1
|
|
endif
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
|
|
//=================================== MC STYLE HEADGEAR =======================================
|
|
if GB_OUTFITS_IS_THIS_OUTFIT_A_BIKER_OUTFIT(sApplyOutfitData.eOutfit)
|
|
IF GlobalplayerBD_FM_3[NATIVE_TO_INT(PLAYER_ID())].sMagnateGangBossData.sGangOutfitData.bShowHeadwear = FALSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT] wearing biker outfit ", GET_MP_OUTFIT_NAME_FROM_ENUM(sApplyOutfitData.eOutfit), ", bShowHeadwear = FALSE")
|
|
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_HEAD, 0, 0)
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_BERD, 0, 0)
|
|
|
|
SAFE_SET_PROP(sApplyOutfitData.pedID, ANCHOR_HEAD, -1, 0)
|
|
SAFE_SET_PROP(sApplyOutfitData.pedID, ANCHOR_EYES, -1, 0)
|
|
SAFE_SET_PROP(sApplyOutfitData.pedID, ANCHOR_EARS, -1, 0)
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_PROPS, PROPS_HEAD_NONE)
|
|
|
|
PRINTLN("[RCC ST_GANGBOSS] [GANG_OUTFITS] - GB_OUTFITS_SET_OUTFIT_HEADWEAR disable PCF_DisableAutoEquipHelmetsInBikes")
|
|
SET_PED_CONFIG_FLAG(sApplyOutfitData.pedID, PCF_DisableAutoEquipHelmetsInBikes, TRUE)
|
|
|
|
PRINTLN("[ST_GANGBOSS] [GANG_OUTFITS] - GB_OUTFITS_SET_OUTFIT_HEADWEAR - FALSE - Outfit re-applied with headwear set OFF")
|
|
DEBUG_PRINTCALLSTACK()
|
|
ELSE
|
|
CPRINTLN(DEBUG_PED_COMP, "[SET_PED_MP_OUTFIT] wearing biker outfit ", GET_MP_OUTFIT_NAME_FROM_ENUM(sApplyOutfitData.eOutfit), ", bShowHeadwear = TRUE")
|
|
ENDIF
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
|
|
//=================================== HAIR =======================================
|
|
INT iHairTint
|
|
INT iSecHairTint
|
|
BOOL bSkipHairOverlays
|
|
IF g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = -1
|
|
// if not local player use broadcast data otherwise use stats
|
|
IF sApplyOutfitData.iPlayerIndex != -1
|
|
AND INT_TO_PLAYERINDEX(sApplyOutfitData.iPlayerIndex) != player_ID() //equal to player
|
|
AND NOT (sApplyOutfitData.pedID = PLAYER_PED_ID()) //b*2229585
|
|
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][AMEC] - iPlayerIndex != -1, setting hair style to broadcast data for player: ", sApplyOutfitData.iPlayerIndex, ", with heist: ", GlobalplayerBD[sApplyOutfitData.iPlayerIndex].iMyCurrentHair)
|
|
// Ensures hair tints are applied to local player B* 2176880
|
|
// IF PLAYER_PED_ID() = GET_PLAYER_PED(GET_PLAYER_IN_CORONA_SLOT(sApplyOutfitData.iPlayerIndex))
|
|
//Using broadcast data for tints now. B* 2099505
|
|
iHairTint = GlobalplayerBD[sApplyOutfitData.iPlayerIndex].iHairTintPrime
|
|
iSecHairTint = GlobalplayerBD[sApplyOutfitData.iPlayerIndex].iHairTintSecondary
|
|
bSkipHairOverlays = TRUE // We can't mess with local players save data so need to block the update. This will get picked up in the tattoo update anyway. B* 2694661
|
|
SET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_HAIR, INT_TO_ENUM(PED_COMP_NAME_ENUM, GlobalplayerBD[sApplyOutfitData.iPlayerIndex].iMyCurrentHair), FALSE, DEFAULT, DEFAULT, DEFAULT, bSkipHairOverlays, iHairTint, iSecHairTint, sApplyOutfitData.iPlayerIndex, TRUE)
|
|
// ENDIF
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][AMEC] - iPlayerIndex = -1, setting hair style to local stat data.")
|
|
iHairTint = GET_MP_INT_CHARACTER_STAT(MP_STAT_HAIR_TINT)
|
|
iSecHairTint = GET_MP_INT_CHARACTER_STAT(MP_STAT_SEC_HAIR_TINT)
|
|
IF GET_MP_BOOL_CHARACTER_STAT(MP_STAT_USING_HAIR_SA_STAT)
|
|
PED_COMP_NAME_ENUM eSAHairItem
|
|
eSAHairItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO_SA))
|
|
|
|
IF (eSAHairItem != DUMMY_PED_COMP)
|
|
PED_COMP_NAME_ENUM eGRHairItem
|
|
eGRHairItem = DUMMY_PED_COMP
|
|
IF (GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_M_FREEMODE_01)
|
|
eGRHairItem = GET_MALE_HAIR(eSAHairItem)
|
|
ELIF (GET_ENTITY_MODEL(sApplyOutfitData.pedID) = MP_F_FREEMODE_01)
|
|
eGRHairItem = GET_FEMALE_HAIR(eSAHairItem)
|
|
ENDIF
|
|
|
|
IF (eGRHairItem != DUMMY_PED_COMP)
|
|
AND (eSAHairItem != eGRHairItem)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] gr_hair: replacing hair enum ", eSAHairItem, " with gunrunning hair enum ", eGRHairItem)
|
|
eSAHairItem = eGRHairItem
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF IS_PC_VERSION()
|
|
IF (ePedModel = MP_M_FREEMODE_01)
|
|
eSAHairItem = GET_MALE_HAIR(eSAHairItem)
|
|
ELIF (ePedModel = MP_F_FREEMODE_01)
|
|
eSAHairItem = GET_FEMALE_HAIR(eSAHairItem)
|
|
|
|
IF eSAHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_6_0"), COMP_TYPE_HAIR, 4)
|
|
OR eSAHairItem = GET_FEMALE_HAIR(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_6_0"), COMP_TYPE_HAIR, 4))
|
|
eSAHairItem = GET_FEMALE_HAIR(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_5_0"), COMP_TYPE_HAIR, 4))
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] swap female hair DLC_MP_BIKER_F_HAIR_6_0 for DLC_MP_BIKER_F_HAIR_5_0")
|
|
ELIF eSAHairItem = GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_5_0"), COMP_TYPE_HAIR, 4)
|
|
OR eSAHairItem = GET_FEMALE_HAIR(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_5_0"), COMP_TYPE_HAIR, 4))
|
|
eSAHairItem = GET_FEMALE_HAIR(GET_PED_COMP_ITEM_FROM_NAME_HASH(ePedModel, HASH("DLC_MP_BIKER_F_HAIR_6_0"), COMP_TYPE_HAIR, 4))
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] swap female hair DLC_MP_BIKER_F_HAIR_5_0 for DLC_MP_BIKER_F_HAIR_6_0")
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_HAIR, eSAHairItem,
|
|
FALSE, DEFAULT, DEFAULT, DEFAULT, DEFAULT, iHairTint, iSecHairTint, DEFAULT, DEFAULT)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] MP_STAT_USING_HAIR_SA_STAT true, eSAHairItem:", eSAHairItem)
|
|
ELSE
|
|
PED_COMP_NAME_ENUM eHairItem
|
|
eHairItem = INT_TO_ENUM(PED_COMP_NAME_ENUM, GET_MP_INT_CHARACTER_STAT(MP_STAT_CHAR_FM_STORED_HAIRDO))
|
|
SET_PED_COMP_ITEM_CURRENT_MP(sApplyOutfitData.pedID, COMP_TYPE_HAIR, eHairItem,
|
|
FALSE, DEFAULT, DEFAULT, DEFAULT, DEFAULT, iHairTint, iSecHairTint, DEFAULT, DEFAULT)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] MP_STAT_USING_HAIR_SA_STAT false, eHairItem:", eHairItem)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Re-apply berd to fix hair.
|
|
SET_PED_COMPONENT_VARIATION(sApplyOutfitData.pedID, PED_COMP_BERD, GET_PED_DRAWABLE_VARIATION(sApplyOutfitData.pedID, PED_COMP_BERD), GET_PED_TEXTURE_VARIATION(sApplyOutfitData.pedID, PED_COMP_BERD))
|
|
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][HAIR] g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR] = ", g_sOutfitsData.iComponentDrawableID[PED_COMP_HAIR])
|
|
ENDIF
|
|
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] bTattoosOnly = True skip all outfit and masks application ")
|
|
|
|
endif //bTattoosOnly check
|
|
//====================================== TATTOOS ==========================================
|
|
if not IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
//previously skipping tattoo updates if the mask was just being applied but this caused other issues after hair was updated.
|
|
Bool bBlockTShirtTats
|
|
INT iTShirtDecalHashOverride
|
|
iTShirtDecalHashOverride = -1
|
|
if sApplyOutfitData.eOutfit = OUTFIT_MP_FREEMODE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]bBlockTShirtTats False outfit is freemode")
|
|
bBlockTShirtTats = FALSE
|
|
else
|
|
bBlockTShirtTats = TRUE
|
|
|
|
// Contain overlay fix to this single outfit for now.
|
|
IF sApplyOutfitData.eOutfit = OUTFIT_ISLAND_HEIST_BEACH_PARTY_0
|
|
iTShirtDecalHashOverride = g_sOutfitsData.iDLCTattooOverlay[0]
|
|
ENDIF
|
|
endif
|
|
|
|
IF sApplyOutfitData.iPlayerIndex != -1
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][AMEC] - iPlayerIndex != -1. Call SET_MP_TATTOOS_FROM_DATA() for player ped, ", sApplyOutfitData.iPlayerIndex)
|
|
SET_MP_TATTOOS_FROM_DATA(sApplyOutfitData.pedID, GlobalplayerBD_Tattoos[sApplyOutfitData.iPlayerIndex].iPlayerTattooData,bBlockTShirtTats,iTShirtDecalHashOverride)
|
|
ELSE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT][AMEC] - iPlayerIndex = -1. Call UPDATE_TATOOS_MP(", GET_STRING_FROM_BOOL(bBlockTShirtTats), ") for ped")
|
|
|
|
UPDATE_TATOOS_MP(sApplyOutfitData.pedID,bBlockTShirtTats,DEFAULT,iTShirtDecalHashOverride)
|
|
|
|
ENDIF
|
|
|
|
|
|
// Equip DLC tattoo for outfit.
|
|
#IF USE_TU_CHANGES
|
|
|
|
// NOTE: If we are applying just a mask (bJustMask) the overlays will get reset.
|
|
// If an outfit is using overlay hashes we will need to find a solution for grabbing the data.
|
|
// This will be problematic if we have 2 outfits that share the same jbib but require different overlays.
|
|
// We had this with the bugstar outfit but new DECL component assets were provided so we could remove the overlays.
|
|
|
|
IF eOutfitRole != OUTFIT_ROLE_NONE
|
|
INT iRoleCollection, iRolePreset
|
|
INT iDLCJbibHash
|
|
iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(sApplyOutfitData.pedID), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(sApplyOutfitData.pedID, PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(sApplyOutfitData.pedID, PED_COMP_JBIB))
|
|
IF GET_TATTOO_PRESET_FOR_MP_OUTFIT_ROLE(iDLCJbibHash, eOutfitRole, iRoleCollection, iRolePreset)
|
|
g_sOutfitsData.iDLCTattooOverlay[0] = iRolePreset
|
|
ENDIF
|
|
ENDIF
|
|
|
|
INT iOutfitTat
|
|
BOOL bApplyDLCTattoo
|
|
|
|
REPEAT COUNT_OF(g_sOutfitsData.iDLCTattooOverlay) iOutfitTat
|
|
IF g_sOutfitsData.iDLCTattooOverlay[iOutfitTat] != -1
|
|
bApplyDLCTattoo = TRUE
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - bApplyDLCTattoo = TRUE g_sOutfitsData.iDLCTattooOverlay[i]:", g_sOutfitsData.iDLCTattooOverlay[iOutfitTat])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF bApplyDLCTattoo
|
|
INT iDiskIndex
|
|
INT iDLCIndex
|
|
INT iDLCCount
|
|
BOOL bSkip
|
|
sTattooShopItemValues sDLCTattooData
|
|
TATTOO_DATA_STRUCT sTattooData
|
|
TATTOO_FACTION_ENUM eFaction
|
|
eFaction = GET_TATTOO_FACTION_FOR_PED(sApplyOutfitData.pedID)
|
|
iDLCCount = GET_NUM_TATTOO_SHOP_DLC_ITEMS(eFaction)
|
|
|
|
// Apply outfit tattoos - disk
|
|
REPEAT MAX_NUMBER_OF_TATTOOS iDiskIndex
|
|
IF GET_TATTOO_DATA(sTattooData, INT_TO_ENUM(TATTOO_NAME_ENUM, iDiskIndex), eFaction, sApplyOutfitData.pedID)
|
|
REPEAT COUNT_OF(g_sOutfitsData.iDLCTattooOverlay) iOutfitTat
|
|
IF g_sOutfitsData.iDLCTattooOverlay[iOutfitTat] = sTattooData.iPreset
|
|
AND g_sOutfitsData.iDLCTattooOverlay[iOutfitTat] != -1
|
|
|
|
bSkip = FALSE
|
|
|
|
IF sTattooData.iUpgradeGroup = HASH("crewLogo")
|
|
IF iEmblemToDisplay = 0
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=NONE]")
|
|
bSkip = TRUE
|
|
ELIF iEmblemToDisplay = 1
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=CREW]")
|
|
ELIF iEmblemToDisplay = 2
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=PRESET]")
|
|
REQUEST_STREAMED_TEXTURE_DICT(GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()))
|
|
OVERRIDE_PED_CREW_LOGO_TEXTURE(sApplyOutfitData.pedID, GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()), GET_CUSTOM_CREW_LOGO_TXD_TEXTURE_FOR_PLAYER(PLAYER_ID(), CUSTOM_CREW_LOGO_PRESET))
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF NOT bSkip
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - adding overlay ", sDLCTattooData.Preset, " ", sDLCTattooData.Label)
|
|
ADD_PED_DECORATION_FROM_HASHES(sApplyOutfitData.pedID, sTattooData.iCollection, sTattooData.iPreset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(sApplyOutfitData.pedID, sTattooData.iCollection, sTattooData.iPreset)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
// Apply outfit tattoos - dlc
|
|
REPEAT iDLCCount iDLCIndex
|
|
IF GET_TATTOO_SHOP_DLC_ITEM_DATA(eFaction, iDLCIndex, sDLCTattooData)
|
|
REPEAT COUNT_OF(g_sOutfitsData.iDLCTattooOverlay) iOutfitTat
|
|
IF g_sOutfitsData.iDLCTattooOverlay[iOutfitTat] = sDLCTattooData.Preset
|
|
AND g_sOutfitsData.iDLCTattooOverlay[iOutfitTat] != -1
|
|
bSkip = FALSE
|
|
|
|
IF sDLCTattooData.UpdateGroup = HASH("crewLogo")
|
|
IF iEmblemToDisplay = 0
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=NONE]")
|
|
bSkip = TRUE
|
|
ELIF iEmblemToDisplay = 1
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=CREW]")
|
|
ELIF iEmblemToDisplay = 2
|
|
PRINTLN("[RBJ] - ped_component_public - SET_PED_MP_OUTFIT - SET TATTOOS - ", iOutfitTat, " [CREW_LOGO=PRESET]")
|
|
REQUEST_STREAMED_TEXTURE_DICT(GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()))
|
|
OVERRIDE_PED_CREW_LOGO_TEXTURE(sApplyOutfitData.pedID, GET_CUSTOM_CREW_LOGO_TXD_NAME_FOR_PLAYER(PLAYER_ID()), GET_CUSTOM_CREW_LOGO_TXD_TEXTURE_FOR_PLAYER(PLAYER_ID(), CUSTOM_CREW_LOGO_PRESET))
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF NOT bSkip
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - adding DLC overlay ", sDLCTattooData.Preset, " ", sDLCTattooData.Label)
|
|
ADD_PED_DECORATION_FROM_HASHES(sApplyOutfitData.pedID, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ADD_SECONDARY_PED_DECORATION_FROM_HASHES(sApplyOutfitData.pedID, sDLCTattooData.Collection, sDLCTattooData.Preset)
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
#ENDIF
|
|
endif
|
|
//-------------------------------------------------------------------------------------------------
|
|
//Fix for bug 1992694, heist outfit hats can be knocked off by enemies
|
|
SET_PED_CAN_LOSE_PROPS_ON_DAMAGE(sApplyOutfitData.pedID,FALSE)
|
|
RELEASE_PRELOADED_MP_HEIST_OUTFIT(sApplyOutfitData.pedID)
|
|
//setting streaming request checks
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]1 - heist outfit set move to next streaming requests stage: outfit: ",enum_to_int(sApplyOutfitData.eOutfit)," gear: ",enum_to_int(sApplyOutfitData.eGear)," mask: ",enum_to_int(sApplyOutfitData.eMask))
|
|
sApplyOutfitData.eApplyStage = AOS_STREAM_REQ
|
|
break
|
|
|
|
case AOS_STREAM_REQ
|
|
if not IS_FAKE_MULTIPLAYER_MODE_SET()
|
|
IF (NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(sApplyOutfitData.pedID))
|
|
OR (NOT HAS_PED_HEAD_BLEND_FINISHED(sApplyOutfitData.pedID))
|
|
#IF IS_DEBUG_BUILD
|
|
IF NOT HAVE_ALL_STREAMING_REQUESTS_COMPLETED(sApplyOutfitData.pedID)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]2 - waiting on streaming requests for ped")
|
|
ENDIF
|
|
IF NOT HAS_PED_HEAD_BLEND_FINISHED(sApplyOutfitData.pedID)
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]2 - waiting on head blend for ped")
|
|
ENDIF
|
|
#ENDIF
|
|
RETURN FALSE
|
|
|
|
ELSE
|
|
FINALIZE_HEAD_BLEND(sApplyOutfitData.pedID)
|
|
RELEASE_PRELOADED_MP_HEIST_OUTFIT(sApplyOutfitData.pedID)
|
|
sApplyOutfitData.bOutfitPrevSet = true
|
|
sApplyOutfitData.eApplyStage = AOS_PRELOAD //reset outfit data stage to preload check stage
|
|
sApplyOutfitData.ePreloadStage = POS_REQUEST // reset the preload to stage requesting for the next struct created.
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]2 - heist outfit streaming requests complete return true")
|
|
RETURN TRUE
|
|
ENDIF
|
|
ELSE
|
|
RELEASE_PRELOADED_MP_HEIST_OUTFIT(sApplyOutfitData.pedID)
|
|
sApplyOutfitData.bOutfitPrevSet = true
|
|
sApplyOutfitData.eApplyStage = AOS_PRELOAD //reset outfit data stage to preload check stage
|
|
sApplyOutfitData.ePreloadStage = POS_REQUEST // reset the preload to stage requesting for the next struct created.
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT]2 - IS_FAKE_MULTIPLAYER_MODE_SET streaming requests skipped return true")
|
|
RETURN TRUE
|
|
ENDIF
|
|
break
|
|
endswitch
|
|
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - outfit data requested: ",enum_to_int(sApplyOutfitData.eOutfit))
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - mask data requested: ",enum_to_int(sApplyOutfitData.eMask))
|
|
return true
|
|
endif
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - outfit is default or max: ",enum_to_int(sApplyOutfitData.eOutfit))
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - mask is default or max: ",enum_to_int(sApplyOutfitData.eMask))
|
|
return true
|
|
endif
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - ped not an MP model")
|
|
SCRIPT_ASSERT("[SET_PED_MP_OUTFIT] - ped not an MP model")
|
|
return true
|
|
endif
|
|
else
|
|
CPRINTLN(DEBUG_MISSION,"[SET_PED_MP_OUTFIT] - ped dead or dying")
|
|
return true
|
|
endif
|
|
|
|
return False
|
|
ENDFUNC
|
|
|
|
|
|
|
|
/// PURPOSE:
|
|
///
|
|
/// PED_INDEX pedID
|
|
/// INT iOutfitSlot
|
|
/// BOOL bSpareSlot (default FALSE)
|
|
/// bSkipHand (default FALSE) - if true hand (parachute) won't be saved
|
|
PROC STORE_PED_CLOTHES_IN_MP_OUTFIT_SLOT(PED_INDEX pedID, INT iOutfitSlot, BOOL bSpareSlot = FALSE, BOOL bSkipHand = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
INT iComp
|
|
REPEAT NUM_PED_COMPONENTS iComp
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][iComp] = GET_PED_DRAWABLE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][iComp] = GET_PED_TEXTURE_VARIATION(pedID, INT_TO_ENUM(PED_COMPONENT, iComp))
|
|
ENDREPEAT
|
|
INT iProp
|
|
REPEAT 9 iProp
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][iProp] = GET_PED_PROP_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][iProp] = GET_PED_PROP_TEXTURE_INDEX(pedID, INT_TO_ENUM(PED_PROP_POSITION, iProp))
|
|
ENDREPEAT
|
|
|
|
// Don't save dunce hat.
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ENUM_TO_INT(ANCHOR_HEAD)] = 1
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ENUM_TO_INT(ANCHOR_HEAD)] = -1
|
|
ENDIF
|
|
|
|
// Don't save parts of the scuba outfit
|
|
INT iDLCBerd = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_BERD), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_BERD], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_BERD])
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCBerd, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_BERD] = 0
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_BERD] = 0
|
|
ENDIF
|
|
INT iDLCSpecial = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_SPECIAL), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_SPECIAL], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_SPECIAL])
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCSpecial, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
IF GET_ENTITY_MODEL(pedID) = MP_M_FREEMODE_01
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_SPECIAL] = 15
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_SPECIAL] = 0
|
|
ELSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_SPECIAL] = 3
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_SPECIAL] = 0
|
|
ENDIF
|
|
ENDIF
|
|
INT iDLCEyePropHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pedID), ENUM_TO_INT(ANCHOR_EYES), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_EYES], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_EYES])
|
|
IF DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCEyePropHash, DLC_RESTRICTION_TAG_SCUBA_GEAR, ENUM_TO_INT(SHOP_PED_PROP))
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_EYES] = -1
|
|
ENDIF
|
|
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot] = FALSE
|
|
|
|
// Skip head
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_HEAD] = -1
|
|
|
|
// Skip hand (parachutes)
|
|
IF bSkipHand
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_HAND] = -1
|
|
ENDIF
|
|
|
|
// Only store hair if it's NVG
|
|
INT iDLCNameHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(pedID), ENUM_TO_INT(PED_COMP_HAIR), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_HAIR], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_HAIR])
|
|
IF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCNameHash, DLC_RESTRICTION_TAG_NIGHT_VISION, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_HAIR] = -1
|
|
ENDIF
|
|
|
|
// Store shirt-hash
|
|
#IF USE_TU_CHANGES
|
|
TATTOO_NAME_ENUM eShirtDecal = GET_TATTOO_ENUM_FROM_DLC_HASH(GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH), GET_TATTOO_FACTION_FOR_PED(pedID))
|
|
IF eShirtDecal != INVALID_TATTOO
|
|
AND IS_MP_TATTOO_CURRENT(eShirtDecal)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_ShirtDecal[iOutfitSlot] = GET_MP_INT_CHARACTER_STAT(MP_STAT_TSHIRT_DECAL_HASH)
|
|
ELSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_ShirtDecal[iOutfitSlot] = 0
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_A)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewA[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_B)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewB[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_C)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewC[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_D)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewD[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_E)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewE[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
if IS_MP_TATTOO_CURRENT(TATTOO_MP_FM_CREW_F)
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_TatCrewF[iOutfitSlot] = TRUE
|
|
ENDIF
|
|
#ENDIF
|
|
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot] = TRUE
|
|
|
|
CPRINTLN(DEBUG_PED_COMP, "STORE_PED_CLOTHES_IN_MP_OUTFIT_SLOT - STORED TO SLOT ", iOutfitSlot)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC REMOVE_MP_OUTFIT_IN_SLOT(INT iOutfitSlot, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot] = FALSE
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.tlSavedOutfit_Name[iOutfitSlot] = ""
|
|
CPRINTLN(DEBUG_PED_COMP, "REMOVE_MP_OUTFIT_IN_SLOT - CLEARED SLOT ", iOutfitSlot)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
PROC SET_MP_OUTFIT_NAME_IN_SLOT(INT iOutfitSlot, STRING sOutfitName, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.tlSavedOutfit_Name[iOutfitSlot] = sOutfitName
|
|
CPRINTLN(DEBUG_PED_COMP, "SET_MP_OUTFIT_NAME_IN_SLOT - NAME CHANGED TO '", sOutfitName, "' for SLOT ", iOutfitSlot)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
FUNC BOOL IS_MP_OUTFIT_STORED_IN_SLOT(INT iOutfitSlot, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
RETURN g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL GET_MP_OUTFIT_NAME_IN_SLOT(INT iOutfitSlot, TEXT_LABEL_31 &tlOutfitName, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
tlOutfitName = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.tlSavedOutfit_Name[iOutfitSlot]
|
|
IF NOT IS_STRING_NULL_OR_EMPTY(tlOutfitName)
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
FUNC BOOL PRELOAD_MP_OUTFIT_STORED_IN_SLOT(PED_INDEX pedID, INT iOutfitSlot, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
|
|
INT i
|
|
REPEAT NUM_PED_COMPONENTS i
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][i] != -1
|
|
SET_PED_PRELOAD_VARIATION_DATA(pedID, INT_TO_ENUM(PED_COMPONENT, i), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][i], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
REPEAT 9 i
|
|
IF g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][i] != -1
|
|
SET_PED_PRELOAD_PROP_DATA(pedID, INT_TO_ENUM(PED_PROP_POSITION, i), g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][i], g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][i])
|
|
ENDIF
|
|
ENDREPEAT
|
|
ENDIF
|
|
RETURN (HAS_PED_PRELOAD_VARIATION_DATA_FINISHED(pedID) AND HAS_PED_PRELOAD_PROP_DATA_FINISHED(pedID))
|
|
ENDFUNC
|
|
|
|
FUNC BOOL IS_MP_OUTFIT_STORED_IN_SLOT_CURRENT(PED_INDEX pedID, INT iOutfitSlot, BOOL bSpareSlot = FALSE)
|
|
IF iOutfitSlot >= 0
|
|
AND iOutfitSlot < MAX_CUSTOM_OUTFIT_SLOTS
|
|
AND g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.bSaveOutfit_Stored[iOutfitSlot]
|
|
AND (bSpareSlot = (iOutfitSlot = SPARE_CUSTOM_OUTFIT_SLOT_INDEX)) // Make sure spare slot flag and index match
|
|
|
|
INT iPropID[5]
|
|
iPropID[0] = GET_PED_PROP_INDEX(pedID, ANCHOR_HEAD)
|
|
iPropID[1] = GET_PED_PROP_INDEX(pedID, ANCHOR_EYES)
|
|
iPropID[2] = GET_PED_PROP_INDEX(pedID, ANCHOR_LEFT_WRIST)
|
|
iPropID[3] = GET_PED_PROP_INDEX(pedID, ANCHOR_RIGHT_WRIST)
|
|
iPropID[4] = GET_PED_PROP_INDEX(pedID, ANCHOR_EARS)
|
|
|
|
// Check main items.
|
|
IF GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_JBIB) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_JBIB]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_LEG) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_LEG]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_FEET) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_FEET]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_SPECIAL]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_SPECIAL2) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_SPECIAL2]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_TORSO) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_TORSO]
|
|
AND GET_PED_DRAWABLE_VARIATION(pedID, PED_COMP_BERD) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompDraw[iOutfitSlot][PED_COMP_BERD]
|
|
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_JBIB) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_JBIB]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_LEG) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_LEG]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_FEET) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_FEET]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_SPECIAL]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_SPECIAL2) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_SPECIAL2]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_TORSO) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_TORSO]
|
|
AND GET_PED_TEXTURE_VARIATION(pedID, PED_COMP_BERD) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_CompTex[iOutfitSlot][PED_COMP_BERD]
|
|
|
|
AND iPropID[0] = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_HEAD]
|
|
AND iPropID[1] = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_EYES]
|
|
AND iPropID[2] = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_LEFT_WRIST]
|
|
AND iPropID[3] = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_RIGHT_WRIST]
|
|
AND iPropID[4] = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropID[iOutfitSlot][ANCHOR_EARS]
|
|
|
|
AND (iPropID[0] = -1 OR GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_HEAD) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_HEAD])
|
|
AND (iPropID[1] = -1 OR GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_EYES) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_EYES])
|
|
AND (iPropID[2] = -1 OR GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_LEFT_WRIST) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_LEFT_WRIST])
|
|
AND (iPropID[3] = -1 OR GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_RIGHT_WRIST) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_RIGHT_WRIST])
|
|
AND (iPropID[4] = -1 OR GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_EARS) = g_savedMPGlobalsNew.g_savedMPGlobals[GET_SAVE_GAME_ARRAY_SLOT()].MpSavedGeneral.iSavedOutfit_PropTex[iOutfitSlot][ANCHOR_EARS])
|
|
|
|
|
|
RETURN TRUE
|
|
ENDIF
|
|
ENDIF
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC SET_MP_RACING_OUTFIT_SLOT(INT value, INT slot = -1)
|
|
SET_MP_INT_CHARACTER_STAT(MP_STAT_RACE_OUTFIT_CURRENT, value, slot)
|
|
ENDPROC
|
|
FUNC INT GET_MP_RACING_OUTFIT_SLOT(INT slot = -1)
|
|
INT iOutfitSlot = GET_MP_INT_CHARACTER_STAT(MP_STAT_RACE_OUTFIT_CURRENT, slot)
|
|
IF iOutfitSlot >= MAX_CUSTOM_OUTFIT_SLOTS_FOR_PLAYER
|
|
iOutfitSlot = 0
|
|
SET_MP_RACING_OUTFIT_SLOT(iOutfitSlot, slot)
|
|
ENDIF
|
|
RETURN iOutfitSlot
|
|
ENDFUNC
|
|
|
|
//PURPOSE: Retursn TRUE if the player is visibly wearing a parachute
|
|
FUNC BOOL IS_PLAYER_WEARING_PARACHUTE()
|
|
RETURN IS_MP_PED_WEARING_PARACHUTE(PLAYER_PED_ID())
|
|
ENDFUNC
|
|
|
|
//PURPOSE: Put Hood down if player has HazMat Hood Up, but no HazMat Mask
|
|
PROC CHECK_HAZ_MAT_HOOD_STATE()
|
|
IF NOT IS_PED_WEARING_HAZ_MASK(PLAYER_PED_ID())
|
|
AND IS_PED_WEARING_HAZ_HOOD_UP(PLAYER_PED_ID())
|
|
INT HoodID
|
|
INT HoodTxtID
|
|
HoodID = GET_CHEMSUIT_HOOD_VARIATION(PLAYER_PED_ID(), FALSE)
|
|
HoodTxtID = GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_SPECIAL,HoodID, HoodTxtID)
|
|
CLEAR_PED_PROP(PLAYER_PED_ID(), ANCHOR_HEAD)
|
|
CPRINTLN(DEBUG_MISSION,"[CHECK_HAZ_MAT_HOOD_STATE] Ped wearing haz suit but no chem mask. Set special component to hood down")
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
/// PURPOSE: Returns TRUE if the ped has on a helmet that covers their face.
|
|
FUNC BOOL IS_PED_WEARING_A_FULL_FACE_HELMET(PED_INDEX pedID)
|
|
|
|
//No Helmet
|
|
IF NOT IS_PED_WEARING_A_HELMET(pedID)
|
|
RETURN FALSE
|
|
ENDIF
|
|
|
|
PED_COMP_NAME_ENUM ePropItem = GET_PROP_ITEM_FROM_VARIATIONS(pedID, GET_PED_PROP_INDEX(pedID, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_HEAD), ANCHOR_HEAD)
|
|
INT iDLCItemHash = GET_HASH_NAME_FOR_PROP(NATIVE_TO_INT(pedID), ENUM_TO_INT(ANCHOR_HEAD), GET_PED_PROP_INDEX(pedID, ANCHOR_HEAD), GET_PED_PROP_TEXTURE_INDEX(pedID, ANCHOR_HEAD))
|
|
|
|
IF IS_ITEM_A_FULL_FACE_HELMET(GET_ENTITY_MODEL(pedID), COMP_TYPE_PROPS, ePropItem, iDLCItemHash)
|
|
RETURN TRUE
|
|
ENDIF
|
|
|
|
RETURN FALSE
|
|
ENDFUNC
|
|
|
|
PROC VALIDATE_INVISIBLE_PED_COMPONENTS(INT &iPedValidationStage)
|
|
MODEL_NAMES ePedModel = GET_ENTITY_MODEL(PLAYER_PED_ID())
|
|
PED_COMP_NAME_ENUM eCurrentJbib = GET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB)
|
|
PED_COMP_NAME_ENUM eCurrentSpecial = GET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_SPECIAL)
|
|
PED_COMP_NAME_ENUM eCurrentLegs = GET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS)
|
|
PED_COMP_NAME_ENUM eCurrentTorso = GET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_TORSO)
|
|
INT iDLCLegsHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_LEG), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_LEG))
|
|
INT iDLCJbibHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_JBIB), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_JBIB))
|
|
INT iDLCTorsoHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_TORSO), GET_PED_DRAWABLE_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO), GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO))
|
|
scrShopPedComponent componentItem
|
|
|
|
IF ePedModel = MP_M_FREEMODE_01
|
|
|
|
// Invisible legs
|
|
IF iPedValidationStage = 0
|
|
|
|
IF eCurrentLegs >= LEGS_FMM_11_0 AND eCurrentLegs <= LEGS_FMM_11_15
|
|
OR iDLCLegsHash = HASH("DLC_MP_APA_M_LEGS_0_0")
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_LEGS, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, TRUE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid legs, correcting.")
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
// Invisible arms + body
|
|
IF iPedValidationStage = 1
|
|
IF iDLCJbibHash = HASH("DLC_MP_APA_M_JBIB_0_0")
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, TRUE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid arms + body, correcting.")
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
// Invisible arms + body
|
|
IF iPedValidationStage = 2
|
|
IF eCurrentJbib = JBIB_FMM_15_0
|
|
IF eCurrentTorso != TORSO_FMM_15_0
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_10_0") // Black Driving
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_10_1") // Brown Driving
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_21_0") // Black Leather
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_21_1") // Brown Leather
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_32_0") // Black Wool
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_32_1") // Grey Wool
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_43_0") // Black Fingerless
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_43_1") // Grey Fingerless
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_54_0") // Garbage
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_65_0") // White Cotton
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_76_0") // Blue Surgical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_HEIST_M_TORSO_76_1") // White Surgical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_0") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_1") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_2") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_3") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_4") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_5") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_6") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_7") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_8") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_9") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_10") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_11") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_12") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_13") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_14") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_15") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_16") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_17") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_18") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_0_19") // GR Armoured
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_0") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_1") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_2") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_3") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_4") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_5") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_6") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_7") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_8") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_9") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_10") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_11") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_12") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_13") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_14") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_15") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_16") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_17") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_18") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_GR_M_TORSO_1_19") // GR Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_0") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_1") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_2") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_3") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_4") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_5") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_6") // Summer Tactical
|
|
AND iDLCTorsoHash != HASH("DLC_MP_SUM_M_TORSO_1_7") // Summer Tactical
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid arms + body, correcting.")
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
//Invisible arms
|
|
IF iPedValidationStage = 3
|
|
PED_COMP_NAME_ENUM eNoGlovesItem = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eCurrentSpecial, eCurrentJbib, eCurrentLegs)
|
|
|
|
// No gloves
|
|
IF eNoGlovesItem = DUMMY_PED_COMP
|
|
eNoGlovesItem = GET_PED_COMPONENT_ITEM_REQUISITE_MP(PLAYER_PED_ID(), ePedModel, COMP_TYPE_JBIB, eCurrentJbib, COMP_TYPE_TORSO)
|
|
SWITCH iDLCJbibHash
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_0")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_1")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_2")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_3")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_4")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_5")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_6")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_7")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_8")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_9")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_10")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_11")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_12")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_13")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_14")
|
|
CASE HASH("DLC_MP_STUNT_M_JBIB_5_15")
|
|
eNoGlovesItem = TORSO_FMM_4_0
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
IF eCurrentTorso < TORSO_FMM_DLC
|
|
IF eCurrentTorso != eNoGlovesItem
|
|
AND eNoGlovesItem != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_TORSO, eNoGlovesItem, FALSE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid arms (eCurrentTorso[", eCurrentTorso, "] != eNoGlovesItem[", eNoGlovesItem, "]), correcting.")
|
|
ENDIF
|
|
ELIF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_MOTOX_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_RACE_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_DOCK_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Grab the base glove ID and check if the uppr matches the no gloves option.
|
|
GET_SHOP_PED_COMPONENT(iDLCTorsoHash, componentItem)
|
|
INT iBaseGloveHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_TORSO), componentItem.m_drawableIndex, 0)
|
|
|
|
scrShopPedComponent baseComponentItem
|
|
INIT_SHOP_PED_COMPONENT(baseComponentItem)
|
|
GET_SHOP_PED_COMPONENT(iBaseGloveHash, baseComponentItem)
|
|
INT iBaseGloveTextHash = GET_HASH_KEY(baseComponentItem.m_textLabel)
|
|
|
|
INT iGloveType
|
|
BOOL bGlovesValid = FALSE
|
|
INT iAltGloveHash = -1
|
|
INT iGloveHashCheck
|
|
scrShopPedComponent checkComponentItem
|
|
|
|
REPEAT NUMBER_OF_GLOVE_TYPES iGloveType
|
|
iGloveHashCheck = GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(eNoGlovesItem), iGloveType)
|
|
IF iBaseGloveHash = iGloveHashCheck
|
|
bGlovesValid = TRUE
|
|
ELIF iGloveHashCheck != -1
|
|
// same text label? store.
|
|
INIT_SHOP_PED_COMPONENT(checkComponentItem)
|
|
GET_SHOP_PED_COMPONENT(iGloveHashCheck, checkComponentItem)
|
|
IF iBaseGloveTextHash = GET_HASH_KEY(checkComponentItem.m_textLabel)
|
|
iAltGloveHash = iGloveHashCheck
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF NOT bGlovesValid
|
|
AND iAltGloveHash != -1
|
|
INIT_SHOP_PED_COMPONENT(componentItem)
|
|
GET_SHOP_PED_COMPONENT(iAltGloveHash, componentItem)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, componentItem.m_drawableIndex, GET_PED_TEXTURE_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO))
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid gloves, correcting.")
|
|
bGlovesValid = TRUE
|
|
ENDIF
|
|
|
|
IF NOT bGlovesValid
|
|
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_TORSO, eNoGlovesItem, FALSE)
|
|
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Male player has invalid gloves \"", iDLCTorsoHash, "\", removing.")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
ELIF ePedModel = MP_F_FREEMODE_01
|
|
// Invisible legs
|
|
IF iPedValidationStage = 0
|
|
IF eCurrentLegs >= LEGS_FMF_13_0 AND eCurrentLegs <= LEGS_FMF_13_15
|
|
OR iDLCLegsHash = HASH("DLC_MP_APA_F_LEGS_0_0")
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_LEGS, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, TRUE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid legs, correcting.")
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
// Invisible arms + body
|
|
IF iPedValidationStage = 1
|
|
IF iDLCJbibHash = HASH("DLC_MP_APA_F_JBIB_0_0")
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_JBIB, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_JBIB, eDefaultItem, TRUE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid arms + body, correcting.")
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
//Invisible arms
|
|
IF iPedValidationStage = 2
|
|
PED_COMP_NAME_ENUM eNoGlovesItem = GET_TORSO_FOR_SPECIAL_AND_JBIB_COMBO(ePedModel, eCurrentSpecial, eCurrentJbib, eCurrentLegs)
|
|
// No gloves
|
|
IF eNoGlovesItem = DUMMY_PED_COMP
|
|
eNoGlovesItem = GET_PED_COMPONENT_ITEM_REQUISITE_MP(PLAYER_PED_ID(), ePedModel, COMP_TYPE_JBIB, eCurrentJbib, COMP_TYPE_TORSO)
|
|
SWITCH iDLCJbibHash
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_0")
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_1")
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_2")
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_3")
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_4")
|
|
CASE HASH("DLC_MP_VAL_F_JBIB0_5")
|
|
eNoGlovesItem = TORSO_FMF_11_0
|
|
BREAK
|
|
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_0")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_1")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_2")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_3")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_4")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_5")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_6")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_7")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_8")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_9")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_10")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_11")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_12")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_13")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_14")
|
|
CASE HASH("DLC_MP_STUNT_F_JBIB_5_15")
|
|
eNoGlovesItem = TORSO_FMF_3_0
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDIF
|
|
|
|
IF eCurrentTorso < TORSO_FMF_DLC
|
|
IF eCurrentTorso != eNoGlovesItem
|
|
AND eNoGlovesItem != DUMMY_PED_COMP
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_TORSO, eNoGlovesItem, FALSE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid arms, correcting.")
|
|
ENDIF
|
|
ELIF NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_PILOT_SUIT, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_MOTOX_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_RACE_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
AND NOT DOES_SHOP_PED_APPAREL_HAVE_RESTRICTION_TAG(iDLCTorsoHash, DLC_RESTRICTION_TAG_DOCK_GLOVES, ENUM_TO_INT(SHOP_PED_COMPONENT))
|
|
// Grab the base glove ID and check if the uppr matches the no gloves option.
|
|
GET_SHOP_PED_COMPONENT(iDLCTorsoHash, componentItem)
|
|
INT iBaseGloveHash = GET_HASH_NAME_FOR_COMPONENT(NATIVE_TO_INT(PLAYER_PED_ID()), ENUM_TO_INT(PED_COMP_TORSO), componentItem.m_drawableIndex, 0)
|
|
|
|
scrShopPedComponent baseComponentItem
|
|
INIT_SHOP_PED_COMPONENT(baseComponentItem)
|
|
GET_SHOP_PED_COMPONENT(iBaseGloveHash, baseComponentItem)
|
|
INT iBaseGloveTextHash = GET_HASH_KEY(baseComponentItem.m_textLabel)
|
|
|
|
INT iGloveType
|
|
BOOL bGlovesValid = FALSE
|
|
INT iAltGloveHash = -1
|
|
INT iGloveHashCheck
|
|
scrShopPedComponent checkComponentItem
|
|
|
|
REPEAT NUMBER_OF_GLOVE_TYPES iGloveType
|
|
iGloveHashCheck = GET_DLC_GLOVE_HASH_FOR_UPPR(ePedModel, ENUM_TO_INT(eNoGlovesItem), iGloveType)
|
|
IF iBaseGloveHash = iGloveHashCheck
|
|
bGlovesValid = TRUE
|
|
ELIF iGloveHashCheck != -1
|
|
// same text label? store.
|
|
INIT_SHOP_PED_COMPONENT(checkComponentItem)
|
|
GET_SHOP_PED_COMPONENT(iGloveHashCheck, checkComponentItem)
|
|
IF iBaseGloveTextHash = GET_HASH_KEY(checkComponentItem.m_textLabel)
|
|
iAltGloveHash = iGloveHashCheck
|
|
ENDIF
|
|
ENDIF
|
|
ENDREPEAT
|
|
|
|
IF NOT bGlovesValid
|
|
AND iAltGloveHash != -1
|
|
INIT_SHOP_PED_COMPONENT(componentItem)
|
|
GET_SHOP_PED_COMPONENT(iAltGloveHash, componentItem)
|
|
SET_PED_COMPONENT_VARIATION(PLAYER_PED_ID(), PED_COMP_TORSO, componentItem.m_drawableIndex, componentItem.m_textureIndex)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid gloves, correcting.")
|
|
bGlovesValid = TRUE
|
|
ENDIF
|
|
|
|
IF NOT bGlovesValid
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_TORSO, eNoGlovesItem, FALSE)
|
|
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid gloves \"", iDLCTorsoHash, "\", removing.")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
|
|
IF iPedValidationStage = 3
|
|
// Dress legs
|
|
IF iDLCLegsHash = HASH("DLC_MP_VAL_F_LEGS2_0")
|
|
IF NOT IS_ITEM_A_DRESS(ePedModel, COMP_TYPE_JBIB, eCurrentJbib, iDLCJbibHash)
|
|
PED_COMP_NAME_ENUM eDefaultItem = GET_DUMMY_COMPONENT_FOR_SLOT(ePedModel, COMP_TYPE_LEGS, -1)
|
|
SET_PED_COMP_ITEM_CURRENT_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, FALSE)
|
|
FORCE_VALID_PED_COMPONENT_COMBO_FOR_ITEM_MP(PLAYER_PED_ID(), COMP_TYPE_LEGS, eDefaultItem, TRUE)
|
|
PRINTLN("PROCESS_INVALID_PED_COMPONENTS - Female player has invalid legs, correcting.")
|
|
ENDIF
|
|
ENDIF
|
|
|
|
iPedValidationStage++
|
|
EXIT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
// Nothing hit so reset.
|
|
iPedValidationStage = 0
|
|
ENDPROC
|
|
|
|
ENUM CLOTHING_AWARD_ENUM
|
|
CLOTHING_AWARD_SETUPMISSION = 0,
|
|
CLOTHING_AWARD_RESUPPLYMISSION,
|
|
CLOTHING_AWARD_SELLMISSION,
|
|
CLOTHING_AWARD_COVOPMISSION,
|
|
CLOTHING_AWARD_7COVOPMISSION,
|
|
CLOTHING_AWARD_SELLMISSION_EARNINGS,
|
|
CLOTHING_AWARD_ADVMODE,
|
|
CLOTHING_AWARD_PURCH_BUNKER,
|
|
CLOTHING_AWARD_PURCH_TRUCK,
|
|
CLOTHING_AWARD_PURCH_WEAPONUPGRADE,
|
|
CLOTHING_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE,
|
|
CLOTHING_AWARD_PURCH_ALLWEAPONIZEDVEHICLE,
|
|
CLOTHING_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE,
|
|
CLOTHING_AWARD_PURCH_UPGRADETRAILER,
|
|
CLOTHING_AWARD_PURCH_BALLISTIC
|
|
ENDENUM
|
|
|
|
PROC UNLOCK_CLOTHING_AWARD(CLOTHING_AWARD_ENUM eAwardItem)
|
|
SWITCH eAwardItem
|
|
CASE CLOTHING_AWARD_SETUPMISSION
|
|
IF g_sMPTunables.bENABLE_AWARD_SETUPMISSION
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SETUPMISSION)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC1" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_RESUPPLYMISSION
|
|
IF g_sMPTunables.bENABLE_AWARD_RESUPPLYMISSION
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_RESUPPLYMISSION)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC2" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_SELLMISSION
|
|
IF g_sMPTunables.bENABLE_AWARD_SELLMISSION
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SELLMISSION)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC3" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_COVOPMISSION
|
|
IF g_sMPTunables.bENABLE_AWARD_COVOPMISSION
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_COVOPMISSION)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC5" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_7COVOPMISSION
|
|
IF g_sMPTunables.bENABLE_AWARD_7COVOPMISSION
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_7COVOPMISSION)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC6" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_SELLMISSION_EARNINGS
|
|
IF g_sMPTunables.bENABLE_AWARD_SELLMISSION_EARNINGS
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SELLMISSION_EARNINGS)
|
|
// ticker?
|
|
|
|
PRINT_TICKER_WITH_INT("CLOTHAWDSTRAP3", g_sMPTunables.iAMOUNT_AWARD_SELLMISSION_EARNINGS)
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_ADVMODE
|
|
IF g_sMPTunables.bENABLE_AWARD_ADVMODE
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_ADVMODE)
|
|
// ticker?//inumber_of_times_to_unlock_adversary_award
|
|
PRINT_TICKER_WITH_INT("CLOTHAWDSTRAP5", g_sMPTunables.inumber_of_times_to_unlock_adversary_award )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_BUNKER
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_BUNKER
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_BUNKER)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC8")
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_TRUCK
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_TRUCK
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_TRUCK)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC9" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_WEAPONUPGRADE
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_WEAPONUPGRADE
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_WEAPONUPGRADE)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC10" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC11" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_ALLWEAPONIZEDVEHICLE
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_ALLWEAPONIZEDVEHICLE
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_ALLWEAPONIZEDVEHICLE)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC12" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC13" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_UPGRADETRAILER
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_UPGRADETRAILER
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_UPGRADETRAILER)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC14" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
CASE CLOTHING_AWARD_PURCH_BALLISTIC
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_BALLISTIC
|
|
IF UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_BALLISTIC)
|
|
// ticker?
|
|
PRINT_TICKER_WITH_STRING("CLOTHAWDSTRAP2","CLOTHAWDDESC15" )
|
|
ENDIF
|
|
ENDIF
|
|
BREAK
|
|
ENDSWITCH
|
|
ENDPROC
|
|
|
|
PROC DISPLAY_SPECIAL_EVENT_CLOTHING_AWARD_HELP_MESSAGE()
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_SETUPMISSION
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SETUPMISSION)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC1" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_RESUPPLYMISSION
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_RESUPPLYMISSION)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC2" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_SELLMISSION
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SELLMISSION)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC3" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_COVOPMISSION
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_COVOPMISSION)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC5" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_7COVOPMISSION
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_7COVOPMISSION)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC6" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_SELLMISSION_EARNINGS
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_SELLMISSION_EARNINGS)
|
|
//PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC7" )
|
|
PRINT_TICKER_WITH_INT("CLOTHAWDSTRAP4", g_sMPTunables.iAMOUNT_AWARD_SELLMISSION_EARNINGS)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_ADVMODE
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_ADVMODE)
|
|
PRINT_TICKER_WITH_INT("CLOTHAWDSTRAP5b", g_sMPTunables.inumber_of_times_to_unlock_adversary_award )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_BUNKER
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_BUNKER)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC8" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_TRUCK
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_TRUCK)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC9" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_WEAPONUPGRADE
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_WEAPONUPGRADE)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC10" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_SINGLEWEAPONIZEDVEHICLE)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC11" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_ALLWEAPONIZEDVEHICLE
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_ALLWEAPONIZEDVEHICLE)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC12" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_UPGRADEWEAPONIZEDVEHICLE)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC13" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_UPGRADETRAILER
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_UPGRADETRAILER)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC14" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF g_sMPTunables.bENABLE_AWARD_PURCH_BALLISTIC
|
|
IF NOT IS_UNLOCK_DLC_CLOTHING_ITEM(g_sMPTunables.iITEM_AWARD_PURCH_BALLISTIC)
|
|
PRINT_HELP_WITH_STRING("CLOTHAWDSTRAP","CLOTHAWDDESC15" )
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
ENDPROC
|
|
|
|
|